La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

ARCHITECTURE GLOBALE CAPTAGE DES GRANDEURS PHYSIQUES Adaptation, Conditionnement Conversion Analogique Numérique Traitement des données Numériques Mémorisation.

Présentations similaires


Présentation au sujet: "ARCHITECTURE GLOBALE CAPTAGE DES GRANDEURS PHYSIQUES Adaptation, Conditionnement Conversion Analogique Numérique Traitement des données Numériques Mémorisation."— Transcription de la présentation:

1 ARCHITECTURE GLOBALE CAPTAGE DES GRANDEURS PHYSIQUES Adaptation, Conditionnement Conversion Analogique Numérique Traitement des données Numériques Mémorisation Visualisation Commandes Actionneurs Conversion Numérique Analogique

2 LE SYSTEME MINIMUM MICROPROCESSEUR Mémoire Non Volatile EPROM, EEPROM Mémoire Vive (RAM) Interface dentrée/Sortie ProgrammeDonnées Décodage dadresse CS A0 à An D0 à Dn Bus de données Bus dadresse

3 Le Microprocesseur: Architecture interne UAL Registres de travail Accumulateurs Registres dadressage PC, Index, pointeur De piles Registres Dinstructions Circuits séquencement Interne et contrôle de commande Registre détat Bus de données BUS ADRESSE Les lignes de commandes Quartz Circuit dhorloge

4 LES BUS : GENERALITES DEFINITION: Ensemble de lignes destinées au transport dinformations binaires dont le format correspond au nombre de fils du bus. Exemple : bus de données 8 bits D0 à D7 Linformation est disponible en parallèle: Chaque bit du mot binaire est disponible au simultanément Mot binaire transporté : 4C(hexa) D7D6D5D4D3D2D1D

5 Les bus du microprocesseur Le bus des données: permet déchanger des informations binaires entre le microprocesseur et les circuits périphériques Écriture Lecture

6 Les bus du microprocesseur 2 Le bus des adresses: permet de choisir la case mémoire du circuit périphérique qui contient linformation que le microprocesseur veut lire ou modifier Capacité dadressage du microprocesseur: 2 16 adresses (64Ko) Capacité dadressage de la mémoire: 2 13 adresses (8Ko) Le microprocesseur impose ladresse

7 Les bus du microprocesseur 3 Le bus de commande: ensemble de signaux permettant au système (microprocesseur et périphériques) de fonctionner Signaux de commandes entrants depuis les périphériques Signaux de commandes sortants vers les périphériques

8 Le µp 6809 : structure « logicielle » Les différents registres et leur format b 7 b0 b7 b 0 A B Accumulateurs A et B 8 bits b15 D b 0 ou D registre de 16 bits 15 X 0 Registre dindex X de 16 bits 15 Y 0 Registre dindex Y de 16 bits 15 U 0 Pointeur de pile utilisateur 15 S 0 Pointeur de pile système 7 DP 0 Registre dadresse de page 15 PC 0 compteur programme 7 CCR 0 Registre détat

9 Le µp 6809 : le jeu dinstruction

10 Instruction : Format et caractéristiques Pour chaque microprocesseur le code définissant linstruction à un format spécifié. Pour le 6809, deux champs obligatoires : code opération et opérande PREMIER CHAMP DEUXIEME CHAMP CODE OPERATION OPERANDE 1 Octet 1 ou 2 octets Exemple : LDA $C007 Les deux caractéristiques essentielles sont la durée en nombre de cycles machines et la taille en octets

11 Instruction : Mécanisme dexécution 1ère étape PC B0 B16 Le PC contient ladresse de linstruction à exécuter.

12 Instruction : Mécanisme dexécution 2ème étape Registre dinstruction b7b7 b0b0 La donnée contenu dans la case mémoire dont ladresse était pointé par le PC est transférée dans le registre dinstruction pour y être décodée

13 Instruction : Mécanisme dexécution 3ème étape Microprocesseur A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A13 A14 A15 D0 D1 D2 D3 D4 D5 D6 D7 U? 6809 X1 39 EX2 38 RESET 37 NMI 2 HALT 40 IRQ 3 FIRQ 4 MRDY 36 DMA/B 33 A0 8 A1 9 A2 10 A3 11 A4 12 A5 13 A6 14 A7 15 A8 16 A9 17 A10 18 A11 19 A12 20 A13 21 A14 22 A15 23 D0 31 D1 30 D2 29 D3 28 D4 27 D5 26 D6 25 D7 24 E 34 Q 35 BA 6 BS 5 R/W 32 Linstruction est exécutée avec positionnement des bus adresses, données et signaux de commande, le PC contient alors ladresse de la prochaine instruction à exécuter.

