diff --git a/IdentificationCartes.py b/IdentificationCartes.py index 4457541..772410e 100644 --- a/IdentificationCartes.py +++ b/IdentificationCartes.py @@ -1,4 +1,6 @@ import serial +import serial.tools +import serial.tools.list_ports from time import sleep from LectureReception import lire_message @@ -15,26 +17,44 @@ def ping(ser: serial.Serial): message = ser.read(ser.in_waiting) # On vide le tampon if(message[0] == b'A'[0]): print("Carte Actionneur") + return "Actionneur" else: - print("Carte inconue : " + str(message)) + print("Carte inconnue : " + str(message)) + return None return # On teste les cartes au protocole "com_v2" (détection, propulsion) ser.write(b'\xFF\xFF\x05dD\x00\x01\x00') sleep(0.01) messages, tmp = lire_message(ser, b'') - if messages is not []: + print(messages) + if messages != []: if messages[0][0] == b'D'[0]: print("Carte de détection") - return + return "Detection" if messages[0][0] == b'P'[0]: print("Carte de propulsion") - return + return "Propulsion" - +def identifie_liaison_serie(): + serial_actionneur = None + serial_detection = None + serial_propulsion = None + for comport in serial.tools.list_ports.comports(): + print(comport.device) + ser = serial.Serial(comport.device , 115200) + nom_liaison = ping(ser) + if nom_liaison == "Actionneur": + serial_actionneur = ser + elif nom_liaison == "Detection": + serial_actionneur = ser + elif nom_liaison == "Propulsion": + serial_propulsion = ser + return [serial_propulsion, serial_detection, serial_actionneur] if __name__ == "__main__": - ser = serial.Serial('/dev/ttyACM0' , 115200) - while(1): - ping(ser) - sleep(1) \ No newline at end of file + print(identifie_liaison_serie()) + # ser = serial.Serial('/dev/ttyACM0' , 115200) + # while(1): + # ping(ser) + # sleep(1) \ No newline at end of file