Titre: Carte ARDUINO UNO Microcontrôleur ATMega328
Auteurs: B. Cottenceau
Ecole: Université d’Angers
Résumé: Le modèle UNO de la société ARDUINO est une carte électronique dont le cœur est un microcontrôleur ATMEL de référence ATMega328. L’ATMega328 est un microcontrôleur 8bits de la famille AVR dont la programmation peut être réalisée en langage C/C++. L’intérêt principal des cartes ARDUINO (d’autres modèles existent : Mega, Nano…) est leur facilite de mise en oeuvre. Un environnement de développement (IDE), s’appuyant sur des outils open-source, est fourni. En outre, charger le programme compile dans la mémoire du microcontrôleur se fait très simplement (via par port USB) dans cet IDE. Enfin, beaucoup de bibliothèques de fonctions sont également fournies pour l’exploitation des entrées-sorties courantes :
E/S TOR, gestion des convertisseurs ADC, génération de signaux PWM, exploitation de bus TWI/I2C, exploitation de servomoteurs, d’afficheurs LCD … L’objectif du cours Microcontrôleur s n’est pas simplement de savoir utiliser la carte Arduino UNO. C’est surtout l’occasion d’aborder des problèmes de programmation de bas niveau (la valeur binaire des variables manipulées importe alors beaucoup) et d’apprendre a utiliser le langage C pour cette programmation bas niveau, notamment en sachant gérer des registres/variables « au niveau du bit ». Donc quand on se complique la tache, alors qu’une fonction Arduino existe, dites-vous que c’est voulu. L’objectif de ce document est de mettre en évidence certaines informations techniques concernant l’exploitation des périphériques intègres, en particulier lorsqu’on n’utilise pas les fonctions « cle en main » d’ARDUINO, dans l’objectif de comprendre comment ca marche !
Extrait du sommaire:
1 Introduction 3
2 Schéma simplifié de la carte Arduino UNO3
3 Microcontrôleur ATMEL ATMega3284
4 Le programmation avec l’IDE Arduino 6
4.1 Caractéristiques du développement ARDUINO6
4.2 Langage C pour ARDUINO UNO7
5 Structure interne de l’ATMega328 (extraits de documentations ATMEL)10
5.1 Status Register (SREG).10
5.2 Digital I/O Entrées Sorties Binaires/Tout Ou Rien (TOR)10
6 Sources d’interruption exploitables sur ATMega328 (carte Arduino UNO)13
6.1 Interruptions Externes (liées aux entrées PD2 et PD3)14
6.2 Interruptions « Pin Change » (possible sur toute entrée TOR).16
6.3 Interruptions Timers.18
7. Timers/Counters de ATMega32819
7.1 Timer/Counter 0 (comptage 8 bits)19
7.2 Timer/Counter 2 (comptage 8 bits)19
7.3 Exemples Timer 2 avec Interruption23
7.4 Timer/Counter 1 (comptage 16 bits)27
Cours Microcontrôleur microprocesseur 14
Télécharger le fichier PDF: Carte ARDUINO UNO Microcontrôleur ATMega328