www.mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik uC schaltet Transistor nicht


Autor: GeRi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute!

Ich hab lt. der Transistorseite eine "Transistor als Schalter"- 
Schaltung aufgebaut.
(Die Last, eine diode, ist an der kollektorseite angeschalossen und der 
Transistor schaltet die Masse durch!)

Die Schaltung funktioniert super, aber wenn ich sie am AT89S52 (8051 von 
Atmel) anhänge liegt der Pin auf 2,6V er schafft es nicht auf High oder 
low zu schalten.

Ich habs mit einem externen pullup probiert abern funktioniert auch 
nicht!

Der Strom den er für die basis liefern sollte hab ich gemessen: liegt 
bei 600uA! Ist das schon zu viel für einen 8051?

Gibt es eine möglichkeit, mit nur einer kleinen änderung das Prob zu 
beheben, möchte die schaltung nicht nochmal ätzen!

mfg, geri

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welcher Transistor?
Mit welchem Pull-Up getestet?

Kenn deinen µC jetzt nicht, aber viele 8051'er können ohne externe 
Pull-Ups keinen High-Pegel ausgeben.

/Ernst

Autor: Michael G. (linuxgeek) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kannst Du vllt. mal die vollstaendige Schaltung (mit Mikrocontroller) 
einstellen (Bild)? Zur Klarheit.

Michael

Autor: Schoasch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
HI

Hast du einen Schaltplan?

Probiers mal mit einem 1k8 Pullup. Also Basis direkt an den µC Pin und 
halt den Pullup dran.

mfg Schoasch

PS.: Hast du auch einen Richtigen Transistor drin und ist dieser auch 
nicht defekt?

Autor: Jack Braun (jackbraun)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Probiers mal mit einem 1k8 Pullup. Also Basis direkt an den µC Pin und
>halt den Pullup dran.


Außer Port 0 braucht kein Ausgang des 89S52 einen Pullup.

Autor: GeRi (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hab den bc547 als transitor, der funktioniert!

Hab es ja mit der normalen Spannung getestet!

Der Schaltungplan zeigt als Basiswidersrtand 10k ich hab dann aber einen 
6,8k verbaut, da der transistor sonnst gar nicht schaltet!

mfg, geri

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein 8051 hat keine Gegentakt-Endstufe wie der AVR oder CMOS-Bausteine. 
Sein Open-Collector-Ausgang kann gut gegen Masse schalten, wenn du eine 
0 auf den Port schreibst, aber bei einer logischen 1 ist der Transistor 
aus. Und dann hast du es mit dem internen Pullup zu tun, der zu deinen 
10k quasi in Reihe liegt.

Abhilfe:

- Transen mit hohen Stromverstärkungen (Darlington)
- die 10k verringern, aber nicht weglassen

Wie sieht denn die Spannung am Portpin aus, wenn du deine 
Transistor-Schaltstufe nicht dranhängen hast? Ist sie dann immer noch 
2,6V, riecht das eher danach, dass du den Pin nicht schaltest, sondern 
sehr schnell invertierst(cpl).

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auf die Schnelle mal dazu gegoogelt:


http://www.goblack.de/desy/mc8051chip/datenblatt/t...

Da hats die Ausgangsstufe des '51ers dargestellt.

Autor: GeRi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja das ist mir klar, aber ich wüsste nicht, wie ich den transistor 
sonnst ansteuern soll!

Wie macht man das bei einem 8051 der nur gehen low mit mehr strom 
schalten kann? er schafft nur 15mA und ich brauche aber 20! wie könnte 
ich die schaltung am einfachsten verändern?


mfg, geri

Autor: Tippgeber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nimm einen FET.

Autor: Jack Braun (jackbraun)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Port 1, 2 und 3 können jeweils 4 TTL-Eingänge ansteuern.

Es ist also genügend Basisstrom für einen Transistor (B-Typ) vorhanden.

Autor: GeRi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
versteh ich nicht, warum kommen dann aus dem 8051 an einem portpin 
netmal 500uA heraus?

mfg,

Autor: GeRi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kann ich den transistor nicht in einer anderen schaltung betreiben, dass 
der strom in den uC reinfließt??

mfg,

Autor: Chrisi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, so ist er, der 8051...

Du kannst stattdessen einen PNP-Transistor einsetzen. Damit invertiert 
sich das gesamte Verhalten. Emitter auf VCC, Last zwischen Kollektor und 
Ground, Basis über Vorwiderstand zum Port. Damit schaltest Du ein, wenn 
der Port auf Low geht. Und Low kann der Port deutlich mehr Strom 
"sinken" als High "sourcen".

Autor: Reinhard R. (reirawb)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@GeRi
Guckst Du in das Datenblatt vom AT89S52:

http://www.atmel.com/dyn/resources/prod_documents/...

auf Seite 29 steht wieviel Strom die Ports auf den Ausgang bringen
und das ist nicht sehr viel, siehe V(OH) bzw. V(OH1). Aus diesen
Werten errechne ich die internen Pull Ups für Port 0 zu ca. 3,3 KOhm
und für Port 1 bis 3 zu ca. 43 kOhm. Ergibt für Deine Schaltung an
Port 0 einen Basisstrom von ca. 350 uA, für Port 1 bis 3 aber nur
ca. 90 uA. Laut Deines Planes benutzt Du Port 2 Anschluß 3, also
einen Port mit weniger Strom.
Du schreibst, Du benötigst einen Basisstrom von 600 uA aber bei Deinem
Basiswiderstand von 10 kOhm können bei 5 Volt (minus 0,7V für die
BE-Spannung) nur 430 uA fließen.

Vorschlag:
Basiswiderstand auf 1 kOhm verringern und zusätzlich einen Widerstand
von 4,7 kOhm vom Ausgang (nicht von der Transistorbasis!) nach +5V
schalten.
Oder -wie schon vorgeschlagen wurde- PNP-Transistor einsetzen.

Gruß Reinhard

Autor: GeRi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
welchen PNP transistor soll ich da nehmen? PNP Hab ich noch nicht 
wirklich gebraucht!?

mfg, geri

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ GeRi (Gast)

>versteh ich nicht, warum kommen dann aus dem 8051 an einem portpin
>netmal 500uA heraus?

Weil die Ausgänge vom Typ Open Collector sind und nur einen sehr 
schwachen Pullup haben.

Ausgangsstufen Logik-ICs

MfG
Falk

Autor: Chrisi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Als Waldwiesen-PNP-Transistor, bedrahtet, schlage ich mal BC557 oder 
BC558 vor, falls SMD, nimmst Du BC857 oder BC858.

Ich würde noch prüfen, ob am Prozessor nicht ein Port vorhanden ist, der 
so schon 20mA "sinken" kann, dann kannst Du Deinen Optokoppler direkt 
anschließen... Braucht der Optokoppler wirklich 20mA?

Autor: GeRi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke für die vielen Antworten!

Habe einen alten BC328 gefunden (PNP) und diesen verbaut! Funktioniert 
wunderbar und die Änderungen waren minimal!

mfg, geri

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.