Ich bin im Moment ein wenig für dieses Thema sensibilisiert, da ich mich derzeit ein wenig in Elektronik einarbeite. Ich möchte mit dem Computer Geräte steuern und auch Signale von Geräten erhalten.
Dafür gibt es z.B. die einfache Steuerung über den Parallelport. Damit kann man auf einfachste Art und Weise acht Relais ansteuern. Dafür braucht man nicht mal eine besondere Karte von Conrad. 8 Optokoppler, 8 Widerstände, 8 LEDs, ein Kabel und schon kann man ein Leuchtfeuer veranstalten.
Wie einfach das funktionieren kann, sieht man schon aus dieser Anleitung: http://www.strippenstrolch.de/5-2-3-lpt ... euern.html Dort wird die Steuerung des Parallelports zwar mit Profan erledigt, aber das kann Python mit pyParallel natürlich auch.
Aber jetzt kommts:
Wie sieht das aus, wenn ich in den PCI-Port des Computers eine passende Platine stecke? Eine Karte wo nichts drauf ist. Erstes Ziel ist es, einfach ein paar LEDs auf der Platine zum Leuchten bringen.
Ich kann mir vorstellen, dass bei den vielen PCI-Pins sicher ein paar Pins sind, die man über den Computer ein- oder ausschalten kann. Wahrscheinlich über das Zuweisen eines Wertes an ein vorgegebenes Register. So wie es hier beschrieben wird: http://ezs.kr.hsnr.de/TreiberBuch/html/ ... TERZUGRIFF
Schafft man es, gezielt ein paar LEDs zum Leuchten zu bringen, ohne dass man auf der eingesteckten Platine irgendwelche Microprozessoren einsetzen muss?
Wenn ja, gibt es einen "quasi" Instant-Treiber, den man verwenden kann, um gezielt ein paar Register ansprechen zu können? Die Sprache ist egal. Es gibt ja "ctypes".
Gibt es dafür eine C-Library, die man per ctypes ansprechen kann?
Vereinfacht gedacht:
Code: Alles auswählen
SET: PCI Gerät 0 - Register XY = 0
SET: PCI Gerät 0 - Register YZ = 1
EDIT:
Betriebssystem kann Linux oder Windows sein.
lg
Gerold