GPA770: Microélectronique appliquée

Slides:



Advertisements
Présentations similaires
Mais vous comprenez qu’il s’agit d’une « tromperie ».
Advertisements

Le Nom L’adjectif Le verbe Objectif: Orthogram
ORTHOGRAM PM 3 ou 4 Ecrire: « a » ou « à » Référentiel page 6
Reporting de la Cellule Nationale Droit dOption Situation au 31 décembre 2011.
Présentation de la circonscription Année 2011/2012 Jeudi 24 novembre 2011.
Additions soustractions
Distance inter-locuteur
1 Plus loin dans lutilisation de Windows Vista ©Yves Roger Cornil - 2 août
7 juin 2012 DGAL.
Les numéros 70 –
Les numéros
Les identités remarquables
Les éléments de mémorisation
Dpt. Télécommunications, Services & Usages Théorie de l information H. Benoit-Cattin Introduction 2. Sources discrètes & Entropie 3. Canaux discrets.
Introduction à la logique
LES TRIANGLES 1. Définitions 2. Constructions 3. Propriétés.
Données statistiques sur le droit doption au 31/01 8 février 2012.
Technologies et pédagogie actives en FGA. Plan de latelier 1.Introduction 2.Les technologies en éducation 3.iPads 4.TNI 5.Ordinateurs portables 6.Téléphones.
Révision (p. 130, texte) Nombres (1-100).
La législation formation, les aides des pouvoirs publics
1 7 Langues niveaux débutant à avancé. 2 Allemand.
La méthodologie………………………………………………………….. p3 Les résultats
1 Juin 2010 Sondage auprès des jeunes Marocains résidant en Europe ( France, Espagne, Italie, Belgique, Pays-Bas et Allemagne ) Juin 2010 Réf. : TL251.
ARCHITECTURE GLOBALE CAPTAGE Traitement DES des données GRANDEURS
Structure(djs)TéléphoneFax ADRA R049,96,03,21 CHLEF027,77,22,66 /77,49, LAGHOUAT029,90,41,08029,90,42,47 OUM EL BOUAGHI032,42,16,26032,42,45,32.
Jack Jedwab Association détudes canadiennes Le 27 septembre 2008 Sondage post-Olympique.
Gestion des Périphériques
Le soccer & les turbans Sondage mené par lAssociation détudes canadiennes 14 juin 2013.
Synchronisation et communication entre processus
Présentation générale
Le drapeau canadien comme symbole de fierté nationale : une question de valeurs partagées Jack Jedwab Association détudes canadiennes 28 novembre 2012.
NOTE : Pour faire évoluer le diaporama, si le clic de souris ne fait rien utilisez les touches du clavier : Pg up Pg down.
TRANSMISSION DES DONNEES.
TRANSMISSION SÉRIE ASYNCHRONE Février 2008 JF VIENNE.
Fonction COMMUNIQUER les liaisons série
Si le Diaporama ne s'ouvre pas en plein écran Faites F5 sur votre clavier.
Les nombres.
Conseil Administration AFRAC – 2 décembre Toulouse 1 Fermes de références Palmipèdes à foie gras Synthèse régionale – Midi Pyrénées Exercice
LES NOMBRES PREMIERS ET COMPOSÉS
CLL11 : chlorambucil (CLB) versus CLB + rituximab (R)
Logiciel gratuit à télécharger à cette adresse :
Les chiffres & les nombres
Le Bus S.P.I © T.Berenguer.
GPA770: Microélectronique appliquée
DUMP GAUCHE INTERFERENCES AVEC BOITIERS IFS D.G. – Le – 1/56.
Les maths en francais 7ième année.
Année universitaire Réalisé par: Dr. Aymen Ayari Cours Réseaux étendus LATRI 3 1.
Jean-Marc Léger Président Léger Marketing Léger Marketing Les élections présidentielles américaines.
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
1 INETOP
Les Nombres 0 – 100 en français.
Aire d’une figure par encadrement
Les fondements constitutionnels
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
Communication Juillet 2014.
1/65 微距摄影 美丽的微距摄影 Encore une belle leçon de Macrophotographies venant du Soleil Levant Louis.
Certains droits réservés pour plus d’infos, cliquer sur l’icône.
Nom:____________ Prénom: ___________
LES COURSES SUR PISTE.
Annexe Résultats provinciaux comparés à la moyenne canadienne
Partie C − Concepts matériels
La formation des maîtres et la manifestation de la compétence professionnelle à intégrer les technologies de l'information et des communications (TIC)
Bienvenue.
1 Cliquez ici pour avancer Ici pour reculer Ch.Dupaty 11/97.
Sif Cours 9 n 7. Communication série u Concepts généraux u Programmation des ports séries n Le matériel u Chapitre 10 CSA u Article dans MSDN: F.
La programmation de l’interface FischerTechnik
Exemple de mise en oeuvre
La programmation de l’interface FischerTechnik
GPA770: Microélectronique appliquée
Transcription de la présentation:

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

