Guten Morgen, Ich habe ein Problem: Ich habe ein kleines Entwicklungsboard gebaut mit nur einem uC (ATMega328P), externen Quarz (8MHz), Spannungsversorgung (3,3V) und einem USB-to-UART-Modul. Wenn ich den uC mit einem kleinen Testprogramm flashen will, funktioniert das auch einwandfrei (AVR-Studio 6.1, JTAGICE mkII). Gehe ich dann aber auf Debuggen, fragt das Programm mich einmal, ob ich die DWEN-Fuse setzen will. Das bestätige ich mit ja, danach toggle ich die Spannung am Target und normalerweise kann ich dann debuggen. Komischerweise funktioniert das nicht. Es kommt immer eine Fehlermeldung, dass es beim Aktivieren des Debug-Modes einen Fehler gab. Ich kann jetzt weder mit dem Flash-Tool auf den uC, um Fuses zu ändern oder ein Programm zu flashen, noch kann ich debuggen. Ich habe es dann noch mit einem zweiten uC probiert -> genau das gleiche (beide uCs waren neu und das erste mal in Gebrauch). Was kann das sein? Danke für eure Hilfe!! mfg Andy
Ich habe es nun mit einem anderen Board und auch mit einem ATMega328P probiert - da funktioniert es einwandfrei. Ich kann in den Debug-Modus wechseln und debuggen und ihn auch wieder deaktivieren. Das verstehe ich nicht. Ich habe die Verkabelung schon x-Mal überprüft. Muss ja passen, anfangs hat das Flashen ja funktioniert. Ich bin ratlos... Danke für eure Hilfe! mfg
Was erwartest Du? Kennen wir den Aufbau? Kennen wir die Qualität der Lötarbeit? Kennen wir den wichtigen Rest, in dem er Fehler versteckt ist? Willst Du eine geratene Fehlerdiagnose? Hier ist sie: Der Fehler liegt am Board. Ist zwar eine sinnfreie Aussage, aber wenn sie Dir hilft?
So, Leute... Ich habe den Fehler gefunden. Ist aber irgendwie komisch: Ich versorge meine uCs mit 3,3V - die BrownOutDetection stelle ich auf 2,7V. Danach gehe ich in den debugWire-Modus und danach kann ich nicht mehr auf den uC zugreifen. Gestern habe ich weitere uCs bekommen und das Programm mal geflasht und ohne Debuggen probiert -> funktionierte ebenfalls nicht. Dann bin ich draufgekommen, dass das BOD-Level die Ursache war. Wenn ich es deaktiviere, funktioniert alles einwandfrei. Also habe ich bei den beiden "verfusten" uCs auch 5V anstatt 3,3V angelegt und siehe da: ich komme in den Debug-Modus und kann debuggen und auch debugWire deaktivieren. Nun, wie kann das sein, dass ein BOD-Level von 2,7V bei 3,3V Versorgung schon einen Reset auslöst? Hat das bei euch auch schon wer beobachtet? Übrigens: Ich habe hier eine Platine, ebenfalls mit einem 328p (im TQFP) - da funktioniert es einwandfrei... lg Andy
Andreas P. schrieb: > Nun, wie kann das sein, dass ein BOD-Level von 2,7V bei 3,3V Versorgung > schon einen Reset auslöst? Wie werden die 3,3V erzeugt und gesiebt? Mach mal direkt am MC einen 100nF und auf der Platine einen 100µF an VCC. Sind auch sämtliche (A)VCC-, GND-Pins des MC angeschlossen?
Die 3,3V werden mit einem LD33V (mit Kondensatoren am Eingang und Ausgang) erzeugt. Die Vcc steht auch stabil auf ca. 3,28V. Was jetzt sein kann (ich bin gerade nicht vor der Schaltung), dass ich AVcc nicht beschaltet habe... Könnte das die Ursache sein?? Danke!
Hast du an allen Vcc Eingängen keramische Abblockkondensatoren? 0,6V Einbruch hat sich schnell bei entsprechender Leitungsinduktivität. Wie oben schon gesagt: Schaltplan, Bild vom Aufbau.
Ja, die 100nF-KOs sind vorhanden. Wie gesagt: Ich habe wahrscheinlich AVcc nicht beschalten - werde ich heute am Abend gleich nachbessern. Der Aufbau ist auf einer Lochrasterplatine - habe aber extra drauf geachtet, dass Leitungslängen klein gehalten werden...
Andreas P. schrieb: > AVcc nicht beschaltet habe... Könnte das die Ursache sein?? Ja. Nur weil der Pin unter anderem auch den ADC versorgt, ist er nicht überflüssig, wenn man den ADC nicht verwendet.
An AVCC hängen auch die Analogkomaratoren, Referenzen usw. Da die Brownout Detection sicherlich mit Komparator und Referenzspannung arbeitet ...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.