Forum: PC-Programmierung Software zur Ansteuerung der parallelen Schnittstelle


von zauderkuenstler (Gast)


Lesenswert?

Liebe Elektronik-Interessierte,

Ist für die Ansteuerung von eigenen Schaltkreisen über die parallele 
Schnittstelle eines PCs mit Linux (oder auch Windows oder Mac OS X) 
immer ein eigener Treiber für den Schaltkreis nötig oder steuert man den 
Schaltkreis einfach über den Parallelport-Treiber des Betriebssystems 
(z.B. parport bei Linux) an?

Vielen Dank schon mal für eure Hilfe!

von Krapao (Gast)


Lesenswert?

Normalerweise unternimmt man alles, damit man keine eigenen Treiber 
implementieren muss. D.h. wenn irgendwie möglich sollte man einen 
vorhandenen Treiber des OS für die Parallelschnittstelle benutzen.

von zauderkuenstler (Gast)


Lesenswert?

Das schränkt die Möglichkeiten aber wahrscheinlich sehr ein. Ist es 
damit noch möglich, in Abhängigkeit von der Zeit unterschiedlich lange 
Signale zu senden und wie sieht es mit dem Empfangen aus? Lässt sich 
ohne speziellen Treiber noch ein D/A-Wandler ansteuern?

von Christian R. (supachris)


Lesenswert?

Sowas geht nur mit einem Echtzeit-OS, weder Standard-Linux noch 
Standard-Windows können das. Die Zeiten in denen man so ein Gefrickel 
gemacht hat, sind lange vorbei. Heutzutage schickt man die Daten per USB 
an einen Microcontroller, und der übernimmt die zeitkritischen Sachen. 
Und der Parallelport ist auch schon einiger Zeit ausgestorben.

von win311 (Gast)


Lesenswert?

Unter Windows kannst du das vergessen, unter Linux geht's.

LinuxCNC ist eigentlich für das Steuern von CNC-Maschinen gedacht, macht 
aber sonst genau das, was du willst. Da dieses Projekt Open Source ist, 
kannst du dir dort ja Anregungen holen, wie eine zeitkritische 
Parallelport-Ansteuerung möglich ist:
http://www.linuxcnc.org/

von zauderkuenstler (Gast)


Lesenswert?

Als Minimalbeispiel stelle ich mir eine blinkende LED wie bei dem 
einfachsten Arduino Beispiel vor.
Eigentlich kann ich mir kaum vorstellen, dass dafür so etwas wie ein 
Echtzeit Betriebssystem erforderlich ist, da man doch zum Beispiel beim 
Zoomen mit einer USB Kamera (okay, die vielleicht intern einen 
Mikrocontroller verwendet) auch nichts anderes macht.
Mir ist klar, dass die parallele Schnittstelle veraltet ist, aber sie 
ist eben sehr einfach und transparent.

von Der Weise (Gast)


Lesenswert?

Beim Blinken einer LED dürfte man die kleinen 
Zeit-Fehler/Ungenauigkeiten auch kaum wahrnehmen, erst bei kürzeren 
Zeiten wird es kritisch. Eine USB Kamera verwendet einen USB-Anschluss, 
und dessen kritisches Timing macht komplett ein dafür gemachter 
IC/Schaltkreis im Computer ("USB Host Controller"), und nicht das 
Betriebssystem.
Einfach ist die parallel-Schnittstelle schon, aber eben viel zu langsam 
für "moderne" Anwendungen...

von Christian R. (supachris)


Lesenswert?

win311 schrieb:
> Unter Windows kannst du das vergessen, unter Linux geht's.
>
> LinuxCNC

Ja, das ist ein speziell angepasstes Linux, soweit ich das verstehe. Mit 
einer Echtzeiterweiterung für Windows geht das genauso, nur dass das 
wahrscheinlich Geld kostet. Bei Linus ist das schon einfacher, das 
stimmt, kann man ja viel selber tunen.
Aber ich würde nicht mehr auf den LPT setzen, mittlerweile gibts auch 
einfache USB I/O Controller, die nahezu genauso leicht zu programmieren 
sind.

von win311 (Gast)


Lesenswert?

>Mit einer Echtzeiterweiterung für Windows geht das genauso

Die wäre?

von Christian R. (supachris)


Lesenswert?

Was hindert dich daran, Google zu nutzen? Es gibt einige 
Echtzeit-Erweiterungen. Wir haben zum Beispiel mal eine Beckhoff 
Soft-SPS eingesetzt, auch die arbeitet mit einem Echtzeit-Kernel unter 
Windows. Trotzdem ist es sinnlos auf ein totes Pferd zu setzen.

von Daniel (Gast)


Lesenswert?

zauderkuenstler schrieb:
> oder steuert man den
> Schaltkreis einfach über den Parallelport-Treiber des Betriebssystems
> (z.B. parport bei Linux) an?

Du meinst ppdev. Das Modul parport stellt keine Userspace API zur 
Verfügung.

von Günter Lenz (Gast)


Lesenswert?

Elektronische Experimente mit den Parallelport machen, geht
am einfachsten mit MS-DOS und QBASIC. Ich habe das bei mir so
gelöst, das ich zuerst MS-DOS auf eine FAT16 Partition
des PC installiert habe und dann Windows XP. Man kann
den Installationsvorgang von XP beeinflussen das die
DOS Partition stehen bleibt. Beim Booten hat man
dann die Wahl zwischen DOS und XP.

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.