Partie C − Concepts matériels C.1 Configurations matérielles du 68HC12: 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.5 Interfaces de communications sérielles: Communications sérielles avec un microcontrôleur interfaces multiples du 68HCS12: SCI et SPI GPA770: Microélectronique appliquée Éric Granger

Sommaire de la section C.5 C.5 Interfaces sériels de communication du 68HC12: Communications sérielles avec microcontrôleurs 2) Sous-systèmes multiples du 68HCS12 Interface sériel asynchrone – SCI: caractéristiques du sous-système SCI registres, programmation et applications Interface sériel synchrone – SPI: caractéristiques du sous-système SPI GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (a) Communications avec un microcontrôleur applications indépendantes à distance: pour échanger des informations avec un composant distant ex: communications entre deux robots mobiles applications locales spécialisées dans un système: pour interfacer directement avec un composant externes, et donc étendre les capacités ex: communications avec l’afficheur LCD du robot mobile GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle parallèle: mécanisme permettant le transfert de plusieurs bits à la fois entre 2 composants transfert plus rapide de données requiert 9-10 fils pour gérer un canal de 8 bits consomme plus de broches d’e/s et de matériel GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle sérielle: mécanisme permettant le transfert d’un bit à la fois entre 2 composants transfert moins rapide de données requiert 1-2 fils pour un canal de 1 bit consomme peu de broches d’e/s et de matériel GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Transfert parallèle de données entre 68HC12: peut connecter le Port A du transmetteur (configuré en sortie) au Port A du récepteur (configuré en entrée) pour transférer 8 bits peut aussi connecter le Port B pour transférer 16 bits GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Communication à 8 bits entre deux 68HC12: le 68HCS12 transmetteur écrit les données sur le port A, un octet à la fois le 68HCS12 récepteur lit les données sur le port A, un octet à la fois Exemple: transmission de 5 octets correspondant aux 5 caractères ASCII ‘hello’ GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Synchronisation: permet d’indiquer au récepteur quand les données transmises sont valides Deux techniques de transfert: parallèle synchrone: exploite un fil supplémentaire pour transporter un signal d’horloge commun entre transmetteur et récepteur parallèle asynchrone: exploite deux fils supplémentaires pour réaliser du ‘handshaking’ entre transmetteur et récepteur GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Approche 1 – transmission synchrone: utiliser 1 fil supplémentaire pour transporter un signal d’horloge GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Communication à 8 bits entre deux 68HCS12: le 68HC12 récepteur lit les données au port A sur le front montant du signal d’horloge Exemple: transmission de 5 octets correspondant aux 5 caractères ASCII ‘hello’ GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Approche 2 – transmission asynchrone: utiliser 2 fils supplémentaires pour réaliser du ‘handshaking’ GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Communication à 8 bits entre deux 68HCS12: le 68HCS12 transmetteur utilise un fil ‘Data Valid’ (DV) pour indiquer que les données sont valides le 68HCS12 récepteur utilise un fil ‘Data Received’ (DR) pour indiquer qu’il a lu l’octet au port A GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Étapes d’une transmission parallèle asynchrone: le transmetteur écrit les données sur son port A, et fixe DV = ‘L’ pour indiquer la disponibilité d’un nouvel octet quand le récepteur détecte la disponibilité d’un nouveau octet, il lit son port A, et fixe DR = ‘L’ pour confirmer quand le transmetteur détecte DR = ‘L’, il fixe DV = ‘H’ quand le récepteur détecte DV = ‘H’, il fixe DR = ‘H’ Les deux microcontrôleurs sont maintenant prêts pour la prochaine transmission de données... GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Communication de données entre deux 68HCS12: une communication entre transmetteur et récepteur se fait un bit à la fois, à travers d’un seul fil GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Synchronisation: le transmetteur doit indiquer au récepteur quand les bits sont valides Deux techniques de transfert: sériel synchrone: exploite un fil supplémentaire pour transporter un signal d’horloge commun entre transmetteur et récepteur sériel asynchrone: exploite des bits spéciaux pour indiquer le début et la fin d’une communication entre transmetteur et le récepteur GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Approche 1 – transmission sériel synchrone: GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Étapes d’une communication sériel synchrone: place un caractère à transmettre dans un registre à décalage interne décalages successifs de n bits selon l’horloge (clk): le transmetteur décale les bits d’un registre interne vers sa broche de sortie selon clk le récepteur décale les bits sur sa broche d’entrée vers un registre interne selon clk après n cycles d’horloge, n bits sont communiqués du transmetteur au récepteur GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Approche 2 – transmission sériel asynchrone: GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (b) Transmission parallèle vs sérielle Étapes d’une communication sériel asynchrone: les deux 68HCS12 sont configurés avec les mêmes paramètres de transmission (fréquence clk, bits/caractère, parité, etc.) les données sont transmises sur un canal TxD → RxD: le transmetteur transmet un bit de départ (détecté par le récepteur) pour indiquer le début du transfert le transmetteur transmet un caractère, LSb en premier, (détecté par le récepteur) le transmetteur transmet un bit de terminaison (détecté par le récepteur) pour indiquer le fin du transfert GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (c) Concepts fondamentaux et terminologie Lien sériel de communications: canal simple de communication, avec les données transférées un bit à la fois Horloge: signal de synchronisation qui établit le taux de transfert des données (en synchrone) Taux de transfert (Baud): nombre de bits transmit par second en bps ≡ Baud ex: 1200, 2400, 4800, 9600 Baud < GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (c) Concepts fondamentaux et terminologie cellule binaire ou période de bit: période de temps réservé pour la transmission d’un bit dans une séquence binaire (1 ∕ taux de transfert) code NRZ (‘Non-Return-to-Zero’): format commun pour le transfert d’une séquence binaire règle: pour transmettre ‘0’ (‘1’), placer la tension L (H) sur le canal pour toute la cellule binaire. GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (c) Concepts fondamentaux et terminologie code ASCII: ‘American Standard Code for Information and Interchange’ GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (c) Concepts fondamentaux et terminologie bit de parité: mécanisme pour détecter une erreur simple de transmission réalisation: bit additionnel (e.g., MSb) qui indique la parité d’une séquence de bits parité paire: le bit de parité est fixé tel qu’il y a un nombre pair de bits = ‘1’ dans le code parité impaire: le bit de parité est fixé tel qu’il y a un nombre impair de bits = ‘1’ dans le code GPA770: Microélectronique appliquée Éric Granger

