Inhalt
Allgemeines
Mit dem Modul pySerial kann man Daten über die RS-232-Schnittstelle (D-Sub, UART) schicken und empfangen.
Mit dem Modul pyParallel kann man Daten über den Parallelport schicken -- was allerdings nicht mehr empfehlenswert ist, da das mit dem Parallelport seit Windows XP nicht mehr verlässlich funktioniert.
Es gibt USB-Treiber, die einen RS-232/COM Port simulieren. Das heißt, dass man USB-Geräte in Python so wie ein RS-232-Gerät ansprechen kann.
Als Anfänger würde ich mich zuerst mal auf pySerial und ein RS-232-Gerät, oder ein USB-Gerät welches einen RS-232 simuliert, stürzen. USB im Ganzen ist doch ein wenig komplexer als der Umgang mit der RS-232-Schnittstelle.
USB
Zugriff auf die USB-Schnittstellen
PyUSB
libusb
http://bitpim.svn.sourceforge.net/viewvc/bitpim/trunk/bitpim/src/native/usb/
- Wrapper aus dem bitpim Project
Anmerkungen
USB ist ziemlich ausbaufähig. Besonders interessant sind diese Seiten:
USB kennt mehrere Modi für die Datenübertragung. Diese gehen von 1,5 MBit, 12 MBit bis zu einer Datenübertragungsrate von 480 MBit.
http://www.tu-chemnitz.de/etit/messtech/studienarbeiten/abgeschl/pdf/arnold_da.pdf Besonders interessant ist der Geschwindigkeitsvergleich auf Seite 8.
Parallele Schnittstelle
"Selbstbauprojekte" hängen normalerweise am Parallelport, weil man dort per Software jede Leitung einzeln ansteuern kann.
pyParallel
- für Windows / Linux
winioport
- nur für Windows
- nutzt direkt eine DLL
ioport
- nur für Linux
- Python 'C' extension
Serielle Schnittstelle
Ansteuerung für die serielle 8-fach Relaiskarte von Conrad: http://www.python-forum.de/topic-411.html
PySerial
Siehe auch pySerial (hier im Wiki
)
SioModule
- nur für Windows
MIDI-Schnittstelle
Information dazu unter http://www.python.org/moin/PythonInMusic
Diese Liste und ein paar Erklärungen waren ursprünglich im Python Forum.