Hallo,
ich möchte mit einem Mikrokontroller ein Gerät ansteuern. Dieses hat
mehrere Pins, die ich (unabhängig voneinander) auf Masse ziehen möchte.
Sie sind (scheinbar) mit einem Pullup versehen, der sie auf 5V hochzieht
- dass ist es wenigstens, was ich als Spannung messe, wenn ich die Pins
mit einem Multimeter verbinde.
Wenn ich nun einen 5V toleranten AVR benutzen würde (was ich auch
testweise getan habe) könnte ich die Gerätepins einfach mit meinem AVR
verbinden, die Pins als "OUTPUT" deklarieren und würde die Gerätepins
bei einer logischen 0 auf Masse ziehen, und ansonsten, bei einer
logischen 1, würde nichts passieren.
Nun verwende ich aber aus verschiedenen Gründen einen uC, dessen Pins
nur 3.3V vertragen. Was ist die einfachste Möglichkeit seine Pins dafür
zu verwenden?
Ein Pegelwandler wirkt dafür ein wenig mit Kanonen auf Spatzen
geschossen, oder? Naiv habe ich gedacht einfach einen Widerstand zu
verwenden. Dafür habe ich die Stromstärke gemessen, die beim Brücken von
Masse und dem Pin fließt (4mA). Ich möchte also, dass 1.7V am Widerstand
abfallen, was ich mit 425 Ohm erreichen würde (also 470 Ohm als nächste
Größe in der Widerstandsreihe nehmen würde).
Ist die Idee mit dem Widerstand so richtig? Was würdet ihr empfehlen?
Markus schrieb:> Ist die Idee mit dem Widerstand so richtig? Was würdet ihr empfehlen?
nicht wirklich, dann damit schafft du keine 0V hinter dem Widerstand. Da
müsste man wissen ab welche schwelle das Gerät eine 0 erkennt.
Das einfachste ist einfach einen Transistor zu verwenden.
Peter II schrieb:> Das einfachste ist einfach einen Transistor zu verwenden.
Also (für einen npn Transistor) die Basis an den uC Pin (mit
Vorwiderstand), den Collector an den Gerätepin und den Emitter an Masse?
Ein Widerstand wird nicht funktionieren. Problematisch ist der Fall,
wenn der uC sperrt und der Portpin dann auf 5V geht (egal, was du da als
Widerstand spendierst). Das mag der Ausgangstreiber nicht. Dann werden
Schutzdioden im uC wirksam. Der resultierende Strom hängt dann von
vielen Parametern ab und ist schädlich bis tödlich.
Wie Cyblord schrieb, nimm einen BS170 und dreh die Logik um und du hast
keine Sorgen.
Georg G. schrieb:> Dann werden> Schutzdioden im uC wirksam. Der resultierende Strom hängt dann von> vielen Parametern ab und ist schädlich bis tödlich.
so schlimm ist es auch nicht. so lange man die Schutzdioden nicht
überlastet ist das zulässig und läuft auch stabil.
Atmel hat auch solche Beispiele in seinem AppNotes.
Danke für eure Antworten!
Georg G. schrieb:> Wie Cyblord schrieb, nimm einen BS170 und dreh die Logik um und du hast> keine Sorgen.
Ich habe bisher nur mit NPM Transistoren gearbeitet. Gerade habe ich
versucht mich schnell in die Materie "MOSFET" einzulesen.
Rein aus Interesse? Warum empfehlt ihr mir hierfür einen MOSFET statt
einem NPM Transistor?
Zur Beschaltung: Wenn ich mir das Datenblatt zum BS170 anschaue scheine
ich keinen Vorwiderstand zu brauchen. Ich würde also das "Gate" an den
uC Pin hängen, der je nach Schaltzustand zwischen [0, 3.3] Volt ausgibt.
"Source" würde ich mit der Masse verbinden und "Drain" mit dem Pin, den
ich auf Masse ziehen möchte. Richtig?
Markus schrieb:> Ich habe bisher nur mit NPM Transistoren gearbeitet. Gerade habe ich> versucht mich schnell in die Materie "MOSFET" einzulesen.> Rein aus Interesse? Warum empfehlt ihr mir hierfür einen MOSFET statt> einem NPM Transistor?
Weil der die 5V richtig auf 0 ziehen kann, während ein Transistor a)
Strom zum schalten braucht und b) eine Restpannung auf der CE Strecke
hat. Beides dürfte in Deinem Fall aber egal sein. Wenn Du eins von
beiden bei Dir rumfliegen hast, dann nimm das.
Markus schrieb:> Rein aus Interesse? Warum empfehlt ihr mir hierfür einen MOSFET statt> einem NPM Transistor?
Weil ein MOSFET auch ein Transistor ist. Das "T" steht für "Transistor".
Außerdem sparst du einen Widerstand.
Peter II schrieb:> so schlimm ist es auch nicht
Dann überlege mal, was passiert, wenn in die Schutzdioden mehr Strom
hinein fließt, als der Prozessor mit seiner Schaltung verbraucht. Dann
gehen die 3.3V plötzlich rauf. Aber wenn man Vertrauen hat, ist das OK.
Markus schrieb:> Sie sind (scheinbar) mit einem Pullup versehen
Messe den Strom aus, Schaue ob 3.3V noch als high erkannt werden und ob
Dir der Strom weh tut und falls ersteres ja und zweiteres nein, schließe
direkt an.
Markus schrieb:> Ich habe bisher nur mit NPM Transistoren gearbeitet.
Ironie:
Wenn damit drei Schaltzustände möglich sind,
revolutionierst du Alles was es bisher an Elektronik gegeben hat!
Vielleicht besteht die möglichkeit dein "Gerät" zu modifizieren.
Falls es intern einen Spannungsregler besitzt und eigentlich mit <=3,3V
arbeitet, oder die verbauten Komponenten 3,3V kompatibel sind, könntest
du versuchen die Spannung zu senken.
Bei externen Pullups (nicht in einem IC) und wenn das "Gerät" 3,3V
zuverlässig als High erkennt, besteht evtl. auch die Möglichkeit diese
zu entfernen und die Eingänge des "Geräts" nur auf 3,3V zu ziehen.
Demontierer schrieb:> Vielleicht besteht die möglichkeit dein "Gerät" zu modifizieren.>> Falls es intern einen Spannungsregler besitzt und eigentlich mit <=3,3V> arbeitet, oder die verbauten Komponenten 3,3V kompatibel sind, könntest> du versuchen die Spannung zu senken.>> Bei externen Pullups (nicht in einem IC) und wenn das "Gerät" 3,3V> zuverlässig als High erkennt, besteht evtl. auch die Möglichkeit diese> zu entfernen und die Eingänge des "Geräts" nur auf 3,3V zu ziehen.
Und den ganzen Aufriss nur, um sich 1 (in Worten einen) Transistor ala
BS170 oder BSS138 pro PIN zu sparen.
MfG Klaus
Cyblord -. schrieb:> Ein Mosfet wie z.B. BS170 reicht da aus.
Aus dem gleichen Grund, warum für jeden Kleinscheiß Schaltregler
empfohlen werden? Diesen fummeligen FET muß man sich nicht antun, wenn
es auch ein NPN tut.
Peter II schrieb:> Georg G. schrieb:>> Dann werden>> Schutzdioden im uC wirksam. Der resultierende Strom hängt dann von>> vielen Parametern ab und ist schädlich bis tödlich.> so schlimm ist es auch nicht. so lange man die Schutzdioden nicht> überlastet ist das zulässig und läuft auch stabil.
Pfuscher! Es wird an keinen Anschluß eine Spannung höher Ub (VCC)
angelegt. Ausnahme sind speziell dafür spezifizierte Treiber-ICs, was
ein µC sicherlich nicht ist.
Markus schrieb:> Rein aus Interesse? Warum empfehlt ihr mir hierfür einen MOSFET statt> einem NPM Transistor?
Ich kenne keinen NPM, die Dinger heißen NPN - entsprechend der internen
Folge ihrer Sperrschichten.
Ansonsten siehe oben, da tut es mit größter Wahrscheinlichkeit ein
Standard-NPN wie BC337, BC237, BC107, BC546 oder ähnlich.
Vorab solltest Du mal mit einem Multimeter den Strom gegen GND messen,
wenn das mehr als ein paar mA sind, müssen wir evtl. neu denken.
Markus schrieb:> Dafür habe ich die Stromstärke gemessen, die beim Brücken von> Masse und dem Pin fließt (4mA)
dafür reicht doch der mieseste NPN in Emitterschaltung
um 4mA auf low zu bringen bei mieser Hfe oder ß von 100 gibt 40µA für
die Basis, um den Trasi in die Sättigung zu bringen nehmen wir das x10
also 0,4mA, wenn wir dann noch einen Basiswiderstand spendieren 3,3V -
1V Ube max = 2,3V / 0,4mA brauchen wir 5,6kOhm
Manfred schrieb:> Peter II schrieb:>> Georg G. schrieb:>>> Dann werden>>> Schutzdioden im uC wirksam. Der resultierende Strom hängt dann von>>> vielen Parametern ab und ist schädlich bis tödlich.>> so schlimm ist es auch nicht. so lange man die Schutzdioden nicht>> überlastet ist das zulässig und läuft auch stabil.> Pfuscher! Es wird an keinen Anschluß eine Spannung höher Ub (VCC)> angelegt. Ausnahme sind speziell dafür spezifizierte Treiber-ICs, was> ein µC sicherlich nicht ist.
Dann melde dich schnell bei Atmel
http://www.atmel.com/Images/Atmel-2508-Zero-Cross-Detector_ApplicationNote_AVR182.pdf
(Wenn man es genau nimmt, liegt an dem Pin auch keine Spannung größer
als VCC an - dafür sorgen ja die Dioden.)
Manfred schrieb:> Vorab solltest Du mal mit einem Multimeter den Strom gegen GND messen,> wenn das mehr als ein paar mA sind, müssen wir evtl. neu denken.
Ab und an hilft auch Lesen statt Denken, aus dem Eröffungspost:
Markus schrieb:> Dafür habe ich die Stromstärke gemessen, die beim Brücken von> Masse und dem Pin fließt (4mA).Markus schrieb:> Zur Beschaltung: Wenn ich mir das Datenblatt zum BS170 anschaue scheine> ich keinen Vorwiderstand zu brauchen. Ich würde also das "Gate" an den> uC Pin hängen, der je nach Schaltzustand zwischen [0, 3.3] Volt ausgibt.> "Source" würde ich mit der Masse verbinden und "Drain" mit dem Pin, den> ich auf Masse ziehen möchte. Richtig?
Und genau darum würde ich auch einen MOSFET wählen. Der schon genannte
BS170 gehört zumindest in meinem Bastlerwerkstatt zur Grundausstattung.
Manfred schrieb:> Diesen fummeligen FET muß man sich nicht antun, wenn> es auch ein NPN tut.
Beide haben das gleiche Gehäuse (wenn man passend einkauft). Bei dem NPN
brauche ich zusätzlich einen Widerstand. Insofern verstehe ich deine
Aussage nicht.
M. K. schrieb:>> Zur Beschaltung: Wenn ich mir das Datenblatt zum BS170 anschaue scheine>> ich keinen Vorwiderstand zu brauchen. Ich würde also das "Gate" an den>> uC Pin hängen, der je nach Schaltzustand zwischen [0, 3.3] Volt ausgibt.>> "Source" würde ich mit der Masse verbinden und "Drain" mit dem Pin, den>> ich auf Masse ziehen möchte. Richtig?>> Und genau darum würde ich auch einen MOSFET wählen. Der schon genannte> BS170 gehört zumindest in meinem Bastlerwerkstatt zur Grundausstattung.
Da fehlt nur der Widerstand vom Gate gegen GND um zu verhindern, dass
das Gate beim Reset des Controllers in der Luft hängt.
Daher habe ich oben einfach mal den BCR135 in den Raum geworfen, das ist
ein "digitaler" NPN Transistor, der hat einen Basis-Vorwiderstand und
einen Basis-Emitter-Widerstand bereits eingebaut und ist im SOT-23
Gehäuse.
50V/100mA und schaltet ab 1,4V, der ist auch super für Relais.
Rudolph R. schrieb:> Da fehlt nur der Widerstand vom Gate gegen GND um zu verhindern, dass> das Gate beim Reset des Controllers in der Luft hängt.
Der fehlt nur wenn das Schalten des FETs kritisch wäre oder er dadurch
zerstört werden könnte. Wenn beides nicht der Fall ist kann man den
Pulldown weglassen.
Markus schrieb:> Nun verwende ich aber aus verschiedenen Gründen einen uC, dessen Pins> nur 3.3V vertragen. Was ist die einfachste Möglichkeit seine Pins dafür> zu verwenden?
470 Ohm Serienwiderstand und BAT42 Klemmdiode A an µC Port und K an
+3,3V vom µC
klappt beim PI prima (nur sollte der low Strom eben bei 3-4mA bleiben,
mit 10-40mA klappt das nicht)
Peter II schrieb:> Dann melde dich schnell bei Atmel> http://www.atmel.com/Images/Atmel-2508-Zero-Cross-Detector_ApplicationNote_AVR182.pdf> (Wenn man es genau nimmt, liegt an dem Pin auch keine Spannung größer> als VCC an - dafür sorgen ja die Dioden.)
Au weiah ... die verlassen sich drauf, dass VCC mindestens 150µA Strom
aufnimmt, solange die Schaltung aktiv ist, wird das gutgehen. Unfein
finde ich das dennoch.
M. K. schrieb:> Ab und an hilft auch Lesen statt Denken, aus dem Eröffungspost:> Markus schrieb:>> Dafür habe ich die Stromstärke gemessen, die beim Brücken von>> Masse und dem Pin fließt (4mA).
Jou, beim zweiten Lesen gesehen, leider zu spät.
M. K. schrieb:> Und genau darum würde ich auch einen MOSFET wählen. Der schon genannte> BS170 gehört zumindest in meinem Bastlerwerkstatt zur Grundausstattung.
Als Grundaustattung sehe ich ihn nicht. Auch ich habe ein paar davon
vorrätig, aber schon ewig nicht mehr verbaut. Was ich dem Datenblatt
nicht entnehmen kann, ist sein RDSon um 3V am Gate. Die Dinger habe ich
früher in einem Meßaufbau eingesetzt, wo die digitale Quelle nur mit
<100nA belastet werden durfte, der RDSon aber weitgehend egal war.
Georg G. schrieb:> Manfred schrieb:>> Diesen fummeligen FET muß man sich nicht antun, wenn>> es auch ein NPN tut.> Beide haben das gleiche Gehäuse (wenn man passend einkauft). Bei dem NPN> brauche ich zusätzlich einen Widerstand. Insofern verstehe ich deine> Aussage nicht.
Überredet, den BS170 hat ebenso wie die TUNs ein TO-92.