Forme des trames
Le protocole est le suivant : le PC envoie une trame d'ordre au sentinel et le sentinel y répond par
une trame. Le sentinel n'envoie une trame vers le PC que s'il y a eu une sollicitation de la part du PC
par l'envoi préalable d'une trame d'ordre.
Une trame est constituée d'un nombre d'octets variables. Ici M octets
Le premier octet est toujours la valeur 0x1D (indicateur de début de trame), le second octet est le
nombre d'octets égal au nombre de données plus l'octet de checksum qui arrive en dernier.
Valeur
Octet
Rang dans
la trame
Fonction
Début de trame Nbre+1 Ordre Param1 ... ParamN Check Sum
L'octet Data0 va définir l'ordre que doit exécuter le sentinel, les octets Data1 à DataN sont les
paramètres optionnels de l'ordre.
La trame taille minimale doit contenir au moins Data0, donc M=4
La trame de longueur maximale fait 24 octets, M=24
Le l'octet checksum de rang M est la somme des octets de rang 1 à M 1 ‐
Exemple d'une trame qui envoie le simple ordre 0x1A (=Data0):
Valeur octet
Valeur réelle
Rang dans la trame
Fonction
Donc, la trame d'ordre 0x1A consiste à envoyer successivement les 4 octets suivants
0x1D,0x02,0x1A et 0x39 à travers le port série.
Le sentinel va renvoyer une trame de 15 octets:
Valeur octet
Valeur réelle
Rang dans la trame
Valeur octet
Valeur réelle
Rang dans la trame
Les couleurs correspondent a un regroupement des données dans la trame pour former des
variables typées, par exemple de type Byte (1 Octet), Word16 (2 Octets), LongWord32 (4 Octets),
LongWord24 (3 Octets).
Sentinel – User Guide (Français / English) – DC0011C
0x1D
N+2
1
2
0x1D
0x1D
1
Début trame Nbre+1 Ordre
0x1F N+2 Data0 Data1 Data2 Data3 Data4 Data5
0x1F 0x0F
1
2
Data6 Data7 Data8 Data9 Data10 Data11 Check Sum
0x3C
0x00
9
10
Data0 Data1 ... DataN Check Sum
3
4
N+2
Data0 Check Sum
0x02
0x1A
2
3
0x02
0x04
0x00
3
4
0x00
0x04
11
12
...
M-1
0x39
4
Check Sum
0x00
0x00
5
6
0x10
0x30
12
14
M
0x00
7
8
0x00
15
24 / 61