2.9
Traitement des erreurs
Codes d'erreur
Codes d'erreur possibles :
1
Fonction invalide
2
Adresse de paramètres invalide ou nombre de mots ou de bits à lire ou à écrire trop élevé
8
Paramètre protégé en écriture
Réponse en cas d'erreur
Adresse de l'esclave
1 octet
Le code de la fonction est associé à 0x80 à l'aide d'une fonction OU (OR), c'est-à-dire que le bit
de poids fort (MSB = Most Significant Bit) est mis à 1.
Exemple
Demande de données :
01
03
40
00
Réponse (avec code d'erreur 2) :
01
83
02
CRC16
Cas particuliers
Dans les cas suivants, l'esclave ne répond pas :
• Débit en Baud et/ou format de données ne concordent pas pour le maître et pour l'esclave
• L'adresse de l'appareil utilisée ne concorde pas avec l'adresse de l'esclave
• La somme de contrôle (CRC16) est incorrecte
• L'ordre du maître est incomplet ou contradictoire
• Le nombre de mots à lire est égal à 0
Dans ces cas, la demande de données devrait après écoulement du temps du timeout (2s) être
renvoyée.
Fonction XX OR 80h
1 octet
00
04
CRC16
Code d'erreur
1 octet
2 Protocole
Somme de contrôle
CRC16
2 octets
15