- Akku Tests und Balkonkraftwerk Speicher         
Seite 3 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 21 bis 30 von 35

Thema: (Mir) unerklärliches AVR-Sterben

  1. #21
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.191
    Anzeige

    Praxistest und DIY Projekte
    Ich hatte mal so ein ähnliches Problem mit nem CAN Bus Transceiver auf den ISP Ports.
    Immer wieder mal liess sich der Controller nicht flashen und schien Tot zu sein.
    Der Grund war, das sich die Fuses für die Takteinstellung verstellt hatten.
    Nachdem ich einen extern Takt angelegt hatte, konnte ich die Fuses neu setzen und der Controller funktionierte wieder.
    Erst als der Can Transceiver mittels Pull Down Widerstand auf der !CE Leitung "stumm" geschaltet wurde trat das Problem nicht mehr auf.

    Da beim ATMEGA die nicht benutzten Ports beim proggen in Tri State sind, könnte das Display zeitweise kurze Impulse auf die ISP Pins bringen, die den Programmiervorgang stören bzw. falsch Bits setzen.
    Mein Vorschlag wäre die beiden CE Pins des Displays per Pull(up)down auf festes ( inaktives ) Potential zu legen.
    Also bei aktiv high ein Pulldown bzw. umgekehrt.

  2. #22
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    04.07.2012
    Beiträge
    201
    Hallo,

    hat zwar nichts mit dem Flashen zu tun aber sind die internen Pullups für die Taster eingeschalten? Hatte erst gedacht die Taster wären Öffner, liegt aber wohl an dem Kreuz was da Eagle immer rein macht. Evtl. gabs da mal einen Kurzschluss der dem Chip nicht gut bekam?

    Den Gesamtstrom mal gemessen? Evtl. gibts doch irgenwo einen Kurzschluss auf der Platine?

    Ansonsten stimme ich Klebewax zu.

    mfG
    Mario
    Wenn das die Lösung sein soll...
    ...will ich mein Problem zurück !!!

  3. #23
    Erfahrener Benutzer Roboter Genie Avatar von malthy
    Registriert seit
    19.04.2004
    Ort
    Oldenburg
    Beiträge
    1.379
    Danke für alle weiteren Hinweise!

    Das Fehlerbild fehlender Cs passt weder zu "geht garnicht" noch zu "stirb langsam" und auch nicht zu "geht kaputt" [...] Damit will ich nicht sagen, daß man Abblocks-Cs vernachlässigen soll, aber sie erklären nicht jedes Problem.
    So in etwa meinte ich das auch. Ich geben allen völlig recht, dass ich zu nachlässig mit den Ablock-Cs war. Trotzdem ist der Aufbau weit davon entfernt, keine Abblock-Cs zu haben. Da alles in SMD aufgebaut ist, sind die 100 nF für den µC auch wesentlich näher am Die als sie es jemals bei einem THT/DIP Aufbau sein würden. Aber nochmal: auch das werde ich in Rev. 2 der Platine verbessern!

    Für mich erscheint die gemeinsame Nutzung von Pins durch ISP und LCD verdächtig, insbesondere weil sich der Defekt des µCs beim Programmieren zeigt. Wie sehen denn die ISP-Signale aus, wenn sich der Chip nicht programmieren läßt? Geht er doch noch, wenn man das LCD abtrennt? In dieser Richtung würde ich weiter forschen.
    Ja, so bin ich ja auch rangegangen. Ich hatte es oben schon mal geschrieben: beim Versuch zu flashen tut sich nichts auf MISO, die anderen Signale sehen sinnvoll aus (habe aber nicht im Detail in die Daten geguckt). Habe das LCD auf den betroffenen Signalen zwischenzeitlich auch wieder vom µC getrennt, das hat keinen Erfolg gebracht.

    Im folgenden Bild ist der Verlauf der ISP Signale beim Versuch mit AVRDUDE/USBASP zu flashen zu sehen. Ich habe blöderweise die Horizontalskala im Bild abgeschnitten, der low-Puls auf MOSI ist 20 ms lang, das nur zur zeitlichen Orientierung.

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

