Arexx RP6 ROBOT SYSTEM RP6 CONTROL M32 Manuel D'utilisation page 25

Table des Matières

Publicité

RP6 ROBOT SYSTEM - 4. Exemples de Programme
Exemple 8: Interface du Bus I²C – petite RP6 Library
Répertoire: <RP6Examples>\RP6ControlExamples\Example_08_I2CMaster\
Fichier: RP6Control_08_I2CMaster.c
Ce programme démontre l'utilisation du mode maître du bus I²C. Le contrôleur
sur la carte-mère du robot doit avoir chargé l'exemple de programme Esclave
I²C!
Etant donné que les programmes perdent rapidement de leur clarté lorsque l'on y met
trop de choses, l'exemple 7 sera divisé en deux fichiers C et un peu complété. Dès le
début, il a été conçu de telle façon que l'on dispose d'une petite bibliothèque pour la
commande du robot via le bus I²C qui s'utilise presque comme la RP6Lib normale pour
le contrôleur sur la carte-mère. Un grand nombre de fonctions et de variables portent
le même nom que celles dans la RP6Lib. Cela facilite l'utilisation commune de parties
du programmes par la RP6Lib et la RP6ControlLib. Les fameux Event Handler pour
l'ACS, l'IRCOMM et les pare-chocs sont à nouveau disponibles. A cela s'ajoutent de
nouveaux Event Handlers pour l'état de faible charge des accus et les requêtes Watch-
dog. Dans l'exemple suivant, nous ajouterons encore les fonctions pour le contrôle de
mouvement.
A part cela, le programme est similaire à l'exemple 7. Les seuls changements sont le
rajout du timer Watchdog dont les requêtes apparaissent également sur le LCD, et la
lecture de tous les registres des détecteurs et leur sortie sur l'interface série. L'ACS,
les pare-chocs et les événements RC5 continuent à être représentés.
Exemple 9: Interface du bus I²C
Répertoire: <RP6Examples>\RP6ControlExamples\Example_09_Move\
Fichier: RP6Control_09_Move.c
Ce programme illustre comment on peut utiliser le mode maître du bus I²C. Le
contrôleur sur la carte-mère du robot doit avoir chargé l'exemple de programme
Esclave I²C!
ATTENTION: Le robot se déplace dans cet exemple!
Maintenant nous ajoutons à la nouvelle bibliothèque quelques fonctions de mouve-
ment qui sont déjà connues par la RP6Lib: move, rotate, moveAtSpeed, changeDirec-
tion et stop. L'utilisation de ces fonctions est identique à celles de la RP6Lib. Dans cet
exemple, nous avons tout retiré ce qui était déjà dans les autres exemples afin d'amé-
liorer la clarté, à l'exception de l'indication du Watchdog, et utiliser le mode bloquant
des fonctions de mouvement (quelques fonctions comme l'indication Heartbeat ne
fonctionneraient de toute manière pas). Dans cet exemple, le robot avance et recule
et
tourne
à
(„RP6Base_Move_02.c").
180°
-
tout
– Fonctions de mouvement
comme
dans
- 25 -
l'exemple
7
pour
la
RP6Lib

Publicité

Table des Matières
loading

Produits Connexes pour Arexx RP6 ROBOT SYSTEM RP6 CONTROL M32

Table des Matières