def ByteToBin(b): """ gibt einen String der Länge 8 zurück, der das Byte b darstellt, Beispiel: 65 --> '01000001' """ return bin(b)[2:].zfill(8) import time def sendbyte(b,bitzeit,setLeitung): """ ein Byte b wird im miniRS232-Protokoll mit der Bitzeit bitzeit in s gesendet, dabei wird zum Setzen der Leitung die Funktion SetLeitung verwendet, SetLeitung hat einen Parameter vom Typ bool """ # Bitmuster erzeugen bm = ByteToBin(b) # Leitung zunächst auf Null setLeitung(0) time.sleep(0.005) # Startbit setLeitung(1) time.sleep(bitzeit) # Datenbits for i in range(8): setLeitung(int(bm[i])) time.sleep(bitzeit) # Stoppbit setLeitung(0) time.sleep(bitzeit)