1 1/41 Plan du cours COMPOSITION ET FONCTIONNEMENT DES PICS ORGANISATION DE LA MEMOIRE PIC Les modes d’adressage LES SOURCES D’INTERRUPTIONS LE RESET LES.

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
Le Concept du programme enregistré
Architecture de machines Le microprocesseur
TRAITEMENT PROGRAMME DE L’INFORMATION
ARCHITECTURE INTERNE d’un MICROPROCESSEUR
Plan du cours : 2ème Partie
Le Concept du programme enregistré
Les microprocesseurs A. Objectifs de la séquence:
Système d’exploitation : Assembleur
Les systèmes à microprocesseur
Chapitre 8 : L’architecture de base des ordinateurs
ARCHITECTURE GLOBALE CAPTAGE Traitement DES des données GRANDEURS
Conception d’une carte à microcontrôleur ARM pour le robot Amphibot II
Base des transmissions séries René Beuchat LAP/EPFL LSN/EIG/HESSO
Gestion des Périphériques
Automates Programmables Industriels Automates Programmables
LE MICROPROCESSEUR 8086/8088 Architecture externe du 8086
Structure de la famille de DSP Motorola 56300
Architecture des Ordinateurs
Architecture et fonctionnement du microcontrôleur PIC 16F84
Fonction COMMUNIQUER les liaisons série
Communications séries synchrones
Architecture introduction.
LES SYSTEMES AUTOMATISES
GPA770: Microélectronique appliquée
Périphériques et bus système
FONCTIONNEMENT AUTOMATE
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.
Les périphériques de communication
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.
Cours Architecture des Systèmes Informatiques
Etude de cas: carte 80C552++ ‘APPALACHES’
1 Cliquez ici pour avancer Ici pour reculer Ch.Dupaty 11/97.
Les Microcontrôleurs 68HCXX
3-Présentation d’un µP simple
SURVEILLANCE VIDEO SUR RESEAU ETHERNET
Les microcontrôleurs PIC
ADC Microcontrôleur MSC1210.
Chapitre 5 : Les circuits séquentiels
AUTOMATES PROGRAMMABLES INDUSTRIELS
Validation du protocole IPMI dans un châssis ATCA
Exemple de mise en oeuvre
1. Introduction Le traitement informatisé de données requiert un dialogue, une communication entre l’homme et la machine, et parfois, entre plusieurs.
COURS_1 JC LP MD.
Microprocesseur famille 68'000 Interface matériel
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
Système slow-control au LAPP
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é.
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.
Un programme Algorithme permettant au processeur de s'alimenter:
On utilisera la version HC912DG128
1 II2/AVR II2 - Microcontroleur  Introduction  Famille ATMEL AVR8bits  ATMega16  Organisation Mémoire  Architecture CPU  Modes d'adressage et jeu.
18/09/2013JC LP MD1 Cours_2. 18/09/2013JC LP MD2 Mapping de configuration.
Micro contrôleurs M. Boutemeur
BEP Electronique - Systèmes microprogrammés
Simulateur de microcontrôleur Intel 80C51
Chapitre 3 L’accès aux données.
Architecture des ordinateurs
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.
Encadrer par Mr Chelly Nizar
L3 Instrumentation Pétrolière S6
Architecture d’un ordinateur
Formations Système Embarqué & Informatique Industrielle
ARCHITECTURE MATERIELLE D’UN SYSTEME A MICROPROCESSEUR
Architecture d'un automate programmable
Automates Programmables Industriels
Systèmes à microprocesseur Les mémoires
Programmation des microcontrôleurs PIC ENSET d'Oran / IUFM Aix Marseille - mai Les microcontrôleurs PIC.
Transcription de la présentation:

1 1/41 Plan du cours COMPOSITION ET FONCTIONNEMENT DES PICS ORGANISATION DE LA MEMOIRE PIC Les modes d’adressage LES SOURCES D’INTERRUPTIONS LE RESET LES PORTS D’ENTREE/SORTIE LE CONVERTISSEUR ANALOGIQUE/NUMERIQUE LE MODE SLEEP LE BUS I2C LE MODULE USART EN MODE SERIE (A)SYNCHRONE LE ISO7816

2 2/41 Introduction PIC = famille de µContrôleurs / MicroChip µContrôleurs –La logique câblée –Le microprocesseur –Le microcontrôleur Une unité centrale qui est le cœur du système Une mémoire contenant le programme à exécuter Une mémoire vive également appelée RAM Un port d' entrées - sorties pour « dialoguer » avec l'extérieur Applications (! bon rapport prix/complexité)

3 3/41 Caractéristiques de µContrôleurs Architectures –Von-Neuman / Harvard Jeux d'instructions –CISC / RISC

4 4/41 Le PIC 877 Unité centrale = 8 bit Mémoire programme = 8 Kmots de 14 bits Mémoire données = 8 bits / 368 octets –Registres en mémoire Ports d’entrée/sortie (bcps!) –Ex: Série, Parallèle, Numériques, Analogiques,..

5 5/41 Architecture interne du PIC

6 6/41 Unité centrale (Central Processing Unit) CPU = exécution des instructions (14 bits) –Contrôle les bus (données/instructions) –Programm Counter (PC = 13 bits) + la pile (stack = 8x13 bits) –Architecture pipe-line (lecture (registre IR) / exécution (ALU) )

7 7/41 Types des instructions Instructions orientées octet –Instruction (6b) + Destination (1b) + Oper. (7b) Instructions orientées bits –Instruction (4b) + Numéro bit (3b) + Oper. (7b) Instructions générales –Instruction (6b) + Valeur immédiate (8b) Les sauts et appels de sous-routine –Instruction (3b) + Destination (11b)

8 8/41 ALU (Arithmetic and Logic Unit) –ALU: opérations logiques + bits d’état –Registre de travail (W – Accumulateur)