C.5(1) Communications sérielles (c) Concepts fondamentaux et terminologie Types de communications sérielles: lien simplexe: transfert sur 1 fil dans une direction (e.g., radio, TV) lien mi-duplexe: transfert sur 1 fil dans les deux directions, mais pas simultanément (e.g., CB, BDM) lien duplexe: transfert sur 2 fils dans les deux direction simultanément GPA770: Microélectronique appliquée Éric Granger

Sommaire de la section C.5 C.5 Interfaces sériels de communication du 68HC12: Communications sérielles avec microcontrôleurs 2) Sous-systèmes multiples du 68HCS12 Interface sériel asynchrone – SCI: caractéristiques du sous-système SCI registres, programmation et applications Interface sériel synchrone – SPI: caractéristiques du sous-système SPI GPA770: Microélectronique appliquée Éric Granger

C.5(2) Sous-systèmes du 68HC12 Rôle des types de sous-systèmes dans le 68HCS12: CPU12: unité de traitement central gestion d’exceptions: interrompre l’exécution normal d’un programme Bus: module LIM combine DATA, ADDR et CTRL Mémoire: stocker des configurations (bloc), des variables (RAM) et des programmes (ROM) Périphériques d’entrée/sortie: ports d’entrée/sortie: échanger des données avec le monde externe temporisation: capter des entrées, générer des sorties, accumuler des impulsions, PWM conversion de données: convertir un signal analogique en codes binaires non-signés communication sérielle: échanger de données par communications asynchrones (SCI) et synchrones (SPI) GPA770: Microélectronique appliquée Éric Granger