Name:	ISP.jpg
Hits:	16
Größe:	17,5 KB
ID:	29132

    EDIT: sch*** Kompression, sorry für die schlechte Qualität. Reihenfolge der Signale: MISO, CLK, MOSI, RST

    Der Grund war, das sich die Fuses für die Takteinstellung verstellt hatten.
    Nachdem ich einen extern Takt angelegt hatte, konnte ich die Fuses neu setzen und der Controller funktionierte wieder.
    Daran hatte ich auch gedacht, habe gestern mal einen externen Taktgeber an PB6 (XTAL1) angeschlossen, leider ohne Erfolg. Andere Möglichkeiten fielen/fallen mir nicht ein, zumindest muss ich ja "Kontakt" zu dem µC bekommen um die Fusebits wieder glattzubügeln - falls das überhaupt das Problem ist.

    Mein Vorschlag wäre die beiden CE Pins des Displays per Pull(up)down auf festes ( inaktives ) Potential zu legen.
    Also bei aktiv high ein Pulldown bzw. umgekehrt.
    Weiß jemand sicher ob die CS Signale beim KS108 active high oder active low sind? Ich habe ein Datenblatt in dem dazu nichts steht, und ein chinesisches dass ich so interpretiere dass sie active high sind. In letzterem Falle würde ich dann natürlich Pull-Downs einsetzen.

    hat zwar nichts mit dem Flashen zu tun aber sind die internen Pullups für die Taster eingeschalten?
    Die Taster sind ganz normale Schließer. Die sind auf der Platine noch garnicht bestückt, können also bisher keinen Einfluss gehabt haben.

    Den Gesamtstrom mal gemessen? Evtl. gibts doch irgenwo einen Kurzschluss auf der Platine?
    Hatte ich oben schon geschrieben, die Stromaufnahme liegt bei 80 mA wegen dem LCD Backlight. Die Schaltung funktioniert ja zunächst, insofern kann es keinen "groben" Fehler im Layout geben.

    Gruß
    Malte
    Geändert von malthy (28.09.2014 um 10:15 Uhr)

  4. #24
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    66
    Beiträge
    2.435
    Hallo Malte,
    Zitat Zitat von malthy Beitrag anzeigen
    Die Versorgungsspannung sieht okay aus, ich wüsste auch erstmal nicht, wo es da haken könnte. Die Erzeugung der 5V ist 08/15 folgendermaßen realisiert:

    Anhang 29126
    Hier ist schon der erste Fehler.
    Du solltest noch , möglichst direkt am 7805 noch 100-220nF Keramik (Jeweils parallel zu C4 und C9) schalten.

    Ohne diese neigen die 7805 dazu, bei Lastwechseln Transienten zu erzeugen und diese mögen die Halbleiter gar nicht.

    MfG Peter(TOO)

    - - - Aktualisiert - - -

    Du solltest dies hier mal durchlesen:
    http://de.wikipedia.org/wiki/Flash-Speicher#Funktionsprinzip

    Auf dem Chip befindet sich noch eine Ladungspumpe, welche zum Programmieren eine höhere Spannung erzeugt. Dieser Teil ist nur während des Programmier-Modus aktiv.

    Das praktische Problem beim programmieren ist, dass man, um schnelle Programmierzyklen zu haben, relativ nahe an die Durchschlagsspannung der Isolation der Floating Gates gehen muss. Da ist dann kein Platz mehr für Transienten.
    Grundsätzlich hat man immer das Problem, dass Ionen aus der Umgebung in die Isolationsschicht wandern. Dies ist auch der Grund für die nur endliche Anzahl von Programmierzyklen, mit den Zyklen wird die Isolationsschicht zerstört.

    In den Anfängen (EPROM und EEPROM) lag man so um die 100 Zyklen.
    Die erste Generation FLASH-Speicher lag im Bereich von 1'000 bis 10'000 Zyklen, heute liegt man bei 100'000 bis 1'000'000 Zyklen.

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

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

    Du solltest noch , möglichst direkt am 7805 noch 100-220nF Keramik (Jeweils parallel zu C4 und C9) schalten.
    Ja, vielen Dank, das Thema hatten wir ja oben schon mal. Es sind in meinem Falle keine Elkos sondern Tantals an dem 7805 verbaut, das sollte das Problem zwar etwas mildern, aber ich werde die KerKos auf jeden Fall ergänzen.

    Gruß
    Malte

  6. #26
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.09.2009
    Ort
    Berlin (Mariendorf)
    Beiträge
    1.023
    Zitat Zitat von malthy Beitrag anzeigen
    Weiß jemand sicher ob die CS Signale beim KS108 active high oder active low sind?
    Der KS0108 / KS0108B besitzen zwei L-aktive und einen H-aktiven Chipselect. Meist ist nur (jeweils) einer davon nach aussen an die Kontaktleiste geführt. Die ChipSelects sind aber nicht der einzige Ansatzpunkt. Die Polarität des R/W ist am Chip eindeutig und wird kaum im LCD-Modul invertiert werden. Hier fürs Erste ein PullDown, dann gibt es keinen Krieg der Ausgangspins mehr. Gleiches gilt alternativ für den Enable-Eingang. Die Polarität der CS lässt sich dann experimentell rausfinden: alle gleichartig setzen oder löschen - entweder fühlen sich beide GLCD-Controller angesprochen oder keiner; das macht keinen Schaden.

  7. #27
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    06.08.2008
    Ort
    Graz
    Beiträge
    521
    Hatte einmal genau das gleiche Fehlerbild, da war der 7805 defekt. Lieferte lt. Multimeter konstante 5V, am Oszi waren aber Peaks bis 10V sichtbar, die innerhalb kurzer Zeit die Atmegas zerstörten. Typischerweise ging das Flashen gut, da hier auch die Stromversorgung vom Flash Adapter einiges ausbügelte. Aber danach blieben nur Minuten bis zum Defekt.

    LG!
    alles über meinen Rasenmäherroboter (wer Tippfehler findet darf sie gedanklich ausbessern, nur für besonders kreative Fehler behalte ich mir ein Copyright vor.)

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

    Zitat Zitat von damfino Beitrag anzeigen
    Hatte einmal genau das gleiche Fehlerbild, da war der 7805 defekt. Lieferte lt. Multimeter konstante 5V, am Oszi waren aber Peaks bis 10V sichtbar, die innerhalb kurzer Zeit die Atmegas zerstörten.
    Ganz ausschließen kann ich auch das nicht, allerdings habe ich mir dir Versorgungsspannung relativ genau angesehen. Da ich jetzt eh das PCB überarbeite spendiere ich auch einen neuen 7805.

    Zitat Zitat von RoboHolIC Beitrag anzeigen
    Die Polarität des R/W ist am Chip eindeutig und wird kaum im LCD-Modul invertiert werden. Hier fürs Erste ein PullDown, dann gibt es keinen Krieg der Ausgangspins mehr. Gleiches gilt alternativ für den Enable-Eingang. Die Polarität der CS lässt sich dann experimentell rausfinden: alle gleichartig setzen oder löschen - entweder fühlen sich beide GLCD-Controller angesprochen oder keiner; das macht keinen Schaden.
    Nur noch mal zum Verständnis: Es sollte doch schon genügen R/W auf read, also low zu halten. Damit sollte auf den Datalines nichts mehr passieren. Zusätzlich gibt es ja auch noch einen avtive-low Reset Signal, das ich ebenfalls runterziehen könnte. Für meine Begriffe sind dann weitere Maßnahmen (insb. an enable und den chip selects) an dieser Stelle überflüssig, oder übersehe ich etwas?

    Danke!

    Gruß
    Malte

    - - - Aktualisiert - - -

    Okay, eigentlich albern zwei Widerstände zu sparen ... also ziehe ich CS1 und CS2 auch noch runter. Das folgende Bildchen gehört lt. Verkäufer zu dem von mir verwendeten LCD, ich lese das so, dass die CSs active high sind.

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

