Bonjour à tous,
Je développe actuellement une application qui communique avec un module USB I2C via un port COM.
Pour dialoguer avec le module il me suffi d'envoyer une séquence de trois byte.
Sous Visual Basic sa donne un truc comme cela :
UserForm1.MSComm1.CommPort = 3
UserForm1.MSComm1.Settings = "19200,N,8,2"
UserForm1.MSComm1.InputMode = comInputModeBinary
UserForm1.MSComm1.PortOpen = True
UserForm1.MSComm1.PortOpen = True
Dim octet(2) As Byte
octet(0) = 83
octet(1) = 120
octet(2) = 0
UserForm1.MSComm1.Output = octet
UserForm1.MSComm1.PortOpen = False
Question fonctionnement tout est OK
Sous python j'ai écrit cela
donnee=[83,120,0]
protocol_port_com=Serial(port=3,baudrate=19200,parity=PARITY_NONE,stopbits=STOPBITS_TWO,bytesize=EIGHTBITS)
protocol_port_com.write(donnee)
protocol_port_com.close()
Mais là cela ne fonctionne pas.
J'arrive bien a ouvrir et fermer le port. Les données parte bien (enfin cela ne bug pas), mais le module ne réagie pas.
Je pence que le problème vient du fait que la donnée n'est de type byte comme en VB car en VB si je n'envoie pas une donné byte cela ne fonctionne pas également.
Je ne sais pas comment déclaré ou créer une donnée de type byte en python.
Quelqu'un a t-il quelques idées ?
Merci par avance
A+ Cyril
Partager