mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Anfängerfrage Transistor Beschaltung


Autor: Lehrmann Michael (ubimbo)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Servus ich hätte da eine Frage wie ich folgende Schaltung realisieren 
soll.

Ich würde gerne wissen wie ich einen Transistor in der "Box" in der 
mitte beschalten muss und wie entsprechend die Widerstände für 5V zu 
wählen sind. Was für Standarttypen würdet ihr mir empfehlen.

Schaltgeschwindigkeiten sind gering.

Und bitte malt nicht einfach eine Linie zwische µC output und IC input. 
Danke! Das funktioniert nämlich nicht.

Autor: g457 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Als Standardtyp würde ich 'Draht' empfehlen. Das funktioniert sofern der 
rechte IC einen 'normalen' Logik-Level-Eingang hat. So steht das in 
deiner Zeichnung. 5V habens auch beide also alles in Butter.

Falls der IC mehr Strom erwartet als der µC liefern kann, dann nimm 
einen 0815-PNP in Standardemitterbeschaltung [1] dazwischen.

Allerdings vermute ich stark, dass der Fehler woanders liegt als wie von 
Dir vermutet. Dafür bräuchte es aber mehr Details um die Glaskugel zu 
füttern.

HTH

[1] http://www.mikrocontroller.net/articles/Transistor...

Autor: Otto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es wäre auch denkbar, dass das Signal invertiert werden muß......

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Servus,

Danke - die Glaskugel gibt's hier:

Beitrag "Motortreiber Problem (L6203)"

vielen Dank

Autor: Otto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn es dort mit einem Controller läuft, müsste es auch bei Deiner 
Schaltung laufen....

Hast Du die Pins auch auf Ausgang konfiguriert ?

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja Software ist gesichert.

Läuft alles wunderbar (mit LEDs + Vorwiderstand / Relais mit 
Transistor-Treiber). Nur mit dem Motortreiber machts Probleme.

Autor: Lehrmann Michael (ubimbo)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
doch nicht so oder ? dann habe ich invertierte Logik ?
bessere / einfachere Ideen ?

Autor: Otto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Evtl. schaltest Du nur den Pull-Up zu ? Ich kenne mich mit PIC nicht 
aus.

Eine LED leuchtet schon mit unter 1mA, ein Relais über einen 
Transittortreiber benötigt noch weniger.

Ich behaupte immer noch, dass Du den Port nicht richtig konfiguriert 
hast,

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Doch ich hab's in C programmiert und weil's da nicht geklappt hat hab 
ich (ja ich weiss ist peinlich) mir das ganze in Flowcode gemacht(ich 
sage bewusst nicht programmiert). Genau die gleiche Symptomatik. 
Identisch.

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat der PIC OpenCollector-Ausgänge? Oder Push-Pull? Weiß ich jedenfalls 
nicht.

Da Du einfach den AVR (Push-Pull) durch einen PIC18 ersetzt hast, könnte 
es wirklich an den Ausgängen liegen. Wie hast Du denn die LED genau an 
den Port gehängt? Gegen GND oder Vcc?

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ach ja, sollte der PIC OC-Ausgänge haben, reicht ein Pullup-Widerstand 
plus die von Dir nicht gewünschte Linie aus.

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Daran hatte ich auch schon gedacht - im Datenblatt steht nix davon.
Ich kenne beim PIC auch die Falle, dass RA4 open drain ist - dann geht's 
nur sauber nach 0V.

Okay aside - kann ich die Schaltung wie zuletzt beschrieben so verwende. 
Ich stehe saumäßig unter Zeitdruck ... =)

Autor: Otto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Versuch macht klug......

4k7 Basis und Pull-Up

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
okay ich probier 4,7k an Basis und 4,7k als Pullup aus und erstatte dann 
Rapport. bet bet bet

Autor: Christian H. (netzwanze) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bedenke aber, dass der Transistor invertiert.

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Selbstverständlich Meister =)