14 Les modes dadressages n°1 Inhérent : un seul octet, le code opération Immédiat : B7B0 B7B0 code opération Adresse de LEprom ex:C007 Opérande Adresse suivante Contenu mémoire programme Mémoire 96 Instruction 42 Accumulateur A 7F LDA < $42 7F D342 Registre DP D3 Direct : Exemple : NOP Exemple : LDA#$C9 Exemple : LDA<$42

15 Les modes dadressages n°2 Etendu : B7B0 B7B0 B7B0 B7B0 code opération Adresse de LEprom ex:C007 Opérande Adresse $C908 Cette adresse peut être dans nimporte quel circuit périphériques, ladressage étendu permet de travailler sur toute la plae dadressage du microprocesseur Contenu mémoire programme Exemple : LDA$C908 Contient les poids forts de ladresse de lopérande: C9 Contient les poids faibles de ladresse de lopérande: 08 b7b0

16 Les modes dadressages n°3 Indexé : PC $2001 PC $2003 X $D230 X $D230 ACCU A XX ACCU A $45 Mémoire programme Mémoire programme $2000 $2000 $2001 $A6 ($D230) $2001 $A6 $ =05 +PC $ $2003 PC = $D235 $2003 Mémoire des données Mémoire des données $D235 $D235 $45 $D236 $D236 $47 Exemple : LDA,X +

17 Les sous programmes Programme principal Sous programme Appel SPG Retour Un sous programme est une partie répétitive de programme qui peut être appelée plusieurs fois dans le programme principal

18 Mécanisme dappel à sous programme Contenu de la pile Temps 1 Temps 2 Temps 3 Temps 4 $103 $103 $103 $303 Programme principal $100 Appel SPG1 $103 retour SPG1 1 SPG1 $280 SPG2 $300 Appel SPG2 2 $900 $303 retour SPG2 4 retour 3 retour

19 Les interruptions But : interrompre le déroulement du programme pour traiter par le déroulement dun programme dinterruption spécifique une tâche devenant prioritaire Mémoire Microprocesseur BUS E/S E/S IRQ IRQ IRQ Ligne dinterruption sur le bus de commande Le vecteur dinterruption est ladresse fixée par le constructeur dont le contenu sera chargé dans le PC lors du déclenchement de linterruption, ce contenu doit être ladresse de début du programme dinterruption

20 Le décodage dadresse Tous les périphériques étant reliés sur le même bus de données, lorsque le microprocesseur accède en lecture sur lun deux, un conflit de bus peut se produire

21 Réalisation pratique du décodage U? Sorties à haute impédance (« déconnectées »)

22 Le microcontrôleur : architecture interne C HIEN DE G ARDE B US DONNÉES - CONTRÔLE - ADRESSES RAM EEPROM M ÉMOIRE D E D ONNÉE ESET O SCILLATEUR RO SCIN O SCOUT M ICROPROCESSEUR INT C.A.NTIMER S T IMER 1 T 2 I NTERFACE P ARALLÈLE P ORT A P B P C I NTERFACE S ÉRIE S OUT S CLK S IN ROM M ÉMOIRE P ROGRAMME Ou EPROM

23 Le Pic 16F877 : architecture interne

24 Les registres de la partie microprocesseur 1ère partie Programme counter (13 bits) Pile 8 niveaux (13 bits) UAL 8bits Registre W (accumulateur 8 bits) Registre détat (status register) Registre FSR (adressage indirect)

25 Les registres de la partie microprocesseur 2ème partie Registre dinstruction Registre de contrôle et décodage de linstruction Timing génération (circuit dhorloge) Multiplexeur données et adresse

26 Généralités sur les circuits mémoires n°1 Décodeur Lignes 1 parmi m PLAN MEMOIRE Matrice de points mémoire P.M( ij ) m lignes p colonnes m fois p cellules Logique de comman de Décodeur colonnes 1 parmi p Circuits dentrée Circuits de lecture / écriture Circuits de sortie Circuit adresse ligne Circuit adresse colonne BUSADRESSESBUSADRESSES Bus donnée vers décodeur Al0 lignes Al0/ Al1 Al1/ vers décodeur Ac0 colonnes Ac0/ Ac1 Ac1/ Structure interne

