mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATMega8 und Transistorschaltung


Autor: Andreas Kähler (crazyicecap)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi! Ich habe da mal eine kleine Verständnisfrage.
Folgendes: Ich möchte wahlweise an einem Joystick Je einen Pin als +5v 
und einen Pin als Steuerleitung (auch mit +5v) verwenden. Normal kein 
Problem, klemmt man den einen Pin halt an VCC. Geht hier nicht, weil die 
angeschlossenen Pads unterschiedliche Belegungen verwenden. Bei dem 
einen ist Pin5 VCC und Pin 7 Steuerung, bei dem anderen genau umgekehrt.

Da ich die Versorgungsspannung ungern direkt über den Atmel ziehen will, 
sollte das besser über eine Transistorschaltung passieren. Allerdings 
kann ich die aus dem Tutorial nicht verwenden, da dort GND geschaltet 
wird; ich muss aber + schalten.

Wie gehe ich da vor?

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Andreas Kähler (crazyicecap)

>Da ich die Versorgungsspannung ungern direkt über den Atmel ziehen will,

Warum nicht? Wieviel Strom wird denn benötigt.

MFG
Falk

Autor: Der Micha (steinadler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dann hängst du die Last eben zwischen Kollektor und VCC. Und verbindest 
den Kollektor mit Masse.
Bei nem NPN-Transistor musst du hierbei aber mit 0,7V Spannungsabfall 
rechnen.

Oder du nimmst nen FET.

Autor: Steven () (ovular) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Punkt 2 auf dieser Seite
http://www.elektronik-kompendium.de/public/schaere...
Schau dir mal die PNP Schaltung an...

Gruß Steven

Autor: Andreas Kähler (crazyicecap)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Falk Brunner wrote:
> @ Andreas Kähler (crazyicecap)
>
>>Da ich die Versorgungsspannung ungern direkt über den Atmel ziehen will,
>
> Warum nicht? Wieviel Strom wird denn benötigt.
>
> MFG
> Falk

Naja, in den verwendeten Joypads ist ein wenig Elektronik in Form von 
TTL- und CMOS-Bauteilen verbaut. Ich weiss nicht genau, wieviel da max. 
gezogen wird. Beim C64 jedenfall stehen am Joyport max. 50mA zur 
Verfügung, danach werden sich wohl die meisten Pads richten.

Ist halt so, dass der GND vom Pad auch für alle anderen Funktionen 
gebraucht wird; die entsprehenden Taster ziehen die Ports jeweils auf 
Masse. Wenn ich also die Masse schalten würde, dann würde nix mehr 
gehen...

Würde das so wie im Anhang gehen?

Autor: Der Micha (steinadler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
50mA bekommste locker mit nem normalen Transistor hin.

Wenn RC dein Joystick ist, dann ists okay.
Wenn du hast, dann nimm lieber einen PNP-Typ.
NPN sollte zwar auch gehen, aber dann hast du nen Spannungsabfall von 
0,7V.

Autor: Andreas Kähler (crazyicecap)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke! Ich probiere es mal mit nem BC547A aus (davon habe ich noch ein 
paar liegen), ansonsten muss ich wohl doch mal wieder ne Bestellung 
machen...

Autor: Steven () (ovular) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bahnhof

Autor: Der Micha (steinadler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
BC547 ist NPN.
Du kannst ja probehalber mal eine Diode 1N400x in die +-Leitung hängen.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Andreas Kähler (crazyicecap)

>gezogen wird. Beim C64 jedenfall stehen am Joyport max. 50mA zur
>Verfügung, danach werden sich wohl die meisten Pads richten.

Wahrscheinlich brauchen die wesentlich weniger. Ist ja ausser Dauerfeuer 
nix drin, oder?

>Würde das so wie im Anhang gehen?

Nöö. Schalte die direkt mit dem AVR. Wen dir das nicht reicht, schalte 
ein paar 74HC125 Gates parallel, die bringen dann schon genug Strom und 
man kann sie abschalten.

MFG
Falk

Autor: Der Micha (steinadler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Steven W. wrote:
> und 0,7V hast du auch bei PNP

Achso?
Man könnte jetzt sogar noch den Basiswiderstand einsparen.

Autor: Der Micha (steinadler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Falk Brunner wrote:
> Wahrscheinlich brauchen die wesentlich weniger. Ist ja ausser Dauerfeuer
> nix drin, oder?

;-)

>>Würde das so wie im Anhang gehen?
> Nöö.

Wieso denn nicht?

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Micha R. (steinadler)

>Wieso denn nicht?

Weil der Basiswiderstand in der Emitterschaltung fehl am PLatz ist, er 
erzeugt zusätzlichen Spannungsabfall und begrenzt bisweilen sinnlos den 
Ausgangsstrom.

MFG
Falk

Autor: Andreas Kähler (crazyicecap)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Falk Brunner wrote:

> Wahrscheinlich brauchen die wesentlich weniger. Ist ja ausser Dauerfeuer
> nix drin, oder?
In C64/Atari-Pads und Stick stimmt das (CD4040 und der allseits beliebte 
NE555 sind da die Stammkandidaten), und im MegaDrive-Pad ist auch nur 
ein 74LS157 drin, nur beim CD32 kommt ein LS125 und ein LS165 
Schieberegister dazu. Wie schaut das dann aus?

Und wie soll das mit dem HC125-Gatter laufen?

edit: Hmpf...Datenblatt lesen hilft.
C auf LOW, und dann mehrere Eingänge parallel zusammen an den Ausgang 
vom AVR; die Ausgänge parallel zusammen zum Joystick, ja? Laut 
Datenblatt liefert jeder Ausgang max. 24 mA, also dürfte ich mit 3 
Gattern auf der sicheren Seite liegen.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Andreas Kähler (crazyicecap)

>In C64/Atari-Pads und Stick stimmt das (CD4040 und der allseits beliebte
>NE555 sind da die Stammkandidaten),

Sooooo teure ICs? Bei meinen waren immer nur drei Transistoren, 2 Cs und 
fünf Widerstände drin, astabiler Multivibrator halt.

> und im MegaDrive-Pad ist auch nur
>ein 74LS157 drin, nur beim CD32 kommt ein LS125 und ein LS165
>Schieberegister dazu. Wie schaut das dann aus?

Immer noch alles <1mA in Summe.

>Und wie soll das mit dem HC125-Gatter laufen?

Die 125 sind starke Bustreiber, die bringen mehr Strom. Man kann sie auf 
Tristate schalten, wenn das Pin als Eingang genutzt werden soll.

MFG
Falk

Autor: Andreas Kähler (crazyicecap)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alles klar, dann kann ich mir das ganze sparen. Mir hat nur jemand im 
BASCOM-Forum gesagt, dass es ne sehr schlechte Idee wäre, die Joypads 
über die IO-Pins zu versorgen...
Ich hielt es halt für ne gute Idee, da bei dem MD-Pad der eine Pin 
getaktet ist, und beim CD32 der andere.

Mittlerweile bin ich auch von Assembler zu BASCOM-AVR umgestiegen, das 
ist irgendwie einfacher zu lernen; ASM ist mir (noch) zu abstrakt, und 
für meine Zwecke reicht BASCOM. Sagen wir es mal so: Ich baue nicht die 
Schaltung. um Programmieren zu lernen, sondern lerne Programmieren, um 
die Schaltung bauen zu können :-)

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.