C.5(2) Sous-systèmes du 68HC12 MC9S12C32 GPA770: Microélectronique appliquée Éric Granger

C.5(2) Sous-systèmes du 68HC12 TX/RX Port S GPA770: Microélectronique appliquée Éric Granger

C.5(2) Sous-systèmes du 68HC12 Module d’horloge: le 68HCS12 utilise XTAL (÷2) = Bus Clock 16MHz ÷ 2 = 8MHz Pour contrôler le SCI et le SPI GPA770: Microélectronique appliquée Éric Granger

C.5(2) Sous-systèmes du 68HC12 Module SCI (‘Serial Communications Interface’): interface sériel pour communications types de communications: sérielles asynchrones synchronisation: utilise un bit de début et un bit d’arrêt pour encadrer chaque caractère transmis utilisation typique: communiquer des caractères ASCII de façon asynchrone, à travers 1 fil GPA770: Microélectronique appliquée Éric Granger

C.5(2) Sous-systèmes du 68HC12 GPA770: Microélectronique appliquée Éric Granger

C.5(2) Sous-systèmes du 68HC12 Module SPI (‘Serial Peripheral Interface’): interface sériel pour périphériques types de communications: sérielles synchrones synchronisation: partage de l’horloge entre les composants qui sont désignés comme maître et esclave, à travers 1 fil supplémentaire utilisation typique: étendre les capacités du 68HCS12 en interfaçant avec des périphériques synchrones GPA770: Microélectronique appliquée Éric Granger

C.5(2) Sous-systèmes du 68HC12 GPA770: Microélectronique appliquée Éric Granger

