G. Mouney & G. Authi´e, Microcalculateurs pour la commande (2009-2010) 51
4.2.2 Unit´es p´eriph´eriques
Le C167CR est particuli`erement bien dot´e en unit´es p´eriph´eriques (on-chip peripherals), permet-
tant ainsi de le coupler `a de nombreux proc´ed´es sans ajouter de composants :
– 9 ports d’entr´ees-sorties parall`eles de 8 ou 16 bits, offrant un total de 111 lignes digitales pour
la connexion avec le monde ext´erieur (8 sont des ports d’entr´ees-sorties, 1 est uniquement port
d’entr´ee)
– 2 unit´es de gestion du temps (GPT1 et GPT2) dot´ees de 5 temporisateurs de 16 bits. Elles
peuvent servir `a la production de signaux p´eriodiques, d’horloges, de d´elais . . .
– 2 unit´es de gestion des ´ev´enements pour dialoguer avec le monde ext´erieur (CAPCOM1 et
CAPCOM2). Dot´ees de 4 temporisateurs de 16 bits, elles servent `a capturer ou `a produire des
transitions sur des lignes (32 lignes peuvent ˆetre ainsi pilot´ees)
– 4 canaux de modulation de largeur d’impulsion (en anglais PWM : Pulse Width Modulation).
De telles commandes sont classiquement utilis´ees pour piloter des moteurs ´electriques. L’unit´e
PWM peut produire 4 signaux modul´es de fr´equence et rapport cyclique programmables
– 1 port de communication s´erie ASC (Asynchronous/synchronous Serial Channel) pouvant fonc-
tionner en mode asynchrone en full duplex (jusqu’`a 625 Kbits/s) et en mode synchrone en half
duplex (jusqu’`a 2,5 Mbits/s)
– 1 port de communication s´erie synchrone rapide SSC (high speed Synchronous Serial Channel)
pouvant fonctionner jusqu’`a 5 Mbits/s en half duplex
– 1 unit´e de chien de garde pour ´eviter certaines fautes logicielles (boucles infinies) ou mat´erielles
(syst`eme `a commander qui ne r´epond pas)
– 1 unit´e de conversion analogique-num´erique (ADC : Analog/Digital Converters). Cette unit´e
peut convertir des donn´ees sur un maximum de 16 canaux d’entr´ee en moins de 10µs avec
une r´esolution de 10 bits. Les conversions peuvent ˆetre individuelles ou group´ees (conversion
automatique sur un ensemble de canaux)
– 1 module CAN (Controller Area Network) qui permet de communiquer avec d’autres ´el´ements
connect´es sur un r´eseau local (bus CAN, tr`es utilis´e dans le domaine des v´ehicules de transport).
Il peut fonctionner `a la cadence maximale de 1 Mbits/s
Ces diff´erentes unit´es communiquent avec le monde ext´erieur au moyen de lignes pr´ed´efinies des
ports parall`eles. Evidemment, les lignes utilis´ees par les unit´es p´eriph´eriques deviennent inutilisables
pour des entr´ees-sorties standard. Dans les prochains chapitres, nous verrons comment programmer
les lignes des ports d’entr´ees-sorties pour les faire fonctionner en mode standard ou en mode sp´ecialis´e.
4.3 Organisation de la m´emoire
4.3.1 Espace adressable
Selon la taille de la m´emoire n´ecessaire pour stocker le code et les donn´ees, deux modes de fonc-
tionnement sont possibles pour le C167 :
1. si l’espace m´emoire n´ecessaire est inf´erieur `a 64Ko, des registres de 16 bits sont suffisants pour co-
der les adresses. Le registre IP pointe sur le code et les adresses des donn´ees dans les instructions
peuvent ˆetre cod´ees sur 16 bits
2. si l’espace m´emoire requis est sup´erieur `a 64Ko, les adresses ne sont plus codables dans un registre
de 16 bits (voir figure 4.2). Dans ce cas, l’ espace adressable peut ˆetre vu comme compos´e de
segments de 64Ko, toute adresse ´etant constitu´ee de 2 champs :
- un num´ero de segment (codable dans un registre de 16 bits)
- une adress e dans le segment (16 bits)
Le C167 donne acc`es `a un espace global de 16Mo, vu comme un ensemble de 256 segments de
64Ko. Il est plus avantageux de d´ecouper l’espace de cette mani`ere, plutˆot que de fournir des