nzca hat geschrieben:Wie bekomme ich jezt raus, was ich dahin setzen muss, wo 0x55 steht?
Und ist es möglich andere Ports als LPT1 anzusprechen?
Hallo nzca!
Willkommen im Python-Forum!
Du kannst beim Initialisieren des Parallelports den Port mit angeben. 0 = LPT1, 1 = LPT2, ...
Du hast mit dem Parallelport 8 Datenleitungen. Diese 8 Datenleitungen stellen ein Byte dar. Data1 ist das erste Bit. Data2 ist das zweite Bit. Usw.
Im Binärsystem beginnt man mit der Zählung rechts und zählt nach links.
"00000001" = 1
"00000010" = 2
"00000100" = 4
"00001000" = 8
"00010000" = 16
"00100000" = 32
"01000000" = 64
"10000000" = 128
Wenn du einen oder mehrere Datenleitungen einschalten möchtest, dann kannst du dir so einen achtstelligen Text mit dem Befehl ``int(x, 2)`` vom Binärsystem in eine Zahl umwandeln. Und diese Zahl kannst du an ``p.setData()`` übergeben.
Beispiel:
Code: Alles auswählen
import parallel
p = parallel.Parallel(port = 0)
p.setData(int("00000001", 2))
p.setData(int("00000011", 2))
p.setData(int("00000111", 2))
Dann kannst du natürlich auch Binärlogik verwenden um die Zahl zusammenzustellen. Das kommt darauf an, ob du damit etwas anfangen kannst:
Code: Alles auswählen
>>> DATA1 = 1
>>> DATA2 = 2
>>> DATA3 = 4
>>> DATA4 = 8
>>> DATA5 = 16
>>> DATA6 = 32
>>> DATA7 = 64
>>> DATA8 = 128
>>>
>>> DATA1 | DATA8
129
>>> DATA1 | DATA2 | DATA3 | DATA4 | DATA5 | DATA6 | DATA7 | DATA8
255
>>
Du kannst die Zahlen aber auch einfach zusammenzählen. Das habe ich früher gemacht, als ich noch nichts über Binärlogik wusste:
Code: Alles auswählen
>>> data = DATA1 + DATA5 + DATA6
>>> p.setData(data)
>>>
mfg
Gerold
PS:
-
http://halvar.at/krimskrams/parallelpor ... oppler.gif
-
http://www.python-forum.de/post-75211.html#75211
.