Sommaire de la section C.5 C.5 Interfaces sériels de communication du 68HCS12: Communications sérielles avec microcontrôleurs 2) Sous-systèmes multiples du 68HCS12 Interface sériel asynchrone – SCI: caractéristiques du sous-système SCI registres, programmation et applications Interface sériel synchrone – SPI: caractéristiques du sous-système SPI GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Transfert de données: réalise un lien duplexe – permet d’effectuer une transmission et une réception simultanément transmission de données – en décalant hors d’un registre à décalage de transfert (via TxD) et en les recevant dans un registre à décalage à réception (via RxD) les registres de transfert et de réception sont indépendant, et distribués sur 2 registres à 8 bits: SCIDRL et SCIDRH, respectivement GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Transfert de données: GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Étapes d’un transfert de données TxD → RxD: (En mode IDLE, TxD = ‘H’) afin d’initier le transfert, fixer TxD = ‘L’ pour une période de 1 bit – le récepteur détecte alors qu’une transmission est sur le point de commencer durant la transmission d’un caractère sur TxD le codage du caractère est en format NRZ le nombre pré-déterminé de bits par caractère (8 ou 9 bits) est programmable tous les données sont transférées LSb premier pour mettre fin au transfert, fixer TxD = ‘H’ pour une période de 1 bit – le récepteur détecte alors a fin GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Transmetteur SCI: GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Récepteur SCI: GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Génération du taux de transfert (Baud): taux de transfert programmable – par configuration des registres SCIBDH et SCIBDL le transmetteur et le récepteur du SCI fonctionnent indépendamment, mais selon le même taux de transfert un compteur modulo à 13 bits dérive le taux ou l’horloge de transfert pour les deux cas GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Génération du taux de transfert (Baud): afin d’alimenter le transmetteur, la fréquence d’horloge de transfert est divisé par 16 le récepteur à un taux d’acquisition de 16 cycles d’horloge de transfert (échantillons) par temps de bit transmis 1 à 8192 GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Détection et vérification de bits: le récepteur à 16 cycles d’horloge transfert / temps de bit bit de départ: trois ‘1’ successifs, suivis par des ‘0’ à RT1, 3, 5, 7. Détecte le départ si 2 sur RT3, 5, 7 sont ‘0’, mais drapeau de bruit s’active s’il ne sont pas tous à ‘0’ bit de donnée (terminaison): vérifie à RT8, 9, 10. Détecte la valeur majoritaire, mais le drapeau de bruit (d’encadrement) s’active s’ils ne sont pas tous identiques GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Détection d’erreurs liés à la transmission: bruit: le récepteur vérifie chaque donné transmise 3 fois pour chaque bit – si le vote majoritaire n’est pas unanime, il y a une erreur de bruit parité: le récepteur vérifie que le nombre de ‘1’s dans le code est bien paire ou impair – sinon il y a un erreur de parité GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Détection d’erreurs liés à la transmission: (suite) encadrement: si le récepteur détecte le bit de départ, mais pas le bit de terminaison généralement à cause des différents taux de transfert – probablement due au fait que les 2 horloges n’opèrent pas exactement à la même fréquences le communication va fonctionner si fclk(transmetteur) est différent de fclk(récepteur) par moins que 4.5% GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Capacité de générer des interruptions: une interruption par SCI, pour indiquer 4 types d’événements: TDRE, TC, RDRF, IDLE (lien inactif) Réalise 2 techniques de réveil du récepteur: (pour transmissions à 2+ récepteurs) par reconnaissance de lien inactif: le récepteur se réveil si son fil RxD devient inactif (IDLE) par démarcation d’adresses: le SCI utilise une adresse reçue dans son SCIDR pendant son sommeille. GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Registres pertinents du SCI Chaque sous-système SCI utilise 8 registres: [$00C8-C9] SCIBDH-L: registres de contrôle du taux de transfert H et L [$00CA-CB] SCICR1-2: registres de contrôle 1 et 2 [$00CC-CD] SCISR1-2: registres d’état 1 et 2 [$00CE-CF] SCIDRH-L: registres de données H et L GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Registres pertinents du SCI [$00C8-C9] SCIBDH-L – registres de contrôle du taux transfert H et L: GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Registres pertinents du SCI Fixe le taux de transfert selon les bits SBR[12:0]: GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Registres pertinents du SCI GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Registres pertinents du SCI [$00CA-CB] SCICR1-2 – registres de contrôle 1 et 2: GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone [$00CA] SCICR1 – registre de contrôle 1: fixe des caractéristiques du système SCI M: indique le format du caractère 0: 1 start, 8 bits, 1 stop 1: 1 start, 9 bits, 1 stop WAKE: indique la méthode de réveil du récepteur SCI 0: utilise la méthode de lien inactif (IDLE) 1: utilise la méthode de démarcations d’adresses PE et PT: PE active le système de génération de parité, tandis que PT indique le type de parité PT = 0: parité paire PT = 1: parité impaire GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone [$00CA] SCICR1 – registre de contrôle 1: fixe des caractéristiques du système SCI LOOPS: permet de configurer le SCI pour l’opération en rétroaction: le récepteur SCI est déconnecté de la broche RxD la sortie du transmetteur est routé vers l’entrée du récepteur de façon interne RSRC: détermine le chemin interne de rétroaction au récepteur si LOOPS = ‘1’ ‘1’: connexion de la broche TxD à l’entrée du récepteur ‘0’: l’entrée du récepteur est connecté au transmetteur de façon interne (pas à travers la broche TxD) GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone [$00CB] SCICR2 – registre de contrôle 2: activation de 4 différentes interruptions masquables TIE: permet l’interruption de transmission quand le drapeau TDRE est actif TCIE: permet l’interruption du transmission complété quand le drapeau TC est actif RIE: permet l’interruption du récepteur quand le drapeau RDRF est actif ILIE: permet l’interruption pour un lien inactif (IDLE) TE et RE activent le transmetteur et le récepteur RWU place le récepteur en mode de sommeil SBK (send break) transmettre de 10 à 13 ‘0’ GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Registres pertinents du SCI [$00CC-CD] SCISR1-2 – registres d’état 1 et 2 GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone [$00CC] SCISR1 – registres d’état 1 drapeaux d’erreur: OR (‘Over-run’): si le registre de résultat n’est pas lu avant la réception de nouvelles données NF, FE et PF: erreur de bruit, d’encadrement, et de parité, respectivement les drapeaux TDRE, TC, RDRF et IDLE indiquent l’état d’une communication: TDRE (Transmit Data Register Empty’): SCIDRL vide TC (‘Transmit Complete’): fin de transmission RDRF (‘Receive Data Register Full’): SCIDRL plein IDLE (‘Idle Line Detect’): si un caractère (10 ou 11 bits) consécutifs de ‘1’ apparait au récepteur GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone [$00CD] SCISR2 – registres d’état 2 RAF (‘Receiver Active Flag’): indique que le caractère est en train d’être reçu par le récepteur TXDIR (‘Transmitter Pin Data Direction in Single-Wire Mode’) : direction de la broche TxD en mode simplexe 0 = entrée 1 = sortie BK13 (‘Break Transmit Character Length’) : indique le nombre de bits pour une pause 0 = 10 ou 11 bits de long 1 = 13 ou 14 bits de long GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone [$00CE-CF] SCIDRH-L: registres de données H et L L: contient les bits [7:0] transmis/reçus H: contient le 8ème bit pour un transfert à 9 bits (M = ‘1’) GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Programmation du SCI GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Exemple: sous-routine pour initialiser et transmettre une séquence de caractères via le SCI configurer SCIBDH = $00, SCIBDL = $34 pour avoir un le taux de traitement est 9600 Baud, en supposant que la fréquence de BUSCLK = 8MHz configurer SCICR1: M = ‘0’, 1 bit de départ, 1 bit de terminaison, et 8 bits de données (parité incluse) configurer SCICR2: TE = ‘1’ pas de bit de parité remise à zéro du drapeau TDRE dans SCISR1: lire SCISR1 écrire le code ASCII dans le SCIDRL GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sérielle asynchrone ; définir les registres des base et masques SCIBDH = $00C8 ; déclaration de registres déjà fait dans mc9s12c32.inc SCIBDL = $00C9 SCICR1 = $00CA SCICR2 = $00CB SCISR1 = $00CC SCIDRL = $00CF BAUD_HI = $00 ; pour taux de transfert de 9600 BAUD_LOW = $34 SCI_CONT = $00 ; pour 8 bits, pas de rétroaction et de parité SCI_MASK = $08 ; pas d’interr., activer le transmetteur GPA770: Microélectronique appliquée

