Forum: Analoge Elektronik und Schaltungstechnik FET mit Gate am AVR-Pin schaltet nicht ab


von Paul H. (powl)


Lesenswert?

Hi.

Habe ein seltsames Problem an meinem Tiny26. Habe am AVR-Port das Gate 
eines BS170 N-Kanal FET dran. Anschalten klappt problemlos nur 
Ausschalten tut er sich nicht mehr?! Wenn ich mit dem Multimeter dran 
geh und Spannung messen will geht er plötlich aus sobald ich das 
Messkabel ansetze. Kann die Ladung im FET nicht über den AVR abfließen?

Der AVR ist ganz neu, hab ihn extra ersetzt weil ich dachte der alte 
wäre kaputt.

mfg PoWl

von Falk B. (falk)


Lesenswert?

@ Paul Hamacher (powl)

>Habe ein seltsames Problem an meinem Tiny26. Habe am AVR-Port das Gate
>eines BS170 N-Kanal FET dran. Anschalten klappt problemlos nur
>Ausschalten tut er sich nicht mehr?! Wenn ich mit dem Multimeter dran

Kann es sein, dass der Port im AVR nicht als Ausgang geschaltet ist und 
du nur auf PORTx schreibst. Dann schaltest du nämlich den internen 
Pull-up ein.

Richtig also so

1
DDRx = 0xFF;   //Alles Ausgang
2
PORTX = 0xFF;    // Jetzt HIGH/LOW Schalten.

>geh und Spannung messen will geht er plötlich aus sobald ich das
>Messkabel ansetze. Kann die Ladung im FET nicht über den AVR abfließen?

Wenn es ein Eingang ist, dann nein.

MFG
Falk

von Bensch (Gast)


Lesenswert?

> Kann die Ladung im FET nicht über den AVR abfließen?

Was du beschreibst, ist das Verhalten eines FET, dessen Gate in der Luft 
hängt.

von Paul H. (powl)


Lesenswert?

Ja, tatsächlich war in meiner software der Port nicht als Ausgang 
geschaltet. wie dämlich. Habe mir es gleich nach dem Posten selbst 
gedacht.

danke jedenfalls! :-)

mfg PoWl

von Bensch (Gast)


Lesenswert?

Immer einen Widerstang vom Gate gegen Masse (<< PullUp), sonst ist das 
Verhalten nach dem Einschalten des Prozessors undefiniert.

Im Programm zuerst Ausgang auf L setzen, dann als Ausgang definieren 
bzw. Ausgang freigeben.

von Falk B. (falk)


Lesenswert?

@ Bensch (Gast)

>Immer einen Widerstang vom Gate gegen Masse (<< PullUp), sonst ist das

Das nennt man aber Pull-Down.

>Im Programm zuerst Ausgang auf L setzen, dann als Ausgang definieren

Ist nach dem Reset sichergestellt.

MFG
Falk

von Bensch (Gast)


Lesenswert?

>Immer einen Widerstang vom Gate gegen Masse (<< PullUp), sonst ist das

>
Nein, du Schlaumeier, "<<" heisst "viel kleiner als...", hättest du 
drauf kommen können.

>Im Programm zuerst Ausgang auf L setzen, dann als Ausgang definieren

> Ist nach dem Reset sichergestellt.

Nicht bei allen Prozessoren, und schon garnicht z.B. bei externen 
Registern oder Schieberegistern. Aber das scheinen viele Entwickler in 
der Industrie auch nicht zu wissen. Daher oft die Klapperei, wenn man 
eine Maschine einschaltet.

MFG
Falk

von Falk B. (falk)


Lesenswert?

@ Bensch (Gast)

>Nein, du Schlaumeier, "<<" heisst "viel kleiner als...", hättest du
>drauf kommen können.

Klar, weil irgendjemand mal wieder seine eigenen Abkürzungen erfindet. 
Ausserdem ist auch das Unsinn. Damit wäre der Vorteil des FET 
(leistungslose Ansteuerung) hinüber. Die Gate-Pull-downs können 
problemlos 1MOhm sein.

>> Ist nach dem Reset sichergestellt.

>Nicht bei allen Prozessoren, und schon garnicht z.B. bei externen
>Registern oder Schieberegistern.

Darum geht hier doch gar nicht! Es geht um INTERNE Ports eines AVRs.

> Aber das scheinen viele Entwickler in
>der Industrie auch nicht zu wissen. Daher oft die Klapperei, wenn man
>eine Maschine einschaltet.

Na ein Glück dass du das weisst.

MFG
Falk

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.