1 / 33

CONTENU DU COURS

CONTENU DU COURS. Partie C − Concepts matériels. C.1 Con figurations matérielles : architecture du système, mémoire, et ports d’e/s C.2 Gestion d’exceptions: réponses aux remises-à-zéro et aux interruptions avec le 68HC12

angeni
Download Presentation

CONTENU DU COURS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CONTENU DU COURS GPA770: Microélectronique appliquée Éric Granger

  2. Partie C − Concepts matériels C.1 Configurations matérielles: • architecture du système, mémoire, et ports d’e/s C.2 Gestion d’exceptions: • réponses aux remises-à-zéro et aux interruptions avec le 68HC12 • vecteur et priorité d’exceptions, et routines de service d’interruption C.3 Module de temporisation: • module de temporisation standard du 68HC12 • saisie des entrées et comparaison de sorties C.4 Convertisseurs analogique-numérique: • processus de conversion • système de conversion du 68HC12 C.5Interfaces de communications sérielles: • communications sérielles avec un microcontrôleur • interfaces sérielles multiples du 68HC12: SCI et SPI GPA770: Microélectronique appliquée Éric Granger

  3. Sommaire de la section C.1 C.1 Configurations matérielles: • Architecture du système 68HC12 • Sous-système de mémoire • Ports d’entrées/sorties GPA770: Microélectronique appliquée Éric Granger

  4. C.1(1) Architecture du système • Caractéristiques du 68HC12: • introduit au marché en 1997 – évolution plus performante et versatile (instructions, modes d’adressage, etc.) du 68HC11 • microcontrôleur avec CPU à 16 bits: le chemin de données interne est de 16 bits • horloge de système à 8 MHz: générée par un crystal à 16MHz divisé par 2 • conçu en technologie CMOS: la consommation de puissance est basse • architecture de système = un ensemble de modules interconnecté par un bus interne GPA770: Microélectronique appliquée Éric Granger

  5. C.1(1) Architecture du système • Principaux modules dans tous les 68HC12: • CPU12:unité de traitement central à haute performance de 16 bits • modules de gestion d’interruptions et de remise à zéro • Mémoire:unbloc de registres (1Koctets), de la RAM (2Koctets) et de la EEPROM (32Koctets) • Bus:le module LIM─combine les buses de DATA, d’ADDR et de CTRL • Périphériques d’entrées/sorties: • ports d’entrées/sorties • module de temporisation (TIM) à 16 bits • convertisseurs analogiques/numériques (ADC) à 8 bits • interfaces de communications sérielles: SCI et SPI GPA770: Microélectronique appliquée Éric Granger

  6. C.1(1) Architecture du système • Plusieurs variantes du 68HC12: • différences entre variantes selon: • la structure de la mémoire • le nombre et partage de canaux d’entrées/sorties • la configuration pour les communications sérielles • en cours: MC68HC912B32 ciblé pour mode circuit autonome • au laboratoire: MC9S12C32 (série 68HCS12 − introduit au marché en 2002), avec plus de mémoire interne et une horloge à 25 MHz GPA770: Microélectronique appliquée Éric Granger

  7. C.1(1) Architecture du système MC9S12C32 Si configuré en mode étendu, les bus ADDR et DATA sont multiplexés avec le port A et B. GPA770: Microélectronique appliquée Éric Granger

  8. C.1(1) Architecture du système • Modes d’opération • 3 modes normaux: protection de régions • mode normal circuit autonome • mode normal étendu: bus DATA de 16 bits • mode normal étendu étroit: bus DATA de 8 bits • 5 modes spéciaux: • pour les tests et le développement en usine • donne ± d’accès aux régions protégées • Configuration du mode d’opération selon 3 broches externes: MODC MODB MODA GPA770: Microélectronique appliquée Éric Granger

  9. C.1(1) Architecture du système • Mode normal circuit autonome: MODC = 1 MODB = 0 MODA = 0 • utilisé quand toutes les ressources (mémoire pour programmes et variables) sont contenues dans le microcontrôleur • suppose aucun bus externe ADDR ou DATA • les ports A et B peuvent servir de GPIOs • ces ports ont chacun 1 octet de large GPA770: Microélectronique appliquée Éric Granger

  10. C.1(1) Architecture du système • Mode d’opération normal étendu: MODC = 1 MODB = 1 MODA = 1 • utilisé quand la mémoire interne n’est pas suffisante pour l’application • les ports A et B forment un ADDR à 16 bits • les ports A et B forment un DATA à 16 bits • remarque: Le port E est utilisé pour les signaux de contrôle. Le CPU12 lit/écrit 2 octets (16 bits) à la fois, alignés sur les adresses paires... GPA770: Microélectronique appliquée Éric Granger

  11. C.1(1) Architecture du système • Mode d’opération normal étendu étroit : MODC = 1 MODB = 0 MODA = 1 • aussi utilisé quand la mémoire interne n’est pas suffisante pour l’application • les ports A et B forment un ADDR à 16 bits • le port A forme un DATA à 8 bits • les données de 16 bits sont transférées 1 octet à la fois. GPA770: Microélectronique appliquée Éric Granger

  12. C.1(1) Architecture du système • Interface − broches d’entrées/sorties • boîtiers de puces pour la famille 68HCS12 sont disponibles sous plusieurs formes: • 48, 52 et 80 broches, dont la fonction est partagée selon le mode d’opération • pour un circuit ciblé autonome: buses ADDR et DATA sont multiplexés pour fonctionner en mode étendu • types de broches: • broches de tension ou de référence (Vxx) • broches pour ports (Pxx) • broches divers: signaux externes (XTAL, etc.) GPA770: Microélectronique appliquée Éric Granger

  13. Sommaire de la section C.1 C.1 Configurations matérielles: • Architecture du système 68HC12 • Sous-système de mémoire • Ports d’entrées/sorties GPA770: Microélectronique appliquée Éric Granger

  14. C.1(2) Sous-système de mémoire • Modèle général:liste adressable de registres GPA770: Microélectronique appliquée Éric Granger

  15. C.1(2) Sous-système de mémoire • Capacité d’une mémoire: • largeur de mémoire (n): • correspond au nombre de bits par registre • N = largeur du DATA (N pas toujours n) • longueur de mémoire (M): • correspond au nombre de registres qu’on peut adresser • M = 2m, où m = largeur du ADDR • capacité: largeurxlongueur = nx M bits GPA770: Microélectronique appliquée Éric Granger

  16. C.1(2) Sous-système de mémoire • Capacité – modèle de mémoire du 68HC12: • n = 8 bits (1 octet) par registre • bus de donnée interne de N = 16 bits • bus d’adresse de m = 16 bits: • adresses de $0000 à $FFFF • donc on peut adresser M = 216 = 65, 536 ~ 64k registres • capacité potentielle de mémoire: 8 bits x 64k GPA770: Microélectronique appliquée Éric Granger

  17. C.1(2) Sous-système de mémoire • Composants de mémoire interne au 68HC12: • bloc de registres: configurations du contrôleur • RAM: variable temporaires • Flash EEPROM: programmes (i.e., séquences d’instructions) et constantes • Allocation des composants: • dépend du montage spécifique (configuration, carte, etc.) • chaque composant peut être lié à une autre espace mémoire sur les bornes 2k ou 4k-octets • Expansion mémoire:en ‘mode étendue’ on peut allouer un espace adressable à un composant mémoire externe GPA770: Microélectronique appliquée Éric Granger

  18. C.1(2) Sous-système de mémoire MC9S12C32: GPA770: Microélectronique appliquée Éric Granger

  19. C.1(2) Sous-système de mémoire Bloc de registres • déf.: {registres} (1Koctets) à usage spécial qui permettent de configurer le 68HCS12 • contiennent les valeurs par défaut après une remise à zéro • permettent d’activer un sous-système et de le configurer pour des tâches spécifiques • Exemples: spécifier au SCI sa vitesse de transmission et de réception de bits par seconde. MOVB #$00, SCIBDH MOVB #$34, SCIBDL ; SCI = 9600 BAUDS GPA770: Microélectronique appliquée Éric Granger

  20. C.1(2) Sous-système de mémoire • Les registres de configuration sont liés à la mémoire: • une adresse spécifique du bloc est associée à chacun des registres de configuration, permettant ainsi: • d’interroger (lire) les registres: avec LDxx... • de manipuler (écrire) les registres: avec STxx... • [$0000:$03FF] – adresses pourl’ensemble des registres du bloc. Rappel: $0000 à $00FF mode d’adressage direct. • Note: Le fichier mc9s12c32.inc étiquettechaque registre du bloc en lui associantson adresse avec la directive EQU et plus encore. GPA770: Microélectronique appliquée Éric Granger

  21. Sommaire de la section C.1 C.1 Configurations matérielles: • Architecture du système 68HC12 • Sous-système de mémoire • Sous-système de ports GPA770: Microélectronique appliquée Éric Granger

  22. C.1(3) Sous-système de ports • déf.: périphériques permettant la communication binaire parallèle avec l’environnement externe • Chaque port a un côté externe et interne: • vue externe:chaque port est un bus de 8 bits permettant la communication de données avec un composant externe • vue interne:chaque port est un registre qui estliés à la mémoire (appartient au bloc de registres) GPA770: Microélectronique appliquée Éric Granger

  23. C.1(3) Sous-système de ports Vue externe • Concept d’entrée/sortie parallèle: • un port d’e/s est un ensemble de 8 broches qu’on peut connecter avec un bus data de 8 bits: • donc 8 bits pouvant être lus/écrits simultanément • caractéristique commune au microprocesseurs qui permet des opérations d’entrées/sorties rapides GPA770: Microélectronique appliquée Éric Granger

  24. C.1(3) Sous-système de ports Vue externe • Le 68HCS12 est un système à ports multiples: • A, B, E et J: ports d’e/s dont la fonction dépend du mode d’opération et des configurations • S, M: ports pour les modules SCI et SPI • T: port pour le module TIM • P: port pour le module PWM • AD: port pour le module ATD GPA770: Microélectronique appliquée Éric Granger

  25. C.1(3) Sous-système de ports GPA770: Microélectronique appliquée Éric Granger

  26. C.1(3) Sous-système de ports Vue interne • le 68HCS12 est une architecture d’e/s liée à la mémoire: • on contrôle un port d’e/s à travers les registres du port, liés au bloc de registres (voir annexe B p.564 J. Pack) • les bus DATA, ADDR et CTRL servent à contrôler les ports d’e/s, comme de la mémoire • les mêmes instructions sont utilisées pour accéder la mémoire servent à contrôler les ports d’e/s GPA770: Microélectronique appliquée Éric Granger

  27. C.1(3) Sous-système de ports Vue interne • Procédure pour contrôler les ports d’entrées/sorties: • données en entrée: • transfert entre fils connectés au port d’entrée → 68HCS12 • utilise les instructions pour lire des données de la mémoire (LDAA, MOVB, etc.) • données en sortie: • utilise les instructions pour écrire des données à la mémoire (STAA, MOVB, etc.) • transfert entre 68HCS12→ fils connectés au port de sortie GPA770: Microélectronique appliquée Éric Granger

  28. C.1(3) Sous-système de ports • La fonction spécifique d’un port dépend des configurations: • on configure chaque port comme entrée, sortie, ou bien bidirectionnel (mixte) • avec un port bidirectionnel certains bits sont en entrées, d’autres sont en sorties • les adresses des ports peuvent être étiquetées avec la directive EQU (déjà fait dans le fichier mc9s12c32.inc) PORTA EQU $0000 ; voir le bloc de registres DDRB EQU $0003 GPA770: Microélectronique appliquée Éric Granger

  29. C.1(3) Sous-système de ports • Registres pour configurer un port: • DDR (‘Data Direction Register’): configure les bits du port comme entrée (‘0’) ou sortie (‘1’) • PER/PPS (‘Pull Up Control Register’): permet d’utiliser des résistances intégrées ‘pull-up/down’ pour une ou plus des broches d’un port (applications d’interface) • RDR (‘Reduced Drive of I/O Line Registers’): permet de réduire la capacité de conduite (courant) pour une ou plus des broches d’un port de sortie GPA770: Microélectronique appliquée Éric Granger

  30. C.1(3) Sous-système de ports • Exemples: configurer les port A et B comme entrée et sortie PORTA EQU $0000 ; fichier mc9s12c32.inc PORTB EQU $0001 ; fichier mc9s12c32.inc DDRA EQU $0002 ; fichier mc9s12c32.inc DDRB EQU $0003 ; fichier mc9s12c32.inc ORG $4000 CLRA ; configurer le PORT A en entrée STAA DDRA COMA ; configurer le PORT B en sortie STAA DDRB ; écrire au port B ; lire du port A END GPA770: Microélectronique appliquée Éric Granger

  31. C.1(3) Sous-système de ports • Exemples: les résistances pour pull-up ou pull-down sur le ports P en entrée. Page 94, MC9S12C128.pdf MOVB #$0F,PERP ; permettre un PULL sur ?? MOVB #$0F,PPSP ; PULL-UP ou DOWN sur ?? GPA770: Microélectronique appliquée Éric Granger

  32. C.1(3) Sous-système de ports • Exemple: Feux de circulation ORG $0800 LDAA #%00111111 ; Broches du PORTA en sortie STAA DDRA MAIN LDAA #%00100001 ; RE et VN actifs au début STAA PORTA ; Active les LEDs JSR DELAI3 ; Sous-routine de délai de 3 sec LDAA #%00010001 ; RE et JN actifs STAA PORTA ; Active les LEDs JSR DELAI1 ; Sous-routine de délai de 1 sec LDAA #%00001100 ; VE et RN actifs STAA PORTA ; Active les LEDs JSR DELAI3 ; Sous-routine de délai de 3 sec LDAA #%00001010 ; JE et RN are actifs STAA PORTA ; Active les LEDs JSR DELAI1 ; Sous-routine de délai de 1 sec BRA MAIN ; Brancher au MAIN, répéter toujours END GPA770: Microélectronique appliquée Éric Granger

  33. C.1(3) Sous-système de ports • Exemple: Feux de circulation DELAI3 LDY #120 ;120 fois en boucle externe Loop2 LDX #50000 ; 50,000 fois en boucle interne=25 msec Loop1 DEX ; décrémente X BNE Loop1 ; boucle interne DEY ; décrémente Y BNE Loop2 ; boucle externe RTS ; retour de la sous-routine DELAI1 LDY #40 ; 40 fois en boucle externe Loop4 LDX #50000 Loop3 DEX BNE Loop3 DEY BNE Loop4 RTS GPA770: Microélectronique appliquée Éric Granger

More Related