C.5(3) Interface sérielle asynchrone ;******************** ; Programme principal ORG $0800 DATA FCB ‘GPA770’ FCB $0D, $0A ; carriage return, line feed EOT FCB $00 ; end of data marker (code ASCII) ORG $4000 LDS #$1000 JSR INIT ; sr initialisation du SCI JSR TRANS ; sr pour transmission de caractères fin: bra fin GPA770: Microélectronique appliquée

C.5(3) Interface sérielle asynchrone ; INIT: SR qui initialise le système SCI INIT SEI ; désactiver les interruptions CLR SCIBDH LDAA #BAUD_LOW ; fixer le taux de transfert STAA SCIBDL LDAA #SCI_CONT ; fixer mode de transfert STAA SCICR1 LDAA #SCI_MASK ; activer le transmetteur STAA SCICR2 LDAA SCISR1 ; remise à zéro du bit TDRE LDAA SCIDRL ; (lire SC1SR1, SC1DRL) LDX #DATA ; pointer l’index IX vers DATA RTS ; retour de sous-routine GPA770: Microélectronique appliquée

C.5(3) Interface sérielle asynchrone ;************************************************ ;* TRANS: sr pour transmettre un caractère avec le SCI TRANS: BRCLR SCISR1, $80, TRANS ; attendre le drapeau TDRE LDAA 1, X+ ; charger le caractère dans A BEQ FINTRANS ; détecter le dernier caractère STAA SCIDRL ; charger A au registre de données BRA TRANS FINTRANS: RTS GPA770: Microélectronique appliquée

