uart_serial_communication.py
Exemple de communication bidirectionnelle sur le port UART (TX/RX) de la Xerxes Nano pour interagir avec des périphériques série externes.
Matériel : Périphérique série connecté aux pins UART (TX, RX, GND) de la Xerxes Nano. Logiciel : Python 3, bibliothèque pyserial. Exécution : pip install pyserial puis python3 uart_comm.py. Vérifiez les permissions du port série.
uart_serial_communication.py
#!/usr/bin/env python3
import serial
import time
# Port série typique sur Jetson/Turing (à vérifier avec 'dmesg' ou 'ls /dev/tty*')
SERIAL_PORT = '/dev/ttyTHS1' # Exemple pour Jetson Orin Nano
BAUD_RATE = 115200
try:
# Ouverture du port série
ser = serial.Serial(SERIAL_PORT, BAUD_RATE, timeout=1)
print(f"Connecté à {SERIAL_PORT}")
# Envoi d'une commande
ser.write(b'PING\n')
print("Commande PING envoyée")
# Lecture de la réponse
time.sleep(0.1)
if ser.in_waiting > 0:
response = ser.readline().decode('utf-8').strip()
print(f"Réponse reçue: {response}")
else:
print("Aucune réponse reçue")
except serial.SerialException as e:
print(f"Erreur série: {e}")
print("Vérifiez les permissions (sudo usermod -a -G dialout $USER) et le port.")
except Exception as e:
print(f"Erreur: {e}")
finally:
if 'ser' in locals():
ser.close()