Arduino Sketchupload mit FTDI @ 3,3 V funktioniert nicht

Gast #5261309
Lesenswert?

Hallo,

habe hier einen Atmega 1284p auf einem Breadboard auf welchen ich 
Programme mittels Arduino IDE und einem FTDI Adaper aufspiele. Bei 5 V 
funktioniert alles problemlos. Jetzt wollte ich die Schaltung auf 3,3 V 
umbauen und habe den FTDI Adapter auf 3,3 V gejumpert (BOD Spannung ist 
mit 2,7 V gefust). Der Prozessor läuft mit internen 8 MHz. An DTR sitzt 
noch ein 0,1 uF Kerko.

Fehlermeldung:

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x33

Kann hier jmd Abhilfe schaffen?
Gast #5261363
Lesenswert?

Bootloader ist drauf, es funktioniert ja auch alles sonst paletti. Nur 
eben nicht bei 3,3 V. Der Systemtakt hat doch nichts mit der Spannung zu 
tun, oder? Ich hatte das Problem damals auch schon bei 5 V, jedoch hatte 
der 0,1 uF Kerko das Problem gelöst. Habe soeben mit etwas größeren und 
kleineren Kerkos herum probiert, jedoch auch ohne Erfolg.
Gast #5261372
Lesenswert?

Dannn wirst du nicht umhin kommen deine Schaltung und
den Aufbau zu zeigen.

Abblock-Cs (2 Stück) an Prozessor und (auch 2 Stück) an
Spannungsregler 3.3V? (oder woher kommen sonst die 3.3V?
Gast #5261381
Lesenswert?

3,3 V werden vom FTDI aus den 5 V vom USB gewandelt und aufs Board 
gelegt. Abblockkondi sitzt, leider konstruktionsbedingt, aktuell noch 
etwas weiter weg vom Versorgungspin. Ich bastel ihn mal direkt ran.
Gast #5262245
Lesenswert?

Beim Anschluss des USB Steckers vom FTDI Adapter, unter gejumperter 5 V 
Spannung an den Laptop, blinkt die Arduino-Status LED und zeigt die 
Initialisierung durch blinken an. Bei 3,3 V Spannung blinkt nichts. 
Vielleicht hilft das bei der Fehlersuche? Habe auch mal den Widerstand 
vom Reset-Pin des Atmel verändert, hilft aber auch nichts. Aktuell sind 
10 kOhm dran. Langsam gehen mir die Ideen aus.

Nochmal der Überischt halber die Schaltungsdetails:

- FTDI mit 3,3 bzw. 5 V per USB am Laptop
- Netzteil mit 3,3 V angeschlossen
- 10 kOhm Pullup am Atmel-Reset
- 100 nF am Atmel VCC auf GND
- 10 uF VCC auf GND
- 100 nF zwischen DTR (FTDI) und Atmel-Reset


Bei dieser Konstellation funktioniert der FTDI nur unter 5 V Spannung.
Gast #5262319
Lesenswert?

Kann es am Adapter liegen? Habe einen Beitrag gefunden, wo jemand 
augenscheinlich das gleiche Problem hat:

https://forum.arduino.cc/index.php?topic=474941.0

"I've seen some adapters that have a jumper (physical or cut+jump pads) 
for 3.3v mode that actually don't work in that mode"

3,3 V liegen zwischen GND und VCC des Adapters an.

Dieser Adapter ist es:

https://www.ebay.de/itm/FTDI-Adapter-FT232RL-USB-zu-TTL-Serial-fuer-3-3V-und-5V-fuer-Arduino-PRO-Mini-/331744431360

Ich kann mir aber nicht so richtig vorstellen, dass es am Adapter liegen 
soll.
Gast #5262612
Lesenswert?

Da ich einen Atmega 1284p nutze, habe ich den Mightycore installiert. 
Und die entsprechenden (clock, BOD) Bootloader via USBASP gebrannt. Nun 
habe ich die Fuses mit avrdude geprüft und festgestellt, dass diese 
nicht denen entsprechen, welche in der Boards.txt hinterlegt sind, wobei 
das Brennen der Bootloader immer fehlerfrei verlief.

Die Fuses sind laut Boards.txt:

l: 0xb7
h: 0xd6
e: 0xfd

avrdude zeight mir jedoch völlig andere Werte:

l: 0xb7
h: 0xfe
e: 0xd6

ich wollte jetzt auf folgende Werte fusen:

l: 0xbf
h: 0xd6
e: 0xfd

die highfuses und extended fuses lassen sich aber leider nicht 
umstellen:

C:\Program Files (x86)\Arduino\hardware\tools\avr\bin>avrdude -C 
"C:\Program Fil
es (x86)\Arduino\hardware\tools\avr\etc\avrdude.conf" -P usb -p m1284p 
-c usbasp
 -U lfuse:w:0xbf:m -U hfuse:w:0xd6:m U- efuse:w:0xfd:m

avrdude: warning: cannot set sck period. please check for usbasp 
firmware update
.
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 
0.05s

avrdude: Device signature = 0x1e9705
avrdude: reading input file "0xbf"
avrdude: writing lfuse (1 bytes):

Writing | ################################################## | 100% 
0.02s

avrdude: 1 bytes of lfuse written
avrdude: verifying lfuse memory against 0xbf:
avrdude: load data lfuse data from input file 0xbf:
avrdude: input file 0xbf contains 1 bytes
avrdude: reading on-chip lfuse data:

Reading | ################################################## | 100% 
0.02s

avrdude: verifying ...
avrdude: 1 bytes of lfuse verified
avrdude: reading input file "0xd6"
avrdude: writing hfuse (1 bytes):

Writing | ################################################## | 100% 
0.02s

avrdude: 1 bytes of hfuse written
avrdude: verifying hfuse memory against 0xd6:
avrdude: load data hfuse data from input file 0xd6:
avrdude: input file 0xd6 contains 1 bytes
avrdude: reading on-chip hfuse data:

Reading | ################################################## | 100% 
0.02s

avrdude: verifying ...
avrdude: 1 bytes of hfuse verified

avrdude: safemode: Fuses OK (H:FE, E:D6, L:BF)

avrdude done.  Thank you.


C:\Program Files (x86)\Arduino\hardware\tools\avr\bin>



Kann es an den lock bits liegen? Bin noch nicht ganz so bewandert.
Beitrag #5262636 wurde von einem Moderator gelöscht.
Gast #5262813
Lesenswert?

Rudi schrieb:
> Wie kann soetwas
> passieren?
Eigentlich nicht!

Wenn du mit den ISP noch drauf kommst, sollten sich auch die Fuses 
setzen lassen können.

Rudi schrieb:
> Habe zuvor die Fuses stets über den MightyCore und Arduino
> setzen lassen.
Bei dem neuen auch, nehme ich mal an.
Sonst hättest du ja den Bootloader nicht drauf(zum laufen) bekommen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren