Compare commits
2 Commits
5d1114e4e0
...
4e82ef17d4
Author | SHA1 | Date | |
---|---|---|---|
4e82ef17d4 | |||
44b17271d4 |
13
Readme.md
13
Readme.md
@ -1,12 +1,9 @@
|
||||
De l’art de déplacer un robot avec classe - Teleplot
|
||||
====================================================
|
||||
De l’art de déplacer un robot avec classe - Câblage des codeurs
|
||||
===============================================================
|
||||
|
||||
Le but est de vous proposer une série d’articles vous présentant les arcanes du déplacement d’un robot, en fournissant à chaque étape une idée de démonstration et les principales pistes de débogage. Les articles sont disponibles ici : [Wiki Eurobot](https://www.eurobot.org/wiki/fr/informatics/de_l_art_de_deplacer_son_robot_avec_classe)
|
||||
|
||||
Temps
|
||||
-----
|
||||
Câblage des codeurs
|
||||
-------------------
|
||||
|
||||
Ajout de la gestion du temps à l'aide de trois fonctions simples.
|
||||
- Une fonction qui incrémente notre temps de 1.
|
||||
- Une fonction d’initialisation qui crée l’interruption qui appellera notre fonction précédente toutes les 1 millisecondes.
|
||||
- Une fonction qui renvoie le nombre de milliseconde écoulée depuis l’initialisation.
|
||||
Le code principal permet de tester le bon fonctionnement des codeurs, afin de valider leur câblage.
|
||||
|
32
main.c
32
main.c
@ -25,22 +25,24 @@ void setup(void){
|
||||
stdio_init_all();
|
||||
Teleplot_init();
|
||||
Temps_init();
|
||||
|
||||
// Broches des codeur gérées en GPIO
|
||||
gpio_init(11); // Codeur 1, voie A
|
||||
gpio_init(12); // Codeur 1, voie B
|
||||
gpio_init(2); // Codeur 2, voie A
|
||||
gpio_init(3); // Codeur 2, voie B
|
||||
|
||||
// Broches des codeur en entrée
|
||||
gpio_set_dir(11, false); // Codeur 1, voie A
|
||||
gpio_set_dir(12, false); // Codeur 1, voie B
|
||||
gpio_set_dir(2, false); // Codeur 2, voie A
|
||||
gpio_set_dir(3, false); // Codeur 2, voie B
|
||||
}
|
||||
|
||||
void loop(void){
|
||||
static uint32_t temps_ms = 0;
|
||||
if(temps_ms != Temps_get_temps_ms()){
|
||||
temps_ms = Temps_get_temps_ms();
|
||||
// Toutes les 10 millisecondes, envoyer la valeur de "valeur"
|
||||
if(temps_ms % 10 == 0){
|
||||
Teleplot_add_variable_int("valeur", valeur);
|
||||
Teleplot_envoie_tampon();
|
||||
}
|
||||
|
||||
// Toutes les 500 millisecondes, inverser la valeur de "valeur"
|
||||
if(temps_ms % 500 == 0){
|
||||
valeur = -valeur;
|
||||
Teleplot_envoie_tampon();
|
||||
}
|
||||
}
|
||||
Teleplot_add_variable_int("Codeur1_A", gpio_get(11));
|
||||
Teleplot_add_variable_int("Codeur1_B", gpio_get(12));
|
||||
Teleplot_add_variable_int("Codeur2_A", gpio_get(2));
|
||||
Teleplot_add_variable_int("Codeur2_B", gpio_get(3));
|
||||
Teleplot_envoie_tampon();
|
||||
}
|
Loading…
Reference in New Issue
Block a user