Name:	UL8hjYkXidbXXagOFbXV.jpg
Hits:	17
Größe:	137,2 KB
ID:	29140

  9. #29
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    02.09.2009
    Ort
    Berlin (Mariendorf)
    Beiträge
    1.023
    Zitat Zitat von malthy Beitrag anzeigen
    Es sollte doch schon genügen R/W auf read, also low zu halten. Damit sollte auf den Datalines nichts mehr passieren. Zusätzlich gibt es ja auch noch einen avtive-low Reset Signal, das ich ebenfalls runterziehen könnte. Für meine Begriffe sind dann weitere Maßnahmen (insb. an enable und den chip selects) an dieser Stelle überflüssig, oder übersehe ich etwas?
    Nein, du übersiehst meines Erachtens nichts. Ich schrieb ja auch, dass der Enable alternativ zum R/W in gleicher Weise den Bus ins TriState schalten kann. Der Reset könnte die selbe Wirkung haben. Darauf verlassen würde ich mich nicht, denn der Reset ist eine interne Angelegenheit des Controllers und hat nicht unmittelbar mit dessen Interface zu tun. Ich meine aber, dass er eben doch im Reset "die Beine hoch zieht"; insofern eine weitere Möglichkeit zur Passivschaltung.

    Zitat Zitat von malthy Beitrag anzeigen
    Das folgende Bildchen gehört lt. Verkäufer zu dem von mir verwendeten LCD, ich lese das so, dass die CSs active high sind.
    Das sehe ich auch so.

  10. #30
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    66
    Beiträge
    2.435
    Hallo,
    Zitat Zitat von RoboHolIC Beitrag anzeigen
    Nein, du übersiehst meines Erachtens nichts. Ich schrieb ja auch, dass der Enable alternativ zum R/W in gleicher Weise den Bus ins TriState schalten kann. Der Reset könnte die selbe Wirkung haben. Darauf verlassen würde ich mich nicht, denn der Reset ist eine interne Angelegenheit des Controllers und hat nicht unmittelbar mit dessen Interface zu tun. Ich meine aber, dass er eben doch im Reset "die Beine hoch zieht"; insofern eine weitere Möglichkeit zur Passivschaltung.
    R/W ist eigentlich der falsch Kandidat!

    E und die CS wären die Kandidaten.
    Der Chip kann nur angesprochen werden wenn E und CS aktiv sind.
    Wenn E Low ist sind die Datenleitungen immer hochohmig, egal welchen Pegel R/W hat.

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

Seite 3 von 4 ErsteErste 1234 LetzteLetzte

Ä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
  •  

Solar Speicher und Akkus Tests