Hallo miteinander, ich habe ein Problem mit einer Schaltung die den STM32F103RBT6 enthält. Und zwar ist mir jetzt innerhalb kürzerer Zeit schon das zweite Board abgeraucht und ich würde gerne Ursachenforschung betreiben um die Ursache zu beheben bevor ich die Schaltung in etwas größerer Stückzahl fertige. Das Board ist eine Entwicklung von mir und enthält neben dem genannten STM32F auch eine CAN-Schnittstelle und 2 H-Brücken um DC Motoren steuern zu können. Das ganze Board kann ich jetzt leider nicht hier posten, da es auch vom Umfang her eher den Rahmen sprengen würde. Zunächst hat auch alles problemlos funktioniert. Ich konnte die Peripherals alle so ansprechen wie ich mir das vorgestellt habe. Zum Problem: Von einem Moment auf den anderen funktioniert gar nichts mehr. Der Spannungsregler für 3,3V wird extrem heiß und liefert dementsprechend auch nicht mehr die benötigte Spannung um den Mikrocontroller zu betreiben. Eine Widerstandsmessung mit dem Multimeter zwischen GND und 3,3V Leitung ergibt auch noch ganze 1,5 Ohm was natürlich so nicht sein darf. Jetzt kann ich mir das ganze irgendwie nicht erklären, da das von jetzt auf sofort passiert ist und es anscheinend auch so ist dass der Kurze im Prozessor ist, da es an einer bestimmten Stelle im Prozessor deutlich warm wird. Hat jemand eine Idee woran so etwas liegen kann? Normalerweise drüfte doch nicht plötzlich ein Kurzer im Prozessor auftauchen, oder? Und wenn doch, was kann die Ursache dafür sein? VG Michael
Hehe, ja das stimmt natürlich! Aber ein Reset müsste ihn ja wieder in den Anfangszustand zurücksetzen. An der Software wurde auch seit dem letzten erfolgreichen Test nichts mehr geändert. Von daher ist es extrem unwahrscheinlich, dass er jetzt jedes mal sofort in einen Codeabschnitt springt in dem er den Kurzen produziert. Von daher hab ich das mal ausgeschlossen. Gruß Michael
hat sonst niemand eine Idee? Es kann doch nicht sein, dass mir einfach so reihenweise die Prozessoren abrauchen, oder???
ersetz den motor mal durch ne ohmsche last. und "ich" vertraue deiner SW natürlich auch nicht - falls initialisierung o.ä. zB nicht zum layout passen, rauchts. da hab ich beim großen B als prakti mal den fehlerjäger gespielt...erstaunlich, wie heiß der asic wurde und trotzdem noch halbwegs lief :) Klaus.
Ich vermute es haben viele Leute viele Ideen, aber keine Lust alle 15927 mögliche Ursachen brainstrommässig hier aufzählen zu müssen, nur um dann zu hören "kann nicht sein, trifft hier nicht zu, ist berücksichtigt, usw". Und da keinerlei verwertbare Information, wie Schaltbild, Aufbau, usw vorliegt...
fang an, die Bauteile runter zu löten und messe nach jedem Bauteil erneut den Widerstand. Hast du eine Schutzdiode drin, die vielleicht niederohmig ist?
Hi, vielen Dank für eure Antworten. Das ich nich viel brauchbare Infos gegeben habe, gebe ich ja gerne zu. Meine Frage war ja eher dahingehend, was passieren muss, damit ein Prozessor bei unveränderter Software plötzlich so viel Strom zieht, dass der Spannunswandler diesen nicht mehr liefern kann und ausschaltet. Das Ihr meiner Software nicht traut ist auch klar. Bloß hab ich ja gar keine Möglichkeit mehr den Controller zu Flashen, weil er aufgrund des Kurzen nicht mehr mit ausreichend Spannung versorgt wird. Mit der 3,3V Versorgung wird auch nur der Prozessor versorgt. Für die restlichen Bauteile ist ein extra 5V Spannungsregler eingebaut, welcher einwandtfrei funktioniert und auch nicht warm wird. Eine Schutzdiode, die niederohmig ist, ist nicht eingebaut. Danke Michael
...dann löte den proz mal runter, lösche ihn und versorge ihn OHNE firmware mit 3.3v - wird er dann immernoch warm? so kannst du sw und hw testen. dann nur deine fw flashen und laufen lassen auf nem eval, OHNE deine platine. läuft er dann sauber? oder hast du zb sw stände oder hw stände, bei denen du noch weißt, dass aif jeden fall alles gut lief? dann änderungen ab da nochmal GENAU nachvollziehen (am besten nicht montag morgens). bitte um antworten. Klaus.
Talarion schrieb: > Meine Frage war ja eher dahingehend, was passieren muss, damit ein > Prozessor bei unveränderter Software plötzlich so viel Strom zieht, dass > der Spannunswandler diesen nicht mehr liefern kann und ausschaltet. Pin überlastet, Latchup durch falsche Spannungen am Pin, Stromversorgung schwingt, Lastinduktion schlägt auf Vcc oder Steuerleitungen durch, ...
Hi, vielen Dank!!! ok, dann muss ich mir wohl überlegen, wie ich den Prozessor runtergelötet bekomme. Hab leider hier an der Uni keine Möglichkeiten dazu, aber irgend etwas wird mir schon einfallen. Zum Thema Stände: Hardwaremäßig wurde überhaupt nichts geändert. Auch ohne Motoren und jegliche andere Peripherie die sich abstöpseln lässt ist das Verhalten wie beschrieben. Softwaremäßig habe ich eine getagte Version ausm SVN gezogen, die vorher tagelang funktioniert hat und diese geflasht bevor das Problem aufgetreten ist. Es ist natürlich nicht auszuschließen, dass es trotzdem an der Software liegt, aber naja... Vielen Dank trotzdem für die Antworten Michael
svn, immerhin etwas :) gut, wenns ohne periph auch mist ist, dann muss der proz da ERSTMAL runter. "auf einmal" schleicht sich aber auch kein fehler ein - aber du kennst das ja, man behauptet steif & fest, da wär nix geändert oder sonstwas und auf einmal dämmert es einem in einem ruhigen moment, zB beim ka**en, und man schämt sich selbst...aber dazu brauch es etwas zeit, also warten wir mal ab :) ansonsten halt das "gewöhnliche" sw debugging... Klaus.
> Mit der 3,3V Versorgung wird auch nur der Prozessor versorgt. Für die > restlichen Bauteile ist ein extra 5V Spannungsregler eingebaut... Und die Peripherals geben dann nicht zufällig 5V-Signale auf den 3,3V-Controller zurück?
:-) teils, teils! Auf die Pins die mit FT gekennzeichnet sind, gebe ich schon teilweise 5V drauf. Ansonsten nicht, nein!
was sein KÖNNTE: evtl. sind da dioden gegen +Vcc und GND drin gegen Spannungen außerhalb des zulässigen Bereichs. Vom Abschalten eines Motors her KÖNNTE es dann sein, dass sich da irgendeine hohe Spannung verirrt und dir da was durchbrät. Afaik sind Halbleiter die Zerstört sind meistens in beide Richtungen recht gut leitend. Nachdem die Schutzdioden evtl. weg sind kommen die nächsten Teile der Schaltung dran. Und irgendwann wirds dann zu viel ;-)
mannnnn, jetzt poste doch mal den schaltplan, nur so kann man auch sehen, ob es vielleicht ein Problem mit dem übersprechen gibt, Stromversorgung, Motorregelung usw. Sonst kann Dir, wie schon mehrfach gesagt, sowiso keiner wirklich helfen. Gruss, Ingo. PS: wie sieht's mit ESD aus? Könnte es da Probleme geben? zum möglichen Latchup hast Du ja noch nichts gesagt .... es hilft dabei, die mails auch ganz zu lesen ...
Hi, ok, alles klar. Anbei jetzt der Schaltplan. Hoffentlich hilfts! Latchup ist wohl vorstellbar. Wenn dann innerhalb vom Mikrocontroller. Aber wie kann man das im nachhinein feststellen? Macht es dann evtl. Sinn in der nächsten Version an den entsprechenden Stellen externe Schutzdioden einzubauen??? VG Michael
Hallo, sind die beiden Kondensatoren vor den Spannungsreglern nicht ein wenig groß geraten? Ich vermute mal, 100nF wären dort eine bessere Wahl. vielleicht schwingt da etwas? Hast Du mal die Versorgungsspannungen im Betrieb mit einem Oszi überprüft? Gerade bei Schaltvorgängen etc? Einen Latchup siehste wohl nur bei ausgelötetem Controller; es wäre interessant, wo genau der große Strom herfließt (welche Pins betroffen sind). Ingo
> sind die beiden Kondensatoren vor den Spannungsreglern nicht ein wenig > groß geraten? Das passt schon, ich würde allerdings noch jeweils 0,1µ parallel schalten. Den R15 würde ich allerdings gegen 3,3V schalten, damit der Porteingang nicht dauernd 5V sieht.
Ich denk auch, dass die 10uF passen. Die verwendeten Motoren sind recht noisy und deswegen ist das so gelöst worden. Versorgungsspannung mit dem Oszi hab ich nicht gemessen und jetzt ists ja eh Vorbei mit Versorgungsspannung. Die Anmerkung mit R15 ist gut, sollte aber auch nicht wirklich ein Problem darstellen, da auch dieser Pin FT ist. VG Michael
trotzdem sind die 100nF an den Spannungsreglern notwendig; gerade, wenn doch die Motoren so 'noisy' sind, ist es wichtig, die Versorgungsspannungen mal nach Stromspitzen u.Ä. zu durchleuchten. Wenn mehrere Boards gebaut werden sollen, wie beschrieben, dann musst Du doch sowiso mit einem neuen Board testen. Ingo
Ja, wenn ich morgen wieder ein funktionsfähiges board zur Verfügung habe, werde ich die Versorgungsspannungen mal nach Stromspitzen durchforsten. Warum meint ihr, dass die 100nF parallel zur den 10uF notwendig sind??? Im endeffekt addieren sich die doch nur auf und ich hab eine geringfügig höhere Kapazität, oder nicht?
Talarion schrieb: > Ja, wenn ich morgen wieder ein funktionsfähiges board zur Verfügung > habe, werde ich die Versorgungsspannungen mal nach Stromspitzen > durchforsten. > > Warum meint ihr, dass die 100nF parallel zur den 10uF notwendig sind??? > Im endeffekt addieren sich die doch nur auf und ich hab eine geringfügig > höhere Kapazität, oder nicht? ESR
Hier geht es Hauptsächlich um das NF-Verhalten der Kondensatoren. IM DC-Bereich addieren sich die Kapazitäten, richtig. Im NF Bereich wirken diese aber als Filter erster Ordnung. Und da Störungen von Motoren meist Signale mit f > 1Hz sind, wirkt dann auch die Dämpfung der Kondensatoren darauf. Ganz einfach ausgedrückt: die Kondensatoren wirken als Frequenzabhängige Widerstände. _.-=: MFG :=-._
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.