Forum: Mikrocontroller und Digitale Elektronik Kleine Last mit N-Mosfet vom ATtiny45 schalten


von Stephan P. (stevep)


Lesenswert?

Hi,

Ich schalte bei meiner Schaltung eine LED (20mA) mit einem ATtiny45. Da 
die LED von einem beleuchteten Button und daher größtenteils 
eingeschalten ist, habe ich einen Mosfet (IRLML2502) dafür verwendet, um 
den Ausgang des ATtiny zu schonen.
Mit einem anderen Pin muss ich einen Pin von einem Chinesen-Modul auf 
GND schalten, ebenso dauerhaft. Der Strom der dort fließt ist sogar im 
uA Bereich, wahrscheinlich ein Pull-Up. Aber auch dort habe ich 
sicherheitshalber den gleichen Mosfet verwendet, damit der unbekannter 
Weise maximale Strom nicht durch den ATtiny durchgeht.

Meine erste Frage ist nun, ob ich mit dem uC Pin direkt auf das Gate des 
Mosfet gehen kann oder ob ich den Strom begrenzen sollte.

Ich habe es gerade am Steckbrett und es funktioniert alles, aber ist es 
so auch auf Dauer in Ordnung? Warum ich nicht einfach einen Widerstand 
hingebe ist, weil ich die gesamte Schaltung dann auf einer sehr kleinen 
Platine unterbringen muss, ich das Layout mal gemacht habe und sich das 
gerade so ausgeht. Darüber hinaus ist es jetzt schon eine 
Herausforderung gewesen die Leiterbahnen zu schlichten (ich ätzte das 
selbst, deshalb nur eine einseitige Platine). Also wäre es wunderbar es 
so lassen zu können, aber wenn es falsch ist dann ändere ich es 
natürlich.

Meine zweite Frage ist, ob ich auch einen Widerstand vom Gate Richtung 
GND für den Feldabbau brauche?

