- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 35

Thema: (Mir) unerklärliches AVR-Sterben

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie Avatar von malthy
    Registriert seit
    19.04.2004
    Ort
    Oldenburg
    Beiträge
    1.379

    (Mir) unerklärliches AVR-Sterben

    Moin!

    Ich habe eine simple Schaltung auf Basis eines mega168 aufgebaut. Das anhängende Schaltbild (ganz unten) zeigt das Wesentliche, nicht mit dargestellt sind nur ein FT232RL (an den Signalen TXD_FT232 und RXD_FT232) und ein synchron serieller DAC (an den Signalen DOUT und PD_SCK). Die Teile funktionieren (s.u.), ich habe sie hier einfach aus Platzgründen weggelassen. Das LCD verfügt über einen KS108 kompatiblen Controller. Sorry übrigens für das etwas pfuschige Schaltbild, hab's auf die Schnelle zusammengehauen ...

    Die Schaltung ist in SMD auf einer ordentlichen Platine aufgebaut.

    Ich habe nun zum zweiten Mal folgendes Problem:
    nach dem Aufbau funktioniert zunächst alles einwandfrei (LCD, UART, DAC), sodass ich mit der eigentlichen Firmwareentwicklung beginnen kann. Nach etwa dem 20. Flashen (sehr grob geschätzt) häufen sich Fehler beim Verifizieren nach dem Flashen, und die Firmware läuft auch folgerichtig nicht wie sie soll. Nach einigen weiteren Flash-Vorgängen treten dann jedesmal Fehler beim Verifizieren auf, ich kann den Controller also effektiv nicht mehr flashen. Ein paar Mal kann ich dann immerhin noch die Device Kennung auslesen, bis das dann auch nicht mehr geht. Ich flashe idR aus BASCOM, habe testweise auch mit AVRDUDE geflasht und dabei zwei verscheidene ISP Dongles getestet (USBASP und USBtinyISP) - mit dem gleichen Ergebnis.

    in AVRDUDE
    Code:
    avrdude: error: program enable: target doesn't answer. 1
    avrdude: initialization failed, rc=-1
    in Bascom
    Code:
    Could not detect chip, Auto program failed
    Chip ID: FFFFFF
    Mit den Dongles kann ich andere AVRs problemslos flashen (Positivkontrolle). Wenn ich mir ansehe, was auf dem ISP nach dem Defekt los ist, fällt auf, dass RESET, SCK und MOSI tun was sie sollen (auf den ersten Blick, habe mir den Bitstrom nicht genauer angesehen) aber MISO permanent auf low bleibt. Ich habe mal den Eingangswiderstand von allen ISP Pins am Controller nach Masse gemessen, die sind alle um die 10k, MISO hat also zumindest keinen Schluss nach Masse. Außerdem habe ich die Pins vom ISP, die das LCD parallel nutzt, vom LCD getrennt, das hat dann auch nichts mehr geändert (zu dem Problem siehe unten).

    Was mich stutzig macht ist, dass ich das exakt gleiche "Todes-Szenario" jetzt zum zweiten Mal habe. D. h. ich habe den ersten Controller wieder von der Platine runtergefönt und einen neuen draufgesetzt und von vorne angefangen - wie gesagt, mit dem gleichen Ausgang, erst geht alles, dann ist das Flashen nur noch sporadisch erfolgreich, bis der Controller dann schließlich augenscheinlich tot ist.

    Wie man sieht, nutze ich die ISP Pins auch für's LCD. Ich weiß, dass Application Note AVR910 für diesen Fall empfiehlt, Peripherie am ISP durch Widerstände zu "entkoppeln". Das habe ich mir hier in der Tat gespart, weil ich noch nie Probleme dieser Art hatte. Okay, das mag ein Fehler sein, aber: Selbst wenn diese Doppelnutzung zu Schreibfehlern beim Flashen führen sollte, kann ein Controller dadurch hardwaremäßig Schaden nehmen? Kann ich ihn also "kaputtflashen"? Können dabei die Fusebits vielleicht total verdreht werden?

    Sorry für die vielen Worte, hat jemand vielleicht eine Idee, wo das Problem liegen könnte? Im Moment steht nur auf meiner Liste, beim nächsten Mal Widerstände zwischen LCD und ISP-Pins einzubauen. Bin ansonsten mit meinem Latain gerade etwas am Ende ...

    Ganz vielen Dank!
    Malte

    Klicke auf die Grafik für eine größere Ansicht

