mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik mega32 zerstört


Autor: Donut (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Guten Tag!

Ich bin mittlerweile etwas verwzweifelt. Ich vermute ein relativ 
einfaches Anfänger-Problem, was Mikrocontroller angeht muss ich als 
solchen bezeichnen :)

Ich habe eine Schaltung mit MMC-Karte sowie Anbindung an eine 
RS232-Schnittstelle über UART. Die Schaltung ist in der anhegängten 
Grafik zu sehen. Fehler im Aufbau der Schaltung sind nach dem ca 7. 
Neuaufbau unwahrscheinlich geworden. Der Aufbau erfolgte allerdings 
immer auf dem selben Steckbrett.

Die Schaltung ist vollständig auf einem Steckbrett vorgenommen worden, 
da der uC später "In-Sytem-Programmable" sein soll. Ich programmiere mit 
einem USBasp mit avrdude und WinAVR über ISP. Darüber hinaus verwende 
ich folgende avrdude-Fuse-Einstellungen, welche vom Standard abweichen:
-U lfuse:w:0xef:m -U hfuse:w:0xd9:m
Dafür habe ich einen 16Mhz-Quarz am Controller (siehe Schaltung).

Die Grundsätzliche Funktion der Schaltung ist gegeben. Die Kommunikation 
mit einem Windows-PC lief Problemlos. Ebenfalls ist es mir auch schon 
gelungen, den Inhalt einer Textdatei von der SD-Karte zu lesen und deren 
Inhalt den den Rechner weiterzugeben. Verwendet wurde dafür die 
FAT-Bibliothek von Daniel R. (großen Dank hierfür!) in der Version 0.5.6 
. Es sollte angemerkt werden, dass die veränderte Beschaltung von Cs für 
die MMC auf PB2 in der mmc.h unter "#if defined (_AVR_ATmega32_)" 
geändert wurde. Verwendet wird das Beispielprogramm ohne Schreibzugriff. 
(Es wurde erweitert, jedoch blieben die Komfiguration der IO-Ports 
gleich)

Aber: Ich hatte es nun mehrere Male, dass nach Inbetriebnahme der 
Schaltung (etwa am Morgen eines weiteren Arbeitstages) der 
Mikrocontroller zerstört wird. Dies ist erkennbar an einem Stromfluss 
von 250mA - 300mA (Strombegrenzung 300mA) in der 5V- Versorgung der 
Schaltung.
Nachdem dies einmal aufgetreten ist, ist der uC nicht mehr 
funktionsfähig, es fließen ständig 300mA. Dies ist mit ATMEGA32 und 
ATMEGA32A passiert (was glaube ich hier nicht viel zur Sache tut).
Daraus resultierten bisher 5 defekte uCs. Nachdem einer wieder 
aufgegeben hat, habe ich stets jegliche Beschaltung mit Ausnahme der 
ISP-Programmierschnittstelle, den Quarz sowie Vcc, GND und AVcc 
entfernt. Wurde dann ein neuer uC eingesetzt funktuionierte dieser 
wieder. Er ließ sich dann auch programmieren. Dann habe ich alle Pins 
wieder wie in der Schaltung zu sehen belegt und die Schaltung 
funktionierte im ganzen wieder. Am Tag darauf konnte es dann passieren, 
dass er beim 1. anschalten wieder zerstört wurde.

Ich vermute irgendeinen Fehler in der Schaltung, welcher nur eineen 
Effekt hat, wenn der uC "hochfährt". Ein Fehler im Steckbrett will ich 
nicht ausschließen. Ich werde die Schaltung mit einer selbstgebauten 
Strombegrenzung nochmal auf einem anderen Board aufbauen, um eventuell 
den Fehler zu untersuchen, jedoch entsteht natürlich hier das Problem, 
dass der uC sich dan quasi sofort abschaltet, da die Versorgungsspannung 
einbricht und der Fehler eventuell gar nicht unetersucht werden kann.

hat jemand eine idee?

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast du bereits versucht, die angeschlossenen Pins des AVR zu schützen 
oder zu untersuchen, ob dort eine illegale Datenrichtung auftritt?

Das Schützen könntest du mit einem Serienwiderstand pro Pin machen, der 
den Stromfluß im Fehlerfall auf die zulässigen Werte beim AVR begrenzt.

Der Fehlerfall wäre z.B. wenn PB6 (MISO) mal auf Ausgang geschaltet 
wird.
Beitrag "74hc4050 ( o.ä.) darf am Ausgang"

Zum Thema externe Bauteile und ISP am SPI-Bus gibt es auch eine Appnote 
von Atmel. Darin wird auch das Thema Serienwiderstände angesprochen.

Kannst du deine Beobachtungen damit verbinden, ob der ISP Adapter 
und/oder die MMC-Karte eingesteckt ist/sind?

Autor: Donut (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
vielen dank für die Antwort und sorry für meine Lange Reaktionszeit.

Ich habe das Problem gefunden (nach noch 2x aufbauen und einem weitern 
toten uC): Es war streng genommen nicht mein Fehler. Die Labornetzteile, 
welche ich verwendet habe haben ein sehr schlechtes Einschaltverhalten. 
Jedes mal, wenn ich die Netzteile eingeschaltet habe (also am Anfang 
eines Tages) hats die Controller zerlegt, da eine hohe Überspannung 
auftrat.

Am Oszilloskopbild sieht man Spannungen zwischen 22V und -10V. Ich habe 
es nun so gehandhabt, dass ich vor dem Schalten der Netzgeräte (auch 
Ausschalten) einfach die Leitungen abziehe.

Ich habe deine Tipps trotzdem mal ausprobiert. Jeder verwendete Pin hat 
nun ein Widerstand von 270 Ohm als Schutz (wird ja nur CMOS geschaltet) 
und ich hatte eine Stromquelle zwischengeschaltet.

Autor: H.Joachim Seifert (crazyhorse)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nenn sie nicht Labornetzteile..., so ein Verhalten gehört sich nicht :-)

Polyfuse und TVS-Diode gehören inzwischen zu meiner Standardbeschaltung.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.