Hallo zusammen,
eine wahrscheinlich etwas blöde Frage: Was passiert, wenn ich 21V über
einen großen Widerstand (sagen wir 100k) auf den I/O eines µC schalte?
a) Wenn der µC aus ist?
b) Wenn der PIN ein Eingang ist?
c) Wenn der Pin ein Ausgang ist?
Bei C) würde ich mal sagen, dass der µC die Spannung am Pin definiert
und dann eben so viel Strom in den Pin fließt, wie nach I=U/R eben durch
die Widerstand fließen würde. Sollte ja unkritisch sein. Aber was ist
mit den anderen Fällen? Könnte das dem Controller schaden?
Ich kann mir denken, dass das auch ein bisschen auf den µC ankommt, aber
bestimmt lassen sich auch pauschale Aussagen Treffen.
@Bernd (Gast)
>eine wahrscheinlich etwas blöde Frage: Was passiert, wenn ich 21V über>einen großen Widerstand (sagen wir 100k) auf den I/O eines µC schalte?>a) Wenn der µC aus ist?
Was ist bei dir "aus"? Stromlos? Dann lädt der IO-Pin über die interne
Klemmdiode die Versorgung des uC auf. Ggf. läuft der dann los, wenn der
Stromverbrauch sehr klein ist.
>b) Wenn der PIN ein Eingang ist?
Der Strom fließt über die Klemmdiode nach Vcc.
>c) Wenn der Pin ein Ausgang ist?
Der Strom fließt über die Ausgangstransistoren nach Vcc oder GND, je
nach Ausgangspegel.
>die Widerstand fließen würde. Sollte ja unkritisch sein. Aber was ist>mit den anderen Fällen? Könnte das dem Controller schaden?
Nein.
In der Regel werden digitale Teile Deines uCs weiter funktionieren.
AnalogeTeile wie ADCs kommen dagegen gerne dabei durcheinander. Siehe
"injected current" in den STM32 Datenblaettern.
Bernd schrieb:> Sollte ja unkritisch sein. Aber was ist> mit den anderen Fällen? Könnte das dem Controller schaden
Unwahrscheinlich. Aber falls die Block-Elkos ausreichend Ladung
bekommen, könnte der µC unerwartet eingeschaltet werden. Wenn dann noch
wichtige Sachen wie Brownout-Reset aus sind, könnte durchaus Flash
Inhalt durch Unterspannungsausfälle gelöscht werden.
Aber bei 100k Widerstand ist es sehr unwahrscheinlich, dass die µC
Versorgung über die Reset-Schwelle kommt. Kommt aber auf die konkrete
Schaltung und den µC an.
Note: Es gibt µCs, die im Power-off nur noch nA brauchen. Die könnte man
mit 21 Volt über 100k am Pin IMO sogar zerstören.
Vielen Dank für die Antworten. Die unterschiedlichen Fälle waren
hauptsächlich fürs Verständnis. In meinem Fall ist der µC immer an und
der Pin immer als Eingang verschaltet. Somit werde ich es mal so
probieren.
Bernd schrieb:> Somit werde ich es mal so> probieren.
Achte aber darauf, ob dein µC die oben angesprochenen Klemmdioden
("ESD-Schutz-Dioden") tatsächlich besitzt.
Atmel-AVRs haben diese, bis auf den Reset-Pin, bei dem fehlt die Diode
"nach oben", um HV-Programmierung zu erlauben.
Jim M. schrieb:> Unwahrscheinlich. Aber falls die Block-Elkos ausreichend Ladung> bekommen, könnte der µC unerwartet eingeschaltet werden.
Um das zu unterdrücken kann man dem Spannungsregler eine Mindestlast
verpassen, die leitet dann die Ströme durch die Klemmdioden des µCs
wieder nach GND ab und alles bleibt bei definierten Zuständen
Bernd schrieb:> In meinem Fall ist der µC immer an und> der Pin immer als Eingang verschaltet. Somit werde ich es mal so> probieren.
Und was spricht gegen einen einfachen Spannungsteiler oder eine Z Diode
mit Vorwiderstand?
Der Andere schrieb:> Und was spricht gegen einen einfachen Spannungsteiler oder eine Z Diode> mit Vorwiderstand?
Telepathie!
Die Z Diode und auch der Spannungsteiler beherrschen keine Telepathie.
Sie wissen nicht ob die Versorgung abgeschaltet ist.
Und sowieso könnten sie nicht darauf reagieren, selbst wenn sie wollten.
Keine Arme, keine Kekse.
Planlos schrieb:> Achte aber darauf, ob dein µC die oben angesprochenen Klemmdioden> ("ESD-Schutz-Dioden") tatsächlich besitzt.
Die sind da nicht als "ESD-Schutz-Dioden" drin sondern deshalb weils gar
nicht anders geht, weil die Mosfets der Ausgangstreiber prinzipbedingt
parasitäre PN-Übergänge haben die sich so auswirken als hätte man da
eine Diode eingabaut, die sogenannte Body-Diode (<-- Google das).
> Atmel-AVRs haben diese, bis auf den Reset-Pin, bei dem fehlt die Diode> "nach oben", um HV-Programmierung zu erlauben.
Die Body-Diode ist selbstverständlich auch im Ausgangstreiber des
Reset-Pin enthalten, nur zusätzlich hat man an diesem Pin noch ne
weitere Diode in Reihe zwischen High-Side-Treiber und Ausgangspin
eingebaut so daß dieser Pin dort von außen höher als Vcc getrieben
werden könnte, ohne daß ein Kurzschluß entstünde. Das Vorhandensein
dieser zusätzlichen Diode merkt man daran daß dieser eine Pin (sofern
man ihn als Ausgang verwendet) bei high immer noch ein paar hundert
Millivolt niedriger ist als alle anderen.
Diese "Schutzdioden" hier wirken wie normale Dioden nach VCC und GND,
leiten aber 99% des Stroms direkt nach GND ab. Nach VCC fließt nur noch
der Basisstrom.
Bernd K. schrieb:> Die sind da nicht als "ESD-Schutz-Dioden" drin
Anhang 1 aus dem Mega328-Datenblatt,
Anhang 2 aus AVR-Appnote 040.
Wenn Atmel die als "ESD-Protection-Diodes" betiteln darf, dann darf ich
das auch.
Habe ich es nun richtig verstanden, dass ich durch die Ausgangstreiber
immer Body-Dioden am Ausgang habe und somit mit den Klemmdioden rechnen
kann, auch wenn sie im Datenblatt nicht erwähnt werden? Die Suche nach
"Diode" im Datenblatt führte zu keinem relevanten Treffer.
Bernd schrieb:> Habe ich es nun richtig verstanden, dass ich durch die> Ausgangstreiber> immer Body-Dioden am Ausgang habe und somit mit den Klemmdioden rechnen> kann, auch wenn sie im Datenblatt nicht erwähnt werden? Die Suche nach> "Diode" im Datenblatt führte zu keinem relevanten Treffer.
Sicher nicht!
Sonst wären 5V-Tolerante Eingänge generell nicht möglich. Es gibt aber
µC die Ausgänge mit push-pull-Stufe mit 5V-toleranten Eingängen
multiplexen (konkretes Beispiel: STM32F072).
Näheres kann dir nur das Datenblatt deines µControllers sagen.
Und Folgendes wäre auch zu beachten:
Oft ist zwar ein zulässiger Strom durch die Clampingdioden angegeben,
aber nur in den "Maximum Ratings".
Das bedeutet:
Der µC verkraftet diesen Strom ohne Schaden, ABER die Funktion als
Eingang / Ausgang wird nicht garantiert.
Das wäre bei einer solchen Schaltung ebenfalls zu berücksichtigen.
Ein weiteres Problem kann das Hochdriften deiner Versorgung sein, du
musst zu 100% sicher sein, dass die Stromaufnahme in deiner
µC-Versorgung in allen Betriebsfällen höher ist als der geklemmte Strom.
Auch im Reset oder sleep. Die Stromaufnahme vieler µC ist im Reset ist
aber oft sehr gering.
Ein simpler Widerstand zwischen Versorgung und GND kann das Problem
lösen.
Bernd schrieb:> Habe ich es nun richtig verstanden, dass ich durch die Ausgangstreiber> immer Body-Dioden am Ausgang habe
Nein.
Die "Body"- oder "Substrat"-Dioden gehen "Zum Substrat".
Bei den "Dreibeinigen" FETs zum selberlöten verbindet man das Substrat
mit Source, und hat so eine definierte Diode.
Innerhalb eines Chips ist das nicht so einfach, alle FETs teilen sich
dasselbe Substrat, sie liegen am selben Silizium-Kristall.
Mit CMOS wird's komplexer, die dazu nötigen P-Kanal-FETs liegen in
eigenen "Inseln". (Bild)
Ob und wohin diese Inseln verbunden sind, ist dem Chipdesigner
überlassen
('B'-Anschluss im Wiki-Bild)
Deswegen tut man sich leicht, "5V-Tolerante"-GPIOs in 3.3V-Chips
einzubauen, aber "Minus 1.7V-Tolerante"-GPIOs sind schwer :)
---
"Cmos impurity profile" by Reza Mirhosseini - originally uploaded to
en.wikipedia (file log). Licensed under Public Domain via Commons -
https://commons.wikimedia.org/wiki/File:Cmos_impurity_profile.PNG#/media/File:Cmos_impurity_profile.PNG
Planlos schrieb:> Bernd schrieb:>> Habe ich es nun richtig verstanden, dass ich durch die Ausgangstreiber>> immer Body-Dioden am Ausgang habe>> Nein.
Du spaltest Haare.
> Die "Body"- oder "Substrat"-Dioden gehen "Zum Substrat".> Bei den "Dreibeinigen" FETs zum selberlöten verbindet man das Substrat> mit Source, und hat so eine definierte Diode.>> Innerhalb eines Chips ist das nicht so einfach, alle FETs teilen sich> dasselbe Substrat, sie liegen am selben Silizium-Kristall.
Richtig. Und dieses Substrat ist praktisch immer Vss (für all n-MOSFET
auf dem Chip) bzw. Vcc (für all p-MOSFET auf dem Chip). Die MOSFETs des
Ausgangstreibers hängen mit ihren Source-Anschlüssen aber ebenfalls an
Vss bzw. Vcc. Womit sich für diese MOSFET exakt die selbe Situation wie
für einen diskreten MOSFET ergibt: Substrat=Source und deswegen eine
Diode zwischen Source und Drain. Wobei das je nach µC auch eigene Vcc_io
und Vss_io Anschlüsse sein können.