Autor: Ohforf Sake (ohforf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schau mal ins Datenblatt vom L6203.
Ein Transistor ist überflüssig, das Ding zieht nur ein paar Microampere 
durch die IN-Eingänge.
Der PIC treibt locker 20-25mA.
Der Fehler liegt woanders - vielleicht Versorgungsspannung, Entkopplung 
?

Autor: Otto (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Denkbar wäre weiterhin, das die Ausgänge programmbedingt z. B. invers 
zur PWM (hochfrequent) takten - dann funktioniert es über ein Relais, 
weil dies nicht so schnell schaltet.

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die PWM taktet noch garnicht. Der PWM-Ausgang ist noch nicht aktiviert. 
Das ist ein ganz normaler I/O im Moment.
Ich verstehe einfach nicht warum es geht wenn ich 5V anlege - dann ist 
die Schaltung ja zu 100% funktional. Nur der PIC schafft's nicht.

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mir fällt allerdings gerade noch ein, dass ich noch 4 LEDs betreibe 
(ohne Treiber) da könnt's vielleicht knapp werden ...

Autor: Ohforf Sake (ohforf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lehrmann Michael schrieb:
> Mir fällt allerdings gerade noch ein, dass ich noch 4 LEDs betreibe
> (ohne Treiber) da könnt's vielleicht knapp werden ...

Schau mal ins Datenblatt, da steht drin wieviel Last insgesamt erlaubt 
ist... könnte so bei 200mA liegen, für ein paar LEDs wirds reichen.

Autor: ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ohforf Sake schrieb:
> ... für ein paar LEDs wirds reichen
Aber eventuell nicht, wenn die am selben Pin hängen.

Du könntest ja mal den Pegel auf der Leitung messen, wenn der PIC den 
Ausgang auf '1' schaltet.

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... schrieb:
> Ohforf Sake schrieb:
>> ... für ein paar LEDs wirds reichen
> Aber eventuell nicht, wenn die am selben Pin hängen.

Am selben  Port könnte mir vielleicht auch zum Verhängnis werden !?

Autor: Ohforf Sake (ohforf)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Datenblatt Seite 3 :
High current sink/source 25mA/25mA
(Das gilt für jeden einzelnen Portpin)

Seite 417:
Total power dissipation (Note 1) ...1.0W
Maximum current out of VSS pin...300mA
Maximum current into VDD pin...250mA
Input clamp current, IIK (VI < 0 or VI > VDD)...±20mA
Output clamp current, IOK (VO < 0 or VO > VDD) ...±20mA
Maximum output current sunk by any I/O pin...25mA
Maximum output current sourced by any I/O pin...25mA
Maximum current sunk by all ports...200mA
Maximum current sourced by all ports...200mA

Beachte auch das Kapitel "10.0 I/O PORTS"  ab Seite 131

Noch Fragen ?  :)

Autor: Lehrmann Michael (ubimbo)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So ich hab das Problem gelöst. :-D
Da hatte auch schon jemand den richtigen Riecher. Die Software war 
schuld. Ich Vollpfosten hab n paar nette Fehler in meinem C Code 
gemacht. (Ja ich hab irgendwie ne "~" vor das TRISREGISTER gebracht. 
Nachdem ich die entdeckt hatte hat's super geklappt.

Warum allerdings Flowcode das nicht gebracht hat werde ich wohl nie 
verstehen... Einzig und alleine darum (habe ich) Flowcode eingetzt - 
damit mir sowas nicht passiert...

Trotzdem vielen Dank für die Hilfe hier im Forum ...

Gruß

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> So ich hab das Problem gelöst. :-D
Schön.

> Da hatte auch schon jemand den richtigen Riecher.
> Die Software war schuld.
Nein, das Sytem war schuld, oder der Nachbar, oder Nachbars Katze...
> Die Software war schuld.
Sei doch ehrlich zu dir selbst: DU warst schuld.

> Ja ich hab irgendwie ne "~" vor das TRISREGISTER gebracht
Woher soll der Compiler wissen, dass du das nicht willst?

> Einzig und alleine darum (habe ich) Flowcode eingetzt -
> damit mir sowas nicht passiert...
Der Rechner macht idR. genau das was man ihm sagt   :-o

Autor: Andreas R. (08fresh15)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lehrmann Michael schrieb:
> Warum allerdings Flowcode das nicht gebracht hat werde ich wohl nie
> verstehen... Einzig und alleine darum (habe ich) Flowcode eingetzt -
> damit mir sowas nicht passiert...

Wenn Du Deinen C-Code in Flowcode einfügst, wird dieser nicht 
kontrolliert.

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.