1 II2/AVR II2 - Microcontroleur  Introduction  Famille ATMEL AVR8bits  ATMega16  Organisation Mémoire  Architecture CPU  Modes d'adressage et jeu.

Slides:



Advertisements
Présentations similaires
GEF 435 Principes des systèmes dexploitation Le matériel des ordinateurs Revue Pt II (Tanenbaum 1.4)
Advertisements

Électronique de base du processeur
11 - Composants dun routeur. Sommaire 1)Sources de configuration externes 1)Composants de configuration internes et commandes détat associées.
11 - Composants d’un routeur
Le Concept du programme enregistré
TRAITEMENT PROGRAMME DE L’INFORMATION
ARCHITECTURE INTERNE d’un MICROPROCESSEUR
Le Concept du programme enregistré
Système d’exploitation : Assembleur
Les systèmes à microprocesseur
ARCHITECTURE GLOBALE CAPTAGE Traitement DES des données GRANDEURS
Conception d’une carte à microcontrôleur ARM pour le robot Amphibot II
Semaine 2 introduction à la carte à microcontrôleur
Langage C :acquisition des connaissances sous forme de TP.
SPI - Serial Peripheral Interface
Les TIMERS du PIC V1.0 novembre T.B.
Structure de la famille de DSP Motorola 56300
Architecture et fonctionnement du microcontrôleur PIC 16F84
Architecture introduction.
Acquisition de mesures à variations lentes
LES SYSTEMES AUTOMATISES
Le Bus S.P.I © T.Berenguer.
GPA770: Microélectronique appliquée
Choix d’un microcontrôleur
Télémétrie pour voiture Eco Marathon SHELL
Travail réalisé par: BOUHAJJA Lamia KHADHRAWI Marwen
Mécanismes d'exécution et de communication
L'Unité centrale (CPU) Le CPU doit être rapide (mesuré en temps de CPU) UNITE DE CONTROLE Générer les signaux de control/temps Contrôler le décodage/exécution.
Lycée ELKHAWARIZMI De SAFI
Générateur d’un signal Carré MICROCONTROLEUR PIC 16F84 Application 1:
Microcontrôleurs et Langage C Les Interruptions diapo 1
République Algérienne Démocratique et Populaire Ministère de l'enseignement supérieur et de herche scientifique Université de Ferhat Abbas -Sétif.
Journée N°1 – Baccalauréat STI2D – Formation de spécialité SIN
Microcontrôleurs et Langage C Les Timers diapo 1
Partie C − Concepts matériels
Commande d’actionneurs à l’aide d’un microprocesseur 2 EPWM Christian Koechli.
Les microcontrôleurs 8 - bits
Etude de cas: carte 80C552++ ‘APPALACHES’
1 Cliquez ici pour avancer Ici pour reculer Ch.Dupaty 11/97.
Les Microcontrôleurs 68HCXX
Les microcontrôleurs PIC
ADC Microcontrôleur MSC1210.
Chapitre 5 : Les circuits séquentiels
Exemple de mise en oeuvre
Microcontrôleurs PIC. 1ère séance Présentation du PIC16F876 Outils de programmation du PIC Le langage C Exemples d’applications simples 2ème séance Présentation.
GPA770: Microélectronique appliquée
Conception d ’ une IP d ’ un contrôleur de bus I ² C en SystemC1.0 ZHANG XUN Tuteurs du projet : Mr. P. Garda - Mr. O. Romain LISIF---Team SYEL Université.
On utilisera la version HC912DG128
Sommaire Fonctionnel Le composant Définitions Linéarité C.A.N. Flash
18/09/2013JC LP MD1 Cours_2. 18/09/2013JC LP MD2 Mapping de configuration.
Architecture du AT91SAM9G45 Janvier Pulse Width Modulation Modulation par largeur d’impulsion 2.
Micro contrôleurs M. Boutemeur
BEP Electronique - Systèmes microprogrammés
Simulateur de microcontrôleur Intel 80C51
Formation ActWin & Hitachi
Cours Système LI324 Les Interruptions Cours Système LI324
Entrées-Sorties TOR David Saint-Mellion. Modèle du composant 3 éléments : Portun Port (PA et PB du 6821). DonnéesUn registre de Données (ORA et ORB du.
Elaboré par :Chaouki LARIBI
Semaine 5 Registres spéciaux et périphériques internes Projet initial en ingénierie informatique et travail en équipe INF1995 Jérôme Collin et al.
Entrées-Sorties « Timer » David Saint-Mellion. Générer des signaux Compter des événements Créer des événements à un instant donné Application des Timers.
Encadrer par Mr Chelly Nizar
Formations Système Embarqué & Informatique Industrielle
CEA DSM Irfu 29 / 12 / Christophe Cara - Développement d’un SoC LEON Séminaire ‘instrumentation’ FPGA intégrant un microprocesseur Développement.
09/09/2008Projet PMM2-N.Dumont Dayot1 Motivations Finalité du démonstrateur Partenaires Electronique frontale Travail au LAPP Conclusion Projet PMM² Photomultiplicateurs.
Intervention sur un système technique Afficheur industriel « AIW »
Le langage Ladder Le langage Ladder
Imane Malass Icube, University of Strasbourg and CNRS 1 1 Développement d’un convertisseur de temps hybride avec une résolution de 10 ps et une large dynamique.
L.LETERRIER – SCATS Sixteen Channel Absolute Time Stamper Journées VLSI PCB FPGA IAOCAO IN2P3 C. Beigbeder 1, D. Breton 1, S.
S.P.I BUS série synchrone à grande vitesse Cliquez ici pour avancer
S.P.I BUS série synchrone à grande vitesse Cliquez ici pour avancer
Transcription de la présentation:

1 II2/AVR II2 - Microcontroleur  Introduction  Famille ATMEL AVR8bits  ATMega16  Organisation Mémoire  Architecture CPU  Modes d'adressage et jeu d'instructions  Interface Mémoire  Port d'E/S, //, timer, périphériques....  Liaison série  Fonctions, Interruptions,...

2 II2/AVR Périphériques  E/S numériques  Timers/counters/PWM/RTC  Liaison sarie  SPI,I2C, RS232, USB  E/S analogique  Watchdog  Eeprom...  Périphériques dédiés à des applications (DALI, Radio Zigbee 2.4Ghz, LCD,

3 II2/AVR Principes généraux  Tous les périphériques internes sont « configurables » par l'intermédiaire des registres d'I/O (0x20 0x5F)  Plusieurs périphériques peuvent partager une même pin  La plupart des périphériques peuvent fonctionner en mode d'interruption :  Le périphérique peut « interrompre » le CPU pour signaler un événement Par exemple :  Un front descendant est arrivé sur une entrée numérique  Un timer à expiré, une donnée est arrivée sur un port série etc....

4 II2/AVR ATMega 16

5 II2/AVR Ports entrées/sorties 8 bits Bidirectionnels bits a bits Résistance de Pull up internes 4 ports (Port A.. Port D) sur un Atmega 16

6 II2/AVR Ports E/S numériques  3 registres PORTx, DDRx, PINx par port  Bit 0 des registres => PORTx0,DDRx0, PINx0 des registres définies dans

7 II2/AVR Ports E/S numériques  DDRx = Data Direction Register (R/W)‏  Bit DDRxn= '1' ==> la pin correspondante est une sortie  Bit DDRxn= '0' ==> la pin correspondante est une entrée  PORTx = Registre de PORT(R/W)‏  Si le port est configuré en sortie (DDRx=1)‏  PORTxn ='1' ==> +5V  PORTxn ='0' ==> 0V  Si le port est configurée en entrée (DDRx=0)‏  PORTxn ='0' ==> Entrée haute impédance  PORTxn ='1' ==> Résistance pull up  PINx = registre PIN (R seulement)‏  Si PINxn = '1', la pin est au niveau 5V  Si PINxn = '0', la pin est au niveau 0V  ATTENTION : C'est vrai aussi si PORTxn est une sortie

8 II2/AVR Ports E/S numériques  Exemples DDRB = 0x0F;  PB7 à PB4 en entrées  PB3 à PB0 en sorties PORTB = 0x0C;  Vpin3 = Vpin2 = 5V  Vpin1 = Vpin1 = 0V

9 II2/AVR Ports E/S numériques  Exemple sortie  Vpin3 = Vpin2 = 5V Id = 0mA, LED éteintes  Vpin1 = Vpin1 = 0V Id = (5-2)/470 =6mA LED allumées Remarque :  Max 20mA/pin  Max 100mA/port  Max 200mA pout Boitier DIP  PORTB = 0x0C;

10 II2/AVR Ports E/S numériques  Exemple entrée unsigned char etat ; DDRD = 0x00; etat = PIND;  PB7 à PB0 en entrées  etat_x = 1 si 5V  etat_x = 1 si 0V  Si BP enfoncé 0V OK  Si BP relâché  5V pour PD0 (Résistance Pull Up)‏  ???? pour PD1 a PD3 !!!!

11 II2/AVR Résistance de pull UP  Si nécessaire (BPoussoirs) mais pas obligatoire (tension entrée imposée par un signal)‏  Résistance de pull up interne  Activable bit a bit PORTx='1'  Désactivables globalement (4ports*8bits) par le bit PUD (PullUp Disable) du registre SFIOR

12 II2/AVR Port E/S

13 II2/AVR DDRxn=1,PORTxn= DDRxn='1' PORTxn='0' V

14 II2/AVR DDRxn=0,PORTxn= DDRxn='0' PORTxn='0' 0 0 5V Etat =PINxn 1

15 II2/AVR Timers/Counters  Gestion du temps /Compteurs/Génération signaux périodiques  ATMega 16  3 Timers/Counters  Timer 0,Timer 2 => 8bits  Timer 1 => 16bits  Entrée de comptage choisie parmi 7  5 internes (Clk,clk/8,clk/64, clk/256, clk/1024)‏  1 externe (front montant ou descendant)‏  Nombreux modes de fonctionnement  Génération de signaux possible (OC0, OCA1,OCB1...)‏

16 II2/AVR Timers/Counters 0

17 II2/AVR Timers/Counters  4 Registres IO pour Timer 0  TCCR0 = Timer Counter Control Reg0  Contrôle les modes de fonctionnement  TCNT0 = TimerCouNTer 0  Registre de comptage  OCR0 = Output Compare Reg 0  Valeur de comparaison (avec TCNT0)  TIFR = Timer Interrupt Flag Register  2 bits importants :  TOV0 : TCNT0 vient de déborder 0xFF-->0x00  OCF0 : TCNT0 = OCRS0

18 II2/AVR Timers/Counters  TCCR0 = Timer Counter Control Reg0  Contrôle les modes de fonctionnement  CS02:CS00  Sélection de l'horloge de comptage

19 II2/AVR Timers/Counters  WGM01:WGM00  Modes de fonctionnement Mode 0 : Delai (TCNT0-->0xFF) Mode 2 : Horloge périodique (0-->OCR0

20 II2/AVR Timer 0 MODE 0 WGM00=WGM01=0  CS02:CS00 = '011' => Fclk/8 0xFF0x010x000xFE OVERFLOW 1

21 II2/AVR Timer 0 MODE 0 WGM00=0,WGM01=0  CS02:CS00 = '011' => Fclk/8  OCR0=0x53 0x53 0x55 0x540x52 COMPARE OCR=TCNT = 1 =0x53

22 II2/AVR Timer 0 MODE 2 (CTC) WGM00=0,WGM01=1  CTC = Clear Timer on Compare  OCR0=0x53 0x53 0x01 0x000x52 COMPARE OCR=TCNT = 1 =0x53

23 II2/AVR Timer 1  Idem Timer 0 sauf  Timer 16 bits  2 unités de comparaison 16 bits  10 registres de configurations

24 II2/AVR Timer 1