27 Généralités sur les circuits mémoires n°2 Les différents types de mémoire Mémoire non volatile, avec accès en lecture uniquement, programmée par lutilisateur, elle peut être effacée électriquement et reprogrammée un certain nombre de fois. (10 6 ) sans matériel spécifique et à partir de son alimentation (cest presque une RAM non volatile) E.E.P.R.O.M : Electrical erasable Programmable read only mémory Mémoire non volatile, avec accès en lecture uniquement, programmée par lutilisateur, elle peut être effacée par rayonnement ultra violet et reprogrammée un certain nombre de fois(quelques centaines) par un matériel spécifique E.P.R.O.M : Erasable Programmable read only mémory Mémoire non volatile, avec accès en lecture uniquement et programmée par lutilisateur de façon définitive P.R.O.M : Programmable read only mémory Mémoire non volatile, avec accès en lecture uniquement et programmée par le constructeur de façon définitive R.O.M : read only mémory Mémoire volatile ou lon peut lire et écrire dans nimporte quelle case mémoire sans ordre précis R.A.M : ramdom access mémory

28 Généralités sur les circuits mémoires n°3 Les caractéristiques essentielles dune mémoire sont: - le temps daccès qui est le temps entre linstant où ladresse est positionnée sur le bus dadresse et linstant où la donnée est disponible en sortie MEMOIRE Bus adresses Bus données Adresse valide Temps daccès Donnée valide t

29 Généralités sur les circuits mémoires n°3 bis - la capacité et le format des données Capacité = 2 n mots où n est le nombre de fils du bus adresse Format du mot = nombre de fils du bus de données nombre de bit = Format du mot x 2 n

30 Les périphériques du microcontrôleur: la mémoire programme De type Flash EEPROM Flash : accès rapide en écriture, la programmation est faite directement sur la carte démulation : programmation « in situ » Organisation: mémory map ou plan mémoire Accès : utilise des bus spécifiques séparés de la mémoire des données

31 Les périphériques du microcontrôleur: la mémoire des données Scindée en deux parties: une RAM et une EEPROM Bank 0 Bank 1 Bank 2 Bank 3 0h 7Fh 80h FFh 100h 17Fh 180h 1FFh 368 octets Data EEPROM 256 octets

32 La RAM data Organisée en «banks» elle contient les registres de gestion des circuits périphériques et les registres spécifiques Accès à chaque bank par les bits RP0 et RP1 du registre STATUS

33 Accès logiciel à la mémoire Programme

34 Accès logiciel à EEPROM DATA

35 Les registres gérant laccès aux EEPROM data et programme

36 Les périphériques du microcontrôleur: les ports dentrée/sortie Certaines lignes de port en plus de pouvoir être configurées en entrée ou en sortie, ont la particularité de pouvoir remplir dautres fonctions comme sortie PWM, ligne usart, ligne I2C, lignes SPI…

37 Le port A: Structure électrique

38 Le port A: configuration Les registres de configuration du port A Exemple de programme dinitialisation

39 Les fonctions du port A

40 Le port B: Structure électrique

41 Le port B: configuration et fonctions Les registres de configuration du port B Les fonctions de chaque ligne

42 Le port C: Structure électrique

43 Le port C: configuration et fonctions Les registres de configuration du port C Les fonctions de chaque ligne

44 Le port D: Structure électrique

45 Le port D: configuration et fonctions Les registres de configuration du port D Les fonctions de chaque ligne

46 Le port E: Structure électrique

47 Le port E: configuration et fonctions Les registres de configuration du port E Les fonctions de chaque ligne

48 le convertisseur analogique numérique: généralités et définitions Rôle : convertir une tension analogique en une combinaison numérique sur n bits Principe et généralité : CONVERTISSEUR ANALOGIQUE NUMERIQUE (C.A.N.) / format N bits Les tensions de référence fixant la dynamique du signal dentrée à convertir sont des données constructeur (Vref+ et Vref-) La valeur de quantification ou « QUANTUM » est déterminé par le nombre n de bits du convertisseur. q= (Vref+ - Vref-)1/2 n

