Bonjour,

Je me permet de venir vers vous afin de vous demander un peu d'aide. je suis bloqué

Je récupère des données en continu depuis un appareil électronique en port série sur un shield RS485/RS422 en 38400baud, 8bits, 1 bits de stop.

Les données sont bien réceptionnées, je les récupère bien octet par octet avec Serial1.read();

Voici la structure des données :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
00 30 
00 30 
03 21 c0 05 03 21 c0 06 02 00 00 02 00 01
03 20 10 09 03 20 11 0d 03 20 11 20 03 10 1b 0d 
04 00 16 00 1f 03 0a 1b 0d etc....
L'octet de couleur rouge correspond au nombre d'octet suivant la commande, par ex 03 soit 03 01 02 03 ou 05 01 02 03 04 05, le 00 30 est un ping de test et attend en réponse 84 84.
Il n'y a pas de caractère de fin.

Je dois lui envoyer une réponse dans les 10ms, voici un type de réponse d'exemple :

Requête = 00 30 -> Réponse = 84 84
Requête = 03 21 c0 05 -> Réponse = aucune
Requête = 03 20 10 09 -> Réponse =03 00 80 92
etc....


Avez-vous une aidée de comment faire le traitement, pour l'envoi de la réponse, je pense partir sur un switch case.

Je vous dépose un début de code dans la matinée de ce que j'ai déjà fait.

Merci d'avance.

Cordialement,

Vincent.