Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Robot EvalBot

Projet réalisé en binôme en première année à l’ESIEE Paris, dans le cadre du module IPM. Les programmes pilotent directement les périphériques du Texas Instruments Stellaris LM3S9B92 EvalBot, sans système d’exploitation ni bibliothèque de haut niveau.

Programmes

Chaque fichier est un exercice autonome avec son propre point d’entrée __main.

Fichier Fonction
allumer-quatre-leds.s configuration de PF2 à PF5 et commande des quatre LED
clignoter-led1.s clignotement d’une LED avec une temporisation logicielle
clignoter-quatre-leds.s alternance de deux motifs sur les quatre LED
commande-led2-switch2.s commande d’une LED à partir du bumper PD6
commande-leds-switch-bumper.s lecture de PD6 et PE0 pour commander deux LED
moteur-droit-pwm.s initialisation et commande PWM du moteur droit
moteur-gauche-pwm.s initialisation et commande PWM du moteur gauche
commande-deux-moteurs.s marche avant/arrière avec deux niveaux de vitesse

Cible matérielle

Élément Broches ou périphérique
Microcontrôleur LM3S9B92, ARM Cortex-M3
LED PF2 à PF5
Bumper / switch PD6 et PE0, entrées actives à l’état bas
Moteur droit PWM0 sur PD0, phase sur PD1
Moteur gauche PWM2 sur PH0, phase sur PH1
Commandes moteur communes EN_12V sur PD5, SLOW_DECAY sur PD2

Points techniques

  • activation des horloges avec RCGC0 et RCGC2 ;
  • configuration directe de GPIODIR, GPIODEN, GPIOPUR et GPIOPCTL ;
  • accès masqué à GPIODATA pour modifier certaines broches ;
  • sélection des fonctions alternatives pour les sorties PWM ;
  • réglage de la période et du rapport cyclique avec LOAD et CMPA.

Utilisation

Les sources utilisent la syntaxe assembleur ARM/Thumb de Keil µVision. Pour lancer un exercice :

  1. créer une cible Keil pour le LM3S9B92 ;
  2. ajouter un seul fichier .s à la cible ;
  3. compiler, connecter l’EvalBot et transférer le programme ;
  4. vérifier le comportement des LED, des entrées ou des moteurs.

Les programmes sont spécifiques au brochage et aux registres du LM3S9B92. Ils ne sont pas portables tels quels vers une autre carte.

Périmètre

Le dépôt conserve uniquement les programmes réalisés pendant le TP. Les squelettes, temporisations et catalogues de registres fournis pendant le cours ne sont pas redistribués.

Les essais ont été réalisés sur le robot pendant les séances. Il n’y a pas de projet Keil complet ni de test automatisé dans ce dépôt.

About

Pilotage bas niveau d’un EvalBot LM3S9B92 en assembleur ARM : GPIO, LED, boutons, contacteurs et moteurs PWM.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages