Forum: Mikrocontroller und Digitale Elektronik ATmega mit FT232 braucht manuellen Reset


von Sepp (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich nehme gerade meine erste Schaltung mit einem AVR (ATmega328) und 
FT232RL in Betrieb und komme gerade nicht weiter (Bootloader 
Chip45boot2). Die Spannungsversorgung erfolgt im Regelfall über einen 
78L05 (speist direkt VCC), kann aber auch über USB erfolgen (s. 
Schaltplan).

Status Quo: AVR und FT232 verrichten ihren Dienst, auch die serielle 
Kommunikation sowie flashen über USB funktionieren. Wenn USB gesteckt 
ist, startet der AVR problemlos.

ABER: Wenn ich die Schaltung regulär mit Energie versorge (also USB 
nicht verbunden), startet der AVR nicht (bzw. nicht richtig). Wenn ich 
ihm dann einen manuellen Reset verpasse, ist alles i.O. Das ist jedoch 
nicht in meinem Sinn.

Daher die Frage: Mit welcher Maßnahme kann ich sicherstellen, dass der 
AVR auch bei konventioneller Spannungsversorgung korrekt startet?

Danke für eure Hilfe
Sepp

von Jim M. (turboj)


Lesenswert?

AREF gehört nicht an VCC. Da gehört nur ein 100nF Kondensator nach GND 
ran.

Die Reset Schaltung am AVR wäre wichtig, die sieht man leider nicht. 
Vermutlich fehlen auch noch die Abblock Kondensatoren.

von Wolfgang (Gast)


Lesenswert?

Sepp schrieb:
> Daher die Frage: Mit welcher Maßnahme kann ich sicherstellen, dass der
> AVR auch bei konventioneller Spannungsversorgung korrekt startet?

Indem du den Reset-Pin beschaltest (Pull-up, C gegen Gnd). Guck dir mal 
andere Schaltpläne an.

> FT232.JPG
Schaltplan nicht als (vermatschte) JPG-Datei posten, sondern als PNG (s. 
[Bildformate] und Hinweis beim Upload.

von Sepp (Gast)


Angehängte Dateien:

Lesenswert?

Hi,

hat die AREF-Beschaltung mit dem Aufstartverhalten zu tun?

Anbei nochmal der Ausschnitt vom Schaltplan als PNG. Die 
100N-Abblockkondensatoren sind vorhanden, RESET ist per 1K an VCC und 
100N an DTR des FT232 (hatte ich beim Arduino NANO abgeschaut).

Gruß
Sepp

von Wolfgang (Gast)


Lesenswert?

Sepp schrieb:
> hat die AREF-Beschaltung mit dem Aufstartverhalten zu tun?

Nein, sie ist schlicht falsch oder mindestens gefährlich.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Das sieht nach der bescheuerten Reset Variante aus, die auch auf den 
Arduino Boards oft benutzt wird. /DTR vom FT232 soll über den 100nF ein 
/Reset auf den AVR geben.
Sinn und Zweck dieser Nummer ist eh fragwürdig. Du fährst vermutlich 
besser, wenn du den 100nF von /DTR mal von Reset trennst. Es sollte dann 
schon mal alles klappen. Du kannst dann Reset immer noch mit einem 
kleineren C (10n-22n) gegen Masse beschalten - ein Pullup hat der Pin eh 
schon eingebaut.
Höhere C an Reset interferieren gerne mal mit ISP Programmern, die keine 
höheren Kondensatoren entladen können oder nicht genug Geduld beim 
einschalten des Prog. Modus haben.
Manche Leute legen auch eine Diode von /Reset in Sperrichtung nach Vcc. 
Wenn Vcc zusammenbricht oder noch nicht gross genug ist, wird der Reset 
Pin so auf low gezogen.

: Bearbeitet durch User
von Sepp (Gast)


Lesenswert?

Ok, dann lass ich den C mal weg. Für mein Verständnis: Wie kommt der AVR 
dann zu seinem Reset, wenn ich neu flashen will? Muss ich das per 
SW-Reset (bzw. Einsprung in den Bootloader) lösen?

Gruß
Sepp

von Felix Adam (Gast)


Lesenswert?

Und bei nicht (ausschließlich) USB-gespeistem FT232 solltest du nach 
Datenblatt den /Reset des FT232 beschalten. So wie das jetzt ist, ist 
das meiner Erinnerung nach falsch.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Sepp schrieb:
> Ok, dann lass ich den C mal weg.

Und mach mal den Pullup deutlich grösser. 1k ist sehr, sehr wenig. Wie 
gesagt, du kannst ihn auch ganz weglassen, denn die AVR haben einen 
internen an Reset. Beim 2009er Arduino sinds z.B. 10k.

Sepp schrieb:
> Wie kommt der AVR
> dann zu seinem Reset, wenn ich neu flashen will?

Hängt von deinem Bootloader ab. Manche werden dann mit einem Druck aufs 
Resetknöpfchen zufrieden sein. Da kann ich sonst nix zu sagen, da ich 
mit ISP programmiere.

Felix Adam schrieb:
> So wie das jetzt ist, ist
> das meiner Erinnerung nach falsch.

So isses. Im 2009er ist Reset direkt mit VCCIO und VCC5V verbunden - als 
Abblockung ein 100nF gegen Masse.

: Bearbeitet durch User
von Felix Adam (Gast)


Lesenswert?

Im Datenblatt unter "Self Powered Configuration" findet man einen 
Spannungsteiler am /RESET des FT232, der den Pin auf Masse zieht, 
solange kein Anschluss an einen USB-Port erfolgt.

von Sepp (Gast)


Lesenswert?

Danke für eure Hinweise! Ich passe meine Schaltung an ...

Gruß
Sepp

von Sepp (Gast)


Lesenswert?

Hallo,

noch als Rückmeldung: Den C zu entfernen hat keinen Unterschied gemacht 
...

Ich hab's jetzt anders gelöst: Die BOOTRST-Fust habe ich rückgesetzt und 
springe jetzt über ein UART-Kommando zum Bootloader. Funktioniert stabil 
(sogar beser als davor).

Grüße
Sepp

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.