C.5(3) Interface sériel asynchrone Application du SCI Standard RS-232 pour transfert sériel: GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone standard du ‘Electronic Industry Association’ (EIA) qui a évolué du standard EIA-232-D (autour de 1960) spécifications pour 4 aspects: électriques: niveaux de tension, temps des transitions fonctionnement de chaque signal mécanique: nombre de broches, dimensions de connecteurs, etc. procédurale +12V 0V -12V idle start data stop parity GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone Détails de la synchronisation: Si un ‘0’ suit 3 ‘1’ successifs → bit de départ la majorité des échantillon 3,5,7 détermine s’il y a bit de départ GPA770: Microélectronique appliquée Éric Granger

C.5(3) Interface sériel asynchrone GPA770: Microélectronique appliquée Éric Granger

Sommaire de la section C.5 C.5 Interfaces sériels de communication du 68HC12: Communications sérielles avec microcontrôleurs 2) Sous-systèmes multiples du 68HC12 Interface sériel asynchrone – SCI: caractéristiques du sous-système SCI registres, programmation et applications Interface sériel synchrone – SPI: caractéristiques du sous-système SPI GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Caractéristiques du sous-système SPI un 68HCS12 qui communique à travers son sous-système SPI doit être configuré soit en mode maître ou en mode esclave le transmetteur et récepteur partagent une horloge commune pour synchroniser la communication: le signal d’horloge (SCK) est généré par le composant configuré en mode maître SCK est transmis à un ou plusieurs composant(s) configuré(s) en mode esclave GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Caractéristiques du sous-système SPI le SPI agit comme une registre à décalage de 16 bits qui est distribué géographiquement: transfert: après 8 décalages (impulsions SCK), l’octet au registre du composant maître est échangé avec celui au registre du composant esclave MOSI: canal qui connecte le sortie du registre à 8 bits du composant maître à l’entrée du registre à 8 bits du composant esclave MISO: canal qui connecte l’entrée du registre à 8 bits du composant maître à la sortie du registre à 8 bits du composant esclave GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Caractéristiques du sous-système SPI GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Caractéristiques du sous-système SPI GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Caractéristiques du sous-système SPI GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Caractéristiques du sous-système SPI GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Caractéristiques du sous-système SPI GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Caractéristiques du sous-système SPI le composant maître peut communiquer avec le plusieurs composants esclave selon les lignes de sélection d’esclaves (SS) GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Registres pertinents du SPI Configurations importantes: le port M (bits du registre DDRM) opération en mode maître ou esclave si le données sont transférés MSb ou LSb en premier le nombre de bits par cycle de transfert si les données sont valides sur le front montant out le front descendant, etc. taux de transfert (Baud ou bps) GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Registres pertinents du SPI SPI utilise 5 registres: GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone [$00D8] SPICR1: Registre de contrôle 1 SPE (‘SPI Enable’): pour activer le système SPI CPHA (‘SPI Clock Phase’): ‘0’: un front pair indique le début d’une transmission ‘1’: un front impair indique le début d’une transmission CPOL (‘SPI Clock Polarity’): ‘0’: SCK inactif (IDLE) au niveau bas ‘1’: SCK inactif (IDLE) au niveau haut GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone SSOE (‘SPI Slave Select Output Enable’): on doit s’organiser pour sélectionner les esclaves ‘0’: permet de contrôler la broche SS manuellement – on peut, e.g., envoyer plusieurs octets successifs avec ‘1’: l’option de sortie est actif si en mode maître, et si DDRS7 = ‘1’ (permet de contrôler la broche SS automatiquement) N.B. Contrôle d’esclaves: si un esclave: peut utiliser la ligne SS si multi-esclaves: utilise des GPIOs GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone MSTR (‘SPI Master/Slave Select’): ‘0’: mode esclave ‘1’: mode maître SPIE/SPTIE (‘SPI Interrupt Enable’): ‘0’: interruptions inactifs ‘1’: permet une séquence d’interruptions si SPIF ou MODF ou SPTEF sont actifs LSBFE (‘SPI LSb First Enable’): ‘0’: décale le MS bit en premier ‘1’: décale le LS bit en premier GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone [$00DA] SPIBR: registre de taux de transfert: sélectionne alors la fréquence de SCK (normalement au taux le plus rapide qui est compatible avec l’esclave) GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone [$00DB] SPISR: registre d’état SPIF (‘SPI Request Flag’): indique la fin d’une réception de 8 bits, après 8 cycles SCK quand SPIF = ‘1’ on peut ensuite lire un octet de données à partir de SPIDR une lecture au SPISR permet ensuite d’effectuer une remise à zéro automatique du SPIF MODF (‘Mode Error Interrupt Status Flag’): indique que MSTR = ‘1’ quand la broche SS est en entrée SPTEF (‘SPI Transmit Empty Flag’): comme le SPIF mais en transmission.. GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Programmation du SPI M DDRM GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Exemple: Initialiser le SPI d’un 68HCS12 comme maître pour transmettre un caractère l’esclave est un périphérique qu’on interroge d’après la ligne SS (CPHA = ‘0’) l’horloge SCK roule à 125 kHz avec un Bus Clock à 8 MHz transmettre 1 caractère à la fois GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sérielle synchrone ;******************** ; Programme principal ORG $0800 DATA FCB ‘GPA770’ FCB $0D, $OA ; carriage return, line feed EOT FCB $00 ; end of data marker ORG $4000 LDS #$1000 JSR INIT ; sr initialisation du SPI JSR TRANS ; sr pour transmission fin: bra fin GPA770: Microélectronique appliquée

