summaryrefslogtreecommitdiff
path: root/n/avr/proto/proto.txt
blob: 4665f3b1990da855e50a6404b0ca2a825a3492e3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
*Title: Module AVR Protocole s�rie
*Author: Ni

* Principe

Ce module s'occupe de g�rer le protocole de communication sur une ligne de type
port s�rie. Il propose un service de d�codage et un service d'encodage.

Pour utiliser le d�codage, il suffit d'appeler une fonctions � chaque
caract�re re�u. Si une commande a �t� re�u, ou en cas d'erreur, elle appelle
une fonction d�finie par l'utilisateur avec pour param�tres les informations
sur la commande re�ue.

Pour utiliser l'encodage, il suffit d'appeler une fonction �mission avec
les param�tres que l'on veux envoyer.

* Protocole

Le protocole de communication est bas� sur des trames. Chaque trame commence
par un point d'exclamation et se termine par un retour chariot. Tout ce qui
n'est pas entour� de ces caract�res est ignor�.

Le point d'exclamation est directement suivi de la commande. La commande est
un caract�re alphab�tique minuscule ou majuscule.

Apr�s la commande vient une liste de d'arguments. Les arguments sont cod�s en
hexad�cimal.

Par exemple :

^<<
!z
!v03f5
!c0094ffa8
^>>

* Utilisation

On doit d�finir une fontion de callback afin de traiter les messages arrivant
et une fonction d'envois de caract�re utilis�e dans les fonctions d'envois. Le
nom de ces deux fonctions est d�fini dans |avrconfig.h|

Pour chaque caract�re re�u, on appelle |proto_accept|. Pour envoyer des
commandes, on utilise les fonctions |proto_send...|.

* Doc

*File: proto.exd
*File: proto_inline.exd