Forum: PC-Programmierung LPT Steuerleitungen ansprechen


von Stefan (Gast)


Lesenswert?

Hallo,

ich möchte gerne das LPT als PC-Interface zu einer Testschaltung
vorerst nur LEDs benutzen (Testschaltung muss ich erst noch bauen).
Die Funktion CreateFile in Verbindung mit WriteFile scheint zu
funktionieren.
Allerdings schreibt WriteFile so meine ich nur ein Byte auf die Pins
2-9, oder?
Weiß jemand wie ich zum Beispiel nStrobe (Pin1) in VC++ setzen kann?
Ich finde dazu nichts.

Beim googlen habe ich immer wieder gelesen, dass sich so manch einer
sein Motherboard zerstörte beim Experimenten mit dem LPT.
Kann ich 8 x 20mA LEDS (pro Pin eine LED)direkt treiben aus meinem
LPT????

Stefan

von Marc M. (bytewood) Benutzerseite


Lesenswert?

Hallo Stefan,
mit VC++ kenne ich mich (noch nicht) aus, aber es gibt diverse Treiber
in Form von .dll und .sys im Netz. Z.B. Port95NT.exe oder TVicHW32,
womit Du auf die LPT unter Windows zugreifen kannst. Recht gute
Literatur ist:  MSR mit Windows  Reber  ISBN 9783772357978.

Zur Schaltung:
Ich würde eine Test-Platine entwicklen, die a) eine externe
Spannungsversorgung benötigt und b) die Ausgänge des LPT über
Optokoppler (z.B. 2x PC817x glaube ich heissen die) von den LEDs
trennt.
Dabei die Vorwiderstände von >=1k nicht vergessen.
Vorteil: Du kannst damit nicht nur LEDs schalten, sondern auch
irgendwelche anderen Sachen (z.B. Relais, Schrittmotor,
Gleichstrommotor).
Aber: Never ever irgendwas direkt an die parallele Schnittstelle
anschließen. Ein Fehler und sie ist tot (eigene Erfahrung).

Gruß

von Schoaschi (Gast)


Lesenswert?

Wenn du die Basisadress 0x378 (decimal:888) verwendest, dann schreibst
du auf die Datenleitungen (D0-D7).
Mit der Adresse 0x379(decimal:889) kannst du ,wenn ich mich jetzt
gerade nicht täusche, auf die Eingänge zugreifen.
Und mit der Adresse 0x37A(decimal:890) kannst du dann auf die
Steuerleitungen zugreifen.

Beachte aber folgende Sachen: Die LPT-SChnittstelle ist nicht
kurzschlussfest und kann auch nicht viel Strom treiben. Und manche
Signale sind Invertiert.

von Wolfram (Gast)


Lesenswert?

Kann ich 8 x 20mA LEDS (pro Pin eine LED)direkt treiben aus meinem
LPT????

Nimm lieber 8 x 2mA LEDs
An jede LED gehört noch ein Vorwiderstand,der den Strom auf 2 mA
begrenzt. Das kannst du direkt anschliessen.
Wenn du 20 mA LEDs betreiben willst nimm einen Transistor.

von Sepp -. (sepp_o)


Lesenswert?

Schau dir mal diese Seite an:
www.geocities.com/wie_schalte_ich_mit_dem_lpt

Da habe ich beschrieben wie man sich einen Adapter für den LPT  basteln
kann mit dem eigentlich nichts schief gehen kann.
(Der Teil mit dem man auch sicher Signale einlesen kann werde ich
demnächst anfügen.)

Ganz auf der letzten Seite habe ich einen Link bei dem ganz genau
beschrieben wird, wie du den LPT unter Linux, Win98, W2K und WinXP mit
C++ ansteuern kannst.

mfg Sepp

von Blackbird (Gast)


Lesenswert?

Unter DOS, Win3.1, W95/98 kann man über die I/O-Adressen auf alle Ports
zugreifen. Unter W2K, NT, XP nicht mehr, auch im (simulierten)
DOS(32)-Fenster nicht. Dort geht es nur mit einem Treiber, einer DLL,
usw.
Die normale Ausgabe/Eingabe geht jedoch mit CreateFile, ReadFile,
WriteFile. Für die serielle Schnittstelle gibt es noch ein paar
Funktionen mehr, mit denen eine komfortable Bedienung möglich ist. Sie
ist außerdem kurzschlußfest.


Blackbird

von *.* (Gast)


Lesenswert?

> ist außerdem kurzschlußfest.

Ich würds nicht drauf ankommen lassen.

von Blackbird (Gast)


Lesenswert?

http://www.wer-weiss-was.de/theme59/article1271731.html

Oder Standard lesen.

Oder einfach nachdenken: wenn statt einem Nullmodem-Kabel mal ein
1:1-Kabel gesteckt wird, liegen beide TxD aufeinander (beide -10V).
Sendet jetzt ein PC, so wird mindestens einer +10V einschalten. Und das
ist dann mehr als nur Kurzschluß!

Sicher hält sich nicht jeder Mainboard-Hersteller an die Spezifikation.
Mit Absicht kurzschließen auf Dauer ist nicht empfehlenswert, auch bei
seriellen Schnittstellen.

Die LPT-Port-Ausgänge sind jedoch vollkommen ungesichert. Eine zu hohe
Schaltspannung oder ein zu hoher Schaltstrom, auch kurzzeitig, bedeutet
das sofortige, irreversible Aus.
Die LPT-Eingänge sind gegen negative Spannungen und Überspannungen
ungeschützt.

Blackbird

von Anonymous (Gast)


Lesenswert?

Beim Port95NT.exe gibt es das Problem, dass nur 32-Bit-Windows läuft;
was gibt es denn für 64-Bit-Windows?

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.