H
Chaînes de ca-
H
ractères
(textes)
Exemple pour
type de don-
nées char10
Valeur flottante
Adresse x
MMMMMMMM
octet 4
Déterminez le mode de stockage des valeurs flottantes dans votre ap-
plication. Le cas échéant, il faudra échanger les octets dans votre pro-
gramme d'interface.
Les chaînes de caractères (textes) sont transmises au format ASCII.
Le nombre de caractères max. possible dans le type de données est
indiqué dans les tableaux des adresses, par ex. "char10" (10 carac-
tères). Si un "\0" (code ASCII 0x00 comme indicateur de fin) se trouve
dans les données reçues, les caractères qui suivent n'ont aucune im-
portance.
Si l'on utilise aucun indicateur de fin, le nombre max. de caractères in-
diqué dans le type de données doit être utilisé. On évite ainsi, que les
caractères encore en mémoire soient rattachés au texte.
Comme la transmission des textes a lieu également mot par mot (16
bits) il faut envoyer un 0x00 supplémentaire si le nombre de carac-
tères est impair (y compris "\0").
Lecture de la version software 1 (ici : "216.01.01l") sous l'adresse 0x0000
(max. 10 caractères peuvent être lus)
Code ASCII pour "216.01.01l":
0x32, 0x31, 0x36, 0x2E, 0x30, 0x31, 0x2E, 0x30, 0x31, 0x6C
Demande : 01 03 0000 0005 (+ 2 octets CRC16)
Adresse de l'esclave = 01
Fonction = 03, c.-à-d. lecture de n mots
Adresse = 0000
Nombre de mots à lire = 0005, max. 10 caractères
Réponse : 01 03 0A 32 31 36 2E 30 31 2E 30 31 6C (+ 2 octets CRC16)
Adresse de l'esclave = 01
Fonction = 03, c.-à-d. lecture de n mots
Nombre d'octets lus = 10 = 0x0A
2 Description du protocole
Adresse x+1
MMMMMMMM
EMMMMMMM
octet 3
Adresse x+2
Adresse x+3
SEEEEEEE
octet 2
octet 1
19