IMPLANTATION
LOGICIELLE sur le terminal
Sur un µcontrôleur PIC
On utilise une technique de machine à état, testée à chaque réception d'un
octet.
Le mode est ZERO au repos et monte à HUIT lorsqu'un datagramme
est prêt.
Mode 0
- si le caractère reçu est égal à l'adresse haute du central : mode=1
- sinon erreur datagramme
Mode 1
- si le caractère reçu est égal à l'adresse basse du central : mode=2
- sinon erreur datagramme
Mode 2
- si le caractère reçu est égal à l'adresse haute broadcast : mode=3
- si le caractère reçu est égal à l'adresse haute du terminal : mode=4
- sinon erreur datagramme
Mode 3
- si le caractère reçu est égal à l'adresse basse broadcast : mode=5 ; set
Broadcast
- sinon erreur datagramme
Mode 4
- si le caractère reçu est égal à l'adresse basse terminal : mode=5 ; set
Broadcast
- sinon erreur datagramme
Mode 5 à 8
- range l'octet dans le buffer local ; si longueur > taille buffer : set
erreur longueur
Mode 5
- si le caractère reçu est du type XN avec N>0, c'est un datagramme à répétition
- mode=6
Mode 6
- le caractère reçu contient la longueur du champs data qui va suivre
- mode=7
Mode 7
- On range le caractère reçu
- dès qu'on a tout reçu :
- on vérifie la somme de controle qui doit être nulle ; sinon on set dtg_error_cks
- mode =8