49 le convertisseur analogique numérique du microcontrôleur PIC16F877: structure

50 le convertisseur analogique numérique du microcontrôleur PIC16F877: configuration,sélection de lentrée

51 le convertisseur analogique numérique du microcontrôleur PIC16F877: configuration dentrée et de vref+ et vref-

52 le convertisseur analogique numérique du microcontrôleur PIC16F877: résultat de conversion Le résultat est obtenu sur un format de 10 bits

53 Les timers : généralités Les Timer permettent de réaliser les fonctions suivantes : Génération dun signal périodique modulé ou non en largeur dimpulsion, Génération dune impulsion calibrée, Temporisation, Comptage d'événements. Plusieurs registres associés aux Timers permettent de configurer les différents modes décrits précédemment.

54 Le timer 0 du pic 16F877 : structure et fonctionnalités Compteur 8 bits Avec possibilité de générer une interruption au passage de FFh à 0h Possède un prédiviseur interne

55 Le timer 0 du pic 16F877 : configuration et registres associés

56 Le timer1 du pic 16F877 : structure et fonctionnalités Compteur 16 bits Avec possibilité de fonctionner en compteur ou mesure de durée Possède un prédiviseur interne

57 Le timer 1 du pic 16F877 : configuration et registres associés

58 Le timer 2 du pic 16F877 : structure et fonctionnalités Compteur 8 bits Possède un prédiviseur et un postdiviseur interne

59 Le timer 2 du pic 16F877 : configuration et registres associés

60 Le module CCP (comparaison, capture, PWM) : mode capture Dans le mode capture les registres CCPR1H et L « retiennent » le contenu du timer1 par rapport à un front détecté sur RC2

61 Le module CCP (comparaison, capture, PWM) : mode comparaison Dans le mode comparaison les registres CCPR1H et L sont comparés en permanence avec le contenu du timer1. A légalité, un front est généré sur RC2.

62 Le module CCP (comparaison, capture, PWM) : mode PWM PWM duty cycle =(CCPR1L:CCP1CON ) TOSC (TMR2 prescale value) Le mode PWM permet de générer un signal modulé en largeur dimpulsion sur la sortie RC2

63 Le module CCP (comparaison, capture, PWM) :les registres de configuration

64 Le module CCP (comparaison, capture, PWM) :les registres associés

65 Les liaisons séries synchrones du microcontrôleur:généralités Dans ce dispositif la transmission est synchronisé par un signal dhorloge émis par lunité maître.

66 Les liaisons séries synchrones du microcontrôleur:module MSSP Le PIC16F877 permet par son module MASTER SYNCHRONOUS SERIAL PORT De communiquer suivant deux protocoles : Serial Peripheral Interface (SPI) Inter-Integrated Circuit (I2C) Pour chacun de ces protocoles existent deux modes, le mode MASTER et le mode SLAVE.. En mode Master cest le microcontrôleur qui gère la ligne SCK, alors quen mode SLAVE, cette horloge est piloté par un maître externe et de ce fait le microcontrôleur ne pilote pas la transmission mais la subit.

67 Les liaisons séries synchrones du microcontrôleur:module MSSP les registres de configuration

68 module MSSP les registres de configuration sspcon

69 module MSSP les registres de configuration sspcon2

70 Les liaisons séries synchrones du microcontrôleur:la SPI

71 Les registres associé à la liaison SPI

72 La liaison I2C : généralités n°1 Maître Esclave n°1 Esclave n°2 Emetteur : cest le composant qui envoie des données sur le bus Récepteur : cest le composant dont ladresse correspond à celle contenue dans le message Maître: cest le composant qui initialise le transfert, qui délivre lhorloge et qui termine le transfert Esclave: cest le composant adressé par un maître SDA :ligne des données SCL : ligne dhorloge SDA SCL Masse

73 La liaison I2C : généralités n°2 +Vcc R R résistances de rappels SDA SCL (écriture) (écriture) Données Horloge (Lecture) (Lecture) SCL SDA START SDA valide SDA change STOP

74 La liaison I2C : exemple de lecture Start DEVICE SELECT R/W BYTE ADRESS Start Ack Start DEVICE SELECT R/W DATA OUT No ACK Stop A

75 Les liaisons séries synchrones du microcontrôleur:lI2C

76 Les liaisons séries synchrones du microcontrôleur:lI2C emission