Name:	schalt01.jpg
Hits:	76
Größe:	75,5 KB
ID:	29120

  2. #2
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    72
    Beiträge
    11.077
    Hallo!

    Zitat Zitat von malthy Beitrag anzeigen
    Sorry für die vielen Worte, hat jemand vielleicht eine Idee, wo das Problem liegen könnte? Im Moment steht nur auf meiner Liste, beim nächsten Mal Widerstände zwischen LCD und ISP-Pins einzubauen. Bin ansonsten mit meinem Latain gerade etwas am Ende ...
    Ich würde zuerst einen mega168 genauso flaschen ohne ihn danach mit der o.g. Schaltung zu verbinden um die Quelle der wachsender Menge vom Fehlern eindeutig zu finden.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  3. #3
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.652
    ... Sorry für die vielen Worte, hat jemand vielleicht eine Idee, wo das Problem liegen könnte? ...
    Genaugenommen habe ich keinen Peil dazu. ABER ich hatte mal (ich erinnere mich ungern und sehr dunkel daran) ähnliches erlebt. Hatte den (die!) Controller dann "ausserhalb" jeglicher Beschaltung getestet und für gut befunden und danach die Platine nachgebessert. Was im Einzelnen war, weiß ich nicht mehr.
    Ciao sagt der JoeamBerg

  4. #4
    Erfahrener Benutzer Roboter Genie Avatar von malthy
    Registriert seit
    19.04.2004
    Ort
    Oldenburg
    Beiträge
    1.379
    Hallo!

    Vielen Dank für's Mitdenken!

    Ich würde zuerst einen mega168 genauso flaschen ohne ihn danach mit der o.g. Schaltung zu verbinden um die Quelle der wachsender Menge vom Fehlern eindeutig zu finden.
    Hatte den (die!) Controller dann "ausserhalb" jeglicher Beschaltung getestet und für gut befunden und danach die Platine nachgebessert.
    Die Controller sind in SMD Bauform, insofern ist schnelles "woanders" flashen nicht ganz so einfach. Vor allem glaube ich, dass das auch nicht der Punkt ist: ich konnte sie ja zunächst erfolgreich in der Zielschaltung programmieren, sie liefen dort ja - zunächst - einwandfrei. Mich wundert vor allem das "graduelle Sterben", also dass ich erst noch hin und wieder erfolgreich flashen kann, dann nicht mehr flashen kann, aber zunächst noch die device signature lesen, bis auch dieses nach einigen Lesevorgängen nicht mehr geht und der Controller dann offenbar ganz tot ist. Hat jemand speziell dazu eine Idee?

    Gruß
    Malte

  5. #5
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Kann es sein, dass die Spannungsversorgung nicht in Ordnung ist, und der Regler Zeitweise schwingt ? Das könnte den µC eventuell beschädigen, auch wenn zumindest die alten recht robust gegen Überspannung waren (wurde heiß, gingen nach dem Abkühlen oft aber wieder).

    Möglich wäre ggf. noch das die Schaltung irgendwie Empfindlich auf ESD reagiert, entweder über die Taster oder ähnliches, oder auch einfach bei Verbinden des ISP Programmers. Ein Problem könnte ggf. auch Fehler (Unterbrechung) bei der Platine sein, so dass viel Strom zwischen den GND oder VCC Anschlüssen fließen kann - auch damit kriegt man den µC ggf. kaputt.

    Beim Plan fehlt noch der Abblockkondensator am VCC Anschluss für den analogen Teil. Da sollte normal keine echtes Problem sein, könnte aber unter ungünstigen Bedingungen dafür sorgen das der Brownout Detektor zu früh anspricht, und damit ggf. den µC lahm legt.

  6. #6
    Erfahrener Benutzer Roboter-Spezialist Avatar von schorsch_76
    Registriert seit
    25.03.2012
    Ort
    Kurz vor Neuschwanstein
    Alter
    47
    Beiträge
    456
    Wie schaut die Betriebsspannung aus? Mach mal ein Scope mit einem Oszi....

    Die Reset Schaltung gefällt mir nicht ... Schau dir dazu das Hardware Design Appnote von Atmel an ... [1] Seite 6. Ich hab es so ausgeführt.

    Reset Schaltung:
    Klicke auf die Grafik für eine größere Ansicht

Name:	2014-09-27_18:13:18.png
Hits:	45
Größe:	7,4 KB
ID:	29124

    Ist die Peripherie sicher auch auf TTL Pegel?
    Ziehen irgendwelche Bauteile mehr als die Pins hergeben können? (max. 20 mA).
    Ist die gesamt abgegebene Leitung des Atmega in grünen Bereich?
    Ist das Display ein TTL Typ oder etwa eine 3.3V Variante? dann könnte zu viel Strom fliessen ...
    Pin 4 und Pin 6 brauchen jeweils eigene 100nF Stützkondensatoren.
    Avcc braucht auch einen eigenen Stützkondensator.

    Erzeugung +5V:
    Klicke auf die Grafik für eine größere Ansicht

Name:	2014-09-27_18:14:31.jpg
Hits:	36
Größe:	27,8 KB
ID:	29125

    [1] http://www.atmel.com/images/atmel-25...ote_avr042.pdf

  7. #7
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    72
    Beiträge
    11.077
    @ malthy

    Ich wundere mich nur, das du für Entwicklung einen µC in SMD nimmst, wenn es gleichen in DIL gibt.
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

Ähnliche Themen

  1. Cortex M3 unerklärliches Interrupt Verhalten
    Von Siro im Forum ARM - 32-bit-Mikrocontroller-Architektur
    Antworten: 8
    Letzter Beitrag: 18.01.2012, 16:20
  2. Unerklärliches Zurücksetzen von Variablen im SRAM
    Von autoguider im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 9
    Letzter Beitrag: 04.10.2007, 15:07
  3. LCD´s sterben wie die Fliegen...
    Von Sauerbruch im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 41
    Letzter Beitrag: 04.06.2007, 13:35
  4. AVRs sterben in Massen (nicht mehr) ab - Woran lag es??
    Von Jon im Forum AVR Hardwarethemen
    Antworten: 8
    Letzter Beitrag: 11.05.2007, 13:26
  5. Antworten: 9
    Letzter Beitrag: 17.07.2006, 22:47

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

fchao-Sinus-Wechselrichter AliExpress