9 9/41 Registre d’état (STATUS) Les opération arithmétiques (+, -, décalages...) affectent 3 bits (Carry (C), Zero (Z) et Digit Carry (DC) –C (report/retenue) = le 9 ème bit d’une opération –DC = report du bit 3 vers le bit 4 –Z (si résultat = 0, alors Z=1) = le bit test STATUS = C(b0) DC(b1) Z(b2) …

10 10/41 Mémoire programme 8K x 14b organisés en 4 pages x 2K PC = ½ PCLATH + PCL La pile est circulaire !

11 11/41 Mémoire RAM Special Function Registers (SFR) –Contrôle du µcontrôleur General Purpose Registers (GPR) –Variables locales … Organisation –4 pages x 128 registres x 8b –Plusieurs types d’adressage

12 12/41 Mémoire RAM

13 13/41 Les modes d’adressage Immédiat (littéral) –movlw 0x55; charger la valeur 0x55 en W Direct –movf 0x55,W; charger le contenu du 0x55 dans W –Utilise le registre STATUS (RP0, RP1) pour choisir banc Indirect –Utilise les registres FSR (adresse) et STATUS (IRP poids fort du banc)

14 14/41 Les modes d’adressage

15 15/41 LES INTERRUPTIONS C’est quoi une interruption? Mécanisme général d’une interruption (sur les PICs)? Sources Types d’interruptions

16 16/41 Les interruptions Mécanisme général d’une interruption 1. Le programme se déroule normalement 2. L’événement survient 3. Le programme achève l’instruction en cours de traitement 4. Le programme saute à l’adresse de traitement de l’interruption 5. Le programme traite l’interruption 6. Le programme saute à l’instruction qui suit la dernière exécutée dans le programme principal.

17 17/41 Les interruptions sur le PICs

18 18/41 Scrutation / Interruptions Annulation manuelle

19 19/41 Exemple des interruptions INT RB0 : une télécommande TV pour piloter un robot PIC RB0

20 20/41 Les interruptions … Sources –Declencheur Flag Registre Adr PEIE Enable Registre Adr –Timer 0 T0IF INTCON 0x0B NON T0IE INTCON 0x0B –Pin RB0 / INT INTF INTCON 0x0B NON INTE INTCON 0x0B –Ch. RB4/RB7 RBIF INTCON 0x0B NON RBIE INTCON 0x0B –Convert. A/D ADIF PIR1 0x0C OUI ADIE PIE1 0x8C –Rx USART RCIF PIR1 0x0C OUI RCIE PIE1 0x8C –Tx USART TXIF PIR1 0x0C OUI TXIE PIE1 0x8C –Port série SSP SSPIF PIR1 0x0C OUI SSPIE PIE1 0x8C –Module CCP CCP1IF PIR1 0x0C OUI CCP1IE PIE1 0x8C –Timer 1 TMR1IF PIR1 0x0C OUI TMR1IE PIE1 0x8C –Timer 2 TMR2IF PIR1 0x0C OUI TMR2IE PIE1 0x8C –EEPROM EEIF PIR2 0x0D OUI EEIE PIE2 0x8D –SSP mode I2C BCLIF PIR2 0x0D OUI BCLIE PIE2 0x8D –Port parallèle PSPIF PIR1 0x0C OUI PSPIE PIE1 0x8C

21 21/41 Validation des interruptions Registre INTCON –Flag GIE : met toutes les interruptions choisies en service –Flag PEIE : active les interruptions périphériques

22 22/41 Types d’interruptions Primaires (registre INTCON) Timer 0 : débordement du timer 0 –Valider: TOIE; Flag : TOIF Pin RB0 : signale une transition sur patte RB0 dans le sens déterminé par INTEDG –Valider : INTE; Flag : INTF Ch RB4/7 : changement de niveau sur une des entrées RB4 à RB7 –Valider: RBIE; Flag RBIF –Utilisation: Valider le bit concernant l’interruption Valider le bit GIE

23 23/41 Types d’interruptions Périphériques –Valider : registres PIE1 et PIE2 –Flags: registres PIR1 et PIR2 –Utilisation Valider le bit concernant l’interruption (PIE1/PIE2) Valider le bit PEIE (INTCON) Valider le bit GIE

24 24/41 Le Watchdog Timer interne spécifique (>7 ms) –Réglable, –Désactivable au démarrage –Remis à 0 sur appel de clrwdt –Redémarre le PIC si arrive en bout de course Signalé par bit T0 de statut –Utilisation Détection boucle infinie dans programme (possible sur faute électrique ou du programmeur) Réveil sur sleep

25 25/41 LE RESET (redémarrage 0x00) LES DIFFERENTS TYPES DE RESET –Apparition de la tension d’alimentation après une coupure –Application d’un niveau bas sur la pin MCLR durant le déroulement du programme –Application d’un niveau bas sur la pin MCLR durant le mode sleep –Débordement du watchdog durant le déroulement du programme –Débordement du watchdog durant le mode sleep –Remontée de la tension d’alimentation après une chute partielle Registres (PCON et STATUS) –PCON b0 : BOR : Brown Out Reset : Reset sur chute de tension b1 : POR : Power On Reset : Reset par mise sous tension –STATUS b3 : PD : Power Down bit : passage en mode sleep b4 : TO : Time Out bit : reset par débordement du watchdog

26 26/41 Détermination de l’événement

27 27/41 Scrutation ou interruption Scrutation (polling) –Maîtrise des temps –Conservation du caractère séquentiel Interruption –Permet de prendre en compte un événement au plus vite –Évite scrutations inutiles –Risque d'engorgement ?

28 28/41 LES PORTS D’ENTREE/SORTIE Types (entrée ou sortie) –PORTA/B/C/D/E Image des pins RA0-RA5 (RB0-RB7) Fonctionnement –Lecture / Modification / Ecriture Configuration –Registre TRISA/B/C/D/E (1=entrée; 0=sortie)

29 29/41 LE CONVERTISSEUR ANALOGIQUE/NUMERIQUE Principes / Fonctionnement - par approximations succesives - acquisition / conversion / lecture résultat Tension de référence MUX (8 canaux) CAN et INT

30 30/41 Mode SLEEP Placement en sommeil –Remise à zéro du watchdog –Arrêt de l'oscillateur (donc des instructions) Réveil –Reset –Échéance du watchdog –Interruption RB0/INT RB EEPROM

31 31/41 Le port D en mode PSP Parallel Slave Port –Interfaçage E/S avec d’autres circuits –« L’extérieur » prend le contrôle … –Utilisation du TRISE (bit PSPMODE) –Utilisation des pins RE0/2 pour RD/CS/WR

32 32/41 LE MODULE USART EN MODE SERIE (A)SYNCHRONE Généralités –Mode asynchrone / synchrone Fonctionnement –Maître / esclave –token-ring Configuration –Le registre TXSTA

33 33/41 Autres modes de communication Module MSSP (Master Synchronous Serial Port) –Mode SPI (toujours full-duplex, ordre des bits) –Mode I2C (hardware) Module USART –Mode asynchrone ou synchrone

34 34/41 Protocole série I 2 C I 2 C (Inter-Integrated Circuit) –Protocole série avec 2 lignes bidirectionnelles dévéloppé par Philips Semiconductors il y a 20 ans –Permet d'établir une liaison série synchrone entre 2 ou plusieurs composants –Transfert de données jusqu'à 100 kbits/s et 7 bits d'adresses (127 péripheriques) en configuration classique –3.4 Mbits/s et 10-bit d'adresses en configuration fast-mode –Example de péripheriques avec I 2 C bus: EPROMS, Flash, RAM, real-time clocks, watchdog timers, et... microcontrôleurs Trés utilisé dans l'industrie automobile

35 35/41 LE BUS I2C CARACTERISTIQUES FONDAMENTALES –Seuls les esclaves disposent d’adresses –Ce sont toujours les maîtres qui pilotent le transfert –Un maître ne peut parler qu’à un esclave (ou à tous les esclaves), jamais à un autre maître. LES DIFFERENTS TYPES DE SIGNAUX – La ligne SCL (Serial Clock Line), qui, comme son nom l’indique, véhicule l’horloge de synchronisation –La ligne SDA (Serial DAta line), qui véhicule les bits transmis. –Le bit de start, le bit 0/1, le bit de stop, le bit ACK, le bit R/W ARBITRAGE DU BUS –Technologie collecteur-ouvert

36 36/41 I2C bus structure SCL SDA Micro- controller (master) EEPROM (servant) Temp. Sensor (servant) LCD- controller (servant) < 400 pF Addr=0x01 Addr=0x02 Addr=0x03 D C STST ARTART A6A6 A5A5 A0A0 R/wR/w ACKACK D8D8 D7D7 D0D0 ACKACK STST OPOP From Servant From receiver Typical read/write cycle SDA SCL SDA SCL SDA SCL SDA SCL Start conditionSending 0Sending 1Stop condition

37 37/41 Applications avec PIC Programmer en C –Tester sur simulateur Le robot Hemisson –Un Pic, –2 moteurs PWM, différents capteurs Exemple d’application

38 38/41 Testing and Debugging Implementation Phase Verification Phase Verification Phase Emulator Debugger / ISS Programmer Development processor (a) (b) External tools ISS –Gives us control over time – set breakpoints, look at register values, set values, step-by-step execution,... –But, doesn’t interact with real environment Download to board –Use device programmer –Runs in real environment, but not controllable Compromise: emulator –Runs in real environment, at speed or near –Supports some controllability from the PC

39 39/41 Bibliographie Cours de Bigonoff – Microchip –Datasheet du PIC –Simulateur MPLAB –