Für mein Verständnis müsste es auch ohne gehen, da ich den Pin ja auf 
“low“, also gegen GND, schalte. Bei diesem Artikel 
(https://www.mikrocontroller.net/articles/Relais_mit_Logik_ansteuern) 
ist einer vorgesehen, aber ich dachte das man den nur bei z.B. Buttons 
braucht, wo der Strom beim Öffnen des Buttons nirgends mehr hin kann. 
Auch hier geht es jetzt am Steckbrett problemlos.

Danke,
Stephan

von U. M. (oeletronika)


Lesenswert?

Hallo,
> Stephan P. schrieb:
> Ich schalte bei meiner Schaltung eine LED (20mA) mit einem ATtiny45. Da
> die LED von einem beleuchteten Button und daher größtenteils
> eingeschalten ist, habe ich einen Mosfet (IRLML2502) dafür verwendet, um
> den Ausgang des ATtiny zu schonen.
Wenn man eine 20mA-LED mit einem npn-Transistor schaltet, der eine 
Stromverstärkung Beta > 100 hat, braucht es auch nur ca. 0,2mA.
Das merkt der ATiny auch kaum.

Mit FET geht das natürlich auch, aber die sind deutlich sensibler gegen 
ESD. Da kann schon mal schnell beim basteln ein Gate zerschosen werden.
Deshalb nutze ich FET nur, wenn diese einen echten Mehrwert haben.
Bipolartransitoren sind da einfach viel robuster und verlangen nicht so 
penible Massnahmen gegen Überspannung.

> Mit einem anderen Pin muss ich einen Pin von einem Chinesen-Modul auf
> GND schalten, ebenso dauerhaft. Der Strom der dort fließt ist sogar im
> uA Bereich, wahrscheinlich ein Pull-Up. Aber auch dort habe ich
> sicherheitshalber den gleichen Mosfet verwendet, damit der unbekannter
> Weise maximale Strom nicht durch den ATtiny durchgeht.
> Meine erste Frage ist nun, ob ich mit dem uC Pin direkt auf das Gate des
> Mosfet gehen kann ...
Ja, kann man.

Nur für den Fehlerfall, wenn dorch mal aus irgend einem Grund das Gate 
defekt geht, könnte es zu einem Kurzschlußstrom des Portpins gegen Masse 
kommen. Im schlechten Fall ist dann der uC kaputt.
Da ist dann ein Längswiderstand mit z.B. 100 Ohm eine Absicherung.

> weil ich die gesamte Schaltung dann auf einer sehr kleinen
> Platine unterbringen muss,
Naja, wenn der Platz sehr knapp ist, spart man beim FET eben den 
Basisvorwiderstand. Ein SMD-R in der BF 0805 oder 0603 braucht aber auch 
nicht viel Platz und kann auch mit einfachen Bastlertools gelötet 
werden.

> Meine zweite Frage ist, ob ich auch einen Widerstand vom Gate Richtung
> GND für den Feldabbau brauche?
Wenn das Potpin aktiv low schaltet, dann nicht.
Man muß aber auch immer darüber nachdenken, was im Resetzustand passiert 
oder in der Zeit bis der uC gebootet ist. Falls man da einen definierten 
Zustand benötigt, sind Pul-Up üder Pull-down Widerstände zweckmäßig.
Gruß Öletronika

von Jakob (Gast)


Lesenswert?

Ein Widerstand vom Gate nach GND (z.B. 100 kOhm) ist sehr zu
empfehlen, wenn du dich nicht mit undefinierten Zustände rumärgern
willst, solange der Tiny nicht versorgt, bzw. nach dem Einschalten
die Ports noch nicht initialisiert sind.

Den Gate-Vorwiderstand kann man eher weglassen, da hier keine
großen Ströme "zu schnell" geschaltet werden, was EMV-Probleme
bereiten könnte.

von Stefan F. (Gast)


Lesenswert?

> 20mA ... Mosfet ... um den Ausgang des ATtiny zu schonen.

Das ist völlig unnötig. 20mA vertragen die Ausgänge des AVR Dauerhaft - 
solange du nicht mehr als 10 Pins gleichzeitig so hoch belastest.

Von Schonen wird der Chip weder schöner noch besser.

> Strom ... im ... uA Bereich ... auch dort habe ich
> sicherheitshalber den gleichen Mosfet verwendet

Das ist dort erst Recht unnötig.

> damit der unbekannter Weise maximale Strom nicht durch den
> ATtiny durchgeht.

Selbst Kürzschlüsse vertragen die AVR's dauerhaft, solange insgesamt 
nicht mehr als 200mA fließen. Ein einzelner kurzgeschlossener Pin 
liefert schlimmstensfalls 50mA, da kann also gar nichts Schädliches 
passieren.

> Frage ... ob ich mit dem uC Pin direkt auf das Gate des
> Mosfet gehen kann oder ob ich den Strom begrenzen sollte.

Aus den oben genannten Gründen: Widerstand ist (fast) zwecklos. 
Interessanter ist die Auswirkung auf die Spannungsversorgung. Wenn du 
einen MOSFET ohne Vorwiderstand einschaltest, fließt kurzzeitig der 
maximale Strom (wie gesagt höchstens 50mA) um das Gate aufzuladen. Nun 
hängt es von der Spannungsversorgung ab, wie die darauf reagiert. Ein 
Paket AA Akkus steckt das locker weg, eine Knopfzelle vom Typ CR2032 
eher nicht.

> ob ich auch einen Widerstand vom Gate Richtung
> GND für den Feldabbau brauche?

Beim Starten wird der Pin des Mikrocontroller für eine Gewisse Zeit 
einen undefinierten Pegel haben (nämlich bis er als Ausgang konfiguriert 
ist). Das wird dazu führen, dass die MOSFETs kurzzeitig einschalten oder 
auch nur halb einschalten. Wenn die nachfolgende Schaltung damit kein 
Problem hat und die Transistoren dadurch nicht überhitzen, dann (und nur 
dann) kannst du auf Pull-Down Widerstände verzichten. Bei einfachen 
Standard-LED's wäre das Ok.

> müsste es auch ohne gehen, da ich den Pin ja auf
> “low“, also gegen GND, schalte

Wie lange dauert es denn vom Anlegen der Spannungsversorgung bis zum 
"auf Low schalten" des Pins? Sicher einige zig Millisekunden oder gar 
länger.

von Stephan P. (stevep)


Lesenswert?

Danke für den wertvollen Input!

LG
Stephan

von Manfred (Gast)


Lesenswert?

U. M. schrieb:
> Deshalb nutze ich FET nur, wenn diese einen echten Mehrwert haben.
> Bipolartransitoren sind da einfach viel robuster
Mit dieser Ansicht bist Du hier im Forum ziemlich einsam - da wird doch 
für jeden Kinderkram auf FETs verwiesen.

Recht hast Du trotzdem, außerdem habe zumindest ich großen Mengen von 
bipolaren im Bestand.

von Stefan F. (Gast)


Lesenswert?

> Mit dieser Ansicht bist Du hier im Forum ziemlich einsam

Stimmt, aber Recht hat er.

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
Noch kein Account? Hier anmelden.