Skip to content

Instantly share code, notes, and snippets.

@moreauadrien
Created May 31, 2024 16:10
Show Gist options
  • Save moreauadrien/55eef4a064a049efa194f9df8eb14efb to your computer and use it in GitHub Desktop.
Save moreauadrien/55eef4a064a049efa194f9df8eb14efb to your computer and use it in GitHub Desktop.
import serial
import binascii
def main():
# Demander le port série et le baud rate
port = input("Entrez le port série (ex: COM3): ")
baudrate = int(input("Entrez le baud rate: "))
try:
# Configurer la connexion série
ser = serial.Serial(port, baudrate, timeout=1)
print(f"Connecté à {port} avec un baud rate de {baudrate}")
while True:
# Lire l'input de l'utilisateur
user_input = input("Entrez des caractères hexadécimaux à envoyer (ou 'exit' pour quitter): ")
if user_input.lower() == 'exit':
break
try:
# Convertir l'input en bytes
data_to_send = binascii.unhexlify(user_input)
except binascii.Error:
print("Entrée hexadécimale invalide. Essayez encore.")
continue
# Envoyer les données
ser.write(data_to_send)
print(f"Envoyé: {user_input}")
# Lire la réponse
response = ser.read(ser.in_waiting or 1)
if response:
print(f"Reçu: {binascii.hexlify(response).decode('ascii')}")
except serial.SerialException as e:
print(f"Erreur de connexion: {e}")
finally:
if ser.is_open:
ser.close()
print("Connexion série fermée.")
if __name__ == "__main__":
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment