Vous êtes sur la page 1sur 23

Réf.

: R526 V1

Acquisition et traitement des signaux


Date de publication : de mesure à l'aide de microprocesseurs
10 décembre 2010 - Architecture globale : traitement de
l'information

Cet article est issu de : Mesures - Analyses | Mesures et tests électroniques

par Paul SENTE

Résumé Cet article rappelle l’architecture globale d’une chaîne d’acquisition et de


traitement de données par microprocesseur avant de se focaliser sur le traitement
matériel et logiciel de l’information. Il situe tout d’abord le microprocesseur dans son
environnement, décrit les différents circuits périphériques existants (servitude,
d’interface…), et la conception de la partie relative à leur exploitation. Sont détaillées
ensuite les particularités relatives à la programmation : l’exécution en temps réel, le choix
important du langage de programmation et la gestion des interrupteurs.

Abstract This article recalls the overall architecture of an acquisition and data processing
chain via a microprocessor before focusing on information processing hardware and
software. The microprocessor is presented in its environment, the various existing
peripheral circuits (slave, interface, etc.) are described and the design of the part related
to their operation is explained. The specificities of programming are then detailed: the
real-time operation, as well as the importance of choice of the programming language
and switch management.

Pour toute question :


Service Relation clientèle
Techniques de l’Ingénieur
Immeuble Pleyad 1 Document téléchargé le : 16/01/2024
39, boulevard Ornano
93288 Saint-Denis Cedex Pour le compte : 7200092269 - cerist // 193.194.76.5

Par mail :
infos.clients@teching.com
Par téléphone :
00 33 (0)1 53 35 20 20 © Techniques de l'Ingénieur | Tous droits réservés
Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

Acquisition et traitement
des signaux de mesure
à l’aide de microprocesseurs
Architecture globale :
traitement de l’information
par Paul SENTE
Ingénieur principal, chef de service à l’Université catholique de Louvain (UCL, Belgique)
Responsable du laboratoire LACTION (actionneurs et capteurs intelligents)
Membre du centre de recherche en mécatronique (CEREM)
Chargé de cours à l’ECAM (Haute École Léonard de Vinci, Belgique)

1. Traitement matériel et logiciel de l’information ...................... R 526v2 –2


1.1 Le microprocesseur et son environnement ....................................... — 2
1.1.1 Principe de fonctionnement .................................................... — 2
1.1.2 Structure interne ...................................................................... — 3
1.1.3 Interface physique : accès extérieur par les bus .................... — 6
1.2 Les périphériques ............................................................................... — 7
1.2.1 Horloge .................................................................................... — 8
1.2.2 Décodeurs d’adresse ............................................................... — 8
1.2.3 Mémoires ................................................................................. — 9
1.2.4 Circuits d’interfaces et périphériques d’application ............... — 10
1.2.5 Cas des microcontrôleurs ....................................................... — 11
1.3 Exploitation de l’information ............................................................. — 11
1.3.1 Stockage ................................................................................... — 11
1.3.2 Sortie analogique de l’information ......................................... — 11
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

1.3.3 Interface opérateur .................................................................. — 12


1.3.4 Transmission de données ....................................................... — 13
1.4 Actionnements – Apport de l’électronique de puissance ................. — 14
2. Particularités relatives à la programmation.............................. — 14
2.1 Travail en « temps réel » .................................................................... — 14
2.2 Choix du langage de programmation ............................................... — 15
2.2.1 Langage machine ..................................................................... — 15
2.2.2 Assembleur ou langage d’assemblage ................................... — 15
2.2.3 Langages évolués (ou langages de haut niveau) ................... — 15
2.3 Gestion des interruptions .................................................................. — 15
3. Check-list.......................................................................................... — 17
Pour en savoir plus.................................................................................. Doc. R 525v2

D ans cet article, on se propose de rappeler l’architecture d’une chaı̂ne d’ac-


quisition et de traitement de données par microprocesseur en y distin-
guant les composantes fondamentales et en illustrant leurs rôles particuliers
par des exemples choisis. Ce large tour d’horizon comprend deux fascicules :
le premier [R 525v2] était consacré aux capteurs et aux chaı̂nes de mesure qui y
sont associées tandis que celui-ci se focalise sur le traitement matériel de l’in-
formation tout en soulignant quelques précautions particulières relatives à la
mise en œuvre du logiciel.

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


est strictement interdite. – © Editions T.I. R 526v2 – 1

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS –––––––––––––––––––––––––––––––––––––––––––––––––––––

1. Traitement matériel compléter « naturellement » par une périphérie adaptée à la fois à


ses besoins propres (horloge, mémoires) et au problème à résou-
et logiciel de l’information dre (interfaces spécialisées). Cette approche permet également
une certaine démystification du fonctionnement du microproces-
seur, ce qui est nécessaire à une mise en œuvre correcte et perti-
nente. C’est en tout cas l’intime conviction de l’auteur.
Alors que la chaı̂ne de mesure était partiellement gérée par le
microprocesseur, le traitement numérique de l’information lui est 1.1.1 Principe de fonctionnement
entièrement confié.
En bout de chaı̂ne de mesure les données acquises sont mises
sous une forme numérique exploitable par le microprocesseur. Le microprocesseur est une machine séquentielle « program-
Son rôle est alors de les lire, de les traiter numériquement (si mable », c’est-à-dire qu’il est capable d’exécuter l’une après l’au-
nécessaire) et, en tout cas, de les mémoriser au moins de façon tre une suite ordonnée d’instructions pour produire un résultat
temporaire. Le dispositif mis en œuvre pour ce faire fait l’objet désiré. Ce postulat est applicable à l’unité centrale de n’importe
des § 1.1 et § 1.2. quel ordinateur.
Il restera ensuite à concevoir la partie relative à leur exploitation
proprement dite : stockage à long terme en mémoire, envoi vers un 1.1.1.1 Programme
observateur humain ou vers un autre système électronique… C’est Un programme est donc la transcription, sous forme d’une suite
l’objet du § 1.3. ordonnée d’instructions, d’un algorithme qui définit la suite des
Finalement, le § 1.4 sera l’occasion d’une brève réflexion sur les opérations à effectuer pour obtenir le résultat souhaité.
systèmes bouclés et la génération d’une réaction en retour sur l’en- Mais, comme dans un système séquentiel il n’est possible d’exé-
vironnement physique. cuter qu’une seule instruction à la fois, l’ensemble du programme
doit être accessible à tout moment en un endroit particulier qu’on
appelle la « mémoire de programme ». L’accès aux instructions doit
1.1 Le microprocesseur pouvoir se faire de façon ordonnée, ce qui implique de localiser
et son environnement chacune d’elles au moyen d’une adresse qui n’est rien d’autre que
sa position relative par rapport au début de la mémoire (adresse
Tous les dispositifs utilisant un microprocesseur ont forcément zéro). Exécuter une séquence ordonnée d’instructions revient alors
un « air de famille » puisque, pour fonctionner, le microprocesseur simplement à exécuter l’une après l’autre les instructions rangées
nécessite un environnement de base qui est toujours constitué de en mémoire dans l’ordre croissant de leurs adresses. Un compteur
(voir figure 1) : spécialisé appelé « compteur de programme » (PC : Program Coun-
– une horloge ; ter) ou compteur ordinal équipera donc obligatoirement tout micro-
– une mémoire (un ou plusieurs circuits intégrés) contenant le processeur : il mémorise l’adresse de l’instruction en cours pen-
programme ; dant le temps que prend son exécution puis s’incrémente pour
– une mémoire (un ou plusieurs circuits intégrés) contenant les pointer la prochaine instruction à exécuter.
données de l’application (les opérandes et les résultats) ;
– des décodeurs d’adresse permettant la sélection de telle ou 1.1.1.2 Classes d’instructions
telle mémoire ou interface lorsque le microprocesseur demande
d’y accéder en présentant l’adresse d’un élément qui appartient for- Au niveau des instructions proprement dites, on peut les classer
cément à une et une seule d’entre elles ; en quelques catégories fondamentales par le simple raisonnement
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

– des circuits périphériques dépendant de l’application. suivant. Tout d’abord, pour être d’une quelconque utilité, le micro-
processeur doit produire des résultats. Il importe que ces résultats
Après un bref rappel de son principe de fonctionnement (informations sortantes) ne soient pas immuables mais dépendent
(machine séquentielle programmable), on décrit sommairement la de conditions extérieures (informations entrantes). Ce mouvement
structure interne du microprocesseur de façon à pouvoir ensuite la d’informations est régi par une catégorie spécifique d’instructions :

Bus de données

Bus d'adresses

Bus de contrôle

Décodeur Décodeur Décodeur

Microprocesseur Mémoire Mémoire Circuit périphérique


de programme de données

Horloge Chaîne
Capteur de
mesure

Figure 1 – Dispositif à microprocesseur

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


R 526v2 – 2 est strictement interdite. – © Editions T.I.

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

–––––––––––––––––––––––––––––––––––––––––––––––––––––– ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS

les transferts de données (on appelle « donnée » toute information – accès rapide aux registres en les désignant implicitement par
autre qu’une instruction). Ensuite, la manipulation de ces informa- des instructions qui leur sont propres : « adressage implicite » ;
tions se fera à l’aide d’une autre classe d’instructions : les – accès normal à n’importe quel endroit de la mémoire : « adres-
opérations. sage étendu » ;
Notre machine se présente alors comme un calculateur : elle – accès assez rapide à la mémoire interne (de taille réduite) ou à
peut manipuler des données existantes, les modifier et même en une zone particulière de la mémoire externe : « adressage direct ».
produire de nouvelles. Mais les instructions sont toujours exécu- Les adresses prennent alors des valeurs limitées à un certain nom-
tées dans un ordre de succession immuable. Une amélioration bre de chiffres (de bits). Ceci réduit la place nécessaire au codage
considérable serait de pouvoir modifier le déroulement séquentiel de l’instruction puisque celle-ci ne contient qu’une partie de
des instructions dans le but de : l’adresse ;
– faire dépendre la suite des instructions à effectuer des résultats – accès à une zone de mémoire située de part et d’autre de l’ins-
partiels déjà obtenus ; truction en cours : « adressage relatif ». L’instruction ne contient
– revenir si nécessaire à un endroit précis de la séquence plus d’adresse mais bien un déplacement dont la valeur (absolue
d’instructions ; ou signée) doit être ajoutée à l’adresse de l’instruction courante
– exécuter plusieurs fois la même séquence d’instructions. pour obtenir l’adresse visée. La valeur du déplacement est souvent
limitée par l’usage d’un nombre réduit de chiffres (bits), toujours
On regroupe les instructions qui procurent ces possibilités sous pour des raisons de compacité. L’adressage relatif permet, par
le nom de « branchements ». exemple, l’accès aisé à une table disposée non loin derrière l’ins-
truction courante (table de conversion, d’encodage…) ;
1.1.1.3 Interface logique : adressage – accès (assez lent) à une zone de mémoire de taille réduite
Étant donné la nature séquentielle du microprocesseur, il est située autour d’une adresse de référence contenue dans un registre
nécessaire de prévoir de stocker les instructions et les données spécialisé servant de pointeur : « adressage indexé ». Ceci permet
dans une mémoire située à l’intérieur ou à l’extérieur du de manipuler de façon identique différentes « tables » de données
microprocesseur. par référence à leurs adresses de début. Les registres particuliers
permettant le pointage de ces zones de mémoire sont appelés
Le compteur de programme permettra d’accéder au code de
« registres d’index ».
l’instruction courante en en fournissant l’adresse sur le bus
d’adresses à l’initiative du séquenceur d’instruction qui, simultané-
ment, signalera par une ligne de contrôle que l’on cherche à lire 1.1.2 Structure interne
une instruction dans la mémoire de programme.
L’architecture interne visible à la figure 2 fait apparaı̂tre une voie
Par ailleurs, les instructions de transfert de données devront être
porteuses d’informations particulières permettant de localiser les électrique de connexion (appelée « bus » interne) sur laquelle
emplacements occupés par ces données dans la mémoire de don- débouchent :
nées : en d’autres termes leurs « adresses ». Selon la rapidité ou la – un bloc de contrôle comprenant le registre d’instruction, un
commodité que l’on attend de ces transferts, on divise les métho- décodeur qui conditionne l’action du registre d’instruction sur le
des d’accès aux données en plusieurs classes appelées « modes séquenceur, et le séquenceur lui-même, conditionné par l’horloge
d’adressage » dont les principales sont les suivantes : et le microprogramme, qui contrôle tous les autres organes
– accès à des données constantes, c’est-à-dire des valeurs fixées internes ;
une fois pour toutes dans le programme lui-même : « adressage – une unité arithmétique et logique permettant la réalisation des
immédiat » ; opérations du même nom ;
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

Bus de données DATA

Micro
Accum. temp. programme Registre
01001101 d'instruction
10001010
11110100
11010101 Décodeur
01010101 d'instruction
01000101 Reset
Séquenceur
UAL PSW 00011011
(ALU) REGISTRES 00011000
CTRL
Bus de contrôle

Compteur de Incrémenteur
programme PC du PC CLK
temp. Horloge

Bus d’adresses ADDR

Figure 2 – Structure interne du microprocesseur

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


est strictement interdite. – © Editions T.I. R 526v2 – 3

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS –––––––––––––––––––––––––––––––––––––––––––––––––––––

– une série de cases de mémoire interne d’accès rapide et pou- ainsi que la sortie de l’UAL (source des résultats) sont interconnectées
vant être connectées à l’unité arithmétique et logique : les par une voie de communication électrique appelée « bus ».
registres ;
– des amplificateurs d’entrée/sortie permettant les échanges d’in- 1.1.2.3 Bus
formations avec l’extérieur (tampons) et notamment : Le bus de données interne n’est rien d’autre qu’un faisceau de n
– une entrée de remise à zéro ou « Reset ». Ce signal est fonda- conducteurs électriques parallèles (pour un microprocesseur n bits)
mental pour permettre au système de démarrer dans un état parfai- qui parcourt l’essentiel de la surface de la puce de silicium
tement connu ; (figure 2). Chaque source ou destinataire d’information peut y être
– une entrée d’horloge. Ce signal conditionne tout le cadence- connecté ou pas.
ment du travail du microprocesseur ; Dans le cas d’une source d’information, la circuiterie la reliant au
– au moins un bus externe bidirectionnel qui véhiculera les ins- bus est du type « passeur » ou « tampon à 3 états » (three states,
tructions et les données ; on l’appelle « bus de données » en toute tristate buffer en anglais) comme illustré à la figure 4 (technologie
généralité ; CMOS).
– au moins un bus externe sortant permettant l’adressage de la
mémoire ; on l’appelle « bus d’adresses » ; Lorsque le signal de sélection E (pour Enable : autorise) est bas
– un bus externe de contrôle comprenant au moins : (E = 0 ; niveau logique 0) on voit que les transistors de sortie sont
bloqués. C’est le troisième état : le circuit du côté S est comme
 un signal logique (sortant) de commande de lecture, déconnecté ; on dit qu’il est flottant.
 un signal logique (sortant) de commande d’écriture,
Dans le cas contraire (E = 1), l’état du signal d’entrée X condi-
 un signal logique (sortant) spécifiant si on accède à la tionne l’état de la sortie S : si X = 1 le transistor canal P conduit
mémoire de données ou à la mémoire de programme lorsque tandis que le canal N est bloqué donc S passe au niveau haut. La
celles-ci ne disposent pas de bus d’accès séparés. réciproque (X = 0) amènera S au niveau électrique bas.
Le lecteur intéressé pourra trouver une description plus détaillée Dans le cas d’un destinataire de données, sa structure devra
des microprocesseurs et de leurs structures internes dans [13]. comporter un étage de commande (Enable) suivi d’un étage de
type latch permettant ainsi de prendre l’information au moment
1.1.2.1 Accumulateur, registres choisi et de la mémoriser. Ce sera par exemple un étage de type
Pour éviter des pertes de temps trop fréquentes causées par des bascule « RS » (Set – Reset) comme sur la figure 5 : on y voit que
transferts incessants de données entre le microprocesseur et les si E = 0 les sorties des portes NON ET sont forcées à 1 et la sortie
mémoires, il est toujours nécessaire de disposer de cellules de de la bascule reste stable. Par contre, si E = 1 c’est l’état de S qui
mémoire interne (donc d’accès rapide) appelées « registres ». impose X (X := S). Une petite impulsion sur E permet donc de cap-
Ceux-ci seront en nombre limité car intimement imbriqués dans la turer l’état de S à cet instant et de le recopier en X.
structure centrale de la machine, là où s’effectuent les opérations.
Chaque bit d’un registre possède une structure d’entrée de type VCC
verrou (latch) et sa commande et une structure de sortie de
type 3 états, comme décrit au point précédent.
Lorsque l’un des registres est privilégié en ce sens qu’il est
impliqué dans un nombre important d’instructions de divers X
types, on lui donne le nom d’« accumulateur ». Quant au compteur Canal P
E
de programme (décrit précédemment), c’est bien un registre puis-
qu’il mémorise l’adresse de l’instruction en cours. S
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

1.1.2.2 Unité arithmétique et logique


L’exécution d’instructions de la classe des opérations arithméti-
ques et logiques nécessite de disposer d’une unité du même nom Canal N
(UAL : unité arithmétique et logique ou ALU pour Arithmetic and
Logic Unit en anglais), constituée d’un certain nombre de circuits
formant un ensemble homogène : registres à décalage, addition- Symbole
neurs, multiplieurs… Elle est classiquement représentée en forme
de « V » (figure 3) puisqu’elle possède généralement deux entrées X S
(opérandes) pour une sortie (résultat).
L’unité arithmétique et logique doit être en relation avec toutes les E
sources de données figurant dans le microprocesseur : accumulateur,
registres divers, mémoire de données externe. Ces différentes sources Figure 4 – « Passeur » ou « tampon à 3 états »

Entrée a Entrée b
S
Set
Sortie Entrée E X
auxiliaire auxiliaire

Sélection de la Enable Latch


fonction désirée

Sortie
principale Reset

Figure 3 – Représentation de l’unité arithmétique et logique Figure 5 – Cellule mémoire (bascule RS)

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


R 526v2 – 4 est strictement interdite. – © Editions T.I.

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

–––––––––––––––––––––––––––––––––––––––––––––––––––––– ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS

Le bus d’adresses est surtout utile pour les accès à l’extérieur du Pour identifier ses particularités, le décodage de l’instruction est
microprocesseur : il indiquera l’adresse de l’instruction ou de la réalisé par un circuit particulier, appelé « décodeur d’instruction ».
donnée à traiter. Pour ce faire, il est relié au compteur de pro- Ce dernier procure une économie de mémorisation de séquences à
gramme et à des registres temporaires permettant un échange réaliser en permettant le classement des instructions selon une par-
avec le bus de données. tie de leur code opératoire, cette partie étant révélatrice du type
d’instruction et, donc, des traitements élémentaires que son exécu-
1.1.2.4 Horloge tion suppose.
De nature séquentielle, le microprocesseur doit disposer d’une On conçoit que chaque classe d’instructions donne lieu à une
sorte de métronome servant à cadencer l’exécution des instruc-
séquence d’interconnexions et d’opérations élémentaires fort sem-
tions composant le programme : l’horloge (notée CLK pour « clock »
blables : il est donc déraisonnable de prévoir des circuits distincts
à la figure 2).
pour en assurer la réalisation. En fait, ces séquences internes sont
L’exécution d’une instruction se fera en une période d’oscillation assurées par « l’exécution » d’opérations élémentaires inscrites
du circuit d’horloge au moins. En pratique et selon les micropro- dans ce que l’on appelle un « microprogramme ». Ce dernier n’est
cesseurs, l’horloge est divisée avant de cadencer l’exécution des rien d’autre qu’une mémoire morte dont les entrées (adresses) sont
instructions. C’est ainsi qu’un ou plusieurs coups d’horloge for- dépendantes de l’instruction en cours d’exécution et de l’horloge
ment « un temps de cycle » et qu’un ou plusieurs temps de cycle (suite d’adresses données par un compteur) et dont les sorties
sont nécessaires à l’exécution d’une instruction. On se gardera (données) sont connectées aux différents organes internes formant
donc bien d’estimer la vitesse d’un microprocesseur à la seule la partie interne du bus de contrôle.
cadence de son horloge !
On en déduit que l’exécution d’une instruction de programme
1.1.2.5 Compteur de programme peut prendre plusieurs cycles de l’horloge principale puisqu’elle
Pour pouvoir exécuter les instructions dans l’ordre, on sait déjà correspond à l’exécution d’un microprogramme, lui-même formé
qu’il nous faudra pouvoir désigner leurs emplacements en de plusieurs instructions élémentaires.
mémoire de programme par des adresses. Ceci nécessite de dispo-
ser d’un compteur interne dénommé « compteur de programme ». Exemple : exécution d’une instruction de type opération.
Il assure le pointage de l’instruction en cours et est incrémenté Soit une instruction spécifiant qu’il faut ajouter la valeur 5 à la
automatiquement lorsqu’il s’agit de passer à l’instruction suivante. valeur courante de l’accumulateur. Son écriture en langage d’assem-
Ce compteur pourra être remis dans un état initial qui correspond à blage pourrait ressembler à :
l’adresse de début d’exécution du programme par application d’un ADD A,#5 ; Ajouter 5 à l’accumulateur (adressage immédiat)
niveau logique vrai sur la connexion de « remise à zéro » (Reset) Son exécution sera constituée de phases élémentaires comme :
dont tout microprocesseur est équipé. Les instructions de branche- – activer la partie du microprogramme permettant le début d’exé-
ment sont réalisées simplement par modification de la valeur du cution de toute instruction :
compteur de programme.  activer le passeur du compteur de programme pour présenter le
contenu du compteur de programme sur le bus d’adresses interne,
1.1.2.6 Séquenceur d’instruction, microprogramme
 activer le passeur du bus d’adresses vers l’extérieur,
L’exécution d’une instruction se décompose en plusieurs phases  attendre (établissement des niveaux électriques sur le bus),
élémentaires, certaines étant communes à toutes les instructions,
d’autres à certaines classes, d’autres enfin étant tout à fait particu-  mettre la ligne de contrôle correspondant à la lecture en mémoire
lières. Il y correspond des séquences d’interconnexions à réaliser de programme à l’état vrai,
entre les composantes internes du microprocesseur (figure 6).  activer le passeur du bus de données en sens entrant,
Dans tous les cas, le code de l’instruction en cours d’exécution  attendre (établissement des niveaux électriques sur le bus),
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

sera mémorisé dans un registre spécial : le registre d’instruction.  verrouiller le contenu du bus de données dans le registre d’instruc-
tion,
 désactiver le passeur du bus de données,
Microprogramme Bus Extérieur
 désactiver le passeur du bus de d’adresses,
000111010101000
000111010101000  attendre que le décodeur d’instruction analyse le code opératoire,
010101000100000  changer le compteur d’adresses du microprogramme par la valeur
010100000100000 Registre de départ du type d’instruction décodé ;
000000000100000 d'instruction
– activation de la partie du microprogramme permettant une addi-
100000000000000
010000000000000
tion avec l’accumulateur :
001000000000000 Décodeur
 incrémentation du compteur de programme,
00100000100100 d'instruction  présenter le contenu du compteur de programme sur le bus
000000000000100 Adresses
Reset d’adresses,
000000000000100 Séquenceur
(compteur)
 sélection du type d’opération « addition » en contrôle de l’ALU,
000000000000100
 attendre (établissement des niveaux électriques sur le bus),
 mettre la ligne de contrôle correspondant à la lecture en mémoire
de programme à l’état vrai,
Bus de contrôle
 activer le passeur du bus de données en sens entrant,
Compteur de Incrémenteur  attendre (établissement des niveaux électriques sur le bus),
Horloge CLK
programme PC du PC
 verrouiller le contenu du bus de données dans un registre tempo-
raire d’entrée de l’unité arithmétique et logique,
 désactiver le passeur du bus de données,
Bus d’adresses  activer la sortie de l’accumulateur vers l’ALU,
 activer la sortie d’ALU vers le bus,
 attendre (établissement des niveaux électriques dans l’ALU + propa-
Figure 6 – Séquenceur d’instruction, microprogramme gation du résultat),

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


est strictement interdite. – © Editions T.I. R 526v2 – 5

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS –––––––––––––––––––––––––––––––––––––––––––––––––––––

 verrouiller la valeur présente sur le bus dans l’accumulateur, Exemple : chronologie des phases de lecture et d’écriture en
mémoire de données.
 couper la liaison accumulateur – ALU, On trouvera à la figure 7 un chronogramme décrivant la division
 couper la sortie de l’ALU vers le bus, d’horloge en cycles et l’évolution temporelle habituelle des signaux
 attendre (établissement des niveaux électriques dans l’ALU +) ; de contrôle (RD pour la lecture, WR pour l’écriture) et des bus de
– activer la partie du microprogramme permettant la fin d’exécu- données et d’adresses lors d’un accès d’un microprocesseur à sa
tion de toute instruction : mémoire de données (lecture et écriture). Dans cet exemple, une lec-
ture ou une écriture prennent 3 temps de cycle de 2 coups d’horloge
 activer le passeur du compteur de programme pour présenter le chacun, soit 6 périodes de l’horloge principale.
contenu du compteur de programme sur le bus d’adresses interne, Le cycle de lecture se déroule comme suit :
 verrouiller son contenu dans le dispositif d’incrémentation, – au premier temps de cycle machine, le premier flanc montant de
 commander son incrémentation (+ 1) puis attendre (établissement l’horloge provoque la sortie des données sur le bus d’adresses (avec
des niveaux électriques sur le bus), un léger retard équivalent aux temps de propagation dans la logique
 désactiver le passeur du compteur de programme, interne du microprocesseur) ;
 activer le passeur du dispositif d’incrémentation du compteur de pro- – encore au premier temps de cycle machine, le flanc descendant
gramme pour présenter son contenu sur le bus d’adresses interne, de l’horloge provoque la mise au niveau bas (vrai en logique négative)
du signal RD : le microprocesseur annonce qu’il va lire à l’emplace-
 verrouiller son contenu dans le compteur de programme,
ment de mémoire de données indiqué par le bus d’adresses ! ;
 désactiver le passeur du dispositif d’incrémentation. – on suppose alors que le circuit périphérique va présenter sa don-
née ; dans la pratique on se réfèrera aux spécifications techniques de
1.1.3 Interface physique : accès extérieur par les bus ce dernier pour savoir en combien de temps ce sera fait ;
On a vu précédemment (figure 2) qu’il existe beaucoup de – au flanc descendant du troisième cycle (dernier flanc d’horloge
connexions internes dans un microprocesseur et que l’exécution dans cette instruction en 3 temps de cycle), le signal RD est invalidé :
du microprogramme se fait à un rythme forcément plus élevé que le microprocesseur signale qu’il a fini la lecture de la donnée.
celui du programme externe. Il est donc utile d’isoler les circuits Par rapport à ce dernier évènement, il y aura lieu de vérifier que le
internes du microprocesseur des charges capacitives externes par périphérique respecte les conditions de timing suivantes :
des amplificateurs (buffers). Ceci permet également de ne pas aug- – pour pouvoir être lues correctement par le microprocesseur, les
menter la taille des transistors nécessaires au fonctionnement données doivent être valides un temps « trds » (read data setup)
interne en limitant les puissances mises en jeu, tout en n’ajoutant avant la fin du cycle de lecture ;
que quelques étages supplémentaires pour disposer de la puis- – par ailleurs, ces mêmes données doivent être maintenues un
sance nécessaire à commander les circuits externes. temps « trdh » (read data hold) au minimum après la fin du cycle
Le nombre de pattes associées au bus de données est révélateur (ce temps est souvent nul).
de la puissance de traitement d’information puisqu’il correspond Le cycle d’écriture se déroule comme suit :
au nombre de bits manipulés en une fois dans le microprocesseur, – au début du second temps de cycle machine, le flanc montant de
donc à la taille des informations binaires. C’est la raison pour l’horloge provoque la sortie des données sur le bus d’adresses (avec
laquelle on parle de microprocesseurs « 8 bits », « 16 bits », un léger retard équivalent aux temps de propagation dans la logique
« 32 bits » voire « 64 bits ». Dans le cas d’un microprocesseur interne du microprocesseur) ;
8 bits, une information élémentaire (octet) peut prendre 256 valeurs – au milieu du second temps de cycle machine, le flanc descendant
comprises entre 00000000 (c’est-à-dire 0) et 11111111 (c’est-à-dire de l’horloge provoque la mise au niveau bas (vrai en logique négative)
255). Le bus de données est donc constitué de 8 contacts électri- du signal WR : le microprocesseur annonce qu’il va écrire à l’emplace-
ques matérialisés par des « pattes » accessibles au niveau du boı̂- ment de mémoire de données indiqué par le bus d’adresses ! ;
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

tier. Le bus d’adresses comprend alors généralement 16 bits (donc – on suppose alors que le circuit périphérique va capturer la don-
16 pattes ou contacts électriques), ce qui correspond à une taille née ; dans la pratique on se réfèrera aux spécifications techniques
mémoire de 65 536 cellules (216). de ce dernier pour savoir en combien de temps ce sera fait et s’il
Disposant de deux bus distincts (adresses, données), il faut est mieux de verrouiller l’information au début ou à la fin (flanc mon-
encore y régler la circulation des informations. Les lignes (pattes) tant) du signal d’écriture WR ;
de contrôle remplissent ce rôle. En ce qui concerne le bus de don- – au flanc descendant situé au milieu du troisième cycle (dernier
nées, il faut savoir si les informations entrent dans le microproces- flanc d’horloge dans cette instruction en 3 temps de cycle), le signal
seur (lecture) ou en sortent (écriture) : ce bus est bidirectionnel. Il WR est invalidé : le microprocesseur signale qu’il a fini la lecture de la
faut aussi savoir à quel moment les informations seront correctes donnée. Il maintient toutefois les données pour permettre au péri-
et stables puisque les changements d’état électrique ne peuvent phérique d’achever sa phase d’enregistrement ;
se faire instantanément. Deux pattes du microprocesseur seront – le début du premier cycle de l’instruction suivante provoque la
au minimum nécessaires pour lever ces ambiguı̈tés mais on peut disparition des adresses et des données.
imaginer que cela se fasse selon deux techniques différentes : Par rapport à la fin du cycle de lecture (remontée du signal WR), il y
– soit par une patte dont l’état indique si l’on est en phase d’écri- aura lieu de vérifier que le périphérique respecte les conditions de
ture ou de lecture et une autre pour signaler à quel moment l’infor- timing suivantes :
mation est valable ; – le constructeur du microprocesseur garantit que les données ont
– soit par une patte indiquant si l’on est en phase de lecture ET été présentées sur le bus un temps minimum « twds » (write data
que les données doivent être rendues disponibles, et une autre setup) avant la fin du cycle de lecture ;
indiquant qu’on est en phase d’écriture ET que les données sont – par ailleurs, ces mêmes données ont été maintenues un temps
présentées correctement à l’extérieur du microprocesseur. « twdh » (write data setup) au minimum après la fin du cycle pour
permettre au périphérique d’achever sa phase d’enregistrement ;
En résumé, outre la spécification des niveaux électriques hauts – enfin, on garantit que le bus de données est libéré après un
et bas correspondant aux états logiques 1 et 0, le fabricant de temps maximum « twdf » (write data float).
microprocesseur devra fournir des spécifications concernant la
chronologie des accès aux circuits externes (mémoire, périphé- Jusqu’à présent, on n’a établi que peu de distinction entre les
riques…). Ces diagrammes temporels devront être comparés à accès à la mémoire de programme et les accès à la mémoire de
ceux fournis par les constructeurs de circuits périphériques de
données. Si les adresses permettent d’accéder à une vaste
façon à dégager une éventuelle compatibilité.
mémoire, on peut imaginer que la séparation se fasse simplement

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


R 526v2 – 6 est strictement interdite. – © Editions T.I.

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

–––––––––––––––––––––––––––––––––––––––––––––––––––––– ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS

Lecture Écriture
Cycle 1 Cycle 2 Cycle 3 Cycle 1 Cycle 2 Cycle 3
Clock

Adresses

RD

WR

trds twds twdf


trdh twdh
Données

Figure 7 – Chronogramme d’accès en mémoire de donnée

à ce niveau : la mémoire sera découpée en différentes zones d’uti- du bus d’adresses a15, a14, a13 ET a12 sont simultanément à 1).
lités distinctes. Dans le cas contraire ou pour faciliter le décodage L’adresse demandée par le microprocesseur est donc de la forme
d’adresses, on peut distinguer entre les deux types de mémoires 0FxxxH (où x est un chiffre hexadécimal) et elle provoque la sélection
en utilisant une broche supplémentaire du microprocesseur : cette de l’EPROM qui présente à sa sortie le contenu de la case mémoire
patte indiquera que l’accès en cours concerne la mémoire de pro- correspondante sur le bus de données.
gramme ou la mémoire de données.
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

L’amélioration des techniques d’intégration a permis la fabrica- Notons que certaines fonctions utilitaires telles la gestion d’un
tion de circuits mémoire de taille de plus en plus importante. Ceci clavier, d’un moniteur vidéo, etc. sont réalisées par des circuits spé-
entraı̂ne une simplification du décodage d’adresses, c’est-à-dire de cialisés. Ces derniers sont contrôlés par lecture/écriture dans leurs
la circuiterie permettant de sélectionner la mémoire concernée à registres internes. Ils se présentent donc comme des mémoires
partir de la valeur courante du bus d’adresses. En effet, lorsque plu- particulières de taille parfois extrêmement réduite. Ceci oblige à
sieurs circuits sont simultanément raccordés au bus de données, il « sacrifier » un des grands blocs de mémoire décrits ci-avant, ou
est nécessaire qu’un et un seul d’entre eux en fixe les niveaux élec- alors à n’en perdre que les cellules en conflit mais au prix d’une
triques. Comme ces circuits sont munis d’une entrée de sélection circuiterie de décodage beaucoup plus complexe. Une technique
(qui permet de garantir un état flottant des sorties raccordées au plus élégante est d’utiliser l’inverse du signal de sélection du petit
bus lorsque le signal de sélection est à l’état faux), il faudra raccor- circuit pour empêcher la sélection de la mémoire : on perd alors
der cette entrée à la sortie d’un décodeur d’adresses garantissant l’accès à quelques cases de la grosse mémoire mais en leur substi-
que la sélection n’aura lieu que si l’adresse fournie par le micropro- tuant les registres du petit circuit. Certains microprocesseurs pro-
cesseur est celle (ou une de celles) que l’on a attribué au circuit posent une solution plus radicale à ce problème : ils offrent l’accès
concerné. Un petit exemple, basé sur un bus d’adresses de quatre à deux plans de mémoire distincts, l’un de grande capacité (pour la
bits, permet d’illustrer ces considérations (figure 8). « mémoire »), l’autre de capacité plus réduite (pour les « entrées-
sorties » ou I/O en anglais input-output). Les instructions de trans-
Exemple : petit décodeur d’adresses. fert de données diffèrent selon le plan choisi et la distinction élec-
Soit le circuit illustré à la figure 8. Supposons devoir interfacer une trique se fait en utilisant une patte spéciale du microprocesseur.
mémoire morte de 32 kbits (4 kilo-octets) à un microprocesseur dis-
posant d’un bus de données sur 8 bits et d’un bus d’adresses 16 bits
(soit 216 = 64 ko adressables). On choisit une mémoire EPROM (voir 1.2 Les périphériques
§ 1.2.3.1) de type 27C32 (CMOS, 32 kbits, bus de données sur Mis à part le cas particulier des microcontrôleurs qui sera traité
8 bits). Pour que l’accès à cette mémoire se produise aux adresses au point 1.3 du troisième fascicule [R 527], la mise en œuvre d’un
0F000H à 0FFFFH (plage de 4 ko consécutifs), il faut qu’elle ne soit microprocesseur consiste, du point de vue du matériel, à réaliser
sélectionnée que lorsque le microprocesseur présente ces adresses- son interconnexion avec plusieurs autres circuits : circuits périphé-
là sur le bus d’adresses. Le circuit intitulé « décodage d’adresses » riques de servitude (horloge, décodeurs d’adresses, mémoires de
rempli cette fonction : on voit aisément que E = 0 si et seulement si programme et de données), circuits périphériques d’interface
PSEN = 0 (ce qui indique que le microprocesseur demande un accès (selon l’application), et toute circuiterie développée en logique
à la mémoire programme) ET que A = 0 (ce qui signifie que les bits câblée pour les besoins d’une application particulière.

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


est strictement interdite. – © Editions T.I. R 526v2 – 7

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS –––––––––––––––––––––––––––––––––––––––––––––––––––––

ROM
(Mémoire morte) Bus de données
d7 d7
4 ko = 32 kbits d6 d6
27C32 par exemple
... ...

d1 d1
d0 d0

MICROPROCESSEUR

E
PSEN

Décodage RD
d'adresses :
A = a15 ∙ a14 ∙ a13 ∙ a12
a15 a15
a14
a14 a13
A
a13 a12
a11
a12 Bus d'adresses

...

a1
a0

Figure 8 – Mémoire de programme et décodage d’adresses

1.2.1 Horloge cas échéant, simplifier l’expression de la fonction pour que la syn-
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

thèse à réaliser soit plus économique en termes de portes logiques.


L’horloge est un oscillateur dont la fréquence de travail sera choi-
sie la plus élevée possible pour obtenir la vitesse d’exécution la Finalement, le décodage d’adresse proprement dit doit être com-
plus rapide possible. La limite supérieure de fréquence dépend de plété par l’indication du sens et de la validité du transfert (lignes de
la technologie utilisée pour la fabrication du microprocesseur : il se contrôle).
compose généralement de transistors MOS (Metal Oxyde Semicon-
Exemple : décodage de la lecture à l’adresse 0FFFEH.
ductor) dont la fréquence de travail peut atteindre actuellement plu-
Supposons qu’en présence d’un bus d’adresses comprenant
sieurs gigahertz.
16 bits on souhaite qu’un circuit externe au microprocesseur réponde
La matérialisation et la stabilité de l’oscillateur sont assurées par à l’adresse 0FFFEH (ou 0xFFFE) soit 65534 en décimal (puisque F
l’utilisation de composants externes : réseaux RC ou LC, quartz vaut 15 et E vaut 14 en hexadécimal, c’est-à-dire en base 16). La
(plus précis et surtout plus stables). Finalement le circuit d’horloge fonction correspondante est :
devra respecter plusieurs conditions relatives à : 65534 = 15 x 163 + 15 x 162 + 15 x 161 + 14 x 160 = 1 x 215 + 1 x 214 +
– la fréquence maximale ; … + 1 x 2 2 + 1 x 2 1 + 0 x 20
– la valeur minimum de la demi-période (spécifications haute et E = a15 ⋅ a14 ⋅ a13 ⋅ a12 ⋅ a11 ⋅ a10 ⋅ a9 ⋅ a8 ⋅ a7 ⋅ a6 ⋅ a5 ⋅ a4 ⋅ a3 ⋅ a2 ⋅ a1 ⋅ a0 = 1
basse éventuellement différentes) ; si et seulement si

– les niveaux électriques haut et bas ; a15 = 1et a14 = 1et a13 = 1et a12 = 1… et a3 = 1et a2 = 1et a1 = 1et a0 = 0
– la limite maximum pour les temps de montée et de descente La figure 9 montre une circuiterie de décodage d’adresse corres-
(flancs) ; pondant à notre exemple et réalisée avec des portes classiques. Le
– le temps de mise en régime. décodage est découpé en deux tranches par des portes NON ET
(NAND) : la première donne 0 si et seulement si les adresses a15 à
1.2.2 Décodeurs d’adresse a3 sont toutes à 1 ; la seconde donne 0 si et seulement si les adres-
ses a2 et a1 sont à 1. Ces deux « 0 » nécessaires sont alors combinés
Le décodage d’adresse est réalisé par de la logique combinatoire.
par une porte OU (OR) avec le a0 restant (qui doit être nul) et avec le
Il s’agit de repérer le moment pendant lequel les adresses en sortie
du microprocesseur indiquent une valeur choisie, celle que l’on signal RD (0 vrai ; logique négative) issu du bus de contrôle du micro-
souhaite attribuer à un circuit périphérique. Pour ce faire on peut processeur et qui signale un accès de lecture en mémoire de don-
tout simplement matérialiser la fonction logique qui correspond nées. Le signal SEL qui en résulte peut donc être utilisé pour com-
au nombre souhaité, c’est-à-dire qui prend la valeur 1 (0 en logique mander un circuit périphérique censé devoir renvoyer une
négative) uniquement lorsque chaque bit d’adresse prend la même information au microprocesseur lorsque celui-ci lit la donnée pré-
valeur que le bit correspondant du nombre choisi. On peut aussi, le sente à l’adresse 65534.

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


R 526v2 – 8 est strictement interdite. – © Editions T.I.

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

–––––––––––––––––––––––––––––––––––––––––––––––––––––– ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS

– PROM (Programmable Read Only Memory) ou OTP (One Time


a15 Programmable) : après fabrication, le composant contient une
a14 information de base uniforme : toutes les cellules sont dans le
a13 même état logique et fournissent donc la même information élec-
a12 trique. L’utilisateur pourra modifier sélectivement l’information
a11 contenue dans chaque cellule en inversant une et une seule fois
a10 son état. Le coût est un peu plus élevé que pour une ROM mais
a9
SEL
en cas d’erreur la perte n’est pas très importante à condition de ne
a8 pas se tromper trop souvent ! En pratique, il existe deux techniques
a7 principales pour ce type de ROM :
a6  « ROM fusible » : la modification de l’état d’un bit est obtenue
a5 en appliquant des tensions et courants élevés au circuit dans
a4 le but de faire « sauter » sélectivement le microfusible interne
a3 qui y correspond. Une fois qu’un fusible est détruit, il n’est
a2 plus possible de le réparer,
a1  EPROM OTP : la mémoire est programmable électriquement
a0 (voir EPROM ci-après) mais le hublot permettant l’effacement
par bombardement ultraviolet est absent (ce qui diminue le
coût de fabrication) ;
RD – EPROM (Erasable Programmable Read Only Memory) : ces
mémoires sont programmables par l’utilisateur et peuvent égale-
Figure 9 – Décodage de l’adresse 65534 ; accès en lecture ment être effacées, c’est-à-dire remises dans un état logique uni-
forme et connu. Cet effet est obtenu par l’implantation d’une
double grille pour chaque transistor à effet de champ constituant
Certains circuits intégrés des séries classiques comme les une cellule de mémoire. L’une des deux grilles (« grille flottante »)
74xx137 (décodeur 3 vers 8 avec verrou ou latch), 74xx138 (simple emprisonne (ou pas) une certaine charge difficilement modifiable,
décodeur 3 vers 8), 74xx139 (double décodeur 2 vers 4) et bien ce qui détermine la tension de grille d’ensemble capable d’entraı̂-
d’autres offrent des possibilités de combinaisons logiques, pensées ner la mise en conduction du transistor. La phase d’effacement
pour le découpage en adresses ou plages d’adresses successives. consiste généralement à évacuer cette charge par un bombarde-
Si la circuiterie obtenue semble trop lourde le décodage des adres- ment de lumière ultraviolette d’une durée d’environ quinze minutes
ses peut être confié à une petite mémoire rapide ou à un circuit (temps variable selon l’intensité lumineuse de la source UV) ; ceci
logique programmable (d’une PLD à une fraction de FPGA si cette explique la présence d’une fenêtre translucide sur la partie supé-
dernière est disponible). rieure du boı̂tier. La programmation, quant à elle, est réalisée par
application de tensions plus élevées que les tensions normales de
1.2.3 Mémoires service pendant un temps variable d’une fraction de millisecondes
Étant donné la nature séquentielle du microprocesseur, il est pour chaque octet. Le coût proportionnellement plus élevé de ce
nécessaire de prévoir de stocker les instructions et les données dans type de mémoires est compensé par la facilité de modification de
une mémoire située à l’intérieur ou à l’extérieur du microprocesseur. leur contenu. On les utilisera donc soit en phase de développe-
ment, soit dans des appareils produits en petite série, soit lors-
Si la place disponible dans le microprocesseur le permet, on peut
qu’une modification des programmes est prévisible (par exemple
y mettre de la « mémoire interne » permettant le stockage du pro-
pour réaliser des options « à la carte ») ;
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

gramme et/ou des données ; ce sera souvent le cas dans les micro-
– EEPROM (Electrically Erasable Programmable Read Only
contrôleurs (voir § 1.3 de [R 527]). Toute mémoire de taille impor-
Memory) ou E2PROM ou Flash EPROM : fonctionnellement identi-
tante devra néanmoins être disposée à l’extérieur du circuit : il
ques aux EPROM, elles se distinguent par une procédure d’efface-
s’agit alors de « mémoire externe ».
ment électrique qui remplace l’exposition aux rayons ultraviolets.
1.2.3.1 Mémoires mortes L’avantage essentiel obtenu est une plus grande rapidité de repro-
grammation puisque la durée de la phase d’effacement est réduite
En général la suite de codes d’instruction correspondant au pro- à une fraction de seconde.
gramme est inscrit dans une mémoire de type permanente (c’est-à-
dire qu’elle ne perd pas son contenu lorsque l’alimentation est cou- Certaines permettent une reprogrammation in situ grâce à un
pée ; mémoire dite « morte ») qui ne sera, par la suite, qu’acces- bus de communication série (par exemple via un SPI Serial Pro-
sible en lecture par le microprocesseur (ROM : Read Only Memory). grammable Interface ou un I2C Inter Integrated Circuits) dont il suf-
Cette inscription, si elle ne fait pas tout bonnement partie de l’opé- fit de préserver les connexions en les gardant accessibles (2 à 4 pat-
ration de fabrication de la ROM, nécessite une procédure particu- tes du composant).
lière, dépendant de la technologie utilisée, mais qui se passe tou- La mémoire « Flash » est une variante très répandue et qui est
jours à des vitesses nettement moins élevées que les vitesses assez facilement reprogrammable par le microprocesseur lui-
d’accès normal en lecture lors de l’exécution du programme par le même à condition de prévoir la circuiterie nécessaire. Cette repro-
microprocesseur. grammation – qui offre l’avantage d’un stockage d’information per-
Les mémoires mortes se divisent en plusieurs catégories selon la manent – se fait à vitesse nettement plus lente que la lecture (de
façon dont on peut y introduire une information : l’ordre d’une fraction de milliseconde par octet).
– ROM au sens restreint du terme (ROM masquée) : l’information C’est ce type de mémoire que contiennent les « CompactFlash »
est inscrite lors de la fabrication du circuit : on utilise des « mas- (CF), « SmartMedia cards » (SM), « MultiMedia cards » (MMC),
ques » de diffusion permettant d’établir directement les connexions « Secure Digital » (SD), « Mini SD », « Micro SD » et autres
électriques correspondant au contenu d’information désiré. Le coût « MemoryStick ».
unitaire de fabrication de ces mémoires n’est donc très faible qu’à
condition d’amortir le développement des masques par la produc- 1.2.3.2 Mémoires vives
tion d’un grand nombre de composants (plusieurs milliers). En cas Les mémoires vives ou RAM (Random Access Memory) sont
d’erreur de programmation, la perte financière est très importante d’accès aussi aisé en lecture qu’en écriture. Elles sont de nature
et ces mémoires ne conviennent donc pas pour une phase de volatile puisque l’information qu’elles contiennent se perd dès
développement ; qu’on les prive d’alimentation.

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


est strictement interdite. – © Editions T.I. R 526v2 – 9

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS –––––––––––––––––––––––––––––––––––––––––––––––––––––

On peut les classer en deux groupes selon le mode de rétention intègre leur gestion, ce qui sera plutôt le cas des microcontrôleurs
de l’information et donc selon la nature des cellules élémentaires ([R 527], § 1.3). Cette dernière possibilité garantit évidemment une
qui les composent : facilité de mise en œuvre et une performance plus élevée.
– SRAM (Static RAM) ou RAM statique : chaque cellule de Les circuits périphériques ont gagné en performance mais aussi
mémoire (un bit d’information) est réalisée par une bascule (flip- en complexité, ce qui leur permet d’offrir de nouvelles fonctions
flop) comportant plusieurs transistors : deux au minimum sont surtout en matière d’interconnexion (bus de terrain, connexions
nécessaires pour maintenir l’état stable, deux de plus pour permet- sans fil…). Il en existe de toutes sortes et la liste qui suit est loin
tre les basculements, deux enfin pour accéder à l’état de la bascule d’être exhaustive :
et, le cas échéant, l’inverser ; – compteurs et temporisateurs : de type « entrées » ils sont utiles
– DRAM (Dynamic RAM) ou RAM dynamique : chaque cellule de pour le comptage d’évènement ou la mesure de temps. Leur utili-
mémoire est ici constituée d’un condensateur à faibles fuites qui sation a été évoquée au § 3.7.2 de [R 525v2] ;
n’est rien d’autre que la capacité de grille d’un transistor MOS. Un – entrées et/ou sorties numériques : elles permettent simplement
seul transistor permet donc de retenir l’information mais celle-ci de multiplier le nombre de connections digitales avec le micropro-
est fugitive : les pertes de charge de la capacité limitent la durée cesseur. Certains sont prévus pour se connecter plus aisément à
de stockage à quelques millisecondes. Pour éviter toute perte d’in- une famille de microprocesseurs (comme les PIO d’INTEL ou les
formation, il est nécessaire de procéder régulièrement à un rafraı̂- PIA de Motorola) mais d’autres sont d’usage général ;
chissement de l’entièreté de la mémoire en relisant et réécrivant le – watchdog : de type « entrée », il permet d’obtenir une action
contenu de chaque cellule. Notons que cette opération est généra- automatique au bout d’un temps programmable : tel un chien de
lement réalisée de façon entièrement automatique et quasiment garde (traduction littérale), il rappelle le microprocesseur à l’ordre
transparente pour l’utilisateur (mémoires « quasi statiques »). La s’il ne lui donne plus signe de vie pendant le temps programmé.
réduction du nombre de transistors au niveau de la cellule élémen- Ce dispositif est étudié plus en détail dans le troisième fasci-
taire va de pair avec une augmentation du nombre de cellules pour cule [R 527], au § 1.3.2.5 ;
une densité d’intégration donnée : les capacités de ces mémoires – comparateur : de type « entrée » il permet de lire le résultat de
atteignent actuellement plusieurs centaines de millions de bits par la comparaison de deux grandeurs analogiques, par exemple une
puce de silicium. Leur prix est également moins élevé que celui des tension représentative d’une position et un seuil correspondant à
mémoires statiques. Du côté des défauts, mentionnons que leur une butée ;
courant d’alimentation reste assez important (plusieurs centaines – convertisseur analogique-numérique (CAN) : de type « entrée »,
de milliampères) puisqu’il assure la recharge régulière des conden- il permet de lire le résultat de la conversion d’une tension en un
sateurs constitutifs des cellules élémentaires. C’est donc pour nombre proportionnel à son amplitude ; on se reportera à ce qui
réduire la puissance à dissiper que les modèles à haute densité en a été dit au § 3.7.1 de [R 525v2] ;
comme les SDRAM (Synchronous dynamic RAM) utilisées dans – convertisseur numérique-analogique (CNA) : de type « sortie »,
nos micro-ordinateurs travaillent à une tension nominale réduite il permet de générer une tension proportionnelle à un nombre. On
aux alentours de 1,5 V seulement ; en reparlera en 1.3.2 ;
– NOVRAM ou NVRAM (non volatile RAM) : ce type de mémoire – calendrier : certaines applications nécessitent la tenue à jour
met explicitement en œuvre (sur la même puce) deux des circuits d’une horloge et même d’un calendrier. Ce dernier permet de
déjà mentionnés : SRAM et EEPROM. On peut ici considérer qu’une savoir à quelle date et à quelle heure des événements particuliers
RAM est « superposée » à une EEPROM de telle sorte que les accès se sont produits ou, au contraire, sert à produire des actions à des
de lecture et d’écriture se font toujours à cadence élevée dans la instants déterminés. Cela peut se réaliser entièrement par program-
RAM mais que cette information peut être rendue permanente par mation, en se référant à un temporisateur précis parfois inclus dans
transfert dans l’EEPROM. Le transfert EEPROM ⇔ RAM est contrôlé le microprocesseur. Des circuits périphériques spécialisés permet-
par deux commandes particulières, une pour chaque sens. L’écri- tent toutefois de décharger le microprocesseur de cette activité
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

ture en EEPROM prend toujours un temps non négligeable mais assez fastidieuse et offrent la possibilité de disposer à tout moment
est réalisée de façon autonome à partir du contenu de la RAM de la date et de l’heure. Ils tiennent compte des années bissextiles
(sans autre intervention du microprocesseur que l’envoi d’un et séculaires, et parfois même des heures d’été et d’hiver. Ces cir-
ordre de recopie). Des précautions particulières doivent être prises cuits sont réalisés en technologie CMOS et prévus pour être ali-
pour que les transferts soient réalisés « proprement » lors des mentés par de petits accumulateurs ce qui leur assure une autono-
mises sous et hors tension du composant : la tension doit être cor- mie de plusieurs mois indépendamment de l’alimentation du reste
rectement établie avant de donner l’ordre de récupération du du système ;
contenu de l’EEPROM dans la RAM et, inversement, la tension – interfaces de communication : voir § 1.3.4 ;
doit encore être disponible lors du sauvetage RAM vers EEPROM, – coprocesseur mathématique : pour réaliser des opérations
opération qui précède souvent la mise hors tension. mathématiques complexes, le microprocesseur devra exécuter des
programmes spécialisés dont le temps d’exécution n’est pas négli-
1.2.4 Circuits d’interfaces et périphériques geable. La plupart des fonctions complexes s’obtiennent en effet
d’application par développement en série. Des circuits spécialisés ont été créés
pour remplir ce rôle : les coprocesseurs arithmétiques ou mathé-
L’accès au microprocesseur (en entrée comme en sortie) ne peut matiques. Leur structure interne s’apparente à celle d’un micropro-
se faire que via les bus d’adresses et de données en respectant les cesseur puisqu’ils contiennent une unité arithmétique et logique de
phases imposées par les signaux de synchronisation du bus de grosse capacité (16 à 64 bits) dont le fonctionnement dépend d’un
contrôle (§ 1.1.3). Tous les circuits intégrés destinés à se connecter microprogramme selon un rythme imposé par un oscillateur
à un microprocesseur seront donc équipés des passeurs (aussi externe. Ils peuvent être conçus pour travailler en symbiose avec
appelés « tampons à 3 états ») permettant leur connexion au bus le microprocesseur ou, plus modestement, comme circuit périphé-
de données et d’une circuiterie plus ou moins élaborée permettant rique ordinaire de calcul (Number Cruncher). Dans ce dernier cas,
de faciliter leur sélection, c’est-à-dire de simplifier le décodage les échanges d’informations avec le microprocesseur se font sou-
d’adresse (§ 1.1.1.3). vent via une pile de données se trouvant à l’intérieur du coproces-
Néanmoins, certains circuits intégrés très utiles (encodeurs de seur : on y empile les données avant de donner l’ordre d’exécution
clavier, mémoires Flash, entrées-sorties digitales CAN et CNA, choisi et on y récupère le résultat dès que le coprocesseur signale
calendriers, modules d’affichage LCD…) communiquent non pas la fin de l’opération ;
par une liaison parallèle mais par une liaison de type série comme – coprocesseur graphique : ils permettent la gestion d’une
l’I2C ou le SPI. Si on veut les connecter au microprocesseur, il fau- mémoire séparée qui sera chargée d’accueillir les codes correspon-
dra soit implanter la gestion de ces (mini-)bus sur les quelques pat- dants aux différents pixels composant l’écran. Leur interface avec
tes d’entrée-sortie requises, soit choisir un microprocesseur qui le microprocesseur sera composée de registres permettant de

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


R 526v2 – 10 est strictement interdite. – © Editions T.I.

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

–––––––––––––––––––––––––––––––––––––––––––––––––––––– ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS

modifier et de relire l’état du système et d’une petite mémoire tam-  mémoire statique avec condensateur de forte capacité ou bat-
pon permettant de stocker les codes de commande reçus du micro- terie d’alimentation pour des coupures de faibles à longue
processeur jusqu’à leur exécution. Les codes de commande concer- durées,
nent le dessin de formes élémentaires et leur placement dans  mémoire dynamique ou statique ordinaire en l’absence de
l’espace mémoire graphique ; protection ;
– contrôleur d’accès direct mémoire : le microprocesseur peut
– ses caractéristiques d’accès devront être compatibles avec le
assurer des mouvements de données entre la mémoire (au sens
microprocesseur (durée des signaux de contrôle d’accès, temps
large) et lui-même. Il est donc possible de déplacer des données
minimum pour fournir ou enregistrer l’information) ; cela se vérifie
entre deux emplacements de mémoire ou entre circuits périphéri-
à partir des chronogrammes d’accès des deux circuits ;
ques spécialisés en les faisant transiter par le microprocesseur.
– une procédure de lecture permettant de dégager de l’espace
Lorsque ces transferts ne sont pas assortis de traitements, ce tran-
mémoire devra être prévue avant saturation :
sit est une source de perte de temps et d’efficacité puisque tout se
passe « en deux coups ». On pallie cet inconvénient en recourant à  soit retrait du système et relecture ailleurs (stick USB par
des sortes de mitraillettes à données que sont les contrôleurs d’ac- exemple),
cès direct mémoire (DMA : direct memory access). Leur mise en  soit interface de relecture vers un micro-ordinateur (USB, port
œuvre peut se résumer comme suit : série) ou vers tout autre système (bus de communication).
 le microprocesseur (à l’intervention du programme) précise Si le volume des données stockées est trop important (enregis-
au contrôleur de DMA quelles sont la source et la destination treur), on pourra avoir recours à des systèmes de stockage de
du transfert (circuit périphérique, zone de mémoire) et com- masse comme les disques durs. Dans ce cas on pourra faire usage
bien de données doivent être transférées, de circuits d’interface spécialisés et procéder comme pour les
 au moment voulu, le microprocesseur abandonne la gestion transmissions de données ; le système destinataire étant le disque
des bus d’adresses et de données au contrôleur d’accès direct dur.
mémoire,
1.3.2 Sortie analogique de l’information
 le transfert s’opère en faisant transiter les données directe-
ment du périphérique concerné vers la mémoire (ou vice Certains systèmes d’acquisition de données se contentent de res-
versa), tituer l’information traitée sous forme analogique. Ce peut être
 à la fin du transfert, le contrôleur d’accès direct mémoire l’information produite par chaque chaı̂ne analogique de mesure,
« réveille » le microprocesseur qui reprend le contrôle des auquel cas le rôle du microprocesseur n’est généralement que de
bus. gérer et de contrôler le fonctionnement de l’ensemble. Mais si
l’information est numérisée (parce que la chaı̂ne de mesure est
digitale, ou parce qu’il était utile de faire subir un traitement numé-
1.2.5 Cas des microcontrôleurs
rique aux échantillons), elle pourra être reconvertie au format ana-
Les microcontrôleurs sont décrits plus en détail au § 1.3. À ce logique par les dispositifs évoqués ci-après.
stade-ci, retenons simplement qu’ils intègrent de la mémoire (de
programme et de données) et des circuits périphériques (entrées- 1.3.2.1 Convertisseur numérique-analogique
sorties digitales, compteurs-temporisateurs, interface de communi- Le convertisseur numérique-analogique (CNA ou DAC pour
cation, voire convertisseur analogique-digital) dans un seul et « Digital to Analog Converter » en anglais) est un circuit électro-
même boı̂tier. Un microcontrôleur peut donc constituer un système nique associant à une grandeur numérique d’entrée (nombre sou-
d’acquisition ou de contrôle à lui seul. vent binaire) une grandeur analogique de sortie (généralement une
tension) proportionnelle à une grandeur analogique de référence
(interne ou externe). La tension de sortie et la tension de référence
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

1.3 Exploitation de l’information sont dans le même rapport que celui que forme la grandeur numé-
Une fois que les données – forcément numériques à ce stade – ont rique d’entrée avec son fond d’échelle (généralement 2n - 1 pour n
été mises dans les registres ou les mémoires associées au micro- bits).
processeur, il reste à concevoir la partie relative à leur exploitation : Les caractéristiques principales à prendre en compte pour choisir
stockage en mémoire, envoi vers un observateur humain ou vers le circuit le mieux adapté à une application donnée sont les
un autre système électronique, génération d’une réaction éven- suivantes :
tuelle en retour sur l’environnement physique… – précision garantie : la précision finale est affectée par plusieurs
erreurs comme :
1.3.1 Stockage  l’erreur de zéro (offset) : décalage de la tension de sortie,
Les données acquises sont normalement stockées en mémoire  l’erreur de gain (gain error) : rapport de la tension de fond
de données du microprocesseur (§ 1.2.3.2). Ce stockage est transi- d’échelle réelle à la tension de fond d’échelle théorique,
toire ou pas selon qu’on a à faire à un enregistreur, à un système  la non-linéarité différentielle (plus grand écart de l’incrément
de transmission à distance ou à un dispositif de contrôle/com- local par rapport à l’incrément théorique) et intégrale (plus
mande. Dans ces derniers cas, les données sont traitées à intervalle grand écart par rapport à la droite théorique),
régulier (cadence d’émission ou période d’échantillonnage) et rem-  la non-monotonicité : si l’erreur différentielle ne reste pas tou-
placées à chaque fois. Mais même si les données acquises ne sont jours de même signe,
pas stockées longtemps dans le microprocesseur, il est évident
 l’erreur due à la dérive en température (temperature drift) ;
qu’il faut disposer de la mémoire nécessaire à les accueillir tempo-
rairement. Le temps et le volume de stockage devront être détermi- – résolution (resolution) : nombre de bits disponibles en entrée
nés en fonction de la vitesse de péremption ou de sortie de ces (souvent 8 ; 12 ; 16 ; jusqu’à 24), et nombre de bits réels (compte
mêmes données. tenu des erreurs) ;
En résumé on peut dire que : – valeur du retard entre l’application du code numérique et l’éta-
blissement de la tension de sortie (settling time) ;
– la taille de la mémoire devra être prévue en fonction du nom- – cadence maximum d’échantillonnage (update rate ł 1/settling
bre d’échantillon à stocker ; time) ;
– son type devra être choisi en fonction de la protection que l’on – précision de la référence si elle est interne ou polarités possi-
souhaite avoir contre les coupures d’alimentation : bles et bande passante du convertisseur lui-même lorsque la réfé-
 mémoire Flash pour une conservation sans alimentation, rence est externe (voir CNA multipliant ci-après) ;

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


est strictement interdite. – © Editions T.I. R 526v2 – 11

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS –––––––––––––––––––––––––––––––––––––––––––––––––––––

– interface d’entrée numérique (type et vitesse de transfert). TREF sera notre période de modulation, on obtient que : v/VREF = n/
Lorsque la référence est externe et peut varier le CNA est dit 23 = (n/F)/TREF = a, c’est-à-dire le rapport cyclique du signal MLI
« multipliant » (Multiplying DAC). En complément, il sera dit « qua- (0 ł a ł 1).
tre quadrants » si tant la référence analogique que le code numé- Si on filtre ce dernier (passe-bas), on obtient à nouveau la tension v
rique d’entrée peuvent être de l’une ou l’autre polarité, « deux qua- de départ à condition que l’amplitude du signal MLI soit la même que
drants » si l’un ou l’autre seulement peuvent l’être. Par extension, la référence du convertisseur.
« un quadrant » signifie simplement que la référence est externe (et
peut varier sans changer de polarité) et « zéro quadrant » signifie Notons que la modulation peut aussi être intéressante au niveau
que la référence est interne donc invariable. d’une transmission d‘information soit directement en modulant
une porteuse RF pour une transmission radio, soit pour profiter de
1.3.2.2 Modulation-démodulation l’immunité au bruit du signal modulé.
D’autres familles de convertisseurs existent qui sont basées sur
1.3.3 Interface opérateur
la démodulation d’un signal modulé (comme la MLI). Mais cette
démodulation, même si elle peut prendre la forme d’un simple fil- Les systèmes à microprocesseur sont souvent contrôlés par un
trage, prend du temps (au mieux une période de la porteuse par opérateur humain : c’est notamment le cas des instruments de
échantillon), ce qui explique que ces circuits ne sont généralement mesure. La facilité de dialogue avec la machine dépend des
pas classés comme CNA. moyens mis en œuvre pour échanger les informations.
La modulation MLI (modulation par largeur d’impulsions ou On peut souvent se satisfaire de boutons poussoirs pour intro-
PWM pour Pulse Width Modulation en anglais) peut s’obtenir par duire des informations dans la machine. Qu’ils soient organisés en
voie numérique. Il suffit de disposer d’un compteur (jouant le rôle touches de fonctions ou plus classiquement comme un clavier de
de la tension linéairement croissante d’une porteuse en dents de machine à écrire, le principe de scrutation est toujours le même.
scie) que l’on connectera à l’entrée d’un comparateur digital, Les fils de connexion sont disposés suivant une « grille » compor-
l’autre entrée étant simplement munie d’un registre conservant la tant un nombre donné de lignes et de colonnes. Chaque touche
valeur numérique du signal à convertir. permet d’établir un contact entre une ligne et une colonne particu-
lières. Des excitations électriques appliquées successivement aux
Exemple : réalisation d’un modulateur par largeur d’impulsion différentes lignes sont assorties de lectures des états des colonnes.
(MLI) digital sur 4 bits. Ceci permet, avec un nombre restreint de connexions, d’identifier
Cette technique est illustrée en figure 10. les touches enfoncées.
Au départ, un nombre valant v/VREF (VREF est la tension de réfé-
Un autre traitement habituel des données consiste, après filtrage
rence du convertisseur), codé sur 3 bits dans notre exemple et repré-
ou traitement numérique quelconque, d’afficher ou d’imprimer un
sentant la tension v = u(t0), est stocké dans le registre à l’entrée du
comparateur. Ce dernier le compare à la valeur d’un compteur qui est résultat préalablement mis sous forme décimale (il est générale-
sans cesse incrémenté par l’horloge jusqu’à revenir à zéro après ment binaire dans le microprocesseur) et codé en ASCII de façon
avoir franchi sa valeur maximum (soit 23 - 1 = 7) : la sortie du à y faire correspondre des caractères lisibles.
compteur effectue donc un comptage « en dents de scie » (0, 1, 2, Dans le cas d’une impression, on prendra soin de prévoir une
…, 7, 0, 1, 2,…, 7, etc.). Lorsque le compte « n » est atteint, la sortie mémoire tampon de façon à ne pas dépendre du rythme (trop)
du comparateur tombe à zéro jusqu’au début de la période suivante. lent du système d’impression (à moins qu’il en soit lui-même
Si on suppose que l’horloge travaille à fréquence F = 8 x (1/TREF) où équipé).
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

aTREF TREF t
Horloge
Compteur binaire 3 bits
F = 8 (1/TREF)
000
001

100
010

101
011

110
111

OVF RAZ

A u v
A<B
Comparateur

B
V t0 t
Registre VREF

aTREF TREF t

Valeur binaire à convertir


v /VREF = n/23 = a

Figure 10 – Modulation MLI

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


R 526v2 – 12 est strictement interdite. – © Editions T.I.

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

–––––––––––––––––––––––––––––––––––––––––––––––––––––– ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS

Dans le cas d’un affichage (LCD par exemple), on vérifiera qu’il L’USB prévoit aussi d’alimenter les périphériques jusqu’à
n’est pas nécessaire de respecter une synchronisation entre les 500 mA. Il définit divers types de connecteurs équipés de
opérations d’écriture en mémoire de l’afficheur et les opérations 4 contacts : alimentation, paire différentielle 5 V et masse. Le proto-
automatiques de lecture en balayage de cette mémoire conduisant cole, relativement complexe, permet une identification régulière-
à l’affichage proprement dit. ment actualisée des périphériques au moyen d’adresses sur 7 bits
L’interfaçage de ces dispositifs avec le microprocesseur peut se et offre des types de transmission plus ou moins rapides et plus ou
réaliser par des circuiteries assez simples. Néanmoins, un certain moins sûrs en fonction des périphériques (une souris est lente, un
nombre de circuits intégrés spécialisés permettent d’arriver plus flot audio peut perdre quelques bits sans conséquence notoire…) ;
rapidement au résultat tout en offrant des facilités de gestion sup- – GPIB (General Purpose Interface Bus) ou HPIB (du nom de la
plémentaires : encodage automatique et mémorisation des derniè- société qui l’a créé : Hewlett-Packard) ou encore IEEE 488 (numéro
res touches poussées, gestion d’un grand nombre de LED par de la norme qui y correspond) : interface parallèle de communica-
multiplexage… tion bidirectionnelle très hiérarchisée. Elle est prévue pour l’inter-
connexion simultanée de plusieurs appareils de laboratoire à des
Mentionnons encore l’existence de circuits d’interface homme-
distances ne dépassant pas quelques mètres. La cadence de trans-
machine industriels spécialisés : les HMI (Human Machine Interface).
mission s’adapte automatiquement à l’appareil le plus lent grâce à
Dans la majorité des cas, leur interface est malheureusement conçue
un processus de « hand shaking » qui contraint l’émetteur à atten-
pour se connecter à des PLC (Programmable Logic Controller) qui
dre que tous les récepteurs aient accepté l’information avant de
sont des automates programmables industriels d’usage courant.
passer à la suivante. La circulation des informations est réglée par
1.3.4 Transmission de données un appareil spécialisé appelé « contrôleur de bus ». Celui-ci décide
quel appareil doit émettre (« parler ») et quels appareils doivent
Les circuits périphériques ont gagné en performance mais per- recevoir (« écouter »). Il le leur fait savoir lors d’une phase d’adres-
mettent aussi de nouvelles fonctions surtout en matière d’intercon- sage qui précède toute transmission de données. On imagine aisé-
nexion (bus de terrain, connexions sans fil…). Cette dernière caté- ment la puissance de ce genre de système de communication sur-
gorie met à profit les possibilités modernes de transmission tout si l’on ajoute que la vitesse de transmission peut y atteindre un
d’information pour mettre en relation tout une série de systèmes million d’octets par seconde ! ;
numériques du plus simple au plus compliqué (unité de stockage – CAN (Controller Area Network ; norme ISO 11898) : bus de com-
de masse, centrale de mesure, ordinateur de traitement…). munication série asynchrone fort utilisé dans le domaine de l’auto-
Les normes d’interfaces de communication définissent à tout le mobile où son usage doit permettre de réduire la longueur des
moins les paramètres électriques de la transmission. Mais certaines câblages. Il est bidirectionnel et utilise la technique CSMA/CR de
décrivent aussi tout ou partie du protocole de communication, résolution de collision pour envoyer des trames d’information (ou
voire les services offerts, garnissant ainsi plus ou moins généreuse- d’erreur) de structure parfaitement définie. Il utilise au niveau élec-
ment les célèbres 7 couches évoquées par la norme des normes : le trique (couche physique) une paire différentielle en + et - 5 V à des
modèle OSI (Open Systems Interconnection : interconnexion de vitesses de 125 kbit/s (sur 500 m) à 1 Mbit/s (sur 40 m). Le bus CAN
systèmes ouverts) de l’ISO (International Organization for Standar- permet de former un vrai réseau respectant le modèle OSI de l’ISO.
dization : Organisation internationale de normalisation). On l’appelle aussi « bus de terrain », car il doit pouvoir fonctionner
Les normes et/ou protocoles les plus connus sont (dans un ordre dans un environnement perturbé et sévère comme une industrie,
croissant de complexité) : un atelier, une voiture… Complexe à mettre en œuvre, il est en par-
tie gérable par des circuits spécialisés. Certains microcontrôleurs
– RS232 (ou EIA RS-232C ou V.24) : interface série unidirection- (§ 1.3 de [R 527]) en intègrent la gestion. Notons encore qu’au
nelle simple et populaire. Dans le contexte de la communication niveau de l’environnement automobile, un nouveau standard a vu
entre ordinateurs via des modems, le RS232 définit les tensions le jour qui se prétend son héritier : FlexRay ;
des signaux logiques, leur timing, leur fonction, un protocole de – Fieldbus (littéralement « bus de terrain ») : il s’agit d’un bus de
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

mise en communication et le type de connecteurs à utiliser communication série, bidirectionnel, destiné à interconnecter des
(DB 25 pins). Abondamment utilisé par les micro-ordinateurs
capteurs, des actionneurs et des contrôleurs. Il est surtout utilisé
avant l’avènement de l’USB, il a subi de nombreuses évolutions
en environnement industriel où il assure les communications
dont le rétrécissement de son connecteur à 9 pins dans les PC de
temps réel entre les différents dispositifs électroniques de
seconde génération (EIA-232F). Il est souvent utilisé sans modem
contrôle-commande. Il est aussi multimaı̂tre. Complexe à mettre
auquel cas on ne retient essentiellement de ce standard que les
en œuvre, il est plus facilement gérable par des circuits spécialisés ;
niveaux électriques (+ et - 12 V), l’organisation de la transmission
– le réseau Internet ou plus exactement son protocole IP (Internet
en série (start bit, LSB,…, MSB, stop bit, parité…), les vitesses de
Protocol) : mondialement connu et utilisé mais relativement peu
communication (jusqu’à 19 200 baud) et la distance maximum
pour les transmissions de données au niveau industriel car il
selon la vitesse (de 100 m pour 2 400 baud, on se réduit à 10 m
n’offre aucune garantie de transmission ni aucune garantie de
environ pour 9 600 baud) ;
délai de transmission… Complexe à mettre en œuvre, il est en par-
– RS422 (ou ANSI/TIA/EIA-422-B ou V.11) : semblable au RS232
tie gérable par des circuits spécialisés. Certains microcontrôleurs
sauf que les niveaux électriques sont réduits à + 5 V / 0 V mais sur
en intègrent la gestion ;
une paire différentielle ce qui procure une meilleure immunité au
– I2C (Inter Integrated Circuit Bus) est, comme son l’indique en
bruit ;
anglais, un bus destiné à relier facilement des circuits intégrés
– RS485 (EIA-485) : interface de communication bidirectionnelle.
divers. Il est de nature synchrone et bidirectionnel tout en n’utili-
Semblable au RS422 quant aux signaux électriques (0/5 V différen-
sant que deux fils en plus de la masse : un pour l’horloge et un
tiel), il permet la communication bidirectionnelle sur une seule et
pour les données. C’est la raison pour laquelle on l’appelle parfois
même paire différentielle ;
« bus 2 fils » (TWI = Two Wire Bus). Il permet des communications
– USB (Universal Serial Bus) : bus de communication bidirection-
hiérarchisées multimaı̂tres sans que ce degré de sophistication
nel. Il a été développé pour faciliter et améliorer les communica-
doive être géré pour des applications simples. Son faible encom-
tions entre les ordinateurs personnels et leurs périphériques. Il est
brement et sa simplicité d’emploi l’emportent nettement sur sa
en cela le successeur du RS232 même si les caractéristiques électri-
relative lenteur (100 kbit/s puis 400 kbits/s et finalement 3,4 Mbits/
ques et les vitesses de transmission y sont totalement différentes. Il
s). Sa spécification de base est une initiative de NXP (à l’époque
s’agit de 5 V différentiel et bidirectionnel comme en RS485 mais
Philips Semiconductors) dans les années 1980. Il existe une multi-
avec des vitesses augmentées successivement à… :
tude de périphériques exploitant ce bus, notamment parce que le
 USB 1 (12 Mbit/s ou Full Speed), surcoût associé à son intégration est devenu très faible ;
 USB 2 (480 Mbit/s, ou High Speed), – SPI (Serial Peripheral Interface bus) : encore appelé « bus
 USB 3 (4,8 Gbit/s ou Super Speed). 4 fils ». Il s’agit d’un bus synchrone bidirectionnel de type maı̂tre-

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


est strictement interdite. – © Editions T.I. R 526v2 – 13

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS –––––––––––––––––––––––––––––––––––––––––––––––––––––

esclave (un seul maı̂tre ; généralement utilisé avec un seul esclave).


Un des fils sert à la sélection de l’esclave (il faut donc un fil de plus Capteurs et actionneurs « intelligents »
par esclave au-delà du premier), un autre sert à la communication
Avec l’embarquement des microprocesseurs dans les systèmes
du maı̂tre vers l’esclave, un autre à la communication de l’esclave
d’acquisition de données et les systèmes de commande
vers le maı̂tre et le dernier est l’horloge. Notons qu’à chaque coup
d’actionneurs on a vu évoluer leur rôle dans le sens d’une plus
d’horloge un bit est envoyé du maı̂tre vers l’esclave et un autre de
grande sophistication de fonctionnement et de communication
l’esclave vers le maı̂tre… même si c’est parfois inutile ! Ce bus est
avec l’extérieur. En effet, l’apport d’une machine séquentielle
fort utilisé pour la programmation in situ de composants program-
programmée permet d’ajouter des fonctionnalités nouvelles,
mables (microcontrôleur, PLD…) ;
directement liées à la mesure (changement d’unités, correction
– JTAG (Joint Test Action Group ; norme IEEE 1149.1) : il s’agit
en température, auto-étalonnage) ou pas (autotest, diagnostic,
d’un bus développé à l’origine pour permettre l’accès et donc le
assistance à l’opérateur lors de la manipulation et en cas de dys-
test des cellules logiques à l’intérieur des composants intégrés. Il
fonctionnement…), et de gérer une interface de communication
a évolué pour permettre le test de certains microprocesseurs
plus complexe (CAN, Fieldbus, USB, Internet…).
(même leur émulation) et la programmation in situ de circuits
Cette nouvelle génération de capteurs et d’actionneur fut donc
logiques.
baptisée « intelligente », non pas parce qu’elle était mieux
À côté de tout cela on trouve les interfaces de communication conçue que les autres mais parce qu’elle offrait des potentiali-
sans fil qui sont parfois basés en tout ou partie sur les normes et tés nouvelles.
protocoles des bus filaires. Citons Bluetooth (norme Le lecteur intéressé pourra utilement se référer au dos-
IEEE 802.15.1), Zigbee (norme IEEE 802.15.4) et le Wi-Fi (Wireless sier [S 7 520] des Techniques de l’Ingénieur.
Fidelity ; norme IEEE 802.11).
Le lecteur intéressé par les liaisons séries de type RSxxx ou par
le bus GPIB pourra utilement consulter le dossier [R 530] Interfa-
ces de communication – Mise en œuvre des mesures automati- 2. Particularités relatives
ques ou, plus précisément en ce qui concerne le GPIB, le dos-
sier [R 926] Automatisation des mesures dans le présent traité.
à la programmation
Ces mêmes moyens de communication ainsi que le bus USB
sont décrits dans le dossier [S 8 590] Communication avec les
périphériques du traité « Informatique industrielle » des Techni- 2.1 Travail en « temps réel »
ques de l’ingénieur.
L’exécution des programmes « en temps réel » suppose simple-
ment que les informations soient traitées par le microprocesseur au
1.4 Actionnements – Apport moins à la même cadence que celle à laquelle le monde réel les fait
de l’électronique de puissance varier ou, à tout le moins, celle à laquelle il est nécessaire de les
numériser pour qu’elles permettent une perception correcte de la
Dans les systèmes bouclés, les données acquises servent à agir
grandeur à mesurer. A contrario, le traitement en temps différé
ou réagir sur l’environnement physique. Pour ce faire, le micropro-
concerne des données préalablement stockées et qui n’ont donc
cesseur doit disposer de l’interface adéquate comportant in fine un
actionneur dont le comportement est défini par une chaı̂ne plus rien à voir avec l’état actuel des grandeurs mesurées.
d’actionnement (voir figure 1 de [R 525v2]). Réciproquement à À notre niveau de complexité algorithmique relativement faible,
l’organisation précédemment décrite pour le capteur, l’actionneur le principal problème sera de garantir qu’un échantillon de mesure
est le dernier maillon de la chaı̂ne d’actionnement. Cette dernière est bien lu avant de disparaı̂tre. Ceci implique une organisation du
a pour mission d’en assurer le pilotage correct. programme telle qu’une tâche donnée, bien qu’initiée par un évè-
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

L’actionneur imprime sur l’environnement physique la nement extérieur, ne puisse pas empêcher l’exécution des autres
contrainte que le système électronique veut lui imposer. Mais tâches. On résout généralement facilement ce problème en faisant
cette dernière caractéristique lui impose souvent une dépense traiter les évènements dont la survenance n’est pas prévisible à un
d’énergie sans commune mesure avec celle nécessaire à faire instant donné, par une interruption (voir § 2.3). S’il y en a plusieurs
fonctionner les capteurs. Ici aussi l’évolution a été de confier (fin de conversion de CAN, demande d’émission d’une donnée vers
un volume croissant de tâches à la partie numérique : le logiciel l’extérieur, échéance de temps de la RTC…) on aura intérêt à dispo-
délivre des informations numériques à une chaı̂ne d’actionne- ser d’un microcontrôleur muni d’une gestion d’interruption à plu-
ment que l’on espère elle aussi de nature digitale de façon à évi- sieurs niveaux de priorité. Le cas échéant, les tâches pourront être
ter non seulement les complications du retour au monde analo- subdivisée chacune en une fraction d’exécution rapide qui libère
gique, mais, surtout, les pertes d’énergie causées par les les entrées-sorties, et un traitement éventuellement plus lourd qui
amplifications linéaires. En effet, au bout de la chaı̂ne d’action- pourra être étalé dans le temps et interrompu par d’autres tâches
nement, là ou l’amplification finale consiste à fournir suffisam- (ou leur fraction d’exécution rapide).
ment d’énergie à l’actionneur, on fait actuellement appel à D’autre part, si les évènements à gérer (ou une partie d’entre
l’électronique de puissance pour obtenir des rendements pro- eux) se présentent de façon séquentielle et correspondent à des
ches de l’unité. Cette électronique est essentiellement une élec- modes de fonctionnement différents, on pourra utilement faire
tronique de commutation où le transistor est utilisé en mode appel à une machine à états : il suffit pour cela de pouvoir définir
« tout ou rien » c’est-à-dire aussi parfaitement que possible les états correspondant aux différents modes de fonctionnement
conducteur (U = 0 donc P = UI = 0) ou bloquant (I = 0 donc ainsi que les conditions et évènements qui doivent entraı̂ner le pas-
P = UI = 0) c’est-à-dire comme un interrupteur fermé ou ouvert.
sage d’un état à un autre. Dans ce type de système, le travail se fait
La puissance maximum que pourra contrôler un tel transistor
correctement en temps réel si les différents états peuvent être
est le produit de son courant maximum admissible à l’état
atteints en synchronisme avec la réalité de l’état du système phy-
conducteur par sa tension maximum admissible à l’état bloqué
sique étudié.
tout en ne dissipant presque rien (des rendements supérieurs à
95 % sont courants). Et c’est la commande à fréquence élevée Dans le cas des systèmes bouclés, la clé du succès sera proba-
qui pourra permettre un filtrage efficace et finalement l’obten- blement dans la définition correcte d’une période d’échantillonnage
tion de valeurs moyennes réglables à souhait. On le voit, cette de durée suffisamment courte pour garantir la régulation correcte
technique se marie parfaitement avec le numérique : il s’agit du système mais suffisamment longue pour garantir en perma-
somme toute de technique digitale appliquée à des composants nence que l’ensemble des tâches à accomplir auront été réalisées
de forte puissance. à temps.

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


R 526v2 – 14 est strictement interdite. – © Editions T.I.

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

–––––––––––––––––––––––––––––––––––––––––––––––––––––– ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS

Le lecteur désireux d’approfondir le sujet pourra consulter le dos- puissantes et confier à un micro-ordinateur le soin de les « traduire »
sier [S 8 035] Microcontrôleurs : principes et aspects temps réel en langage machine.
dans le traité « Informatique industrielle » des Techniques de l’Ingé- Avant exécution par le microprocesseur, un programme écrit en
nieur ou, pour une approche plus structurée et plus complète, le langage évolué doit encore être traduit en langage machine avant
dossier [R 8 050] Systèmes d’exploitation temps réel du traité ou exécution au moyen d’un programme utilitaire appelé « compila-
encore l’ouvrage référencé en [14]. teur ». Certains de ces compilateurs sont plus complexes parce
qu’ils peuvent mieux optimiser le code produit en traduisant plus
2.2 Choix du langage de programmation efficacement les instructions de haut niveau. Par exemple, une bou-
cle « for » exécutée avec un compteur entier incrémenté moins de
Le choix du langage de programmation est important car, 256 fois à partir de zéro peut se traduire par un branchement condi-
comme on le comprendra, il faut qu’il soit suffisamment « proche » tionnel et un compte sur un entier 8 bits au lieu d’une variable en
du niveau physique des circuits électroniques pour en assurer la virgule flottante à laquelle on ajouterait à chaque fois la valeur 1.0
commande efficacement. codée elle aussi en virgule flottante. La différence peut être énorme
que ce soit en quantité de code produit qu’en vitesse d’exécution.
2.2.1 Langage machine
En pratique et en ce qui concerne la programmation de petits
Programmer en langage machine consiste à écrire son pro- systèmes à microprocesseurs ou à microcontrôleurs comme ceux
gramme à l’aide des instructions « binaires » directement recon- qui font l’objet de ce dossier, l’auteur est convaincu que langage
naissables par le microprocesseur (et correspondant à la suite des de haut niveau offrant le meilleur compromis entre puissance et
états électriques qui seront lus par le microprocesseur à partir de la efficacité est le « C ».
mémoire de programme). On fait usage de la notation hexadéci-
male pour obtenir une certaine compacité d’écriture, mais la déter- On peut aussi souhaiter d’utiliser plusieurs langages de pro-
mination des codes opératoires selon le type d’adressage souhaité grammation pour résoudre un problème d’ensemble : par exemple
et le calcul des branchements en font un vrai casse-tête chinois. traiter les problèmes d’entrée-sortie en langage d’assemblage et
décrire les calculs en C. Tous les modules logiciels ainsi obtenus
2.2.2 Assembleur ou langage d’assemblage sont réunis, après compilation du programme en C, par un éditeur
de liens.
L’amélioration considérable est ici de ne plus représenter le code
opératoire en notation hexadécimale mais de le remplacer par
quelques lettres suggérant immédiatement son action. Cette repré- 2.3 Gestion des interruptions
sentation symbolique s’appelle une « mnémonique ». L’ensemble Lorsque l’on sait qu’un évènement va survenir à un moment
des mnémoniques applicables à un microprocesseur et les règles donné ou à une cadence connue, on peut écrire un programme
de syntaxe qu’on y associe (concernant l’écriture des données) for- qui scrute l’interface concernée pour détecter la survenance de
ment le langage assembleur ou langage d’assemblage. Son nom l’évènement sans trop de perte de temps. Mais, a contrario, si cet
provient de ce qu’il n’est pas directement exploitable par la évènement peut survenir n’importe quand, on perd un temps fou
machine. Il faut encore, à partir de chaque mnémonique et des opé- à tenter de le détecter par l’exécution de boucles de scrutation,
randes associées (données sur lesquelles l’instruction agit), réaliser sans compter la difficulté qu’il y a d’imbriquer ces boucles avec le
un travail de conversion brute en codes binaires puis l’assemblage code d’exécution des autres tâches à réaliser dans le programme.
de ces codes pour obtenir le programme en langage machine.
On désire donc pouvoir interrompre momentanément le déroule-
Pour gagner autant en efficacité qu’en clarté, il faut que cette ment normal du programme principal. Les instructions de contrôle
tâche d’assemblage soit réalisée servilement mais rapidement. On qui régissent ces appels particuliers de sous-programmes sont
la confiera donc à une machine (un micro-ordinateur personnel dites de « gestion d’interruptions ». Le processus d’appel du sous-
comme le PC par exemple) en lui faisant exécuter un programme programme d’interruption est particulier en ce sens que le moment
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

utilitaire appelé « éditeur assembleur » capable d’enregistrer, de de l’appel (et donc l’adresse courante de l’instruction en cours
traiter et d’analyser des chaı̂nes de caractères qui composent le lan- d’exécution) ne peut être prévu à l’avance par le programmeur. Il
gage d’assemblage (étiquettes, mnémoniques, opérandes et autres faut en tout cas garantir (par une circuiterie logique interne) que
commentaires) pour générer automatiquement les codes machine l’exécution de l’instruction en cours sera complètement terminée
qui y correspondent. avant de répondre à la demande d’interruption. On notera que
Notons qu’en langage assembleur, chaque instruction forme un cette garantie s’accompagne d’une incertitude temporelle puisque
tout bien défini et occupe une ligne de programme. Il lui corres- la durée d’exécution d’une instruction est généralement variable
pond une et une seule traduction en langage machine. Par défini- selon son type. Ensuite un branchement prendra place qui se fera
tion, le langage d’assemblage est donc extrêmement « proche » toujours vers une adresse déterminée du programme : soit fixée
du langage machine et permet une programmation très « fine » une fois pour toutes par le concepteur du microprocesseur, soit
du microprocesseur. conservée dans un registre ou à une adresse particulière de la
mémoire de programme (vecteur d’interruption). Dans ce dernier
Exemple : multiplication 8 bits en langage d’assemblage Z80.
cas, il faut bien sûr garantir que l’adresse d’appel aura été définie
On trouvera ci-après un petit programme écrit en langage d’as-
avant que ne survienne la première interruption. Le temps total mis
semblage du microprocesseur Z80 dont le but est de multiplier
à répondre à la demande d’interruption est appelé la « latence
deux nombres de 8 bits sachant que le Z80 original ne possédait
d’interruption » (Interrupt Latency). Le retour du sous-programme
pas d’instruction de multiplication. L’algorithme utilisé est indiqué à
d’interruption vers le programme interrompu s’effectue comme
la figure 11. Cet algorithme est la transposition directe de la multipli-
dans le cas d’une sous-routine classique, par l’exécution d’une ins-
cation « à la main » adaptée au cas des nombres binaires : comme
truction spéciale (RET ou RETURN). Cela est possible grâce au fait
chaque chiffre du multiplicateur ne peut valoir que 0 ou 1, le produit
que le mécanisme d’interruption sauve l’adresse courante d’exécu-
par le multiplicande est immédiat et vaut 0 ou le multiplicande lui-
tion, c’est-à-dire la valeur du compteur de programme, dans la pile
même. Le décalage d’un rang et la sommation des résultats partiels
avant le branchement. L’instruction de retour d’interruption (RET)
peuvent alors être réalisés au fur et à mesure.
l’y récupère simplement pour la remettre dans le compteur de pro-
Le programme s’écrit et se compile comme à la figure 12.
gramme. Mais comme il est souvent nécessaire de signaler explici-
tement qu’une interruption a été traitée, par exemple parce qu’on
2.2.3 Langages évolués (ou langages de haut souhaite différer le traitement d’une autre interruption pendant le
niveau) temps d’exécution de la première (masquage d’interruption), on
On peut penser à développer d’avantage deux idées proposées définit une instruction plus spécifique à cet effet : le retour d’inter-
précédemment : créer des instructions plus claires et plus ruption (RETURN FROM INTERRUPT ou RETI).

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


est strictement interdite. – © Editions T.I. R 526v2 – 15

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS –––––––––––––––––––––––––––––––––––––––––––––––––––––

Multiplication 8 bits Multiplication 8 bits (Z80)

- Initialiser le résultat partiel à 0 HL : = 0


- Initialiser un compteur à 8 B:=8

Décaler le multiplicateur vers la droite RRA


(pour isoler le bit le moins significatif)

Non Non
Bit = 1 Cy = 1
? ?
Oui Oui

- Sommer le multiplicande au résultat partiel ADD HL, DE


- Ranger le total dans le résultat partiel

Multiplier par deux le multiplicande SLA E


(en le décalant d'un bit vers la gauche) RL D

- Décrémenter le compteur

Non Non
Compteur = 0 DJNZ
?

Oui
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

Oui

Fin RET

Figure 11 – Algorithme de multiplication 8 bits (application au Z80)

0000 210000 00001 DEBUT: LD HL,0 ;Initialiser résultat partiel = 0


0003 0608 00002 LD B,8 ;Compteur: faire 8 fois
0005 1F 00003 BOUCLE: RRA ;Isoler un bit du multiplicateur
0006 3001 00004 JR NC, BITNUL ;Si le bit = 0: brancher en "BITNUL"
0008 19 00005 ADD HL, DE ;Sinon sommer le multiplicande
0009 CB23 00006 BITNUL: SLA E ;Multiplier le multiplicande par ...
000B CB12 00007 RL D ;Deux en décalant à gauche
000D 10F6 00008 DJNZ BOUCLE ;Répéter 8 fois
000F C9 00009 RET ;Retour au programme appelant
0010 00010 END

Mnémoniques
Commentaires
Opérandes
Étiquettes
Numéros de ligne
Codes machine
Adresses en mémoire
où ranger les instructions

Figure 12 – Programme de multiplication 8 bits (assembleur Z80)

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


R 526v2 – 16 est strictement interdite. – © Editions T.I.

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

–––––––––––––––––––––––––––––––––––––––––––––––––––––– ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS

Étant donné le caractère très spécifique des sous-programmes & Analyse du problème :
invoqués sous interruption et comme le moment de la demande – définition des grandeurs à mesurer (entrées) :
d’interruption et donc la partie de programme en cours d’exécution  fréquence(s) d’échantillonnage(s),
ne peuvent être définis à l’avance, il est probable que toute modifi-
cation du contenu des registres pendant le traitement d’interrup-  nombre de canaux,
tion provoquerait, après retour à l’endroit de l’appel, des erreurs  débit binaire à gérer ;
irréparables dans l’exécution du programme principal. Pour pallier – définition du traitement global à réaliser (exploitation) :
ce problème, il faudra recourir à des instructions de contrôle spé-  traitement matériel à prévoir (chaı̂ne de mesure),
cialisées offrant au programmeur la possibilité de sauvegarder
aisément certaines informations lors des appels de sous-program-  traitement logiciel possible,
mes (classiques ou par interruption) et de les récupérer au retour.  où placer la frontière matériel/logiciel ;
Ces instructions (PUSH, POP) permettent d’utiliser la pile non plus – définition du conditionnement adéquat de l’information
exclusivement pour y mettre des adresses mais aussi pour y sauve- (sorties) :
garder des données.  traitements logiciels à prévoir avant sortie,
Finalement, certains microprocesseurs et microcontrôleurs pro-  quantité de mémoire nécessaire,
posent une gestion hiérarchisée d’interruptions : une interruption
 types possibles d’interface(s) de sortie ;
de niveau de priorité donné ne peut interrompre qu’une sous-rou-
tine de gestion d’une interruption de priorité moindre. Et en cas de – définition des tâches auxiliaires améliorant le produit :
survenance simultanée, l’interruption de priorité la plus élevée sera  définition des interfaces éventuelles avec l’opérateur,
servie en premier. Finalement c’est l’exécution de l’instruction spé-  définition des interfaces éventuelles de communication,
ciale de retour d’interruption (RETI) qui permettra de libérer le
 définition des opérations de gestion internes de l’appareil
niveau.
(mesures auxiliaires, auto-zéro, autocalibration…),
 diagnostic de panne.
& Choix d’une configuration générale :
3. Check-list – choix du ou des capteurs ;
– choix du positionnement de la frontière matériel/logiciel ;
Comme l’écrivait très bien le Professeur Tran-Tien Lang dans la – choix du microprocesseur ;
version précédente de ce cahier : « Le choix du microprocesseur – choix des circuits périphériques (de servitude et relatifs à
et de ses circuits périphériques doit être dicté par l’analyse du sys- l’application) ;
tème à réaliser, parce que le système conçu met en jeu, d’une part, – choix des outils logiciels.
un matériel (constitué par les composants de micro-informatique, & Conception détaillée :
processeur, mémoires, dispositifs d’entrée-sortie, et des compo-
sants d’électronique classique) et, d’autre part, un logiciel – de l’interface capteur, de la chaı̂ne de mesure et de l’interface
(implanté en mémoire), et que la frontière qui les sépare n’est pas d’entrée (pour chaque voie de mesure) ;
figée. En effet, le logiciel est susceptible d’effectuer certaines – de l’environnement matériel du microprocesseur ;
tâches que peut effectuer le matériel. En général, ce sont les exi- – du logiciel ;
gences de vitesse (caractéristique essentielle du matériel) et de – des interfaces de sortie et/ou de la chaı̂ne d’actionnement ;
souplesse (caractéristique essentielle du logiciel) qui permettront – de l’interface éventuelle avec l’opérateur ;
de déterminer les tâches que devra supporter le matériel et d’en – des interfaces de communication.
déduire ce que devra faire le logiciel ». Ensuite viennent encore la réalisation, la mise au point et les
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

Compte tenu de ce qui a été développé précédemment on peut tests…


diviser la synthèse d’un système d’acquisition de données à micro- Et pour ceux qui seraient embourbés dans cette ultime étape (ou
processeur en 3 grandes étapes reprises ci-dessous en guise d’aide ceux qui préfèrent prévenir que guérir), on trouvera quelques
mémoire ou de check-list : tuyaux dans l’ouvrage référencé en [6].

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


est strictement interdite. – © Editions T.I. R 526v2 – 17

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

P
O
U
Acquisition et traitement R
des signaux de mesure
à l’aide de microprocesseurs E
N
par Paul SENTE
Ingénieur principal, chef de service à l’Université catholique de Louvain (UCL, Belgique)
Responsable du laboratoire LACTION (actionneurs et capteurs intelligents)
Membre du centre de recherche en mécatronique (CEREM)
Chargé de cours à l’ECAM (Haute École Léonard de Vinci, Belgique) S
A
Sources bibliographiques
[1] BUYSE (H.), LABRIQUE (F.) et SENTE (P.). – CEA-DIF-DCRE, Bruyères le châtel 91297 AR- rie – EEA/Dunod (Mesures), 528 pages, 2e édi-
V
Introduction à l’électronique et à ses applica-
tions en instrumentation. Tech. & Doc./Lavoi-
sier, 422 pages (2001).
PAJON Cedex, 48 pages (http://www.cenbg.
in2p3.fr/heberge/EcoleJoliotCurie/coursan-
nee/cours/coursJoelRaimbourg.pdf). [13]
tion (2003).

LILEN (H.). – Microprocesseurs du CISC au


O
[2] HAUSSER-HAUW (Ch.). – Manuel d’élec-
troencéphalogramme de l’adulte. Masson,
[8] RAIMBOURG (J.). – Compatibilité électroma-
gnétique, La chasse aux démons de Max- [14]
RISC. Eleinf/Dunod, 704 pages (1995).

COTTET (F.) et GROLLEAU (E.). – Systèmes


I
[3]
331 pages (2006).
MANGIANTE (J.-M.). – Analyse et synthèse
well – De la magie noire… à la Physique
Amusante. Commissariat à l’Énergie ato-
mique CEA/DIF, Cours Joliot Curie 2008,
temps réel de contrôle-commande : Concep-
tion et implémentation. Technique/Dunod,
568 pages (2005).
R
des filtres actifs analogiques. Tec & Doc/La-
64 pages (http://www.cenbg.in2p3.fr/he- [15] DUTRIEUX (L.) et DEMIGNY (D.). – La logique
voisier, 378 pages (2005).
berge/EcoleJoliotCurie/coursannee/transpa- programmable : architecture des FPGA et
[4] BOITE (R.) et LEICH (H.). – Les filtres numéri- rents/JoelRaimbourg.pdf) (2008). CPLD méthodes de conception le langage
ques. Analyse et synthèse des filtres unidi-
mensionnels. Technique et Scientifique des [9] DEL CORE (A.) editor. – Advances in Onboard
Systems Technology. EC Aeronautic Re- [16]
VHDL. Eyrolles, 234 pages (1997).

TAVERNIER (Chr.). – Microcontrôleurs PIC 10,


P
Télécommunications/Dunod, 421 pages (1997).
[5] KUNT (M.). – Traitement numérique des si-
gnaux. Traité d’Électricité volume XX, Pres- [10]
search Series/Wiley, 256 + VIII pages (1994).

CLAYTON (G.B.) et WINDER (S.). – Operatio-


12, 16 : Description et mise en œuvre. Tech-
nique et ingénierie/Dunod, 3e édition, 334 pa-
ges (2007).
L
ses Polytechniques et Universitaires Roman-
des (PPUR), 416 pages (3ème édition) (1999).
nal Amplifiers. Newnes (an imprint of Butter-
worth-Heinemann Ltd), 416 pages, 5th Revi-
sed (edition 2003).
[17] CALCUTT (D.M.), COWAN (F.) et HASSAN PAR-
CHIZADEH (H.). – 8051 Microcontroller : An
U
[6] BALL (S.). – Debugging Embedded Micropro- Applications-Based Introduction (Le micro-
S
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

cessor Systems (Débogage de systèmes basés [11] ASCH (G.). – Les capteurs en instrumentation contrôleur 8051 : une introduction basée sur
sur microprocesseur). Newnes (Elsevier, © industrielle. Technique et Ingénierie – EEA/ ses applications). Newnes, 416 pages (2003).
Butterworth-Heinemann Ltd), 256 pages (1998). Dunod (L’Usine Nouvelle), 852 pages, 6e édi-
tion (2006). [18] REBOUX (A.). – Électronique et programma-
[7] RAIMBOURG (J.). – Compatibilité électroma- tion : Apprentissage autour du microcontrô-
gnétique, La chasse aux démons de Max- [12] ASCH (G.). – Acquisition de données – Du leur 68HC11. Électronique (Professionnels et
well. Commissariat à l’Énergie atomique capteur à l’ordinateur. Technique et Ingénie- amateurs)/Dunod, 192 pages (2000).

À lire également dans nos bases


AUVRAY (J.). – Traitement des signaux. POULTON (D.). – Automatisation des mesu- MERMET (J.). – Langages pour la conception
[R 305], base Mesures et tests électroniques res. [R 926], base Mesures et tests électroni- des circuits intégrés. [E 2 452], base Électro-
(1987). ques (2000). nique (2001).
DUBUS (J.-P.). – Fonction comptage des ap- MAX (J.). – Pratique du filtrage – Filtrage BEGU (R.) et LANGARD (Y.). – Conversions
pareils – Bascules et compteurs. [R 510], analogique. [R 1 102], base Mesures et tests analogique-numérique et numérique-analo-
base Mesures et tests électroniques (1998). électroniques (1988). gique. [E 3 650], Archives Électronique
(1994).
DUBUS (J.-P.). – Fonction comptage des ap-
AUVRAY (J.). – Pratique du filtrage – Filtrage
pareils – Codage. [R 512], base Mesures et PRADO (J.). – Filtres numériques – Synthèse.
numérique. Filtres transverses. [R 1 105],
tests électroniques (1999). [E 3 160], base Électronique (2000).
base Mesures et tests électroniques (2003).
DUBUS (J.-P.). – Fonction comptage des ap- CHEVANCE (R.J.). – Microprocesseurs – Clas-
pareils – Logiques câblées et programmées. AUVRAY (J.). – Pratique du filtrage – Filtrage sification des architectures. [H 1 159], base
[R 514], base Mesures et tests électroniques numérique. Filtres récursifs. [R 1 106], base Technologies logicielles Architectures des
(1999). Mesures et tests électroniques (2003). systèmes (1998).

TRAN TIEN (L.). – Interfaces de communica- ELLOY (J.-P.) et TRINQUET (Y.). – Systèmes ROBERT (M.), CONRARD (B.), BAYART (M.),
tion – Mise en œuvre des mesures automati- d’exploitation temps réel – Principes. GT 18-4 CIAME SEE et CHOVIN (A.). – Cap-
ques. [R 530], base Mesures et tests électro- [R 8 050], base Mesures et tests électroni- teurs et actionneurs intelligents. [S 7 520],
niques (1995). ques (1999). base Informatique industrielle (2005).

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


est strictement interdite. – © Editions T.I. Doc. R 525v2 – 1

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

P ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS –––––––––––––––––––––––––––––––––––––––––––––––––––––

O
U HERSCH (R.D.). – Microcontrôleurs : princi- DU LAC (N.). – Prototypage des applications TICHON (J.), GARCIA ACEVEDO (S.), GIOT
pes et aspects temps réel. [S 8 035], base In- temps réel embarquées. [S 8 192], base Infor- (R.) et COUWENBERGH (Ch.). – Communica-
R formatique industrielle (2001). matique industrielle (2005). tion avec les périphériques. [S 8 590], base
Informatique industrielle (2001).

Constructeurs – Fournisseurs – Distributeurs


E Constructeur de cartes de contrôle/commande autonomes 24, rue Gustave Madiot

N gérées par PC :
dSPACE : « Embedded Success »
F-91924 Bondoufle-Cedex
Tel. : + 33 1 69 11 51 00

dSPACE SARL (France) Fax : + 33 1 69 11 51 01

Parc Burospace Internet : http://www.6ta.fr

S Bâtiment 20
Route de la Plaine de Gisy
E-Mail : infos@6ta.fr
AIGOTEC GmbH (Germany)

A 91573 Bièvres Cedex


Tél. : +33 1 69 35 50 60
Widdersdorfer Str. 207 – 209
D-50825 Köln, Germany

V Fax : +33 1 69 35 50 61
info@dspace.fr
Telephone : + 49 221 48490890
Fax : + 49 221 48490899

O http://www.dspace.fr
dSPACE GmbH (Deutschland ; Headquarters)
Email Office : info@aigotec.de
Email : sales@aigotec.de

I Standort Technologiepark
Technologiepark 25
http://www.aigotec.de
Instrumentation sur PC : quelques fabricants :
R 33100 Paderborn National Instruments : « National Instruments transforms the way engi-
neers and scientists around the world design, prototype, and deploy systems
Tel. : +49 5251 1638-0
for test, control, and embedded design applications »
Fax : + 49 5251 66529
National Instruments France
Vertrieb : info@dspace.de
P Support : support@dspace.de
2, rue Hennape
92735 Nanterre CEDEX
http://www.dspace.de
L PC Industriels et instrumentation sur PC, quelques
Tél : 0820 20 04 14
E-mail Vente : ni.france@ni.com
ensembliers :
U Advantech : « Trusted ePlatform services »
Fax : 01 57 66 24 14
http://www.ni.com/fr

S Advantech France, Industrial Automation Group


Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

National Instruments Corporate Headquarters


115, rue de la Liberté, 38180 Seyssins, France
National Instruments Corporation
Phone : + 33-4-7670-4700
11500 N MoPac Expwy
http://www.advantech.fr
Austin, TX 78759-3504
Regional Service Center/Netherlands, Europe
(512) 794-0100
Ekkersrijt 5708
http://www.ni.com
(Science Park Eindhoven)
Keithley Instruments, Inc. : « A greater Measure of Confidence »
5692 EP Son, The Netherlands
Keithley Corporate Headquarters
Tel : + 31(0)40-267-7077
28775 Aurora Road
Fax : + 31(0)40-267-7073
Cleveland, Ohio 44139
ags.europe@advantech.com
phone : (440) 248-0400
http://www.advantech.com
toll-free : (800) 552-1115
Hoskin Scientifique, département Instrumentation et contrôle
fax : (440) 248-6168
« Capteurs et Instrumentation pour l’automatisation, la robotique, les
essais et la mesure » info@keithley.com
Divisions : Procédés/Automation/Test et mesure/Métrologie http://www.keithley.com
300 Stinson, en France : Keithley Instruments
Montréal, PQ H4N 2E7 Immeuble Aristote
Téléphone (514) 735-5267 Parc des Algorithmes
Fax (514) 735-3454 Saint-Aubin
courriel mkadoury@hoskin.ca 91194 Gif sur Yvette Cedex
http://www.hoskin.qc.ca/index.php Phone : 01-64 53 20 20
6TA : « L’informatique industrielle : notre synergie, votre atout » Fax : 01-60 11 77 26

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


Doc. R 525v2 – 2 est strictement interdite. – © Editions T.I.

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

–––––––––––––––––––––––––––––––––––––––––––––––––––––– ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS


P
O
E-mail : info@keithley.fr E-Mail : infos@6ta.fr
U
http://www.keithley.fr
Kontron : « Kontron helps leading OEMs and systems integrators to signi-
Omega Engineering : « Your One-Stop Source for Process Measurement
and Contro ! » R
ficantly reduce their time-to-market to gain a competitive edge » Omega Engineering Ltd
Kontron France One Omega Drive, River Bend Technology Centre
Northbank Irlam, Manchester M445BD UK
Tour de l’Horloge
4, Place Louis Armand Téléphone – + 44 161 777 6611 E
F – 75603 PARIS CEDEX 12
France
Fax – + 44 161 777 6622
Ventes : sales@omega.fr N
Tel. : + 33 (0)1 30 17 89 51 Comptabilité : comptabilite@omega.fr

Fax : + 33 (0)1 30 32 87 29 Informations générales : service@omega.fr

Email : sales@kontron.com
Corporate Headquarters
http://www.omega.com/
http://www.omega.fr S
Oskar-von-Miller-Strae 1
85386 Eching/München
CONTEC : « Development and Exploration – CONTEC Continues Challen-
ging from the Viewpoint of Customers »
HeadQuarters : CONTEC Co.,Ltd Osaka Office
A
Germany
Phone + 49 81-65 77 0
3-9-31, Himesato, Nishiyodogawa-ku, Osaka 555-0025, Japan V
Tel :81-6-6472-7130 Fax : 81-6-6475-1728
Fax + 49 81-65 77 219
http://www.kontron.de
http://www.contec.co.jp/ O
Europe, Africa, Middle East top : AIGOTEC GmbH (Germany)
BVM Limited : « Embedded Intelligence – Embedded Boards & Systems »
BVM Limited
Widdersdorfer Str. 207 - 209 I
D-50825 Köln, Germany
14 Hobb Lane
Hedge End
Telephone : +49 221 48490890 Fax : +49 221 48490899 R
Email : sales@aigotec.de
Southampton
Contact : Mr. Oliver Dehne
SO30 0GH
E-mail : dehne@aigotec.de
UK
Tel + 44 1489 780144
http://www.aigotec.de/ P
Quelques fabricants de microprocesseurs,
Fax + 44 1489 783589
Email : sales@bvm-store.com
de microcontrôleurs et/ou de FPGA : L
http://www.bvm-store.com
ALTERA
http://www.altera.com/
U
ADDI-DATA GmbH – « Spirit of Excellence »
Dallas
S
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

ADDI-DATA GmbH
http://www.maxim-ic.com/
Airpark Business Center
Intel
Airport Boulevard B210
http://www.intel.com/
77836 Rheinmünster
Lattice (Semiconductor Corporation)
Deutschland
http://www.latticesemi.com/
Telefonisch oder per E-Mail :
MAXIM
Zentrale Tel. : + 49 7229 1847-0 info@addi-data.com
http://www.maxim-ic.com/
Vertrieb Tel. : + 49 7229 1847-120 sales@addi-data.com
MOTOROLA
Export Tel. : + 49 7229 1847-124 sales@addi-data.com
http://www.motorola.com/
Serviceline Tel. : + 49 7229 1847-0 hotline@addi-data.com National Instruments
Per Fax : http://www.ni.com/
+ 49 7229 1847-200 NXP Semiconductors (Ex Phillips Semiconductors)
Bestellfax : http://www.nxp.com/
+ 49 7229 1847-222 ON Semiconductor (ex Motorola Semiconductors)
http://www.addi-data.com/wEnglisch/index.php http://www.onsemi.com/
France : 6TA (intégrateur – ensemblier) : « L’informatique industrielle : Philips Semiconductors (voir NXP Semiconductors)
notre synergie, votre atout »
Texas Instruments
24, rue Gustave Madiot
http://www.ti.com/
F-91924 Bondoufle-Cedex
XILINX
Tel. : + 33 1 69 11 51 00
http://www.xilinx.com/
Fax : + 33 1 69 11 51 01
Internet : http://www.6ta.fr

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


est strictement interdite. – © Editions T.I. Doc. R 525v2 – 3

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

P ACQUISITION ET TRAITEMENT DES SIGNAUX DE MESURE À L’AIDE DE MICROPROCESSEURS –––––––––––––––––––––––––––––––––––––––––––––––––––––

O
U Normes et standards
R
Interfaces/protocoles de communication série
Désignation Désignation complète
Remarques
E [Norme(s)] ou info Adresse internet

Bus en automobile,
CAN Controller Area Network
N [ISO 11898] http://www.can-cia.de
Hiérarchisé,
Protocole complet.

Nom générique,
Fieldbus Fieldbus Foundation Protocols H1, HSE
Hiérarchisé,
[IEC 61158] http://www.fieldbus.org
Protocole complet.

S Bus en automobile,
FlexRay V2.1 standard Successeur du CAN,
A FlexRay
http://www.flexray.com Hiérarchisé,
Protocole complet.

V I2C ou I2C
Spécification NXP
Inter IC = Inter Integrated Circuit
http://www.i2c-bus.org
Maı̂tre(s)-esclave,
Couche physique.

O PROFIBUS
[IEC 61158/IEC 61784]
Process Field Bus
http://www.profibus.com
Bus industriel,
Hiérarchisé,

I Interface Between Data Terminal Equipment and Data Circuit Terminating Equipment
Protocole complet.

Compatible PC,
RS 232
R [EIA RS 232C]
Employing Serial Binary Data Interchange
http://www.eia.org/new_policy/availability.phtml
Bidirectionnel,
Modems à l’origine.

Différentiel,
RS 422 TIA-422 Electrical Characteristics of Balanced Voltage Differential Interface Circuits
Unidirectionnel,
[EIA RS 422] http://www.eia.org/new_policy/availability.phtml
Couche physique.

P RS 485
Electrical Characteristics of Generators and Receivers for Use in Balanced Digital Multipoint
Systems (ANSI/TIA/EIA-485-A-98)
Différentiel, bidirectionnel,

L [EIA RS 485]
http://www.eia.org/new_policy/availability.phtml
Couche physique.

Maı̂tre-esclave,
U SPI consensus
Serial Peripheral Interface
http://www.serialflash.com
Couche physique, programma-
tion in situ.

S
Parution : décembre 2010 - Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5

Compatible PC,
Universal Serial Bus Différentiel, bidirectionnel,
USB
http://www.usb.org/home Source d’alimentation,
Connectable à chaud.

Interfaces de communication parallèle


Désignation Désignation complète
Remarques
[Norme(s)] ou info Adresse internet

GPIB (HPIB) General Purpose Interface Bus Protocole complet,


[IEE-488] (Hewlett Packard Interface Bus) Hiérarchisé,
[IEC 625] http://standards.ieee.org Standard appareils de mesure

Bus d’interconnexion de cartes dans les PC compatibles


PCI, PCI Express
http://www.pcisig.com/home

Signal Conditioning eXtensions for Instrumentation


SCXI Propre à National Instuments
http://sine.ni.com/nips/cds/view/p/lang/en/nid/1604

Bus d’interconnexion de cartes dans les PC compatibles


VME, VXI http://www.vita.com Anciennement VERSA bus
http://www.ni.com/vxi

Toute reproduction sans autorisation du Centre français d’exploitation du droit de copie


Doc. R 525v2 – 4 est strictement interdite. – © Editions T.I.

tiwekacontentpdf_r526 v1 Ce document a ete delivre pour le compte de 7200092269 - cerist // 193.194.76.5


Gagnez du temps et sécurisez vos projets
en utilisant une source actualisée et fiable

   
RÉDIGÉE ET VALIDÉE MISE À JOUR 100 % COMPATIBLE SERVICES INCLUS
PAR DES EXPERTS PERMANENTE SUR TOUS SUPPORTS DANS CHAQUE OFFRE
NUMÉRIQUES

 + de 340 000 utilisateurs chaque mois


12 000 articles de référence et fiches pratiques
 + de 10
 Des Quiz interactifs pour valider la compréhension

SERVICES ET OUTILS PRATIQUES

  
Questions aux experts* Articles Découverte Dictionnaire technique multilingue Archives Info parution
Les meilleurs experts techniques La possibilité de consulter 45 000 termes en français, anglais, Technologies anciennes et versions Recevez par email toutes les nouveautés
et scientifiques vous répondent des articles en dehors de votre offre espagnol et allemand antérieures des articles de vos ressources documentaires

*Questions aux experts est un service réservé aux entreprises, non proposé dans les offres écoles, universités ou pour tout autre organisme de formation.

Les offres Techniques de l’Ingénieur


INNOVATION ENVIRONNEMENT – SÉCURITÉ ÉLECTRONIQUE – PHOTONIQUE PROCÉDÉS CHIMIE – BIO – AGRO
• Éco-conception et innovation responsable • Sécurité et gestion des risques • Électronique • Formulation
• Nanosciences et nanotechnologies • Environnement • Technologies radars et applications • Bioprocédés et bioproductions
• Innovations technologiques • Génie écologique • Optique – Photonique • Chimie verte
• Management et ingénierie de l’innovation • Technologies de l’eau • Opérations unitaires. Génie de la réaction
• Smart city  Ville intelligente • Bruit et vibrations TECHNOLOGIES DE L’INFORMATION chimique
• Métier : Responsable risque chimique • Sécurité des systèmes d’information • Agroalimentaire
MATÉRIAUX • Métier : Responsable environnement • Réseaux Télécommunications
• Bois et papiers • Le traitement du signal et ses applications SCIENCES FONDAMENTALES
• Verres et céramiques ÉNERGIES • Technologies logicielles – Architectures des • Mathématiques
• Textiles • Hydrogène systèmes • Physique Chimie
• Corrosion – Vieillissement • Ressources énergétiques et stockage • Sécurité des systèmes d’information • Constantes physico-chimiques
• Études et propriétés des métaux • Froid industriel • Caractérisation et propriétés de la matière
• Mise en forme des métaux et fonderie • Physique énergétique AUTOMATIQUE – ROBOTIQUE
• Matériaux fonctionnels. Matériaux biosourcés • Thermique industrielle • Automatique et ingénierie système BIOMÉDICAL – PHARMA
• Traitements des métaux • Génie nucléaire • Robotique • Technologies biomédicales
• Élaboration et recyclage des métaux • Conversion de l’énergie électrique • Médicaments et produits pharmaceutiques
• Plastiques et composites • Réseaux électriques et applications INGÉNIERIE DES TRANSPORTS
• Véhicule et mobilité du futur CONSTRUCTION ET TRAVAUX PUBLICS
MÉCANIQUE GÉNIE INDUSTRIEL • Systèmes aéronautiques et spatiaux • Droit et organisation générale de la construction
• Frottement, usure et lubrification • Industrie du futur • Systèmes ferroviaires • La construction responsable
• Fonctions et composants mécaniques • Management industriel • Transport fluvial et maritime • Les superstructures du bâtiment
• Travail des matériaux – Assemblage • Conception et production • Le second œuvre et l’équipement du bâtiment
• Machines hydrauliques, aérodynamiques et • Logistique MESURES – ANALYSES • Vieillissement, pathologies et réhabilitation du
thermiques • Métier : Responsable qualité • Instrumentation et méthodes de mesure bâtiment
• Fabrication additive – Impression 3D • Emballages • Mesures et tests électroniques • Travaux publics et infrastructures
• Maintenance • Mesures mécaniques et dimensionnelles • Mécanique des sols et géotechnique
• Traçabilité • Qualité et sécurité au laboratoire • Préparer la construction
• Métier : Responsable bureau d’étude / conception • Mesures physiques • L’enveloppe du bâtiment
• Techniques d’analyse • Le second œuvre et les lots techniques
• Contrôle non destructif

www.techniques-ingenieur.fr
 CONTACT : Tél. : + 33 (0)1 53 35 20 20 - Fax : +33 (0)1 53 26 79 18 - E-mail : infos.clients@teching.com

Vous aimerez peut-être aussi