77 Les liaisons séries synchrones du microcontrôleur:lI2C réception

78 Les registres associé à la liaison I2C

79 La liaison série asynchrone du microcontrôleur:généralités Liaison série asynchrone. Ce dispositif ne possède pas de signal dhorloge de synchronisation. Les unités en liaison possèdent chacune une horloge interne cadencée à la même fréquence. Lorsquune unité veut émettre un mot binaire, elle génère un front descendant sur sa ligne émettrice. A la fin de lémission de ce mot, la ligne repasse au niveau haut. La donnée à transmettre peut contenir un bit supplémentaire appelé parité et servant à la correction derreurs. Paramètres rentrant en jeu pour la norme RS232 : Longueur des mots : 7 bits (ex : caractère ascii) ou 8 bits La vitesse de transmission : elle est défini en bits par seconde ou bauds. Elle peut prendre des valeurs allant de 110 à bds. Parité : le mot transmis peut être suivi ou non d'un bit de parité qui sert à détecter les erreurs éventuelles de transmission. Bit de start : la ligne au repos est à l'état logique 1 pour indiquer qu'un mot va être transmis la ligne passe à l'état bas avant de commencer le transfert. Ce bit permet de synchroniser l'horloge du récepteur. Bit de stop : après la transmission, la ligne est positionnée au repos pendant 1, 2 ou 1,5 périodes d'horloge selon le nombre de bits de stop. Niveau de tension : Un 0 logique est matérialisé par une tension comprise entre 3 et 25V, un 1 par une tension comprise entre -25 et -3 V. Des circuits spécialisés comme le MAX 232 réalise la conversion à partir de niveau TTL.

80 La liaison série asynchrone du microcontrôleur:généralités U NITÉ M AÎTRE U NITÉ ESCLAVE T XD R R T Bit de start Bit de parité Bit de stop t T TRAMES D0D5D4D3D2D1D6 P Txd ou Rxd

81 La liaison série asynchrone du microcontrôleur : lUSART

82 La liaison série asynchrone: chronogramme démission et de réception

83 La liaison série asynchrone: les registres de configuration

84 La liaison série asynchrone: les registres de configuration 2

85 La liaison série asynchrone: les registres de configuration 3

86 Spécificité du pic 16F877: mot de configuration

87 Spécificité du pic 16F877: circuit dhorloge

88 Spécificité du pic 16F877: reset Il existe différentes situation pouvant entraîner un reset du circuit : Power on reset : la tension dalimentation descend en dessous du seuil de 1,2 à 1,7v. Brown on reset : la tension dalimentation reste vers un niveau de 4 v pendant un temps assez long Watchdog reset : action du chien de garde MCLR/ activé : action sur lentrée MCLR

89 Spécificité du pic 16F877: le chien de garde « watchdog » Permet de relancer le microcontrôleur en générant un reset lorsque le programme ne se déroule pas normalement

90 Spécificité du pic 16F877: Les interruptions

91 Le jeu dinstructions

92 Exemple de programme Initialisations des lignes de port ;*************************************************************** DEBUT MOVLWH'FF' BSFSTATUS,RP0; Definition du sens des ports sélection bank1 MOVLWB' '; MOVWFTRISC; port RC en sortie sauf RC5, RC0 BCFPORTC,ACCL; accés afficheur BSFPORTC,VTCH1; dévalidation clavier BSFPORTC,VTCH2 MOVLWB' '; MOVWFTRISB; port RB en entrée MOVLWB' '; entrée RA0 en analogique MOVWFADCON1; MOVLWB' '; port A en entrée MOVWFTRISA; MOVLWB' '; port E en sortie MOVWFTRISE MOVLWB' '; port D en Sortie MOVWFTRISD BCFSTATUS,RP0; fin de Definition du sens des ports sélection bank0 ; ; Initialisation de la conversion A/N ;*************************************************************** BANKSEL ADCON1; sélection bank MOVLWB' '; config RA0 en ana vref=vdd -vref=vss MOVWFADCON1; MOVLWB' '; MOVWFTRISA; port A en entrée


Télécharger ppt "ARCHITECTURE GLOBALE CAPTAGE DES GRANDEURS PHYSIQUES Adaptation, Conditionnement Conversion Analogique Numérique Traitement des données Numériques Mémorisation."

Présentations similaires


Annonces Google