C.5(4) Interface sérielle synchrone ;************************************************ ;* INIT: sous-routine pour initialiser le SPI INIT MOVB #$38 , DDRM ; config l’e/s du PORTM: MISO en entrée et ; SS, MOSI et SCK en sortie BSET PTM, $08 ; SS= 1 désactive l’esclave lors des config MOVB #$05, SPIBR ; taux de transfert 125 kHz MOVB #$12, SPICR1 ; config SPICR1: MSRT=1, CPOL=0, ; CPHA=0, pas d’interruptions MOVB #$08, SPICR2 ; config SPICR2: mode normal pour port S LDX #DATA ; pointer vers le 1er caractère LDAA SPISR ; 2 étapes pour RAZ de SPIF LDAA SPIDR ; (lire SPISR et SPIDR) BSET SPICR1, $40 ; activer SPI (SPE= 1) RTS GPA770: Microélectronique appliquée

C.5(4) Interface sérielle synchrone ;************************************************ ;* TRANS: sous-routine pour transmettre avec le SPI TRANS LDAA 1, X+ ; charger le caractère dans A ; incrémente X BEQ DONE ; test pour dernier caractère BCLR PTM, $08 ; activer le SS (SS = ‘L’) STAA SPIDR ; charger un caractère au DR WAIT BRCLR SPISR, $20, WAIT ; attendre pour le drapeau SPTEF BSET PTM, $08 ; désactiver le SS (SS = ‘H’) BRA TRANS ; prochain caractère DONE RTS GPA770: Microélectronique appliquée

C.5(4) Interface sériel synchrone Application du SPI 68HCS12 peut communiquer avec plusieurs autres composants avec le SPI pour étendre ses capacités: composants de mémoire additionnels ports additionnels horloge temps réel PLL (‘Phased-Lock Loop’) récepteur/transmetteur FM convertisseur numérique-analogique (N-A) afficheur LCD GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Application du SPI horloge temps réel: le 68HCS12 initialise le temps, l’horloge conserve alors le temps (année, mois, jour, heure, minute et seconde) peut être programmé pour générer des alarmes (interruptions) à des temps précis, ou de façon périodique GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Application du SPI conversion N-A: le 68HCS12 transmet une valeur numérique au convertisseur, qui le convertit en voltage GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Application du SPI Conversion numérique-analogique (N-A) multi-canal R2R: GPA770: Microélectronique appliquée Éric Granger

C.5(4) Interface sériel synchrone Application du SPI convertisseur N-A Motorola MC144111: GPA770: Microélectronique appliquée Éric Granger