elektor n°282 - décembre 2001 - doctsf

62

Upload: others

Post on 08-May-2022

20 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Elektor N°282 - Décembre 2001 - doctsf
Page 2: Elektor N°282 - Décembre 2001 - doctsf

Nous avons déjà eul’occasion de présenter en détail leprotocole DMX512 dans les colonnes d’ELEK-TOR, dans le courant du premier trimestre2001. Nous invitons le lecteur friand de détailstechniques à se reporter à cet article de pré-

sentation [1],ainsi qu’à l’article concer-nant l’interface MIDI<->DMX [2].

Rappelons simplement que le proto-cole DMX512 fait appel à une liaison

RS-485, permettant de connecterjusqu’à 32 équipements

sur 1 000 mètres. Lesdonnées sont trans-

mises à 250 kbauds, enformat asynchrone 8 bitsde données, sans parité,1 bit de début (start),2 bits d’arrêt (stop). Lesinformations des diffé-rents canaux sont trans-mises successivement,sous la forme d’unevaleur sur 8 bits, entre 0(noir) et 255 (plein feu).Pour permettre de retrou-ver le début de laséquence des512 valeurs, on provoque

simplement une inter-ruption de communica-

tion, en générant un Break(« 0 » logique) d’une durée

au moins égale à 2 caractères.Enfin, pour retrouver le bit de

début du premier octet, on pro-voque une remontée d’au moins8 ms en fin de Break.

LOISIRS

8 Elektor 12/2001

DémultiplexeurDMX 8 voies8 canaux DMX = 8 x 0 à 10 V (et bientôt 8 relais)

Projet : Benoît Bouchez [email protected]

L’acronyme DMX512 recouvre les termes Digital MultipleX, techniqueconsistant à envoyer 512 canaux successivement (« multiplexés ») sur lemême câble. Le présent montage a pour fonction de permettre le pilotaged’appareils commandables par DMX512.

Définie par l’USITT (organisme américain chargé de concevoir et de diffuser les normes applicables pour les théâtres) en août 1986, le système DMX512 n’aconnu son véritable envol qu’au milieu des années 1990, avec la démocratisation des projecteurs automatisés.

Page 3: Elektor N°282 - Décembre 2001 - doctsf

LOISIRS

912/2001 Elektor

+5V

+5V

L1

1µH5

X1

24MHz

C3

33p

C2

33p

C4

47n

R12

20

k

+5V

D0

D1

D2

D3

D4

D5

D6

D7

D0

D1

D2

D3

D4

D5

D6

D7

D0

D1

D2

D3

D4

D5

D6

D7

C5

47n

27C256

EPROM

IC3

A10

A11

A12

VPP

A13

A14

10A0

A1

A2

A3

A4

A5

A6

A7

25A8

24A9

21

23

1422

OE

20

CE

28

11D0

12D1

13D2

15D3

16D4

17D5

18D6

19D7

26

27

9

8

7

6

5

4

3

2

1

74F573IC2

12

13

14

15

16

17

18

19

EN

11C1

1D2

3

4

7

8

9

5

6

1

C1

1µ 10V

S1

1

2

3

4

16

13

14

15

5

6

7

8

12

9

10

11

DMX CHANNEL

DAC8800

IC4

VRHA

VO1A

VO2A

VO3A

VO4A

VRLA

VRHB

VO1B

VO2B

VO3B

VO4B

VRLB

CLR

CLK

CLK

SDI

11

12

14

10

LD13 19

15

16

17

18

20

7

2

9

8

3

4

5

6

1

+15V

C6

47n

6

5

7IC5.B

9

10

8IC5.C

2

3

1IC5.A

13

12

14IC5.D

6

5

7IC6.B

9

10

8IC6.C

2

3

1IC6.A

13

12

14IC6.D

R2

22

D2

10V

C9

47n

K11

2

3

4

5

6

7

8

K21

2

3

4

5

6

7

8

R5

390Ω

LTC490

IC7

6

53

2

D

R7

8

1

4

RD–

TD–

R6

4k

7

R7

4k

7

ISO

+5VISO

6N137

IC8

2

78

5

6

3

R3

1k

C10

47n

+5V

C11

47nISO

SHLD

AC A

AC B

B1

B80C250

C12

1000µ 25V

C13

100n

7815

IC9

7805

IC10

C14

100n

C15

100n

R4

22

D1

POWER

+15V+5V

AC C

AC DC16

1000µ 25V

C17

100n

C8

100n

B2

IC11

79L05

B80C250

-5V

+5V +5VISO

ISO

IC5, IC6 = TL084

010002 - 11

S1: 1 = 82 = 16

6 = 2565 = 128

3 = 324 = 64

C7

47n

+5V

IC2

20

10

NMF0505S

IC12

VO+

VO-

VI+

VI-

CTL

1 6

42

5

P3.2/INT0

P3.3/INT1

P1.1/T2EX

P3.1/TXD

P3.0/RXD

P3.7/RD

P3.6/WR

P3.4/T0

P3.5/T1

P1.0/T2

80C32

RESET

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

PSEN

IC1AD0

AD1

AD2

AD3

AD4

AD5

AD6

AD7

A10

A11

A12

A13

A14

A15

ALE

A8

A9

39

38

37

36

35

34

33

32

21

22

23

24

25

26

27

28

31EA

19

X1

18

X2

20

40

17

16

29

30

11

10

12

13

14

15

1

2

3

4

5

6

7

8

9

IC511

4

IC611

4

+15V

-5V

TD+

RD+

15V

– 1

8V15

V –

18V

Figure 1. Le schéma du démultiplexeur DMX est en fait un système micro réduit à sa plus simple expression.

Page 4: Elektor N°282 - Décembre 2001 - doctsf

Un démultiplexeur, pour quoi faire ?Comme nous le disions plus haut, DMX512est l’acronyme de Digital Multiplex, puisqueles 512 canaux sont envoyés successivement(sous forme « multiplexée ») sur le mêmecâble.Les produits équipés d’une interface DMX512d’origine sont en général plus chers que leurshomologues à télécommande analogique. Demême, certains équipements n’ont aucuneraison de disposer d’une interface DMX (ouautre) intégrée. C’est notamment le cas desprojecteurs utilisés en théâtre ou dans lesstudios de TV, pour lesquels on ne commandeque le niveau de lumière. On peut égalementciter les effets spéciaux comme les strobo-scopes ou les générateurs de fumée.Dans le cas d’équipements aussi simples, soiton intègre une simple télécommande 0 à+10 V, soit la télécommande est reportée auniveau de gradateurs externes (« dimmerpack »).Le rôle d’un démultiplexeur est de fournir unensemble de tensions de commande permet-tant à des équipements du genre de ceuxcités ci-dessus, dont la commande est jusquelà assurée par tension 0 à 10V, d’être com-mandables par DMX512. Notre démulti-plexeur est également capable de recevoirune extension à relais, pour la commanded’équipements simples, de type Tout ou Rien,sans entrée analogique donc.Avec un peu d’astuce, il est même possiblede modifier des produits non équipés de télé-commande de façon à y intégrer notre démul-tiplexeur, et de les transformer en produitsquasi-professionnels, mais chaque chose enson temps...

Passons aux choses sérieuses...Comme le montre un examen rapide de l’élec-tronique dont le schéma est représenté enfigure 1, c’est encore une fois un microcon-trôleur qui est à l’honneur. Nous avons utiliséici un 80C32 tout à fait classique, avecmémoire programme externe sous formed’EPROM (nous aurions d’ailleurs tout à faitpu utiliser une version de processeur àEPROM intégrée, ce qui aurait encore plussimplifié le circuit, mais nous prévoyons tou-jours la possibilité d’une future évolution dulogiciel).Comme d’habitude dans ces cas-là, le busd’adresse est démultiplexé par IC2, qui four-nit les 8 bits de poids faible à l’EPROM IC3.Vous remarquerez que nous n’utilisons pastoutes les broches d’adresse de cette der-nière. En effet, le programme est assez com-pact et se contenterait allégrement d’une

27C64. Le problème est que ce der-nier modèle devient plus rare et estpartant plus cher : autant donc utili-ser le modèle 27C256, en inhibant lesbroches d’adresse inutiles, ce quisimplifie d’autant le circuit imprimé.Les spécialistes du 80C32 (ceux quiont suivi le « cours µC » d’ELEKTOR il

y a quelques années par exemple...)pourront être surpris de l’utilisationde ce processeur, alors que sonUART ne dispose pas de fonction dedétection de BREAK, ce qui est labase de la synchronisation destrames DMX512. Pas de panique :une telle détection est parfaitement

LOISIRS

10 Elektor 12/2001

010002-1

B1

B2

C1

C2C3

C4

C5

C6

C7

C8

C9

C10

C11

C12

C13

C14

C15

C16

C17

D1

D2

H1H2

H3 H4

IC1

IC2

IC3

IC4 IC5

IC6

IC7

IC8

IC9

IC10

IC11

IC12

K1

K2

L1

R1

R2

R3

R4

R5

R6

R7S1

X1

~

~

81

T

+-

A

B

C

D

01

00

02

-1

Figure 2. Représentation du dessin des pistes et de la sérigraphie de l’implantationdes composants de la platine dessinée à l’intention de cette réalisation.

Figure 3. Exemplaire terminé de la platine du démultiplexeur DMX. Il pourra vousservir de repère en cas de doute.

Page 5: Elektor N°282 - Décembre 2001 - doctsf

des cavaliers de sélection d’adresse. Commenotre démultiplexeur fournit 8 consignes detension, il occupe de ce fait 8 canaux DMX. Laconfiguration par S1 se fait « modulo 8 », c’està dire que l’interface ne peut être placée quetous les 8 canaux DMX (1, 9, 17, 25, etc.). Pourdéterminer le canal DMX de « départ », il suf-fit d’additionner les valeurs représentées parchaque cavalier fermé et d’ajouter 1. Parexemple, une interface sur laquelle tous lescavaliers sont ouverts occupe les canauxDMX 1 à 8. Une interface sur laquelle le pre-mier et le troisième cavalier sont fermésoccupe les canaux DMX à partir de(8+32+1)= 41, soit 41 à 49, etc.Vous remarquerez que seules les six pre-

à la portée des 80C32. Notre pro-gramme reconnaît en fait simple-ment l’état du 9ème bit de chaqueoctet. Comme les trames DMX512sont formées sur des octets sansparité, ce 9ème bit est en fait l’imagedu bit d’arrêt, qui donc doit être à 1.Si le processeur détecte un octetdont le 9ème bit est à 0, c’est que laliaison DMX est en phase de syn-chronisation. Même si cet algorithmeest peu orthodoxe, il fonctionne par-faitement bien (nous l’utilisonsdepuis plusieurs années sur desconceptions professionnelles sansaucun problème).

Concernant la périphérie du 80C32,il n’y a pas grand chose à dire, tantle schéma est classique. On souli-gnera cependant l’utilisation d’unquartz 24 MHz, nécessaire pourobtenir une vitesse de 250 kbaudssur le port série. En général, il estassez rare de trouver des quartz24 MHz en fondamentale. Nousavons donc ajouté une petite self L1pour forcer le quartz en régime har-monique. Nous verrons dans la par-tie consacrée à la réalisation pra-tique la méthode pour déterminer s’ilvous faut la self ou non.Le port P1 est utilisé pour la lecture

LOISIRS

1112/2001 Elektor

(C) ELEKTOR010002-1

010002-1

Liste des composants

Résistances :R1 = 220 kΩR2, R4 = 220 ΩR3 = 1 kΩR5 = 390 ΩR6, R7 = 4kΩ7

Condensateurs :C1 = 1 µF/10 V radialC2,C3 = 33 pFC4 à C7, C9 à C11 = 47 nFC8,C13 à C15,C17 = 100 nFC12,C16 = 1 000 µF/25 V radial

Semi-conducteurs :B1, B2 = B80C250D1 = LEDD2 = diode zener 10 V/500 mWIC1 = P80C32 SFPN (40 broches DIL 0-

70°)IC2 = 74F573 ou 74HCT573 *IC3 = 27C256 (programmée EPS010002-

21)IC4 = DAC8800 FP( Analog Devices)IC5, IC6 = TL084IC7 = LTC490 CN8 (Linear Technology)IC8 = 6N137IC9 = 7815IC10 = 7805IC11 = 79L05IC12 = NMF0505S, TMA0505S

Divers :K1, K2 = embase à 1 rangée de 8 contactsL1 = self compacte 1µH5*S1 = octuple interrupteur DILX1 = quartz 24 MHztransfo secteur 3VA 2 x 15 Ventrée secteur avec mise à la terre et fusible

25 mAboîtier 200 x 80 x 132 mm tel que, par

exemple, Telet LC270* cf. texte

Page 6: Elektor N°282 - Décembre 2001 - doctsf

mières lignes sont utilisées pour déterminerl’adresse DMX. Les deux dernières servent enfait à activer des options du démultiplexeur.À ce jour, seule P1.6 est utilisée pour activerl’option « sortie sur relais ».La liaison avec le bus DMX est assurée parIC7, un classique émetteur/récepteur (trans-ceiver) RS-485, dont la sortie n’est pas utili-sée ici. R6 et R7 sont utilisées pour polariser laligne au repos à l’état 1, ce qui évite un fonc-tionnement erratique lorsque l’interface estdéconnectée du bus. Nous avons préféré sor-tir la liaison DMX sur picot, pour laisser lelibre choix du modèle de prise XLR car ontrouve aussi bien des modèles 3 broches que5 broches. Reportez vous à la fin de l’articlepour les détails concernant cette liaison.Pour éviter les problèmes posés par lesboucles de masse, le LTC490 est isolé galva-niquement du reste du circuit par l’opto-cou-pleur rapide IC8. Toute cette section du cir-cuit est alimentée à travers un petit conver-tisseur statique DC/DC, du type NMF0505S(entrée 5 V, sortie 5 V).Pour générer les 8 tensions de commande,nous avons fait appel à un octuple DAC à sor-tie tension, fabriqué par Burr-Brown, leDAC8800. Outre le fait qu’il intègre 8 conver-tisseurs R–2R, le DAC8800 possède aussi legros avantage d’être commandé par une liai-son série synchrone, ce qui simplifie d’autantle circuit imprimé. Sans ce composant, ilaurait fallu installer 8 DAC parallèles (de typeDAC08 par exemple), avec décodaged’adresse, ce qui impliquait un circuitimprimé notablement plus complexe.Le fabricant du DAC8800 recommandant quel’alimentation sur la broche 7 dépasse d’aumoins 4 V la tension de sortie maximale pourassurer une linéarité maximale, IC4 est doncalimenté sous 15 V. À noter qu’un régulateurinterne assure la compatibilité avec lesentrées TTL 5 V.Les entrées de référence VRHA et VRHB per-mettent de sélectionner la tension sortiemaximale des DAC. Elles sont donc reliées àune simple diode zener 10 V, qui sert de réfé-rence de tension. Même si cette solution estloin d’être aussi précise qu’une « vraie »source de référence, elle s’avère parfaitementadaptée à nos besoins, et surtout nettementmoins coûteuse.L’impédance de sortie du DAC8800 étantassez élevée, des problèmes potentiels peu-vent surgir si les sorties sont directementreliées à certains équipements dont l’impé-dance d’entrée n’est que de quelques kilo-ohms. Nous avons donc placé entre chaquesortie du DAC et les borniers de sortie destampons de tension, constitués par desamplis TL084. La tension de saturation desétages finaux des amplis opérationnels empê-

chant la sortie de descendre jusqu’à0V avec un rail négatif à la masse,les TL084 sont polarisés à –5 V surleur rail négatif.Dernier point du schéma, l’alimenta-tion n’appelle aucun commentaireparticulier, si ce n’est concernant letransformateur à utiliser. Les entréesAC A et AC B devront être reliées àun secondaire 18V, pour que la ten-sion à l’entrée de IC9 soit suffisante.Pour l’alimentation négative, tout vadépendre du fabricant d’IC11. Sivotre circuit est un MC79L05 (Moto-lora devenu On Semiconductor) ouéquivalent : pas de problème. Eneffet, les circuits MC79Lxx de ceconstructeur sont spécifiés jusqu’à30 V (18 V redressés/filtrés donnent27 V crête). Avec ce circuit, vouspourrez utiliser le deuxième enroule-ment secondaire du transformateurconnecté à AC A/AC B. Le problèmeest que certains fabricants de cetype de circuit ne le valide que jus-qu’à 15V en entrée. En cas de doute,il faudra utiliser pour cette partie del’alimentation un (deuxième) trans-formateur avec un secondaire 9 V.

À vos fers à souderLa réalisation pratique du démulti-plexeur ne pose pas, grâce à la pla-tine proposée en figure 2, de réelsproblèmes, vu le nombre assez faiblede composants et l’absence de com-posants critiques.Même si vous décidez de faire l’éco-nomie de supports pour les circuitsintégrés, nous ne saurions trop vous

recommander de monter au moinsIC7 et IC8 sur support. Leur rempla-cement éventuel en sera facilité encas de gros problème sur la liaisonDMX (surtension, décharge électro-statique du câble, etc.). Attention aupositionnement de IC3, l’EPROM,son orientation étant inversée parrapport au reste des circuits inté-grés. Notons que cette EPROM pro-grammée (EPS010002-21) est dispo-nible auprès des adresses habi-tuelles.Etant donnée la faible consommationdu montage, IC9 et IC10 pourront secontenter d’un simple morceaud’aluminium comme radiateur.Concernant K1 et K2, à vous de choi-sir ce qui convient le mieux à vosbesoins (borniers à vis, socles DINou XLR...). En ce qui nous concerne,comme le montre les photos, celle endébut d’article et celle proposée enfigure 3, nous avons décidé d’utiliserdes sorties sur deux socles DIN,regroupant chacun quatre sorties,mais cette approche n’a rien d’obli-gatoire.Une fois tous les composants instal-lés et leur implantation vérifiée, onpourra mettre le montage sous ten-sion. On vérifiera alors la présencedes différentes tensions d’alimenta-tion, notamment sur la partie isoléede la carte.Le test de la carte implique de dis-poser d’une console d’éclairage DMXou d’un logiciel sur PC avec l’inter-face adéquate (par exemple, l’inter-face MIDI<->DMX d’ELEK-TOR [2]…). Après avoir sélectionné

LOISIRS

12 Elektor 12/2001

3 24

15

3 42

51

Version standard(5 broches)

3

12

010012 - 12

3

2

EntréeMâle

EntréeFemelle 1

Version simplifée(3 broches)

Broche

12345

Fonction

0V/MasseData -Data +

Libre (Data - optionnel)Libre (Data + optionnel)

Figure 4. Brochages (pour mémoire) des connecteurs XLR 5 et 3 broches. Nousavons opté pour une représentation 2D sachant qu’il existe des connecteurs mâleset femelles ainsi que des embases mâles et femelles.

Page 7: Elektor N°282 - Décembre 2001 - doctsf

5 broches, mâle du coté RD et femelle du cotéTD, en vue de réaliser une « daisy-chain »(équipements DMX reliés à la queue leu leu).Néanmoins, certains constructeurs préfèrentutiliser des XLR 3 broches, moins coûteuses.À vous de voir ce que vous préférez. Nousnous permettons de rajouter le brochage desconnecteurs XLR 3 et 5 broches en figure 4.

Bon sang ! Où est l’entrée télécommande ?Ca y est ! Votre interface fonctionne ! Et main-tenant, il faut la connecter à vos équipementslumière (ou autres).Si les équipements que vous souhaitez pilo-ter disposent d’une entrée de télécommande0 à +10 V (c’est le cas de la très grande majo-rité des gradateurs, stroboscopes et fumi-gènes professionnels, voire certains lumi-naires simples), aucun problème : la liaisonest directe. Le cas échéant, il faudra prévoirune adaptation du niveau des tensions par unpont diviseur, si l’entrée de l’équipement estdu genre 0 à 5 V ou toute autre valeurbâtarde. Dans le cas (rare) où les équipe-ments sont commandés en courant, une résis-tance en série réglera le problème.Au niveau grand-public, il existe assez peud’équipements avec une entrée télécom-mande en tension. Le plus souvent, on netrouve que des entrées de validation. On serabattra alors sur la version à relais qui seraproposée dans un prochain article.Si les équipements que vous souhaitez com-mander ne sont munis d’aucune entrée detélécommande ou si les entrées de télécom-mande mises à votre disposition ne sont pascompatibles avec les standards supportéspar notre démultiplexeur, il vous faudra jouerdu fer à souder dans l’appareil, en vue d’yapporter les modifications nécessaires.Par manque de place dans cet article, nous nepouvons évoquer ici ce genre de modifica-tions. Si les demandes des lecteurs sont suf-fisantes, nous pourrions consacrer un articlecomplet à ce genre de modifications.À très bientôt sur les ondes DMX...Dans un prochain article nous vous propose-rons une extension à relais qui pourra seconnecter au présent montage. Cette exten-sion à relais se substituera au convertisseurDAC8800 et se connectera à la présente pla-tine par le biais d’un câble en nappe.

(010002)

Bibliographie :[1] Les mystères du DMX512, Elektor n°275,

mai 2001, page 52 et suivantes[2] Interface DMX <-> MIDI, Elektor n°280,

octobre 2001, page 32 et suivantes

une adresse de départ par S1 (ouvrirS1.7 et S1.8 pour indiquer le mode« tension »), on utilisera le maîtreDMX pour envoyer les consignes deniveau sur les 8 canaux à partir decette adresse. En mettant les cur-seurs de la console au minimum, latension de chaque sortie doit tomberà 0 V (à quelques millivolts près). Enmontant les curseurs au maximum,la tension de chaque sortie doitatteindre 10,0 V (ne pas oublier devérifier l’étalonnage des curseurs dela console, si celui ci est program-mable !).Si la carte ne semble pas fonctionnercorrectement, placer un oscilloscopesur la broche 9 d’IC4. On doit y trou-ver des rafales d’impulsions, signa-lant que le processeur pilote bien leDAC. L’absence d’impulsions sur cetteligne d’horloge indique une anoma-lie au niveau du processeur. Etantdonnée la grande vitesse du proces-seur, il est très fortement recom-mandé d’utiliser un 74F573 (SérieFast TTL). Sans que nous sachionstrop bien pourquoi, l’un de nos pro-totypes s’est montré capricieux aveccette famille de circuits. En le rem-plaçant par un 74HCT573, le pro-blème a été résolu.Vérifiez également sur la brocheALE la présence d’impulsions à2 MHz. Si vous trouvez une autre fré-quence d’impulsions, c’est que lequartz n’oscille pas ou pas à labonne fréquence. Si vous avez montéL1, faites un essai après l’avoir des-soudée. Si le circuit fonctionne biensans cette self, c’est que votre quartzoscille à 24 MHz en fondamentale.La self est alors inutile.Enfin, vérifiez, si vous décidez deprogrammer vous-même votreEPROM, IC3, qu’elle est bien du type120 ou 150 ns (suffixe -12 ou -15). Lesmodèles plus lents ne conviennentpas à cette application. Nous met-tons à votre disposition, par le biaisdes canaux habituels, une disquettebaptisée EPS010002-11 comportantles fichiers source et hexadécimal decette réalisation.Si la section processeur fonctionnebien, mais que vous n’avez pas d’ac-tion sur les sorties analogiques, véri-fiez l’interface DMX. Commencez pardébrancher tout câble relié àRD+/RD– et TD+/TD–. La broche 2d’IC7 doit être à l’état haut, ainsi que

la broche 6 d’IC8. N’oubliez pasqu’IC7 est isolé du montage et quela sonde négative du voltmètre doitêtre sur la masse ISOLEE! Prendreune alimentation stabilisée réglée àenviron 5 V, et connecter le – à RD+et le + à RD–. La sortie d’IC7 doitmaintenant passer à l’état bas, ainsique la sortie d’IC8. Si ce test échoue,il faut vérifier le circuit autour d’IC7,IC8 et IC12.Si les différents tests sont positifsmais que l’interface refuse de fonc-tionner avec une console DMX, il fautau préalable vérifier qu’il n’y a pasd’inversion entre les fils RD+ et RD–.Certaines marques, comme MAR-TIN, ont produit des équipementsdont les points chaud et froid sontinversés par rapport à la norme.D’autre part, il ne faut pas oublier lesfameuses terminaisons RS-485, quisont impératives en bout de câble.Ces terminaisons sont formées sim-plement d’une résistance d’environ100 Ω prise entre RD+ et RD– (ouTD+ et TD–). Vérifier également l’ab-sence de court-circuit entre l’un desconducteurs et le blindage (SHLD).Une fois que tout fonctionne correc-tement, on pourra passer à la phasefinale, redoutée de nombre d’électro-niciens : la mise en boîte. Ce genred’interface est destiné le plus sou-vent à être placé près des grada-teurs, ou des luminaires avec uneentrée télécommande. En ce quinous concerne, nous avons pris l’ha-bitude de placer nos démultiplexeursdans des boîtiers plastiquesétanches, du genre « boîte de déri-vation » (la version présentée enphoto est une exception). Pour limi-ter les problèmes posés par les inter-férences, vous pouvez recouvrir l’in-térieur du boîtier de graphite parpulvérisation (produit vendu pour lestubes cathodiques). Si vous prenezun boîtier métallique, reliez-le à laterre. Nous prévoyons en général surun coté du boîtier des boulons per-mettant de placer le cas échéant despattes de fixation standardisées,pour le montage sur des supportsluminaires. La LED D3 est placée surle dessus du boîtier pour permettrede vérifier depuis le « plancher desvaches » que les interfaces sont cor-rectement alimentées.Dernier point à évoquer : la connec-tique DMX. Le standard DMX préco-nise l’utilisation de connecteurs XLR

LOISIRS

1312/2001 Elektor

Page 8: Elektor N°282 - Décembre 2001 - doctsf

Le clavierPour introduire les com-mandes, rien de tel qu’unclavier. Nous sommes par-tis d’un pavé, prêt à l’em-ploi, de 12 touches, à bran-chements individuels ougroupés. Comme l’unité decommande peut mesurerdes tensions analogiques,un diviseur de tensionpour chaque touche serasuffisant. Le tableau situésous le schéma de lafigure 5 reprend, pourchaque touche du clavier,les symboles gravés, lesvaleurs de résistance à ladeuxième rangée et endessous, les valeurs hexa-décimales obtenues. Lesrésistances peuvent seplacer directement sur laface arrière du clavier. Lepoint commun va à lamasse (Gnd) et le +5 V àla résistance de 24,7 kΩ,partie commune du divi-seur de tension, reliée auxrésistances des touches.On connecte le clavier à

MESURE&TEST

14 Elektor 12/2001

Vide-accumulateurcapacimètre2e partie : clavier, déchargeur et assemblageBob Stuurman

Nous en avions déjà parlé dans la première partie, pour utiliser l’unité decommande en tant que déchargeur, nous aurons encore besoin dequelques composants. Il nous faut, bien sûr, un clavier pour introduire lesparamètres et une platine pour le déchargeur proprement dit. Et aspectfondamental du projet, de petits logiciels pour vérifier le matériel.

Page 9: Elektor N°282 - Décembre 2001 - doctsf

C4. les résistances R13 à R16 dans le circuitde source de T4 sont les résistances demesure du courant. La chute de tension à

Input 0 du circuit de commande parun cordon à 3 fils, long de 20 cm etterminé par une embase femelle àtrois pôles.Le programme « KEYTEST.HEX »,présent sur la disquette qui accom-pagne ce projet, nous permettra devérifier le bon fonctionnement duclavier. Une fois le programmechargé, on peut le lancer en tapant« Chip ». Tant qu’aucune touche n’estpressée, l’afficheur indique « FFHEX »ou « FEHEX ». Lorsqu’on appuie surune touche, c’est la valeur hexadéci-male, celle reprise dans le tableau,qui apparaît. En fait, la valeur peutdifférer, puisque seule la moitiéhaute est utilisée, la partie bassepeut se situer entre 5HEX et AHEX.

DéchargeurComme le montre la figure 6, ledéchargeur se compose de trois par-ties. Celle du haut comprend l’ali-mentation et le commutateur du ven-tilateur. Une alimentation stabiliséeà brancher sur le secteur (6 à12 V /300 mA) suffira. Pour le stabili-sateur (IC1), on choisira un modèle àfaible chute directe, qui délivreencore précisément 5 V quand on nelui fournit que 6 V. En utilisant unealimentation à tension variable, ons’offre le loisir de régler à son gré lavitesse du ventilateur de 12 V. Labasse tension se branche à K3, leventilateur à K2 et sur K1, le connec-teur d’alimentation de la platine decommande.On peut mesurer la tension de l’ac-cumulateur sur K6 (+a V et –a V). Unpetit cordon les relie directement ausupport d’accumulateurs, demanière à éviter que la chute de ten-sion sur le fusible et le câblage depuissance ne fausse les mesures. Lacellule R4 et C3 filtre le signal de K6,qui traverse ensuite un atténuateurréglable à trois calibres : 10,2 V,20,4 V et 40,8 V. La valeur à fondd’échelle de chacun d’eux corres-pond à FFHEX (255D). Ce sont lesniveaux de Out 0 et Out 1 qui déter-minent la position de l’atténuateur etles rapports de réduction ont étéchoisis de manière à éliminer toutcalcul superflu. Le programme« DIVITEST.HEX » sur la disquetteservira aux tests.Le reste du montage assure leréglage et le maintien du courant de

décharge. La grille du MOSFET depuissance (T4) reçoit un signal PWMde la sortie Servo1, filtré par R9 et

MESURE&TEST

1512/2001 Elektor

2k

58

4k

64

6k

81

10

k0

13

k3

16

k7

21

k5

28

k7

36

k5

46

k4

64

k9

0 1 2 3 4 5 6 7 8 9 * #

24

k9

010201 - 2 - 13

+5V

GND

00 18 28 36 48 58 67 76 88 97 A6 B8Valeurhexadécimale

Analogue

Figure 5. Le clavier et les indispensables diviseurs de tension.

K1

IC1LP2950CZ5.0

K4

K5

K6

K3K2

C1

100n

C4

100nC5

100n

C2

220µ 25V

C3

100µ50V

R1

1k

R5

16

k2

R6

48

k7

R7

97

k6

R8

18

k

R11

56

k

R12

10

k

R13

R14

R15

R16

R3

100k

R4

220Ω

R9

22k

R2

10k

25k

P1

D1

1N4148

T2

BS170

T3

T4

BUZ100

T1

BC517

D2

2x

R10

10k

100k

P2

C6

470p

CA3130

IC2

2

3

6

7

41

8

5

+Batt.

–Batt.

D

S

G

3A15 F

F1

+5V

0V

OUT2

INPUT2

OUT1

OUT0

SERVO1(PWM)

0V

+5V

INPUT1

+aV

–aV

12V

010201 - 2 - 14

Figure 6. Schéma du déchargeur proprement dit. Le MOSFET de puissance T4 se tape legros du travail.

Page 10: Elektor N°282 - Décembre 2001 - doctsf

leurs bornes est appliquée à l’amplificateuropérationnel IC2, lequel l’adapte et, par K5,l’envoie à Input 1 de la platine de commande.P1 règle le gain et P2 compense la dérived’entrée. Pour le réglage du rapport cycliquedu signal PWM, nous utilisons une variablequi nous indiquera si le courant reste stable.Si la tension descend sous 1 V, il est possibleque le MOSFET ne soit plus capable de four-nir le courant nécessaire. Dans ce cas, lavariable passe par zéro et l’événement serasignalé.En parallèle, mais de polarité inversée, surdrain et source du MOSFET de puissance T4,nous avons placé une diode. Si d’aventurequelqu’un relie un accumulateur à l’envers, lefusible F1 limitera la casse. Le tout, c’est

d’employer un fusible rapide.Le dessin du circuit imprimé ainsique la disposition des composantsse trouvent à la figure 7. Aucuneindication particulière n’est néces-saire. Tous les connecteurs sont desembases mâles, à l’exception de K3(bornes pour platine) et des connec-teurs d’alimentation pour lesquels ona utilisé des clous pour circuitimprimé. On montera les résis-tances R13 à R16 à 4 mm du circuitpour mieux évacuer la chaleur.Sur la maquette, nous avons ajoutédes tresses à souder aux pistes quimènent aux accumulateurs pour endiminuer la résistance. Vous pouvez

vous fier à la figure 8 pour comparervotre montage à notre résultat.

AssemblageNotre prototype, nous l’avons facile-ment introduit dans un boîtier Tekode type 362, mais naturellementd’autres modèles conviendraientaussi. Voyez, sur la photo du titre,comment nous avons intégré le toutau boîtier.La face avant est percée de huittrous de 14 mm de diamètre pourlaisser entrer l’air, que le ventilateurchasse par une large ouverture dansla face arrière. On fixera les deux pla-

MESURE&TEST

16 Elektor 12/2001

(C) ELEKTOR

010201-2

C1

C2

C3

C4C5

C6

D1

D2

F1

H1 H2

H3H4

IC1

IC2

K1

K2

K3

K4

K5K6

P1P2

R1

R2

R3

R4

R5

R6R7 R

8

R9

R10

R11

R12R13

R14

R15

R16

T1 T2

T3

010201-2

-+ D

Batt.

+

S

G

-

+12V0

0

+5V

aV +-

T4

T

3A15/F

(C) ELEKTOR

010201-2

Figure 7. Dessin des pistes et disposition des composants sur la platine.

Figure 8. Le circuit complet, une fois assemblé.

Liste des composantsde la platine du déchargeur

Résistances :R1 = 1 kΩR2,R10,R12 = 10 kΩR3 = 100 kΩR4 = 220 ΩR5 = 16kΩ2R6 = 48kΩ7R7 = 97kΩ6R8 = 18 kΩR9 = 22 kΩR11 = 56 kΩR13 à R16 = 1 Ω/0W5P1 = ajustable 25 kΩP2 = ajustable 100 kΩ

Condensateurs :C1,C4,C5 = 100 nF céramiqueC2 = 220 µF/25 V radialC3 = 100 µF/50 V radialC6 = 470 pF

Semi-conducteurs :D1 = 1N4148D2 = LED rouge à haut rendementT1 = BC517T2,T3 = BS170 (ou BSN10A)T4 = BUZ100IC1 = LP2950CZ5.0IC2 = CA3130

Divers :K1,K5 = embase mâle à 1 rangée de

3 contactsK2,K6 = embase mâle à 1 rangée de

2 contactsK3 = bornier encartable à 2 contacts au pas

de 5 mmK4 = embase mâle à 1 rangée de 5 contactsF1 = fusible 3,15 A (rapide) + porte-fusible

Page 11: Elektor N°282 - Décembre 2001 - doctsf

le 0 V. Ce qui correspond à K4, c’est uneembase femelle à 5 contacts, reliée à cinq filsséparés, chacun porteur, à l’autre extrémité,d’une embase femelle unipolaire. Ils se bran-cheront à Out 2, Input 2, Out 1, Out 0 et PWM

tines au plancher du boîtier à l’aided’entretoises. Pour le clavier etl’écran à cristaux liquides, quelquescoups de scie dans la face avantdevraient faire l’affaire. N’oubliez pasde ménager des ouvertures pour lesdeux interrupteurs à glissière et lesbornes de raccordement pour fichebanane. Sur notre prototype, leconnecteur RS-232 a été fixé au côtégauche du boîtier. Il ne reste plus que quelquesconnexions à effectuer, le schéma dela figure 9 lèvera tout doute à ce pro-pos. Le cordon d’alimentation arrivesur K3 (attention à la polarité !) Il fautencore souder trois fils au MOSFETde puissance, nous avons pris un filplus épais pour le drain et la source,et à l’autre extrémité, trois cossesfemelles à glisser sur les broches deraccordement de T4 sur le circuitimprimé. Nous avons choisi égale-ment du gros fil pour relier à la pla-tine les bornes des accumulateurs etles connecteurs de la face avant.Pour toutes les autres connexions,nous avons utilisé des rangées deconnecteurs femelles encartables,sciées à la longueur voulue. À l’autreextrémité du cordon pour K6, nousavons fixé deux cosses à souder quenous avons ensuite vissées au busde raccordement. Le ventilateur sebranche sur K2 et la fiche du cordond’alimentation de la platine de com-mande sur K1. Pour relier K5 à

Input 1 de la platine de commande,nous avons pris un cordon à trois filsterminé de part et d’autre par uneembase femelle à trois pôles. Cecâble véhicule également le +5 V et

MESURE&TEST

1712/2001 Elektor

F1

K1

K2

K3

K4

K5K6

-+ D

Batt.

+

S

G

-

+12V0

+12V

0

0

+5V

aV +-

T4

T

3A15/F

JP1

K1

K2

K3

K4

K5

K6

K7

S1

+5V

0

1 2 3

4 5 6

7 8 9

* 0 #

BUZ100Ventilateur

Clavier(avec résistances)

010201 - 2 - 15

6 - 12 VDC

adaptateursecteur

AffichageLCD

off

on

auto

chip

BUZ100

Analogue +5V GND

Figure 9. Schéma de câblage du déchargeur d’accumulateur. Beau spaghetti, non ?

Liste des composantspour l’assemblage

– boîtier tel que, par exemple,Teko type 362

– radiateur pour T4 : Fischer SK-132/37,5/SA par exemple

– ventilateur 40 x 40 mm, 12 Vdc– adaptateur secteur 300 mA, 6 à

12 Vdc, non régulé– pince crocodile rouge telle que,

par exemple, Hirschmann PKI-100

– pince crocodile noire idem– clavier 12 touches à connexion

commune et 12 lignesindividuelles tel que 19-55-61(Conrad)

– interrupteur à glissière miniaturebipolaire

– barrette de contacts femelles aupas de 2,54 mm

Page 12: Elektor N°282 - Décembre 2001 - doctsf

(servo 1), dans l’ordre. On arrive ainsi à éli-miner les boucles de masse.Il ne reste plus qu’à relier K5 à l’interrupteur« Chip-Auto » du tableau de bord de la platinede commande.

LogicielCe déchargeur d’accumulateurs vous proposedeux modes de fonctionnement : ou vous acti-vez le processeur de commandes ou vous luifaites exécuter un programme. Pour commu-niquer avec l’appareil ou charger le logiciel,nous devrons disposer, dans le PC, d’un logi-ciel « CHIPTERM » ou « VBTERM » (la versionpour Windows) pour assurer le transit de don-nées via le port sériel. Le commutateur« Chip-Auto » doit être dans la position Chip etle déchargeur allumé.La combinaison <Alt+l> permet alors lechargement d’un programme. Dans le bas del’écran une invite vous demande le nom duprogramme choisi. Ils se terminent tous parl’extension « .HEX ». Confirmez par Entrée etle programme se charge. Le logiciel « KEY-TEST » permet d’inspecter le clavier. On peutle lancer par la commande « Chip » ou glisserle commutateur « Chip-Auto » en positionAuto et mettre le déchargeur en marche. Nous devons aussi pouvoir contrôler le divi-seur de tension. Pour ce faire, nous disposonsdu programme « DIVITEST » Appliquons unetension continue de 5 V aux bornes de rac-cordement. L’afficheur devrait indiquer 125(5 / 10,2 x 255) et une atténuation de 2. Si l’onapplique 15 Vcc, la valeur doit passer à 188et l’atténuation à 4. Finalement, pour 25 Vcc,on obtiendra une valeur de 156 et 8 de facteurd’atténuation. Les grandeurs mesurées peu-vent s’écarter de 2 à 3 unités. Au-delà decette fourchette, partant de diviseurs de ten-sion corrects, on peut en déduire la présenced’un courant de fuite de T2 ou de T3.Une fois ces examens réussis, nous pouvonscharger le programme « NICADIS ». L’appareilest prêt à fonctionner, reste le réglage du cou-rant. Raccordez au déchargeur un bloc d’ac-cumulateurs, en série avec un ampèremètre.Indiquez le nombre de cellules qui le compo-sent, la tension par élément et programmezle courant à 2 500 mA. À l’aide de P1, réglezle courant à 2 500 mA. Choisissez ensuite uncourant de 100 mA et ajustez P2 pour obtenircette valeur. L’affichage fluctue quelque peu,à cause de la boucle d’asservissement, choi-sissez donc un juste milieu.

Élaboration de la courbe dedéchargeÀ chaque minute, pendant la décharge, l’ap-pareil mémorise un échantillon de tension

instantanée. Les adresses 600HEX à7FFHEX de l’EEPROM sont réservéesà cet usage. L’adresse 600HEXcontient le facteur d’atténuation etl’adresse 601HEX, la grandeur ducourant. À la fin du processus, ceséchantillons pourront être sauvegar-dés dans un fichier. Dans le proces-seur de commandes, on ouvre unfichier .LOG par la combinaison<Alt+o>. La commande« prog 600 » affiche l’adresse 600HEX,suivie de l’octet qui s’y trouve et lesuivant. La touche « + » permet d’af-ficher les adresses suivantes. Vouspouvez continuer jusqu’à ce quevous rencontriez une donnée égale à

00H, elle marque la fin des échan-tillons. Pour fermer le fichier .LOGutilisez la combinaison <Alt+c>. Lelogiciel « LOGDAT.EXE » convertitles données échantillonnées envaleurs de tension et les numérote.En outre, il les interpole pour que lacourbe apparaisse plus fluide, cal-cule la tension moyenne et l’énergiedispensée durant la décharge. Lelogiciel traceur est alors capable derelire le fichier .DAT que nous avonscréé, puis de dessiner la courbe dedécharge. Le fichier PLOTR.ZIPcontient toutes les informationsnécessaires.

(010201-II)

MESURE&TEST

18 Elektor 12/2001

Analyse d’une courbe de déchargeLa courbe de la figure 10 illustre la décharge d’une batterie de sept accumula-teurs CdNi, d’une capacité de 1 900 mAh. Nous avions fixé le courant à 190 mA(0,1 C) et la tension finale à 1 V par élément. Après 8 heures et 4 minutes, nosaccumulateurs étaient déchargés et dévoilaient une capacité de 1 532 mAh. Unpeu faiblarde, direz-vous, mais notre batterie n’était plus toute jeune non plus.La courbe se présente selon les prévisions, mais il y a quelque chose d’étrange.Lorsque la batterie atteint 8,4 V, elle est à plat et sa tension chute brutalement.Un comportement classique… Par contre, à 7,1 V, la courbe se redresse nette-ment. Comme la chute de tension en ce point vaut 1,3 V, il est manifeste qu’undes éléments s’est polarisé en inverse et qu’il a commencé alors à se charger àl’envers. Peu après, la tension finale était atteinte. Pour un courant de déchargecorrespondant à 0,1 C, il aurait été plus judicieux de fixer la tension finale à 1,1 Vpar élément. Nous aurions probablement évité cette inversion.Les accumulateurs au plomb sont encore plus sensibles au renversement de ten-sion que les CdNi ou les NiMH. En pratique on choisira une tension finale de75% à 80% de la tension nominale. Bien entendu, le courant de décharge inter-viendra également dans cette décision.

010201 - 16

07.00

7.25

7.50

7.75

8.00

8.25

8.50

8.75

9.00

9.25

9.50

50 100 150 200 250 300 350 400 450Min

V

Courbe de décharge d’une batterie de 7 accumulateurs au CdNi.

Page 13: Elektor N°282 - Décembre 2001 - doctsf

Qui veut convertir ses idées en cir-cuits y parvient la plupart du tempsplus vite avec un microcontrôleurqu’avec l’électronique convention-nelle. Mais la programmation denombreux systèmes est relativementcomplexe. C’est pourquoi Elektor amis au point une nouvelle carteFlash. La mémoire de programmeFlash et une conception élaborée dusystème garantissent une program-mation simple et rapide.Les réflexions préliminaires au sujetd’une nouvelle carte microcontrôleursont parties des buts suivants : Ilfaudrait développer un circuit quis’adresse à l’utilisateur expérimentéautant qu’au débutant. Le systèmedevait « comprendre » d’emblée lesdivers langages de programmation,de l’assembleur à Basic en passantpar C. Il devrait aussi être facilementextensible et simple à programmer.En outre, un programme transmis àla carte devait être conservé après lamise hors tension. On s’évite ainsi latâche pénible de graver une EPROM.La carte elle-même devait donc servirégalement de programmateur. Il existe de nombreux microcontrô-leurs à EEPROM internes ou àmémoire Flash qui offrent en prin-cipe des capacités de programma-tion aisée. Devait-on choisir un PIC,un contrôleur de la famille 68, un

MICROCONTRÔLEUR

20 Elektor 12/2001

Matériel et logiciel didactiques

Carte 89S8252 FlashBase d’un cours sur les microcontrôleurs

par B. Kainka

La carte microcontrôleur sur laquelle est basée un cours de programma-tion doit être d’un emploi simple tout en offrant les avantages d’un micro-contrôleur moderne avec périphérie. Cela la rend aussi intéressante pourles vieux routiers des contrôleurs !

Page 14: Elektor N°282 - Décembre 2001 - doctsf

un programme dans la zone interne demémoire Flash.

La carteLa carte Flash étend la mémoire du contrô-leur de 32 K de RAM, comporte une interfaceLCD, une interface de sérielle et une interfacede programmation. Elle offre aussi une zonede prototypage comportant 130 îlots de sou-dage. Il est donc facile d’ajouter de petitesextensions, d’une commande de moteur à desinterfaces supplémentaires en passant pardes capteurs. Le bus de données et d’adres-sage ainsi que tous les ports sont accessiblespar des barrettes de connexion. Le systèmepeut donc être étendu presque sans limites.La carte possède 2 embases DB9. La commu-nication avec l’interface sérielle s’effectue parl’une d’entre elles. Comme chaque microcon-trôleur de la famille 8051, le 89S8252 possèdeaussi un UART interne pouvant être parexemple connecté à une interface COM du PCpar un pilote d’interface MAX232. L’utilisateuret le logiciel sont les seuls à décider si le PCtransmet des commandes au contrôleur, litdes résultats de mesures ou communiqueavec l’interpréteur BASIC interne.La seconde embase DB9 (COM2) ne sert qu’àla programmation du contrôleur. En raccor-dant un PC, celui-ci peut réinitialiser le micro-contrôleur, le commuter en mode de pro-grammation, transférer et lancer un pro-gramme. Toute la carte peut donc êtrepratiquement télécommandée. Elle pourraitdonc être programmée sans difficulté mêmesi elle se trouvait en un lieu inaccessible. La première embase DB9 COM1 est reliée àl’une des interfaces sérielles du PC. L’utilisa-teur écrit et compile alors le programme, letransmet au contrôleur et le teste sur la carte.

AVR ou un 8051 étendu ? La ques-tion difficile quant au type de contrô-leur a été tranchée en faveur de lafamille 8051. Il y a de bonnes raisonspour cela : la plupart des autrescontrôleurs ne sont fabriqués quepar une seule entreprise, ce quipourrait conduire à des problèmesde livraison dans des cas extrêmes.La famille 8051, au contraire, peutêtre désignée à juste titre commenorme industrielle, car de nom-breuses entreprises produisent desdérivés du standard originellementdéveloppé par Intel. Si donc unappareil a été développé et si lasociété A est subitement incapablede livrer, on peut passer facilement àun contrôleur de la société B ou de lasociété C. Il existe en outre de nom-breux logiciels pour la famille 8051 etune littérature abondante à son sujet.Qui mise sur la norme 8051 ne peutpas perdre. Cela est encore valableaujourd’hui bien que de nouveaux

concepts ait entre temps vu le jour.L’AT89S8252 d’Atmel utilisé (dont onretrouve la structure interne enfigure 1) correspond essentielle-ment au 8052 d’Intel. Cela signifiepar exemple que le BASIC-52 bienconnu peut être utilisé sans pro-blèmes avec cette puce. Certainescaractéristiques supplémentairesferont plaisir au réalisateur. Il y a parexemple une surveillance du type« chien de garde » (watchdog)interne et une EEPROM de donnéesde 2 Koctets (K). La mémoire de pro-gramme de 8 K en technologie Flashconstitue toutefois l’argument déci-sif. Le programmateur de cettemémoire se trouve aussi sur la puce.On n’a même pas besoin d’une ten-sion de programmation particulière :la tension normale de 5 V suffit. Laprogrammation est effectuée ensérie et de façon synchrone par uneinterface SPI. Seules quelques liai-sons sont nécessaires pour charger

MICROCONTRÔLEUR

2112/2001 Elektor

Microcontrôleur89S8252– 32 K RAM– 8 k de mémoire Flash– 2 k d’EEPROM de données– Temporisateur de surveillance (Watchdog-

Timer) interne– Interface sérielle– Interface de programmation– Tension de fonctionnement de 9 à 12 V,

régulateur de tension 5 V– Interface LCD– Raccordement du bus par connecteurs à

picots– Raccordement des ports par connecteurs à

picots– Zone d’essais pour extensions

PORT 2 DRIVERS

PORT 2LATCH

P2.0 - P2.7

FLASHPORT 0LATCHRAMEEPROM

PROGRAMADDRESSREGISTER

BUFFER

PCINCREMENTER

PROGRAMCOUNTER

DPTRINSTRUCTIONREGISTER

BREGISTER

INTERRUPT, SERIAL PORT,AND TIMER BLOCKS

STACKPOINTERACC

TMP2 TMP1

ALU

PSW

TIMINGAND

CONTROL

PORT 1 DRIVERS

P1.0 - P1.7 010208 - 12

PORT 3LATCH

PORT 3 DRIVERS

P3.0 - P3.7

OSC

GND

VCC

PSEN

ALE/PROG

EA / VPP

RST

RAM ADDR.

REGISTER

PORT 0 DRIVERS

P0.0 - P0.7

PORT 1LATCH

WATCHDOG

SPIPORT

PROGRAM

LOGIC

Figure 1. Schéma du contrôleur AT89S8252.

Page 15: Elektor N°282 - Décembre 2001 - doctsf

Ce n’est que si le programme transmis abesoin de communiquer avec le PC qu’il fautaussi utiliser K1. Il existe 2 possibilités. Soitpermuter le câble de liaison, soit utiliser2 interfaces COM du PC. C’est possible surde nombreux PC dont les 2 interfaces COMsont disponibles, la souris occupant uneconnexion PS2 ou fonctionnant sur USB. L’uti-lisation en parallèle de 2 interfaces COM serévèle souvent particulièrement pratique etconviviale. La programmation et les testsvont de paire si les outils nécessaires sont uti-lisés parallèlement.Le circuit de la figure 2 est basé en grandepartie sur la solution habituellement utiliséeavec les systèmes 8051. Un verrouillaged’adressage 74HCT573 (IC3) fournit les8 adresses inférieures pour les 32 K de RAM(IC4). Comme la ligne CS de la RAM est rac-cordée à la ligne d’adressage A15, la mémoirene couvre que la zone de 0 à 7 FFFHEX ; la

zone supérieure est disponible pourdes extensions à partir de 8000 HEX.La ligne WR de commande d’accèsd’écriture est excitée directementpar le processeur. La ligne Œ desaccès lecture reçoit par contre unsignal engendré à l’aide des deuxportes du 74HCT00 (IC5) à partir dela fonction logique ET appliquée ausignal PSEN pour les accès au pro-gramme et au signal WR pour lesaccès aux données. Les contrôleurs8051 utilisent normalement desdomaines d’adressage parallèlespour les programmes et les données.Cette séparation ne s’applique pasici. Le contrôleur utilise, certes, leplus souvent un programme dans laROM Flash interne de 8 K et ne placeque des données dans la RAM. Ildemeure toutefois possible d’utiliser

des parties de programme dans leszones de la RAM situées au-dessusde 2000 HEX. Puisque ces zones peu-vent aussi contenir des données, ilest possible de rendre les pro-grammes auto-modifiables. Le pro-cesseur écrit son propre code dans laRAM puis l’exécute.L’EEPROM interne du processeur estpar ailleurs une pure mémoire dedonnées parallèle à la RAM externe.L’EEPROM doit être activée par lelogiciel. On peut alors y placer desdonnées de façon permanente. Les2 K inférieurs de la RAM externesont inactifs dans ce cas.L’afficheur LC est raccordé lui aussiau bus de données et occupe ledomaine supérieur à 8000 HEX. Unefonction logique NON-ET (NAND) deRD et WR fournit le signal d’activa-

MICROCONTRÔLEUR

22 Elektor 12/2001

EA/VP

ALE/P

RESET

AT89S8252

P1.1

P1.0

P0.0

P0.1

P0.2

P0.3

P0.4

P0.5

P0.6

P0.7

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

P2.0

P2.1

P2.2

P2.3

P2.4

P2.5

P2.6

P2.7

PSEN

INT0

INT1

IC1

X 1 X 2

TXD

RXD

39

38

37

36

35

34

33

32

21

22

23

24

25

26

27

28

31

19 1820

40

17 RD

16 WR

29

30

11

10

12

13

14 T015 T1

1

2

3

4

5

6

7

8

9

C2

22p

C1

22p

X1

11.059MHz

C15

100n

+5V

62256

IC4

A10

A11

A12

RAM

A13

A14

10A0

A1

A2

A3

A4

A5

A6

A725

A824

A921

23

1422

OE

20CS

28

11D0

12D1

13D2

15D3

16D4

17D5

18D6

19D7

27

WE

26

9

8

7

6

5

4

3

2

1

C5

100n

+5V

AD0

AD1

AD2

AD3

AD4

AD5

AD6

AD7

AD0

AD1

AD2

AD3

AD4

AD5

AD6

AD7

A8

A9

A10

A11

A12

A13

A14

A15

A0

A1

A2

A3

A4

A5

A6

A7

A0

A1

A2

A3

A4

A5

A6

A7

A8

A9

A10

A11

A12

A13

A14

AD0

AD1

AD2

AD3

AD4

AD5

AD6

AD7

12

34

56

78

910

1112

1314

1516

1718

1920

2122

2324

2526

2728

2930

3132

3334

K8

IC2.A

EN

2 3

1

IC2.D

EN

12 11

13

IC2.C

EN

98

10

S1

R4

47

k

R3

1k

C4

10µ 63V

+5V

K2DB9

1

2

3

4

5

6

7

8

9

COM2

K1DB9

1

2

3

4

5

6

7

8

9

COM1

C10

10µ63V

C11

10µ63V

C7

10µ63V

C810µ

63V

C9

10µ63V

+5V

R2

27kR7

27

k

D2

4V7

R1

27kR6

27

k

D1

4V7

P1.7

P1.5

P3.0

P3.1

P3.2

P3.3

P3.4

P3.5

P3.6

P3.7

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7 2

13

IC5.A

&4

56

IC5.B

&

P1.6

P3.1

P3.0

IC2.B

EN5 6

4

MAX232

RS1OUT

RS2OUT

R1OUT

R2OUT

R1IN

IC6

T1IN

T2IN

R2IN

C1–

C1+

C2+

C2–

11

12

10

13

14

15

16V+

V-

7

8 9

3

1

4

5

2

6

A15

12

34

56

78

910

1112

1314

K3

K4 K5

K6

K7

A0

A1

A2

A3

A4

A5

A6

A7

A8

A9

A10

A11

A12

A13

A14

A15

AD0

AD1

AD2

AD3

AD4

AD5

AD6

AD0AD1

AD2AD3

AD4AD5

AD6AD7

AD7

+5V

P3.0

P3.1

P3.2

P3.3

P3.4

P3.5

P3.6

P3.7 +5V

74HCT573

IC3

12

13

14

15

16

17

18

19

EN11

C1

1D2

3

4

7

8

9

5

6

1

9 10

8

IC5.C &

P1.0

P1.1

P1.2

P1.3

P1.4

P1.5

P1.6

P1.7

R5

1K

P3.

7

P3.

6

P3.

7

P3.

7

P3.

6

D3BAT85

+5V

C6

100n

A1

A15

A0

10k

P1

+5V

7805

IC7

C12

1000µ16V

C13

100µ10V

C14

100n

D4

1N4001

+5VK9

+12V

IC2

14

7

IC5

14

7

C3

100n12 13

11

IC5.D&

+5V

010208 - 11

IC2 = 74HC126

IC5 = 74HCT00

RESET(PROG)

TXD

RXD

DSR

RTS

RXD

CTS

DTR SCK

MOSI

MISO

ALE

ALE

PSEN

WR

RD

RD

WR

LCDE

R/S

R/W

Figure 2. Un système microcontrôleur classique et bien conçu.

Page 16: Elektor N°282 - Décembre 2001 - doctsf

TXD et RXD est raccordée comme d’habitudeau port du PC par un circuit intégré d’interfa-çage du type MAX232. L’acquittement n’estpas utilisé. Les liaisons internes des lignesd’acquittement permettent de tenir comptedes besoins de certains programmes d’ému-lation de terminal qui attendent un signald’acquittement XON.La construction de la carte Flash est enfan-tine et devait être terminée en 1 heure. Onpeut utiliser de (bons) supports pour tous lescircuits intégrés, mais il faut alors veiller à lafin à les placer dans le bon sens (comme lesdiodes et les condensateurs électrolytique).Pour K8, on se servira d’un connecteur àpicots de 34 broches à 2 rangées (ergot dedétrompage vers l’extérieur). Les broches dumilieu ne sont pas utilisées et doivent êtresectionnées pour que les 4 connecteurs à1 rangée de 8 broches placés aux extrémitésdes câbles puissent se trouver côte à côte.

ProgrammationL’interface de programmation du contrôleurcomporte une interface SPI avec les lignessuivantes :

SCK (P1.7) : ligne d’horlogeMISO (P1.6) : lire des donnéesMOSI (P1.5) : écrire des donnéesRST : ligne de réinitialisation

La programmation se déroule lorsque la lignede réinitialisation est active. Un outil de pro-

tion (Enable) de l’afficheur. Unesimple logique basée sur de diodesbloque ce signal dans le domained’adressage s’étendant jusqu’à7FFFHEX. L’afficheur occupe alors lesadresses suivantes :

8000HEX : écrire une commande

8001HEX : lire une commande8002HEX : écrire des données8003HEX : lire des données

Ce domaine se répète jusqu’à FFFF-

HEX. On peut donc utiliser aussi bienle domaine de F000HEX à F003HEX.L’interface sérielle avec les lignes

MICROCONTRÔLEUR

2312/2001 Elektor

64K

32K

8K

010208 - 13

2K

domaine des E / S8000h ... FFFFh

ext. RAM,0000h ... 7FFFh

EEPROM 0000h ... 7FFFh

Zone de données Zone de programme

ext. RAM,2000h ... 7FFFh

Flash-ROMProgrammes

0000h ... 1FFFh

Figure 4. Mémoire interne et externe de lacarte microcontrôleur.

010208-1

010208-1(C) ELEKTOR

Figure 3a. Disposition de la carte et …

Page 17: Elektor N°282 - Décembre 2001 - doctsf

grammation engendre donc un état de réini-tialisation et écrit ensuite les données parMOSI, chaque bit étant transmis dans unregistre à décalage interne du processeur à lafréquence de SCK. La ligne MISO permet desurveiller de la même manière le succès de laprogrammation ou de lire un programme.Tous les signaux sont produits directementpar les lignes RS-232 qui fournissent ±10 V. Ilest donc nécessaire de les adapter au niveau5 V du processeur. La moitié encore libre duMAX232 se charge de l’adaptation du niveaudes lignes de données MOSI et MISO. Lesignal d’horloge et le signal de réinitialisationsont par contre remis en forme au moyend’une limitation de tension par diodes zeneret des tampons à 3 états (Tristate) dans le74HC126 (IC2). On a bien entendu tenucompte de ce que ces connections du portpeuvent exercer une autre fonction dans unprogramme du microcontrôleur. C’est pour-quoi l’interface de programmation est com-plètement hors circuit lorsqu’elle n’est pas

utilisée. Les tampons se trouventalors dans un état à haute impé-dance et sont pour ainsi direabsents. Ce n’est que lors d’uneréinitialisation du processeur sur laligne DTR que les tampons restantsredeviennent actifs. Cela n’est parailleurs pas le cas lors d’une réinitia-

lisation effectuée en pressant le bou-ton sur la carte. Un étage tamponfonctionne aussi dans le 74HC126parallèlement au bouton de réinitia-lisation. En fait, un FET canal P avecdrain ouvert commandé par DTRjoue le rôle d’un deuxième bouton deréinitialisation. Le signal de réinitia-

MICROCONTRÔLEUR

24 Elektor 12/2001

010208-1

C1

C2

C3

C4

C5

C6

C7

C8C9 C10C11

C12C13

C14

C15

D1D2

D3

D4

H1 H2

H3H4

IC1

IC2

IC3IC

4

IC5IC6

IC7

K1K2

K3K4

K5

K6

K7

K8

K9

P1

R1R2

R3R4

R5

R6R7

S1 X1

010208-1

comm2

comm1

Figure 3b. … schéma de montage.

Liste des composants

Résistances :R1,R2,R6,R7 = 27 kΩR3,R5 = 1 kΩR4 = 47 kΩP1 = ajustable 10 kΩ

Condensateurs :C1,C2 = 22 pFC3,C5,C6,C14,C15 = 100 nF céra-

miqueC4,C7 à C11 = 10 µF/63 V verticalC12 = 1000 µF/16 V verticalC13 = 100 µF/10 V vertical

Semi-conducteurs :D1,D2 = diode zener 4V7/ 500 mWD3 = BAT85D4 = 1N4001

IC1 = AT89S8252 24PC (Atmel)IC2 = HC126IC3 = 74HCT573IC4 = 62256 (120 ns)IC5 = 74HCT00IC6 = MAX232 (Maxim)IC7 = 7805

Divers :K1,K2 = embase Sub-D à 9 contacts

encartable en équerreK3 = embase HE10 à 2 rangées de

7 contacts avec détrompeurK4 à K7 = embase à 1 rangée de

7 contacts, mâleK8 = embase HE10 à 2 rangées de

17 contacts avec détrompeurK9 = embase jack pour adaptateur

secteurS1 = bouton-poussoir à contact travailX1 = quartz 11,0592 MHz

Brochage de K81 GROUND2 A153 GROUND4 A145 +5V6 A137 +5V8 A129 ALE10 A1111 PSEN12 A1013 WR14 A915 RD16 A817 NOT CONNECTED18 NOT CONNECTED19 AD720 A721 AD622 A623 AD524 A525 AD426 A427 AD328 A329 AD230 A231 AD132 A133 AD034 A0

Page 18: Elektor N°282 - Décembre 2001 - doctsf

sélectionne le fichier de programme appropriédans le menu de fichier qui s’affiche. La pro-grammation démarre lorsque le fichier a étéchoisi et son état d’avancement peut être véri-fié dans la fenêtre de texte. À la fin de latransmission, le programme remet automati-quement le contrôleur en mode RUN, ce quifait démarrer le programme.

Test préliminaireUn premier programme de démonstration estdisponible sur la disquette. Le programmeFlashtest1.hex ou Flashtest1.bin contient unecourte boucle de programmation avec sortiesur le port en ordre ascendant. Une fois latransmission terminée, on trouve un signalrectangulaire sur toutes les broches de Port1.Le bon fonctionnement peut être vérifié faci-lement si on a un oscilloscope sous la main.Mais une LED avec résistance de protectionraccordée entre VCC et une ligne de Port1 faittout aussi bien l’affaire. On verra P1.7 cligno-ter lentement, P1.6, P1.5 à une fréquence2 fois plus élevée et ainsi de suite. Cetexemple a par ailleurs été écrit en langageassembleur. Le listage 1 donné ci-dessousreproduit le premier programme de démons-tration flash1.asm.

; test1 flash #include 8051.H.org 0000Hmain mova,#00next mov P1,amov r2,#255loop1 movr3,#20loop2 djnz r3,loop2

djnz r2,loop1inc asjmp next.end

Si la carte a réagi correctement, on peut com-mencer à développer ses propres pro-grammes. L’utilisateur peut avoir recours auxoutils de développement déjà disponibles. Lacarte accepte tous les programmes, qu’ilssoient développés en langage assembleur, enBasic-52, Pascal ou C. Les rôles sont pour ainsi dire inversés lors del’utilisation de Basic-52. Les programmesBasic sont en effet traités comme des donnéespar l’interpréteur. L’interpréteur lui-même estfichier programme de 8 K chargé directementdans le contrôleur. Il provient du légendaireBASIC-52-AH et a été mis gratuitement sur lemarché par Intel. Il est donc permis de distri-buer le logiciel au moyen de la disquette deprogramme ou par Internet. Il est aussi pos-sible d’utiliser la version améliorée Basic-52 V1.3 actuellement disponible (Elektorn°272, février 2001, page 44 et suivantes). Letransfert dans le contrôleur demande de lapatience car la transmission de 8 Koctets en

lisation est donc toujours positionnéà l’état actif haut et n’est jamais misactivement à la masse. Cela est pos-sible parce que l’entrée du tampon

se trouve en permanence à Vcc alorsque l’entrée d’activation est com-mandée par l’interface de program-mation. La programmation du contrôleur estun processus relativement complexequi requiert tout d’abord la transmis-sion de certains octets de com-mande. L’utilisateur n’a toutefois pasà s’en soucier : un outil de program-mation sous Windows s’en charge.Le programme MikroFlash.exe setrouve sur la disquette EPS010208-11disponible auprès des adresses habi-tuelles et peut aussi être obtenu parInternet sur la page d’accueil Elektor.Il est simple à manier : on active l’in-terface souhaitée COM1 ou COM2 eton choisit tout d’abord le format defichier (Intel Hex ou binaire). On

MICROCONTRÔLEUR

2512/2001 Elektor

Figure 5. Programme de téléchargement.

Figure 6. Premier test par LED bran-chée à une ligne du port.

Listage 1. Le programme de test en assembleur permet de faire clignoter les LED.

1k

LED

010208 - 15

V

P1.3

CC

Page 19: Elektor N°282 - Décembre 2001 - doctsf

série et leur écriture successive dans lamémoire morte Flash durent environ uneminute. On peut se contenter d’utiliser le sys-tème comme ordinateur BASIC. Mais les pro-grammes BASIC ne sont pas sauvegardésaprès la mise hors tension car ils se trouventen RAM. Il faut avoir recours au langageassembleur ou à C pour développer le logicield’une utilisation permanente. Toutes les applications n’ont pas besoind’une RAM. Les programmes simples enassembleur s’en passent souvent. Dans cecas, la carte peut être utilisée avec un équi-pement réduit ne comportant par exempleque IC1, IC2 et IC3. Pour une application défi-nitive, il est possible de simplifier plus encore

la configuration. Le microcontrôleurIC1 suffit lorsqu’il s’agit d’une véri-table application mono-puce. Onpeut évidemment effectuer un pasde plus et retirer la puce program-mée de son support pour la placersur sa propre carte. La carte sert à lafois de système de développementet de programmateur. Un exemplerendra les choses plus claires.Il s’agit de développer un petit robotà commande par microcontrôleur. Onmonte tout d’abord les capteurs etles pilotes nécessaires dans la zoned’essai de la carte, puis on déve-loppe le programme de commande.

Dès que le fonctionnement est satis-faisant, on retire le microcontrôleurde son support et on réalise unecarte de commande aussi petite quepossible pour le robot. Le contrôleurse contente en gros d’un quartz etde quelques condensateurs. Et pen-dant que le robot se dirige automati-quement en cercle sur le tapis, unnouveau processeur se trouve déjàdans la carte de développementpour un nouveau projet. Il s’agirapeut-être cette fois d’un appareil demesure spécial pour le laboratoired’électronique.

(010208-1)

MICROCONTRÔLEUR

26 Elektor 12/2001

Aperçu du cours de basesur les microcontrôleurs

Les générations d’accros de la technique se suivent. Mais mêmel’électronicien expérimenté ne cesse jamais d’apprendre. Elektora reçu ces derniers temps un grand nombre de demandes dans cesens : comment se familiariser avec la technique des microcon-trôleurs ? Notre réponse : le nouveau cours de base sur lesmicrocontrôleurs qui commencera dans le fascicule de janvier2002 et comportera probablement 6 parties.

Certes, il existe déjà de nombreux livres sur le sujet et Internetoffre une foison d’applications concrètes. Mais on suppose la plu-part du temps des connaissances de base. Il est difficile pour ledébutant de s’y retrouver. Quel contrôleur doit-on adopter, quellogiciel utiliser ? Où se situent les limites de systèmes particuliers,quel langage de programmation se prête-t-il à quelle application ?Ce cours de base est destiné à dissiper les ombres du labyrinthede la technique des microcontrôleurs.

Le cours utilise le système Flash présenté dans ce fascicule. Ilmentionnera donc un grand nombre de possibilités d’emploi dedivers langages de programmation. Le cours utilisera le langageassembleur, Basic et C. Chacun pourra donc comparer les avan-tages et les inconvénients de ces langages. Mais loin de n’êtrequ’une introduction aux langages de programmation, le courssera principalement consacré à des applications typiques desmicrocontrôleurs. Les procédés et les techniques de mesure, decommande et de régulation seront aussi inculqués, tout commeles particularités du contrôleur utilisé et de la famille 8051 engénéral.

Quels avantages apporte la participation à ce cours ? Essayons de les résumer en quelques mots essentiels.

L’utilisateur reçoit une introduction approfondie en techniquesgénérales des applications sur microcontrôleurs, de l’utilisation dela mémoire à la gestion de composants périphériques complexesen passant par l’utilisation des ports et interfaces. Une comparai-son approfondie des langages de programmation permet de choi-sir en toute connaissance de cause les outils appropriés. Les pro-grammes développés lors du cours peuvent être utilisés avecpresque tous les systèmes 8051. Le participant au cours se verra

toujours plus en mesure de concrétiser ses propres idées avec unmicrocontrôleur.

Les langages de programmation suivants sont utilisés :– assembleur (plus précisément : l’assembleur partigiciel TASM

bien connu complété par une interface Windows)– Basic-52 (également la nouvelle version 1.3 avec un éditeur

Windows et un programme d’émulation de terminal)– Le compilateur C Reads51 gratuit de la société Rigel qui fonc-

tionne lui aussi sous Windows

Pour ceux dont la phrase précédente a excité la curiosité, le logi-ciel READS51 peut être chargé directement sur Internet :(http://www.rigelcorp.com/). La société Rigel Corporation, Gai-nesville, FL, USA fabrique des produits pour microcontrôleurs,entre autres dans le domaine de l’enseignement, soutenus par lelogiciel gratuit pour les utilisations non commerciales. Elektor aété aimablement autorisé à utiliser le logiciel pour son cours debase sur les microcontrôleurs. Le programme d’émulation de ter-minal en Basic RbHost est, lui aussi, digne d’attention, au mêmetitre que les nombreux renseignements sur la page d’accueil deRigel.

Le cours de base sur les microcontrôleurs doit permettre decomparer ces 3 langages de programmation en accomplissant destâches identiques ou similaires dans chacun d’entre eux. Cela per-met de comparer leurs particularités, leur vitesse, les styles deprogrammation, etc. Si la table des matières du cours n’existeencore qu’à l’état d’ébauche, on dispose déjà d’un sommairegrossier de chaque sujet. Mots-clés :

– Premiers pas dans les langages de programmation, accès auxports, boucles temporelles

– Utilisation de l’interface sérielle– Emploi des temporisateurs du 8051, des compteurs, du fré-

quencemètre, de la modulation PWM– Commande de l’afficheur LCD, unité de sortie de texte par

RS232– Connexion et commande de convertisseurs analogiques-numé-

riques et numériques-analogiques– Extensions par le bus I2C, extension de ports, A/D-D/A, hor-

loge en temps réel– Particularités du 89S8252, l’EEPROM interne 2 K et le tempori-

sateur de surveillance (Watchdog-Timer)

Page 20: Elektor N°282 - Décembre 2001 - doctsf

INFOCARTE 12/2001

LTC490Pilote interface RS485/422

Microcontrôlleurs & Périphériques

LTC490Pilote interface RS485/422

Microcontrôlleurs & Périphériques INFOCARTE 12/2001Fabricant :Linear Technologywww.linear-tech.com/pdf/lt0490.pdf

Caractéristiques techniques :– Consommation de courant faible : Icc = 300 µA

typique– Convient aux applications RS-485 et RS-422– Alimentation asymétrique : +5 V– La plage de mode commun qui s’étend de –7 à

+12 V, permet une différence de masse de ±7 Ventre les périphériques connectés au bus

– Mise hors-fonction en cas de surcharge thermique– Sorties de circuits de commande libres de parasites

lors de la mise en et hors-fonction permettant l’in-sertion et la déconnexion des pilotes d’interface encours de fonctionnement

– Lors de la mise hors-fonction le pilote reste à hauteimpédance

– Les impédances d’entrée et de sortie des circuits decommande permet la connexion d’un maximum de32 émetteurs/récepteurs au bus.

– Hystérésis d’entrée (typique) : 70 mV– Délais de transfert de 28 ns avec tolérance de 5 ns

entre canaux– Compatible broche à broche avec le SN7519

Description :Le LTC490 est un circuit de commande de ligne oude bus différentiel à dissipation faible conçu pour letransfert de données multipoint selon le standard RS-485 avec une plage de mode commun étendue (de 12à –7 V). Le LTC490 respecte également le cahier descharges de RS-422.La technologie CMOS permet des économies de cou-rant significatives par rapport aux circuits intégrésbipolaires, sans que cela n’ait de conséquence sur l’in-sensibilité aux surcharges ou aux DES (DéchargesElectro-Statiques). La présence d’une fonction deprotection thermique élimine tout risque de dissipa-tion dépassant les normes pouvant naître à la suited’un conflit de bus, vu que dans ce cas-là les sortiespassent à haute impédance. Le récepteur possède luiaussi un dispositif de protection qui met la sortie auniveau haut lorsque les entrées se trouvent en l’air.

2712/2001

Elektor

Symbole Paramètre Conditions Min. Typ. Max. Unité

VOD1 Tension de sortie du pilote différentielle (hors charge) IO = 0 5 V

VOD2 Tension de sortie du pilote différentielle (en charge)R = 50 Ω (RS422) 2 V

R = 27 Ω (RS485) 1,5 55 V

DVODDifférence des tensions en mode push-pull des pilotes pour niveaux de sortie complémentaires

R = 27 Ω/50 W 0,2 V

VOC Tension de sortie en mode commun du pilote R = 27 Ω/50 W 3 V

∆|VOC| Différence des tensions en mode commun des pilotes pour niveaux de sortie complémentaires

R = 27 Ω/50 W 0,2 V

VIH Tension d’entrée High (D) 2.0 V

VIL Tension d’entrée Low (D) 0,8 V

IIN1 Courant d’entrée D ±2 µA

IIN2 Courant d’entrée A, BVCC = 0 V/5,25 V, VIN = 12 V 1 mA

VCC = 0 V/5,25 V, VIN = –7 V -0,8 mA

VTH Tension de seuil à l’entrée différentielle du récepteur –7 V ≤ VCM ≤ 12 V -0,2 0,2 V

∆VTH Hystérésis du récepteur VCM = 0 V 70 mV

VOH Tension de sortie du récepteur High IO = –4 mA, VID = 0,2 V 3,5 V

VOL Tension de sortie du récepteur Low IO = 4 mA, VID = –0,2 V 0,4 V

IOZR Courant de sortie du récepteur Tri-state VCC= Max., 0,4 V ≤ VO ≤ 2,4 V ±1 µA

ICC Consommation de courant Hors charge, D = Masse ou VCC 300 500 µA

RIN Résistance d’entrée du récepteur –7 V ≤ VO ≤ 12 V 12 kΩ

IOSD1 Courant de court-circuit du pilote, VOUT = High VO = –7 V 100 250 mA

IOSD2 Courant de court-circuit du pilote, VOUT = Low VO = 12 V 100 250 mA

IOSR Courant de court-circuit du récepteur 0 V ≤ VO ≤ VCC 7 85 mA

IOZ Courant de sortie du pilote (Tri-State) VO = –7...+12 V ±2 ±200 µA

Caractéristiques électriques (VCC = 5 V ±5 %, Tamb sur la plage des températures de service)

Broche Designation Fonction

1 VCC Tension d’alimentation positive (4,75 V ≤ VCC ≤ 5,25 V)

2 R La sortie du récepteur passe au niveau haut pour A>B+200 mV et au niveau bas pour A<B-200 mV

3 DEntrée pilote. Un niveau bas sur D force la sortie A au niveau bas et la sortie B au niveau haut ; un niveau haut sur D force A au niveau haut et B au niveau bas

4 GND Masse

5 Y Sortie du pilote

6 Z Sortie du pilote

7 B Entrée récepteur

8 A Entrée récepteur

Page 21: Elektor N°282 - Décembre 2001 - doctsf

LTC490Pilote interface RS485/422

Microcontrôlleurs & Périphériques

LTC490Pilote interface RS485/422

Microcontrôlleurs & Périphériques INFOCARTE 12/2001INFOCARTE 12/2001

28El

ekto

r12

/200

1

Tension d’alimentation (VCC) 12 V

Courant d’entrée du pilote -25 à +25 mA

Tension d’entrée du pilote -0,5 à VCC+0,5 V

Tension de sortie du pilote ±14 V

Tension d’entrée du récepteur ±14 V

Tension de sortie du récepteur -0,5 à VCC+0,5 V

Température de service (LTC490C) 0 à +70 °C

Température de service (LTC490I -40 à +85 °C

Valeurs maximales

Symbole Paramètre Min. Typ. Max. Unité

tPLH Entrée vers sortie du pilote (de Low vers High) 10 30 50 ns

tPHL Entrée vers sortie du pilote (decHigh vers Low) 10 30 50 ns

tSKEW Différence d’une sortie à l’autre (pilote) 5 ns

tr, tf Temps d’établissement/retombée du pilote 5 5 25 ns

tPLH Entrée vers sortie du récepteur (de Low vers High) 40 70 150 ns

tPHL Entrée vers sortie du récepteur (de High vers Low) 40 70 150 ns

tSKD Différence établissement/retombée (récepteur) 13 ns

Caractéristiques de commutation(VCC = 5 V ±5 %, Tamb sur la plage des températures de service, RDIFF = 54 Ω, CL1 = CL2 = 100 pF)

Application typiqueDémultiplexeur DMX 8 voiesElektor 12/2001

Types de boîtier et brochageLTC490CN8 DIP 8 broches plastique,

plage de température de fonctionnement de 0 à 70 °C

LTC490CS8 SOIC 8 broches plastique, plage de température de fonctionnement de 0 à 70 °C

LTC490IN8 DIP 8 broches plastique, plage de température de fonctionnement de –40 à +85 °C

LTC490IS8 SOIC 8 broches plastique, plage de température de fonctionnement de –40 à +85 °C

Page 22: Elektor N°282 - Décembre 2001 - doctsf

Il est possible, comme nous le disions dans lapremière partie, de réaliser 2 versions decette alimentation. Nous n’avons pas dessinéde platine spécifique, qui partant aurait étéplus petite, pour la version 1 A, ni prévu dedessin de face avant pouvant être utilisée surun boîtier de dimensions plus faibles quecelui prévu pour la « grosse » version de l’ali-mentation, mais nous nous sommes concen-trés sur la version 2,5 A. L’alimentation 2,5 A prend place dans un cof-fret métallique de 200 x 180 x 100 mm (l/p/h)

et requiert un transformateur torique24 V/80 VA.Il est facile dans ce cas-là de relierles parties du coffret avec la ligne deterre. Il faut en outre utiliser impéra-tivement un filtre secteur si l’on veutéviter que le contrôleur ne procède àune réinitialisation au moindre pro-blème au niveau de la tension sec-teur. La platine est fixée au-dessusdu fond du coffret à l’aide d’entre-toises, seuls le transformateur et,

éventuellement, comme sur la photo,le filtre secteur. Le dos du coffretreçoit le radiateur et, à côté de l’em-base RS-232, une bride anti-arrache-ment pour le câble secteur, voire uneentrée secteur (à porte-fusible inté-gré). L’idéal consiste bien évidem-ment à utiliser une entrée secteurdotée d’un filtre secteur. Le filtre quenous avons utilisé possédait lescaractéristiques suivantes : 2L =2,4 mH, Y = 2 200 pF, X2 = 0,1 µF et

ALIMENTATION

30 Elektor 12/2001

Alimentation numériquePartie 2 : souder, scier, percer

La réalisation de cette alimentation numérique requiert une bonne dosede soin et de ponctualité. L’objectif final n’est-il pas en effet que, tant sousl’aspect mécanique qu’électronique, l’alimentation réalisée puisse pré-tendre faire partie des « professionnelles ».

VOLTAGE CURRENT

0 - 25 V0 - 2.5 A

DIGITAL POWER SUPPLY

ON

OFF

POWER

000166 - F

Figure 1. Cette proposition de dessin de face avant peut se transformer en une face avant de toute beauté.

Page 23: Elektor N°282 - Décembre 2001 - doctsf

ration qui le débarrassera du même coup deses barbes. Si vous ne vous sentez pas trèsà l’aise pour ce genre de travail, il sera pré-férable d’utiliser un affichage doté d’un cadrequi cachera les éventuelles imperfections duperçage rectangulaire. On procèdera de lamême façon pour l’orifice de l’interrupteursecteur. En cas d’utilisation d’un interrupteursecteur rond on effectuera bien évidemment

R = 1,0 MΩ. Il devra bien entenduêtre en mesure de supporter l’inten-sité de courant maximum.Nous allons commencer par réaliserle coffret. La réalisation de la faceavant requiert précision et soin, elleconstitue en effet la carte de visitede tout appareil de réalisation per-sonnelle.

La platine vierge pourra servir degabarit de perçage pour la réalisa-tion de cette face avant. Il faudraveiller à laisser un espace suffisant(6 mm au minimum) entre l’embasesecteur et la platine ! L’orifice rec-tangulaire destiné à l’afficheur LCDsera réalisé par sciage et mis auxdimensions requises à la lime, opé-

ALIMENTATION

3112/2001 Elektor

000166-1

Figure 2a. Dessin des pistes de la platine double face à trous métallisés dessinée à l’intention de l’alimentation …

Page 24: Elektor N°282 - Décembre 2001 - doctsf

l’orifice à l’aide d’un dispositif à mècheronde. Les orifices destinés aux boutons-poussoirs se feront à l’aide de mèches de dia-mètre de plus en plus important jusqu’à ceque l’orifice ait un diamètre plus grand de0,5 mm à celui du bouton-poussoir et qu’ilsoit ébarbé proprement. Il reste à effectuerles 4 orifices destinés aux entretoises (vis)qu’il faudra intégrer de manière à ce que lesvis à tête fraisée de 3 mm y disparaissenttotalement. Sur l’arrière de la face avant ondote les filetages de vis d’écrous plats quiseront serrés avec force. Comme il n’est plusquestion de dévisser ces vis sans risquerd’abîmer la face avant, il est recommandé desécuriser la fixation des écrous à l’aide d’unegoutte de colle instantanée. Le filetage devradépasser de quelques millimètres de manièreà ce que les entretoises y trouvent un appuisuffisant. Les orifices de fixation des2 bornes de sortie seront percés en fonctiondu matériau auquel on a affaire.Il suffira, si tant est que la face avant anodi-sée ou brossée soit encore, après toutes cesopérations, propre (sans rayures ou autredégâts), mettre en place les décalcomaniesdes mentions et les protéger par quelquescouches de vernis. On pourra également uti-liser l’exemple de la figure 2 pour réaliser unfilm pour face avant. Il suffit de la reproduirepar photocopie à la taille originale (échelle1:1, vu qu’elle est représentée ici à tailleréduite). On l’enduit ensuite de vernis (tenir

la bombe à 40 cm au moins pouréviter que le toner de la photocopiene se mette à couler). Une fois lepapier sec on l’enduit sur le dos decolle avant de le placer sur unepage d’étiquettes autocollantesblanches qui en permettra la fixa-tion simple sur presque n’importequel arrière-plan et une éventuellemodification.On attendra, avant de coller le filmplastique autocollant sur la faceavant, d’avoir bien testé l’alimenta-tion; le lissage du film plastique doittoujours se faire du centre vers l’ex-térieur pour éviter la naissance debulles d’air. Il ne reste plus qu’à pas-ser un rouleau en caoutchouc ou uncrayon parfaitement rond pour fixerdéfinitivement le film sur le support.Les perçages et les orifices sonteffectués ensuite, avec beaucoup deprécaution, à l’aide d’un cutter. Leperçage des orifices destinés à rece-voir les boutons-poussoirs requiert leplus grand soin sachant que cetteopération ne peut se faire que depuisle côté film plastique et qu’elle exigede procéder par petits coups de cut-ter. On pourra également utiliser sonPC et son imprimante pour fabriquerune face avant (cf. Elektor n°263, mai2000 page 55).

Implantation des composantsUne fois que l’on n’a plus besoin dela platine à des fins détournées degabarit de perçage, on pourra semettre à l’implantation des compo-sants sur la platine dont on retrouvele dessin des pistes et la sérigraphieen figure 3. Les problèmes sont raresvu qu’il n’y a ni composants CMS, nipont de câblage ni pistes ultra-finesni pastilles de soudage à trouver à laloupe. L’implantation des compo-sants se fera dans l’ordre classique.Avant de vous y lancer, il faudra véri-fier que les touches dépassent de10 mm environ la section descondensateurs. Plusieurs compo-sants prennent place sur le dos de laplatine, à savoir le pont de redresse-ment (pour des raisons de place), lesajustables, tous les picots, lesoeillets de soudage pour les transis-tors de puissance ainsi que le fusiblede manière à en faciliter le rempla-cement. En dernier lieu, les picots deconnexion vers les bornes bananeviennent, eux, prendre place sur lecôté « composants ». Les compo-sants se trouvant sous l’affichage,C19 par exemple, devront, si néces-saire, être montés à plat.

ALIMENTATION

32 Elektor 12/2001

B1C1C1’

C2

C3C4

C5

C6

C7

C8

C9

C10 C11

C12

C13

C14

C15C16

C17

C18

C19

C20

D1

D2

D3

D4

D5

D6

F2

H1 H2

H3H4

H5

H6

H7

H8

IC1

IC2

IC3

IC4

IC5IC6

IC7

IC8

K1

K2

K3

K4

K5

P1

P2P3

R1

R2

R3R

4R

5

R6 R

7

R8

R9R10

R11

R12

R13R14

R15

R16R17

R18

R19R20

R21R22R23

R24

R25

R26

R27

R28

R29

R30

R31

R32

R33

R34

R35

R36

R37R38

R39

R40

R41

R42

R43R

44

R45

R46

R47

S2

S3

S4

S5

S6

S7

S8

S9

T1

T5T6 T7

X1

~

~

4A/T 250V

CB

E1E3E2

+-

+

2A/T 250V

Figure 2b. … et la sérigraphie de l’implantation des composants.

Page 25: Elektor N°282 - Décembre 2001 - doctsf

la face avant, du transformateur secteur etl’interface PC, le tout étant câblé en respec-tant le plan de câblage représenté enfigure 4.Les transistors de puissance, isolés à l’aidede film aux silicones sont vissés sur le radia-teur. La platine de liaison est reliée à la pla-tine principale à l’aide 3 morceaux de conduc-teur d’une longueur de 10 cm environ (sectionde 0,75 mm2).

Première mise en fonctionMaintenant que vous en avez terminé avec laréalisation et le câblage vous n’avez sousdoute pas envie d’attendre un mois avant dedisposer du logiciel et du mode d’emploi decette alimentation et préféreriez pouvoir lamettre immédiatement en marche. On pourra,bien que IC1 et le microcontrôleur ne soientpas encore mis en place, procéder à un pre-mier test en mettant l’alimentation sous ten-sion. Si tant est qu’il n’y ait pas de fuméessuspectes, on pourra la laisser en marche.On devrait mesurer alors entre les broches 4et 11 du support de IC1, une tension del’ordre de 27 V pour une alimentation 1 A etde quelque 32 V pour la version 2,5 A. Ondevrait relever sur la diode zener D2 une ten-sion de 12 V et entre les broches 5 et 14 ducontrôleur une tension de 5,1 V. Si toutes cesvaleurs collent, on pourra, enfin, après avoircoupé l’alimentation, implanter les circuitsintégrés restants. Met ensuite P2 en butéevers la gauche. Après remise sous tensionl’affichage devrait indiquer :

00,0V 0,00A

Lors d’une action (maintenue) sur l’une destouches l’affichage doit basculer en mode deréglage et afficher la grandeur que l’on vientjuste de modifier soit en milliampères soit en

Si vous n’avez pas l’intention de pro-grammer jamais le microcontrôleursur la platine vous pourrez bienentendu vous passer du connecteurde programmation K2. On utilisera,au moins pour les 2 circuits intégrésles plus coûteux, IC1 et IC3, des sup-ports de bonne qualité (tulipe).R1,R2 et R6 risquent de chauffer; il fau-dra partant les souder en laissant unpetit espace entre la platine et eux.Il faudra s’assurer de l’absence (et le

cas échéant éliminer) de restes deflux de soudure à proximité de IC1,IC2 et IC4, sachant qu’ils pourraiententraîner des résistances parasites.Après avoir effectué le contrôle detoutes les soudures, on fixe l’affi-chage à l’emplacement prévu àl’aide d’entretoises de longueurconvenable et on l’y visse. Les liai-sons électriques se font à l’aide demorceaux de conducteur dénudé.On procède ensuite au montage de

ALIMENTATION

3312/2001 Elektor

Liste des composants pour la version 2,5 A(Version 1 Aentre parenthèses)

Résistances :(* à film métallique + tolérance de

1 %)R1 = 220 Ω/5 WR2 = 330 Ω/0W5R3 = 150 ΩR4 = 100 kΩR5 = 330 Ω (1kΩ8)R6 = 1 kΩ/0W5R7,R18,R23 = 1 kΩ*R8,R17 = 39 kΩ*R9,R10,R13,R14,R40,R41,R43 =

10 kΩR11,R12 = 47 kΩR15,R16 = 10 kΩ*R19 = 8kΩ2R20,R39 = 1 kΩR21 = 1 k* (0 Ω)R22 = 18 k* (39 kΩ*)R24 à R34 = 1 Ω/0W6*R35 à R38 = 100 kΩ*R42 = 47 kΩR44 = 3kΩ3R45 à R47 = 0Ω51/0W5 (non implan-

tées)P1 = ajustable 10 Ω 64 XP2 = ajustable 500 Ω 10LHP3 = ajustable 2kΩ5 10LH

Condensateurs:C1 = 10 000 µF/50 V (4 700 µF/35 V)

horizontalC2 = 470 µF/50 V verticalC3,C13,C14,C15,C16,C17 =

10 µF/25 V verticalC4,C7,C11 = 100 nF céramique RM5C5 = 10 nF céramique RM5C6 = 1 nF céramique RM2,5C8,C9 = 10 µF tantaleC10 = 4nF7 FKS-2C12 = 4µF7/63 V MKS-4

Semi-conducteurs :D1 = P600D (1N4007)D2 = diode zener 12 V/1W3D3,D4,D5,D6 = 1N4148

B1 = B80C5000 (B80C1500)T1 = BC557BT2,T3,T4 = TIP142 (1 seul exem-

plaire)T5,T6,T7 = BC547B (non implantés)IC1 = LT1491IC2 = TLC272IC3 = PIC16F84A-04P programmé

(EPS000166-42)IC4 = CD4066IC5, 6 = 74HC164IC7 = 78L05IC8 = MAX232 (Maxim Integrated)

Divers :F1 = fusible 2 A retardéF2 = fusible 4A retardé (2 retardé)S1 à S8 = bouton-poussoir C&K

3FTL6 + 1S09 22,5 ou No name10⋅10⋅20, RM5

TR1 = transfo secteur torique 24 V,80 VA, tel que, par exemple, UI39/1721 V, 2⋅571 mA

X1 = résonateur céramique 4 MHz à3 contacts

module LCD à 1 rangée de 16 carac-tères rétro-éclairé

porte-fusible encartableporte-fusible châssis (ou intégré dans

l’entrée secteur)2 douilles pour châssis (noir, rouge)Fl1 = filtre secteur 2 A (non implanté)K1= embase à 1 rangée de 9 contacts

+ embase sub-D à 9 contacts châssisdroite

K2 = embase à 1 rangée de 5 contactsdroite

K4,K5 = bornier encartable à2 contacts RM5

support 14 broches de qualitésupport 18 broches de qualité12 picots radiateur 180 x 75 x 48 mm à résis-

tance thermique de 0,6 K/W (100 x50 x 31 mm à résistance thermiquede 2,4 K/W)

boîtier (l/p/h) 200 x 180 x 100 mm telque, par exemple LC950 (Telet)

interrupteur secteur, câble secteur

K1K4

DB9

1

2

3

4

5

6

7

8

9

000166 - 12

Figure 3. Liaison entre l’embase K1 et l’embaseSub-D.

Page 26: Elektor N°282 - Décembre 2001 - doctsf

millivolts. On pourra, pour le réglage du pointzéro, tourner progressivement P2 vers ladroite et voir si l’affichage continue de chan-ger. Si l’affichage ne change plus cela signi-fie que l’on est allé un peu trop loin et qu’ilfaudra tourner P2 dans le sens inverse (versla gauche).Autre possibilité, connecter l’interface de l’ali-mentation à un PC, lancer Hyper Terminalavec le paramétrage suivant :

9600,8N1, hardware handshake.

On joue alors sur l’ajustable de manière à ceque la valeur affichée après le D soit la plus

proche possible de zéro sans êtrenulle cependant. 2 serait une valeuridéale car elle évite que l’alimenta-tion ne tombe en panne lorsque,ultérieurement, cette valeur varielégèrement suite à un vieillissement,des vibrations ou une éventuelledérive en température.Ce réglage terminé, on mesure latension de sortie effective obtenue àune tension de consigne de 0,00 V.La valeur relevée devrait se situeraux alentours de 30 mV (±15 mV).On demande ensuite à l’appareil unetension de consigne de 19,0 V et on

joue sur P1 jusqu’à obtenir en sortieune tension de 19,03 V précisément.Le courant de sortie et la valeur affi-chée sont alors automatiquementcorrectes. Il faudra, si l’on constatedes dérives ou s’il est impossibled’obtenir lors de l’étalonnage lesvaleurs mentionnées plus haut, véri-fier qu’il n’y a pas d’erreur au niveaude l’implantation des composants ous’il ne reste pas des résidus derésine de soudage entre les pistes.

(000166-2)

ALIMENTATION

34 Elektor 12/2001

Figure 4. Coup d’oeil panoramique de la platine principale.

Page 27: Elektor N°282 - Décembre 2001 - doctsf

Il est possible, en principe, d’utiliser, pour laprogrammation du MicroConverter d’AnalogDevices, n’importe quel langage de program-mation connu pour le 8051, Assembler51,Basic52, Pascal51, C51 pour ne citer que ceux-là. Tout ce dont on a besoin en fait est lefichier de format Intel Hex obtenu après l’opé-ration de conversion, selon le cas, de l’as-sembleur ou du compilateur, fichier qu’il nerestera plus qu’à transférer, par voie sérielle(ou parallèle), vers la mémoire Flash dont estdoté le MicroConverter.Analog Devices propose pour sa part un envi-

ronnement de développement logicielcomplet adapté de façon optimale àla famille du MicroConverter que l’onpeut télécharger gratuitement depuisson site Internet, à savoir le logicielbaptisé « MicroConverter QuickStartDevelopment System, V3.0 » [2]. Cetenvironnement permet de développerdes programmes tant en assembleurqu’en C.Notons qu’il est également possibled’acheter chez Analog Devices leur« QuickStart Development Kit » quicomprend, outre le logiciel de déve-loppement, une carte d’expérimen-tation pour le ADuC812 avec adap-tateur secteur, câble de transfert dedonnées et 2 exemplaires de leADuC812. Ceux d’entre nos lecteursqui auront opté pour l’approchematérielle décrite dans le numéro dumois dernier (c’est-à-dire ISAC-Cube+ platine d’expérimentation) pour-ront télécharger gratuitement d’In-ternet, outre l’environnement dedéveloppement logiciel, tout le restede la documentation technique, àsavoir la fiche de caractéristiques dece composant, des exemples d’ap-plication et bien d’autres documentsintéressants. Nous vous proposonsdans les tableaux 1 et 2 un récapitu-latif des outils logiciels disponibles.Il faut distinguer, lors du développe-

ment de programmes pour les com-posants de la famille du MicroCon-veter, 2 trajets fondamentalementdifférents :1. Développement et test des pro-

grammes en s’aidant du langagede programmation proche du lan-gage machine Assembler51.

2. Développement et test des pro-grammes en travaillant avec unlangage de haut niveau tel queBasic52, Pascal51 voire C51,sachant que le dernier nommé, leC, peut être considéré actuellementcomme la solution de profession-nels de l’industrie.

Assembler51Le trajet Assembler51 est illustré enfigure 1. On utilise un éditeur detexte tout ce qu’il y a de plus stan-dard pour écrire le fichier en sourceassembleur en code assembleur8051. Ensuite, on pourra transférer lefichier Intel-Hex produit par le biaisde l’assembleur 8051 vers le simula-teur (adsim812) qui tourne sous Win-dows. Cet outil permet de simuler,on s’en serait douté, sur le PC, lecomportement total du MicroCon-verter, y compris celui de ses péri-phériques enfouis (on-chip) tels queles convertisseurs A/N et N/A, au

MICROPROCESSEUR

38 Elektor 12/2001

ISAC (3)L’environnement de développement logiciel

Prof. Dr. Bernd vom Berg, Dipl.-Ing. Peter Groppe et Dipl.-Ing. (FH) Michael Müller-Aulmann

Le sujet de ce 3ème article de la série consacrée à ISAC, le contrôleur cap-teur/actionneur intelligent, est l’environnement de développement logi-ciel du MicroConverter d’Analog Devices. Il est temps, après avoir décritce composant dans le premier article et réalisé un système d’expérimen-tation dans le second, de nous mettre à écrire notre premier programmepour notre ISAC-Cube.

Assembly SourceFiles

ASM518051 Assembler

ASM518051 Assembler

WSDWindows Serial

Downloader

ADSIMWindows Simulator

WASPADC Performance

Evaluation Tool

DEBUGV2Windows Debugger

QuickStartDevelopment

System

User TargetHardware Platform

010048 - 3 - 11

Figure 1. Développement de programmes pourle MicroConverter au niveau de l’assembleur.

Page 28: Elektor N°282 - Décembre 2001 - doctsf

affichage LCD et autres claviers) on utilisera leprogramme appelé ADuC-Debugger qui setrouve relié directement à l’interface sérielledu ADuC812 par le biais d’un port COMx duPC sur lequel tourne le logiciel de dévelop-pement. Dans ces conditions, les résultats dedébogage sont « extraits » directement duvrai matériel, les instructions de débogagesont transmises directement au matériel oùelles sont également exécutées. Ici encore, ondispose de toutes les possibilités offertes parle programme de test : exécution en modepas à pas, points d’arrêt, préprogrammationdes registres, etc. On dispose, avec cet outil,d’un débogueur à base de matériel (figure 3).

Il sera possible, avec ce simulateur et/oudébogueur, dans de très nombreuses applica-tions, d’éliminer les erreurs et de supprimerles sources de problèmes dans un programme.En conclusion : les outils Assembler51, lesimulateur logiciel et le débogueur à basematériel constituent pour l’utilisateur un pre-mier marche-pied pour faire ses premiers pasdans la programmation en assembleur desmembres de la famille du MicroConverter.

C51Analog Devices propose, pour le développe-ment de programmes pour le MicroConverteren langage de haut niveau C51, une version« de mise en appétit » de l’EDI (Environne-ment de Développement Intégré, IDE pourIntegrated Development Environment enanglais) µVision de la maison Keil, cette étantcependant limitée à une taille de programmede 2 Koctets. Keil est l’un des fabricants deEDI pour tous les dérivés du 8051 les plusconnus [4]. Pour l’utilisateur, le choix de µVi-sion présente le gros avantage de lui per-mettre de se faire la main sur un outil dedéveloppement professionnel extrêmementpuissant, sachant cependant que cet appren-tissage présente le « petit » inconvénient de

niveau assembleur, sans qu’il ne soitnécessaire de connecter quelquematériel-cible que ce soit. De nom-breuses possibilités de débogage,telles que le placement de pointsd’arrêt (breakpoint), l’exécution enmode pas à pas (single step), lamanipulation des registres, la visua-lisation de la mémoire de donnée etbien d’autres fonctions sont égale-

ment intégrées dans cet outil. Grâceà lui on dispose d’un simulateur etd’un débogueur 100% logiciel per-mettant de recréer le ADuC812 dansson intégralité sur son PC (figure 2).Si l’on veut inclure dans la simula-tion ou le processus de débogage lematériel-cible concret en vue, parexemple, de tester les réactionsréelles des périphériques (capteurs,

MICROPROCESSEUR

3912/2001 Elektor

Figure 2. Le simulateur pour ADuC812 à base de logiciel.

Tableau 1L’environnement de développement de logiciels pour le MicroConverter

Programmation en langage machine : Assembler51Cross-assembleur 8051 tournant sous DOS de MetaLink : asm51 (V1. 2h).Simulateur pour le ADuC812 tournant sous Windows : adsim812.Émulateur pour le ADuC812 tournant sous Windows : ADuC (V2).

Programmation en langage de haut niveau : C51Environnement de développement intégré (IDE) µVision de Keil pour le Micro-Converter (limité cependant à une taille de programme de 2 Koctets).

Transfert de programme (program downloader)Téléchargeur sériel tournant sous Windows pour le transfert du fichier Intel-Hexdans la mémoire de programme en EEPROM Flash embarquée et la programma-tion de la mémoire de données enfouie (en EEPROM Flash elle aussi).

Outils d’analyseOutil d’analyse tournant sous Windows pour le traitement des valeurs de mesurefournies par le convertisseur analogique/numérique (analyse FFT entre autres).

DocumentationsGetting Started - IntroductionGuides utilisateurs (user guides) pour le MicroConverterTool TutorialsNotes d’application / Exemples de codeFiche de caractéristiquesSupport en tout genre par outils tierce partie (3rd Party Tools)

Tableau 2Autres outils en « C » pour leMicroConverter

Versions de test de produitscommerciaux :Raisonance Rkit-51 : (www.raisonance.com)IAR Embedded Workbench(ICC8051(www.iar.com)

Outils gratuits :Reads51 (www.riegelcorp.com)Small Device C Compiler - SDCC (sdcc.sourceforge.net) pour Windowset Linux

Page 29: Elektor N°282 - Décembre 2001 - doctsf

demander un certain effort (si ce n’est uneffort certain, cf. figure 4).On pourra, pour se faciliter le premier contact,télécharger d’une part l’application UC002« Writing an ADuC812 Application in C » dela page d’accueil du MicroConverter [2] et leguide d’application apnt 151 « Using the KeilMonitor51 /µVision 2 Debugger with the Ana-log Devices AduC812 Evaluation Board » surle site de Keil (www.keil.com) d’autre part.Ces documents décrivent très précisément,pas après pas, comment procéder pour réali-ser son premier projet en C51 sous µVision eten effectuer la conversion pour disposer en finde processus, le code Intel-Hex transférablevers le ADuC812.Le dit EDI permet également une simulationconfortable de votre programme écrit en C.Nous vous recommandons partant instanta-nément de télécharger ce guide d’application(en anglais) de bien l’étudier et d’exécuter lesdifférentes étapes de l’installation de µVisionsachant qu’au cours de nos prochaines excur-sions dans le monde logiciel du ADuC812nous utiliserons exclusivement C51.On pourra, comme nous le disions plus haut,outre les outils que nous venons de passer enrevue, utiliser, pour le MicroConverter, tousles autres outils de programmation utilisablespour la famille 8051. Nous vous proposonsdans le tableau 2 une sélection d’outils utili-sables avec le langage de programmation C.

Serial DownloaderIl faudra, après avoir généré le code Intel-Hex(code machine pour le ADuC812) définitif, quece soit à l’aide de Assembler51, C51 ou toutautre langage de programmation pour le8051, transférer le fichier de code de pro-gramme vers le ADuC812. Cette opérationpourra se faire par le biais du ADuC-Debug-ger ou par l’intermédiaire du Serial Downloa-der d’Analog Devices tournant sous Win-dows, logiciel utilisable avec tous les produitsde la famille MicroConverter (figure 5).Ce processus très important de transfert deprogramme en direction du ADuC812 voire denotre ISAC-Cube se déroule en 3 étapesmajeures (figure 6).Étape 1 : il faut commencer par mettre le

ADuC812 en mode Download/Debug(figure 6a). Pour ce faire il faut forcer labroche PSEN du ADuC812 à la masse autravers d’une résistance de 1 kΩ (niveau bassur la broche PSEN) avant d’appuyer sur lebouton-poussoir de RAZ (Reset). Dans cecas de l’ISAC-Cube cela se traduit par uneaction sur le bouton-poussoir T2 (« Boot »)suivie d’une action sur T1 (« Reset »), T2 res-tant enfoncé. On relâche ensuite d’abord T1puis T2.

Entrons dans le détail pour lesexperts du 8051 :

1. Sur tout 8051 « standard » labroche PSEN est toujours une sortie(signal de lecture pour l’EPROMcontenant le programme). Dans lecas du MicroConverter la lignePSEN est activée, à l’instant de laRAZ voire immédiatement après lerelâchement du bouton-poussoir deRAZ, pendant un court instant, ensortie, le niveau logique qu’elle véhi-cule à cet instant étant pris encompte. En présence d’un niveaubas sur la ligne PSEN le ADuC612bascule immédiatement en modedit Download/Debug, ce qui signi-fie qu’il est mis en mesure de rece-

voir, par le biais de son interfacesérielle, un programme à transféreravant de s’en servir pour program-mer sa mémoire de programmeFlash embarquée.

2. Tout MicroConverter dispose d’unemémoire de programme « secrète,dissimulée » dans laquelle le fabri-cant a stocké les routines permet-tant un téléchargement sériel deprogramme, la programmation del’EEPROM Flash et l’exécution desfonctions de débogage (Debug) évo-quées plus haut. Lors d’un lance-ment de programme normal (misesous tension du système ou actionsur la touche de RAZ sans mise auniveau bas de la ligne PSEN) cedomaine de mémoire secrète spécial

MICROPROCESSEUR

40 Elektor 12/2001

Figure 3. Le simulateur pour ADuC812 à base de matériel.

Figure 4. L’EDI µVision.

Page 30: Elektor N°282 - Décembre 2001 - doctsf

sur ses lauriers et ne cesse d’améliorer desMicroConverters : sur les versions ultérieures(cf. le tableau 2 du premier article), il est men-tionné une rétention des données pouvantaller jusqu’à 100 (!) ans et ce avec un mini-mum de 100 000 cycles effacement/réécriture.

Les émulateursSignalons, en guise de conclusion à cetarticle, qu’il existe aussi, pour le MicroCon-verter, des émulateurs. MetaLink(www.metaice.com) propose un émulateurclassique pour le ADuC812,ce qui signifie quel’on remplace le MicroConverter du système-cible par un émulateur.Accutron (www.accutron.com) propose leACE « Single-Pin-Emulator » qui supportetous les dérivés de la famille du MicroCon-verter y compris le « C »-Source-Debugging.

reste caché et partant inactif, ce quisignifie que le ADuC812 ne tient pascompte de son contenu et exécutetout simplement le programmed’application se trouvant dans l’EE-PROM Flash (cas de fonctionne-ment normal). Si le ADuC812détecte, lors d’une action sur latouche de RAZ ou lors du relâche-ment de la dite touche, la présenced’un niveau bas sur la ligne PSEN,il ignore le programme utilisateurstocké en EEPROM Flash et basculevers la mémoire de programmesecrète dont il exécute le pro-gramme, à savoir, selon le cas, laroutine de transfert (download) oude débogage (Debug).

Étape 2 : il est temps maintenant delancer le programme Serial Down-loader (figure 5).Ce programme se met automati-quement à la recherche d’un Micro-Converter qui devrait être connecté(par défaut) au port COM1 et semet en liaison avec lui. Si vous avezopté de connecter le ADuC812 à unport autre que COM1, vous pourrezmodifier en conséquence, par lebiais du point de menu « Configu-ration » le paramètre concerné. Cemenu permet de configurer un cer-tain nombre d’autres paramètresde transfert. On pourra, au début,garder les valeurs par défaut. Onappuie ensuite sur le point demenu « Download » et on choisit,comme on le fait d’habitude sousWindows, dans le répertoireconcerné, le fichier Inter-Hex quel’on veut transférer. Le télécharge-ment se fait alors automatiquementet sans le moindre problème.

Étape 3 : une fois le processus detéléchargement terminé, on pourrafaire disparaître le Serial Downloa-der « vers le bas » de la liste de pro-grammes. Une action sur la toucheReset T1 du Cube démarre l’exécu-tion du programme stocké dans leADuC812 (figure 6b). Rappelez-vous, comme vous n’avez pasappuyé sur la touche T2, la lignePSEN ne se trouve pas au niveaubas de sorte que le ADuC812ignore sa mémoire de programmeinterne secrète.

Chaque nouveau processus de trans-fert redémarre à l’étape 1 : appuyersur T2, puis sur T1, relâcher T1 puisT2, lancer le Serial Downloader...

Durée de rétention minimumL’EEPROM Flash du ADuC812 estune mémoire « non-volatile » qui par-tant conserve son contenu même enl’absence de tension d’alimentation,sachant cependant que cette duréede maintien des données n’est pasillimitée dans le temps et que lenombre de téléchargements de nou-veaux programmes connaît lui aussiune limite.Analog Devices donne dans sa fichede caractéristiques du ADuC8122 informations importantes :– Les données stockées dans lamémoire Flash sont conservées(avec ou sans tension d’alimenta-tion) pendant 10 ans au minimumsachant qu’il y risque, après cettedurée, de « pertes » dues à des modi-fications erronées du contenu descellules de mémoire.– Le nombre minimum de repro-grammations possibles (effacementet nouvelle écriture des cellules demémoire avant que ne puisse se pro-duire ‘erreur au niveau de la struc-ture de la mémoire) est, d’après lefabricant, de 10 000 cycles.Il ne faut pas oublier que leADuC812 dispose de 2 domainesd’EEPROM Flash différents.En ce qui concerne la mémoire deprogramme, cette possibilité de10 000 reprogrammations est indubi-tablement plus que suffisante : onpourra se permettre d’opérer500 jours à raison de 20 reprogram-mations par jour !Il en va tout autrement de lamémoire de données de 640 octetsen EEPROM Flash dans laquelle ilest possible de stocker n’importequelle valeur et ce aussi souventqu’on le voudra. Dans certaines cir-constances il peut se faire que l’onatteigne très rapidement cette limitecritique de 10 000 processus d’effa-cement/réécriture, voire qu’on ladépasse si l’on stocke, par exemple,dans les dites cellules de mémoire,des données de mesure ne cessantde changer. Il serait préférable, dansces conditions, d’envisager uneextension externe de la mémoire dedonnées sous la forme d’une RAM(nous ne manquerons bien évidem-ment pas, ultérieurement, de vousmontrer comment faire...)Analog Devices ne s’est pas endormi

MICROPROCESSEUR

4112/2001 Elektor

Figure 5. Le Serial Downloader.

Figure 6a. Activation du mode de débogage(Debug) ou de transfert (programm download).

Figure 6b. Mode de fonctionnement normal.

ADuC812

RESET

T2

1kΩ

010048 - 3 - 16a

PSEN

ADuC812

RESET

T2

1kΩ

010048 - 3 - 16b

PSEN

Page 31: Elektor N°282 - Décembre 2001 - doctsf

MICROPROCESSEUR

42 Elektor 12/2001

Annexe technique :Convertisseur A/N : mesure de la température interne de la puce

Le ADuC812 comporte un capteur de température à même lapuce qui fournit une tension proportionnelle à la température, ten-sion qui attaque le canal interne n° 9 (canal N° 8) du convertisseur.La fiche de caractéristiques donne les caractéristiques de ce cap-teur : tension de sortie de 600 mV à une température (u) de25 °C, cette tension variant de –3 mV/°C, ce qui signifie que pourune augmentation de la température de 1 °C la tension diminuede 3 mV et inversement.Il y a cependant, à ce niveau, un point extrêmement critique dont ilfaut tenir compte : ces valeurs de référence (600 mV, –3 mV/°C)sont des valeurs typiques et partant varient d’un lot de productionà l’autre. Ceci implique que si vous utilisez des ADuC812 de lotsdifférents, il se peut fort bien que les capteurs de températureembarqués aient des valeurs sensiblement différentes. La seulegarantie donnée par Analog Devices est le rapport (parfaitement)linéaire entre la température du composant et la tension de tem-pérature qui en est dérivée : cette relation est exprimée parl’équation (linéaire) Uυ=f1(υ) ou Uυ=f2(υ).Pour l’utilisateur cela signifie : commencer, à l’aide de 2 mesuresde contrôle, par vérifier les paramètres de l’équation; ce n’estqu’ensuite que l’on pourra effectuer des mesures de températurequi « tiennent la route ».Si l’on utilise ensuite des ADuC812 du même lot (ce qui est sou-vent le cas lorsque l’on achète ce type de composant par barrettecomplète) il ne sera plus nécessaire de modifier quoi que ce soit.Si l’on utilise des ADUC812 de lots différents il faudra, dans lepire des cas, effectuer cet étalonnage un certain nombre de fois etle risque existe que vous releviez, pour chacun des ADuC812 unset de paramètres d’équation différents.Si vous voulez utiliser le capteur de température embarqué pourmesurer non pas la température du composant mais la tempéra-ture ambiante, vous pourrez vous y prendre de la manière sui-vante pour déterminer les paramètres de l’équation (cf. le cro-quis) :

La forme générale d’une telle équation est la suivante :

y = f(x) = m * x + b

ce qui se traduit, dans notre cas par :

υ = f(Uϑ) = m * Uϑ + ϑb

soit, si D représente la valeur de conversion duconvertisseur A/N, canal N° 8, :

ϑ = f(D) = m * D + ϑbavec :ϑ = température ambiante recherchéeUϑ = tension de température relevée ou résultat de conver-

sion D du convertisseur A/N, canal N° 8,m = croissance de la ligne de courbe de température

(droite)ϑb = intersection avec l’axe des y, c’est-à-dire point de cou-

pure de la ligne de courbe de température avec l’axe u.

La ligne de courbe de température est parfaitement définie àl’aide des termes m et b; ces 2 paramètres doivent ensuite êtredéterminés par le biais de mesures de référence (c’est-à-dire de2 mesures de température distinctes).

Nous allons, pour cela, utiliser notre programme adc_1.c et,après lancement, choisissons le canal 8 (utilisation de la tension deréférence interne du convertisseur A/N de 2,5 V). On fait ensuitefonctionner le ADuC812 à une température ambiante que l’onmesure également à l’aide d’un autre thermomètre précis (unthermomètre à affichage LCD par exemple). On procède, au boutd’1 heure environ, durée pendant laquelle la températureambiante doit rester constante, à la lecture des 2 valeurs demesure :

ϑ1 = température ambiante relevée à l’aide de l’instrumentde référence, disons 21 °C

D1 = valeur de mesure résultant de la conversion numériquedu canal N° 8 du convertisseur N/A, disons 1039 (déci-mal)

On expose ensuite le ADuC812 à une seconde température en lemettant, par exemple, dans un réfrigérateur pendant 1 heureenviron. On détermine à nouveau, à l’aide du thermomètre deréférence, la température régnant à l’intérieur du réfrigérateur.Ces opérations fournissent 2 valeurs de mesure :

ϑ2 = température dans le frigo relevée à l’aide de l’instru-ment de référence, disons 6 °C

D2 = valeur de mesure résultant de la conversion numériquedu canal N° 8 du convertisseur N/A, disons 1289 (déci-mal)

À partir de ces 4 valeurs de mesure il nous est possible de déter-miner les 2 paramètres de la courbe recherchés m et ϑb. (Moto :forme à 2 points de l’équation). On a :

m = (ϑ1 – ϑ2) / (D1 – D2) c’est-à-dire ici :

m = (21 – 6) / (1039 – 1289) °C/digit

m = –0,06 °C/digit

ϑb = (ϑ2 · D1 – ϑ1 · D2) / (D1 – D2) c’est-à-dire ici :

ϑb = (6 · 1039 – 21 · 1289) / (1039 – 1289)

ϑb = 83,34 °C.

ϑ1 – ϑ2

Il est possible ainsi de rendre la courbe de température de votreADuC812 par l’équation suivante :

υ

υb

∆υ

∆Uυ

Uυ010048 - 4 - 12

Page 32: Elektor N°282 - Décembre 2001 - doctsf

L’émulateur est connecté au sys-tème-cible par le biais de la brocheEA. À l’image de la broche PSEN,cette broche remplit également plu-sieurs fonctions, toutes décrites tantdans la fiche de caractéristiques quedans le manuel de l’utilisateur(User’s Manual) du MicroConverter.C’est en particulier dans le cas desdérivés à convertisseur analo-gique/numérique 16 et 24 bits duMicroConverter que ce type d’inter-connexion au système-cible présentede gros avantages en raison de sasimplicité. L’utilisateur professionneldispose ainsi d’un outil de dévelop-pement très puissant.Après vous avoir fait faire connais-

sance avec toute la panoplie des dif-férents outils qui vous permettrontde transférer vos programmes dansle ISAC-Cube, nous envisageons,dans le prochain article, de passeraux choses sérieuses en vous propo-sant un certain nombre d’applica-tions intéressantes écrites en C51.Notons qu’Analog Devices travailleà une nouvelle version plus élaboréede ses outils de développement des-tinés aux MicroConverters. Il estrecommandé partant de faire, detemps à autre, plus ou moins régu-lièrement, un petit tour sur le sited’accueil du MicroConverter(www.analog.com/microconverter).

(010048-3)

MICROPROCESSEUR

4312/2001 Elektor

ϑ = –0,06 °C/digit · D + = 83,34 °C.

équation dans laquelle D est la valeur numérique du momentfournie par le convertisseur A/N pour son canal N° 8. IL suffit par-tant de programmer cette équation, d’entrer à chaque fois lavaleur relevée pour D et l’on sait instantanément à quelle tempé-rature travaille son ADuC812.Nous avons bien évidemment déjà faite le travail pour vous etvous proposons à cet effet le programme temp812.c.Il faut dans ce cadre tenir compte de 3 points :

1. Normalement, le capteur de température embarqué relève latempérature de la puce, qui est, en règle générale, supérieureà la température ambiante. Nous avons, par le biais de nos2 mesures de calibration, combiné la valeur numérique mesu-rée avec la température ambiante, de sorte que c’est cettedernière que nous mesurons.

2. Les valeurs correspondantes pour m et Jb ne valent que pournotre propre ADuC812. Il vous faudra, dans le cas de votreADuC812 (qui fait sans aucun doute partie d’un autre lot),déterminer vos propres valeurs pour m et Jb à l’aide de la pro-cédure décrite plus haut et les intégrer dans l’équation.

3. Il faudra, pour déterminer la température ambiante à l’aide del’équation donnée plus haut, faire travailler votre programme à

l’aide de nombre fractionnaires (nombres flottants). Cela nepose bien entendu pas le moindre problème sous C51. Il seveut malheureusement que les versions d’évaluation de mVi-sion mises à votre disposition ont été amputées de l’arithmé-tique flottante ce qui a pour conséquence que vous vous trou-vez dans l’impossibilité de convertir le programme temp821.c,ce qui se traduit par l’apparition de messages d’erreur.

À titre de compensation nous vous proposons, sur Internet(www.elektor.presse.fr), le fichier hexadécimal de notre programmeque vous chargez dans votre ADuC812 pour le démarrer à partirde là.Le programme commence par demander les valeurs correspon-dant à m et Jb, valeurs que vous pouvez entrer à ce moment-là.Vous procédez ensuite à la mesure des températures à l’aide devotre propre set de paramètres.Il vous faudra, si vous tenez à calculer en nombres fractionnairesdans le cadre de vos programmes, soit acquérir la version com-plète de mVision, soit opter pour un autre compilateur C51.

Tableau pour clavier sériel connecté à une broche du portd’entrée analogiqueCe tableau donne la relation entre la touche actionnée, la tensiond’entrée Uent qu’elle produit, le mot numérique converti, l’inter-valle de scrutation de touche sûr et le niveau de priorité detouche (0 = niveau de priorité le plus élevé).

Touche actionnée Tension sur la sortieanalogique (en pratique) [V]

Nombre numérique[12 bits, décimal]

Intervalle de scrutationde touche [décimal]

Niveau de priorité detouche

Touche 0 24,4 mV 20 0 à 184 0

Touche 1 0,481 394 185 à 604 1

Touche 2 0,963 789 605 à 999 2

Touche 3 1,484 1216 1000 à 1426 3

Touche 4 1,996 1636 1427 à 1846 4

Touche 5 2,503 2052 1847 à 2262 5

Touche 6 3,027 2481 2263 à 2691 6

Touche 7 3,528 2892 2692 à 3102 7

Touche 8 4,026 3300 3103 à 3510 8

Touche 9 4,546 3726 3511 à 3936 9

Aucune touche 4,996 4095 > 3937 10

Littérature et sites Internet :

[1] Bernd vom Berg, Peter Groppe: « Je programme en Pascal les microcontrôleurs de la famille 8051 », Publitronic, ISBN 2-86661-098-9

[2] La patrie du MicroConverter sur Inter-net : www.analog.com/microconverter

[3] Analog Devices sur Internet : www.analog.com

[4] EDI mVision de la société Keil :www.keil.com

Page 33: Elektor N°282 - Décembre 2001 - doctsf

Mois Page Mois Page

TABLEDESMATIÈRES2001

44 Elektor 12/2001

ALIMENTATIONSAdaptateur auto pour portables . . . . . . . . . . . . . . . . . . . . . . .11 32Alimentation à découpage « auto » . . . . . . . . . . . . . . . . . . . .06 46Alimentation numérique (I) . . . . . . . . . . . . . . . . . . . . . . . . . . .11 52Alimentation numérique (II) . . . . . . . . . . . . . . . . . . . . . . . . . .12 30Alimentation secteur à découpage symétrique (+\–) . . . .7/8 25« Béquilles » pour régulateur de tension . . . . . . . . . . . . . . .7/8 91Chargeur pour accu Li-ion Mark II . . . . . . . . . . . . . . . . . . . .7/8 88Chargeur pour accu Li-ion modèle 1 . . . . . . . . . . . . . . . . . . .7/8 44Commande de tension alternative à FETMOS . . . . . . . . . .7/8 101Commutatrice continu/continu . . . . . . . . . . . . . . . . . . . . . . .7/8 10Convertisseur haute-tension : 90 V depuis 1,5 V . . . . . . . .7/8 107Convertissez votre alim de labo en alim double . . . . . . . . .7/8 11Déchargeur pour pack d’accus . . . . . . . . . . . . . . . . . . . . . . .7/8 93Indicateur de fonctionnement

et de destruction de fusible . . . . . . . . . . . . . . . . . . . . . . .7/8 49Pilote « High Side » double . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 99Protection anti-court-circuit à FETMOS . . . . . . . . . . . . . . . .7/8 30Protection pour Li-ion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 33Régulateur à découpage double . . . . . . . . . . . . . . . . . . . . . .7/8 39« Tire-jus » pour piles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 102Une alimentation haute tension . . . . . . . . . . . . . . . . . . . . . . .01 08

APPAREILS DE MESURE & DE TESTAmpèremètre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 83« Ampèremètre » LM 3822/24 . . . . . . . . . . . . . . . . . . . . . . . .7/8 71Analyseur de code IR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10 12Capteur de température I2C . . . . . . . . . . . . . . . . . . . . . . . . .7/8 57Chronomarqueur à petit prix . . . . . . . . . . . . . . . . . . . . . . . . .7/8 76Émetteur traque-fil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 17Générateur de formes d’ondes à large bande . . . . . . . . . . .7/8 22Générateur d’impulsions programmable . . . . . . . . . . . . . . . .03 46Générateur sinusoïdal 3 phases numérique . . . . . . . . . . . .7/8 103Jauge de niveau à haute précision . . . . . . . . . . . . . . . . . . . .7/8 118Mesure de niveau « alternative » . . . . . . . . . . . . . . . . . . . . . .7/8 51Mesure économique de température

par microcontrôleur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 53Pilote de convertisseur N/A à basse fréquence . . . . . . . . .7/8 70Récepteur traque-fil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 28Sélecteur d’impulsion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 82Testeur de transistor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 92Testeur de télécommande rustique . . . . . . . . . . . . . . . . . . .7/8 82Thermomètre numérique à LED . . . . . . . . . . . . . . . . . . . . . . .04 52Vide-accumulateur capacimètre (I) . . . . . . . . . . . . . . . . . . . .11 26Vide-accumulateur capacimètre (II) . . . . . . . . . . . . . . . . . . . .12 14

AUDIO, VIDÉO & MUSIQUEAdaptation de niveau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .02 68Ampli Hi-Fi P3 : À tubes KT 88 . . . . . . . . . . . . . . . . . . . . . . . .05 40Attaque de ligne vidéo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 113Audio-CAN 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .03 08Convertisseur rééchantillonneur 96 kHz . . . . . . . . . . . . . . . .04 72Convertisseur S/PDIF vers TTL . . . . . . . . . . . . . . . . . . . . . . .7/8 100Convertisseur Vidéo/S-VHS . . . . . . . . . . . . . . . . . . . . . . . . . . .11 70Crescendo - Millennium Edition . . . . . . . . . . . . . . . . . . . . . . .04 40Crêtemètre stéréo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 101De VGA vers 3 x BNC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 54Écrêteur à tubes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 58Encodeur rotatif pour potentiomètre silencieux . . . . . . . . .7/8 80Filtre passe-bas SC du 5ème ordre de 1 Hz à 45 kHz . . . . . .7/8 24

Haut-parleur actif pour PC . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 67Interface port série -> MIDI . . . . . . . . . . . . . . . . . . . . . . . . . .04 08Métronome-diapason . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .06 16PC-SoundAmp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .01 46Sortie symétrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 71Switch audio/vidéo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 52« Switchbox » pour enceintes/amplificateurs . . . . . . . . . . .7/8 90Transmission de données full duplex . . . . . . . . . . . . . . . . . .7/8 127

CIRCUITS HF, RADIOAudion à tube ECC86 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 78Booster pour câble . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 60Convertisseur Ondes Courtes

pour autoradio AM numérique . . . . . . . . . . . . . . . . . . . .7/8 112Convertisseur S-VHS/Vidéo . . . . . . . . . . . . . . . . . . . . . . . . . . .09 79Détecteur FM sans réglage . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 14Filtre de parole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 66Microradio OM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 64Récepteur à M.A. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .02 08Récepteur radio large bande pour PC . . . . . . . . . . . . . . . . . .7/8 59Réseau d’adaptation HF universel . . . . . . . . . . . . . . . . . . . . .01 76Source 2,5 GHz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 123Système d’identification d’appels radio . . . . . . . . . . . . . . . .02 32Une radio à transistors économe . . . . . . . . . . . . . . . . . . . . . .7/8 63

DIVERSAmpli piézo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 99Capacité variable intégrée . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 105Circuit encodeur de clavier avec sortie sérielle . . . . . . . . . .7/8 116Clignotant alterné . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 125Commutateur énergique pour signaux analogiques . . . . . .7/8 119Démarrage progressif

d’un régulateur dévolteur à découpage . . . . . . . . . . . . .7/8 72Émetteur IR rustique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 94Générateur MLI à consigne 7 bits à GAL . . . . . . . . . . . . . . .7/8 114Interrogation de touches avec peu de lignes . . . . . . . . . . . .7/8 42Interrupteur à thyristor . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 105MIDI (de) aux convertisseurs N/A . . . . . . . . . . . . . . . . . . . . .01 70Oscillateur à quartz pour fondamentale et harmonique . . .7/8 74Petit récepteur IR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 84Régulateur à découpage abaisseur de tension . . . . . . . . . .7/8 115Sécurité thermique à Polyswitch . . . . . . . . . . . . . . . . . . . . . .7/8 87Serrure codée électronique . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 120

DOMESTIQUECommande de ventilateur à détecteur « FanSense » . . . . .7/8 117Commutateur horaire : À 16 canaux piloté par µC . . . . . . . .05 14Gare aux chiens ! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 81Gradateur piloté par mC . . . . . . . . . . . . . . . . . . . . . . . . . . . . .01 42Interrupteur activé par un claquement de mains . . . . . . . .7/8 32Interrupteur crépusculaire . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 56LED blanches alimentées sous 1,5 V . . . . . . . . . . . . . . . . . .7/8 69Mémoire vocale intégrée . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 40Moniteur pour fonction « Opentherm » . . . . . . . . . . . . . . . . .7/8 96Polyswitch pour bobine . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 35Serrure à code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 12Sonnette électronique sans problème de CEM . . . . . . . . . .7/8 61Système de protection de pompe . . . . . . . . . . . . . . . . . . . . .7/8 64

Page 34: Elektor N°282 - Décembre 2001 - doctsf

Mois Page Mois Page

TABLEDESMATIÈRES2001

4512/2001 Elektor

Télécommande RC5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 48Thermostat avec capteur à diodes pn déporté . . . . . . . . . .7/8 31Xéromètre : pour plantes d’intérieur . . . . . . . . . . . . . . . . . . .05 58

EXPÉRIMENTATIONClignotant à LED et LDR . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 15Coupure de la sortie

d’un régulateur survolteur à découpage . . . . . . . . . . . .7/8 27Flash à LED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 23Gain et phasemètre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 30LED en photocapteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 61Oscillateur 3 composants . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 28Oscillateur à quartz commutable . . . . . . . . . . . . . . . . . . . . .7/8 75Régulateur à découpage step-up

à limitation de courant intégrée . . . . . . . . . . . . . . . . . . .7/8 29Speedy Darling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 36Visualisation de flancs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 73

JEUX, MODÉLISME & BRICOLAGEAffichage modulaire à matrice de points . . . . . . . . . . . . . . . .06 52Démultiplexeur DMX 8 voies . . . . . . . . . . . . . . . . . . . . . . . . . .12 08ForTan : Foreuse tangentielle de platine

commandée par PC (I) . . . . . . . . . . . . . . . . . . . . . . . . . . . .03 38ForTan (II) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .04 28ForTan (IIa) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .05 28ForTan (III) : Partie 3. Réalisation en 7 étapes . . . . . . . . . . . .06 38ForTan (IV) : mettons la main à la pâte . . . . . . . . . . . . . . . . .09 20Guirlande . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 62Interface DMX <-> MIDI . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10 32Interface I2C pour servos . . . . . . . . . . . . . . . . . . . . . . . . . . . . .09 14Jouvence pour accu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10 48LED imprévisible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 55MIDI-Lights . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .03 70QuizMaster en version monofilaire . . . . . . . . . . . . . . . . . . . . .09 28Refroidisseur pour accu . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 16Speed-Combi

régulateur de vitesse modulaire pour modèle RC . . . . . .01 14Speed-Combi (II)

régulateur de vitesse modulaire pour modélisme RC . . .02 50Télécommande PCM miniature (I) . . . . . . . . . . . . . . . . . . . . .10 71Télécommande PCM miniature (II) . . . . . . . . . . . . . . . . . . . .11 14Télécommande pour modélisme . . . . . . . . . . . . . . . . . . . . . . .04 20Testeur de tension pour accu de modélisme . . . . . . . . . . . .7/8 50Timer pour chambre noire . . . . . . . . . . . . . . . . . . . . . . . . . . . .05 20Wobbel, le mini-robot « wobbulant » ! . . . . . . . . . . . . . . . . . .10 16

MICROPROCESSEURS,MICRO-INFORMATIQUEAdaptateur RS-232 isolé électriquement . . . . . . . . . . . . . . .7/8 26Adaptateur pour connecteur Sub-D à 9 voies . . . . . . . . . . .7/8 58Adaptateur simple pour la SB Live! Player 1024 . . . . . . . . .7/8 86Ampli Surround pour PC . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 46CAN télécommandé à sortie RS-232 . . . . . . . . . . . . . . . . . . .7/8 124Calculateur diviseur

de vitesse de bauds pour micros AVR . . . . . . . . . . . . . .7/8 15Capteurs de température à interface numérique à 1 fil . . .7/8 98Carte à 32 entrées analogiques . . . . . . . . . . . . . . . . . . . . . . .06 26

Carte d’expérimentation PCI . . . . . . . . . . . . . . . . . . . . . . . . .02 16Carte 89S8252 Flash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12 20Commutateur clavier/souris . . . . . . . . . . . . . . . . . . . . . . . . .7/8 34Compilateur graphique

pour microcontrôleurs MCS-51 . . . . . . . . . . . . . . . . . . . .7/8 18C.I. pilote de ventilateur

avec sortie « température trop élevée » . . . . . . . . . . . . .7/8 65DataSpy RS-232 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10 8DCI-PLC, simulation PLC par ordinateur . . . . . . . . . . . . . . . .06 66De PC à PC par 2 câbles d’imprimante . . . . . . . . . . . . . . . . .7/8 08Émetteur-récepteur IR pour PC . . . . . . . . . . . . . . . . . . . . . . .12 54GBPB - Carte de prototypage pour GameBoy . . . . . . . . . . . .01 20Graphiques (les) en Excel . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 107HC12, microcontrôleur 16 bits . . . . . . . . . . . . . . . . . . . . . . . . .01 30Horloge planétaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 79Interface disque dur pour port imprimante . . . . . . . . . . . . . .12 70Interface disque dur pour mC 8 bits . . . . . . . . . . . . . . . . . . .03 16Interface I2C sérielle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 76Interrogation de touches avec peu de lignes . . . . . . . . . . . .7/8 39Inverseur de données RS-232 miniature . . . . . . . . . . . . . . . .7/8 62ISAC (1), contrôleur capteur/actionneur intelligent . . . . . . .10 40ISAC-Cube . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 8ISAC (3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12 38MCS BASIC-52 V1.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .02 45Mini-serveur Web (I) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .09 52Mini-serveur Web (II) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10 52Module graphique LCD sur µP 8051 . . . . . . . . . . . . . . . . . . . .09 8Moniteur BITBUS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 47Passage par zéro des microcontrôleurs . . . . . . . . . . . . . . . .7/8 39PC éteint, l’écran itou . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7/8 74Programmateur Atmel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .09 38Programmateur pour DS1621 . . . . . . . . . . . . . . . . . . . . . . . . .02 40Rendez-vous avec le BS2p de Parallax . . . . . . . . . . . . . . . . . .09 60Réseaux (les) neuraux aux commandes . . . . . . . . . . . . . . . . .06 22Rien de plus

qu’un nouveau programmateur d’EEPROM . . . . . . . . . .7/8 38SDCC (Small Device C-Compiler) . . . . . . . . . . . . . . . . . . . . .7/8 106Simulateur d’EPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .01 52Télécommande pour PC

(Récepteur de télécommande RC5) . . . . . . . . . . . . . . . . .06 62UART pour USB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12 XX

VOITURE, MOTO & VÉLOChenillard dit « KITT-scanner » . . . . . . . . . . . . . . . . . . . . . . .7/8 20

INFORMATIONSAccumulateurs Lithium-ion . . . . . . . . . . . . . . . . . . . . . . . . . . .09 32

Applikator :Étage de sortie 2 x 25 W pour automobile . . . . . . . . . . . .12 60NCP1200 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10 20Nouveaux circuits intégrés en oscillateurs . . . . . . . . . . .03 32XICOR X9258T, 9250T . . . . . . . . . . . . . . . . . . . . . . . . . . . . .01 36

CAO (la) en Europe (I) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .05 08CAO (la) en Europe (II) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .06 08

Circuits de base :Éclairage temporisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .02 66

Page 35: Elektor N°282 - Décembre 2001 - doctsf

Mois Page Mois Page

Circuits fondamentaux :L’étage à relais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .04 56Modulateur en largeur d’impulsion . . . . . . . . . . . . . . . . .01 58

Coin du lecteur :Qualité d’enregistrement des CD . . . . . . . . . . . . . . . . . . .02 60Electronique sur PC - USB - Nouveaux microcontrôleurs . . . . . . . . . . . . . . . . . . . . . . . .04 63Copie des CD-ROM sur disque dur - Transfos de TeslaPC-audio - Soucis d’E/S numériques - Télécommande RCDétecteur de métaux - Télécommande par GSM . . . . . .09 50Terminal SIMCAD - Affichage modulaire à matrice de points - 2 amplis,1 préampli - Acrobat et le CD-ROMde l’année Elektor 2000 - Mini-PIC-programmer . . . . . .11 36Programmateur Atmel - Site EDiTS Pro - Réalisation de circuits imprimés -Thermomètre numérique à LEDBooster pour EdiTS - Transfo ETD-29 - LS contre HCBrancher une radio portable au câble ? . . . . . . . . . . . . . .12 68

Comment fonctionne ? :Journal lumineux avec 7 LED seulement . . . . . . . . . . . . .03 30

Commande en ligne sur Internet . . . . . . . . . . . . . . . . . . . . . .05 76Concept (le) Phytec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .03 37

Cours d’initiation :L’électronique sur PC (V) :Mesure de valeurs analogiques . . . . . . . . . . . . . . . . . . . .01 66L’électronique sur PC (VI) :Mesure par capteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . .02 62L’électronique sur PC :Mesures de tension (VIIème partie & fin) . . . . . . . . . . . .03 62

Description de kit :Commande à distance bifilaire . . . . . . . . . . . . . . . . . . . . .01 40

Électronique en ligne :DMX-512 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12 80Expériences à base de magnétron . . . . . . . . . . . . . . . . . .05 66« Gonfler » son graveur CD . . . . . . . . . . . . . . . . . . . . . . . .10 82Informations semi-conducteurs . . . . . . . . . . . . . . . . . . . .01 80Lecteurs MP3 autonomes . . . . . . . . . . . . . . . . . . . . . . . . .02 14Projets MP3 à foison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .09 46Montages en self-service . . . . . . . . . . . . . . . . . . . . . . . . . .04 70Panorama des piles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .03 50Pixels abîmés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 20Surcadencement de CPU . . . . . . . . . . . . . . . . . . . . . . . . . .06 76

Elekture :Switch=Mode Power Supply SPICE Cookbook . . . . . . . .10 46

En savoir plus sur le bus PCI :Évolution et développement, d’ISA à PCI . . . . . . . . . . . .03 52

Horloges (les) radiopilotées modernes . . . . . . . . . . . . . . . . .10 24

Infocartes :LTC490, pilote interface RS-485/422 . . . . . . . . . . . . . . . . .12 27LTC1451/2/3, convertisseur A/N - N/A . . . . . . . . . . . . . .03 59LT1074/76, régulateur à déCoupage abaisseur . . . . . . . .06 59NCP 1200 - contrôleur MLI . . . . . . . . . . . . . . . . . . . . . . . .11 23PBL3717A, commande de moteur pas à pas . . . . . . . . . .05 63Régulateurs de la série NMF . . . . . . . . . . . . . . . . . . . . . . .10 29SG3525AN, régulateur de tension . . . . . . . . . . . . . . . . . .02 57TDA2822, double amplificateur de puissance . . . . . . . . .01 61TDA8444 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .09 69TLC070 à 075 (A) Amplificateurs opérationnels . . . . . . .04 61

Logiciels :CodeVisionAVR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .02 76Multisim + Ultiboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . .04 14OscilloSounD™ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .03 79

Logique floue (I) : Considérations de base . . . . . . . . . . . . . .04 24Logique floue (II) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .05 68Lorsque RS-485 rencontre CAN . . . . . . . . . . . . . . . . . . . . . . .11 80Mini-serveur Web (II)

(suite de Télécommande à l’extrême) . . . . . . . . . . . . . . .06 32Modules de mémoire (les) . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 38Mystères (les) du DMX512 . . . . . . . . . . . . . . . . . . . . . . . . . . .05 52Où en est la maison intelligente ? . . . . . . . . . . . . . . . . . . . . .02 26

Outils de développement :ARM7TDMI Evaluation Kit . . . . . . . . . . . . . . . . . . . . . . . .03 78CANDIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .06 65PIC Logicator et PIC Emulator . . . . . . . . . . . . . . . . . . . . .01 82PICSTART® Plus DDTP . . . . . . . . . . . . . . . . . . . . . . . . . . .04 50Prototype (du) à la série en temps record . . . . . . . . . . . .05 72Rabbit 2000 Basic Development Kit . . . . . . . . . . . . . . . . .10 78TOPAS CE Starter Kit . . . . . . . . . . . . . . . . . . . . . . . . . . . . .02 15Voice Extreme™ Toolkit . . . . . . . . . . . . . . . . . . . . . . . . . . .11 18XE8000 ProStart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .07/08 12878K - Test it! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .09 48

Principes de base :Expériencesavec des céramiques piézo-électriques (I) . . . . . . . . . . .04 16Expériencesavec des céramiques piézo-électriques (II) . . . . . . . . . . .05 24

Portage simplifié de projets sous Windows CE . . . . . . . . . .03 66Protocoles de télécommande par IR (I) . . . . . . . . . . . . . . . . .03 24Protocoles de télécommande par IR (II) . . . . . . . . . . . . . . . . .04 36Quartz et oscillateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 62Récepteur GPS avec sortie NMEA . . . . . . . . . . . . . . . . . . . . .12 48Régulateurs de tension (la pratique des) . . . . . . . . . . . . . . .12 66Sus aux produits Microchip . . . . . . . . . . . . . . . . . . . . . . . . . . .12 78Télécommande à l’extrême (I) : via Internet et TCP/IP . . . .05 34Télémétrie sans contacts . . . . . . . . . . . . . . . . . . . . . . . . . . . .10 60UMTS (Universal Mobile Telephone Service) . . . . . . . . . . . .01 24Vers des systèmes électroniques

à basse puissance au quotidien . . . . . . . . . . . . . . . . . . . .02 70

TORT D’ ELEKTORAmpli Hi-Fi P3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .09 80Audion pour Ondes Courtes . . . . . . . . . . . . . . . . . . . . . . . . . .04 65Commutateur horaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .09 80

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 74GBDSO GameBoy Digital Sampling Oscilloscope . . . . . . . . .04 65

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .09 80Indicateur de fonctionnement

et de destruction de fusible . . . . . . . . . . . . . . . . . . . . . . . .11 74Les mystères du DMX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .09 80Mini-serveur Web (I) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 74« Nonante », ampli 90 W à IGBTs . . . . . . . . . . . . . . . . . . . . . .04 65Préamplificateur RIAA à ECL 86 . . . . . . . . . . . . . . . . . . . . . .09 80Récepteur M.A. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .09 80Rien de plus qu’un nouveau programmateur d’EEPROM . .11 74Simulateur d’EPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .04 65Télécommande pour PC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 74Timer pour chambre noire . . . . . . . . . . . . . . . . . . . . . . . . . . . .09 80

TABLEDESMATIÈRES2001

46 Elektor 12/2001

Page 36: Elektor N°282 - Décembre 2001 - doctsf

GPS (Global Positioning System) offrela possibilité à son utilisateur dedéterminer sa position spatiale avecune précision plus qu’acceptable.Depuis la mise hors-fonction du sys-tème d’introduction d’erreur artificielà l’intention des utilisateurs civils, laprécision atteint entre 20 et 50 m,dans la pratique, l’erreur est mêmesouvent inférieure à 10 mètres. Il estmême possible, à l’aide du GPS dif-férentiel (DGPS = Differential GPS),d’augmenter la précision par la priseen compte de données de correction.À l’image de nombreux appareilsélectroniques, les récepteurs GPSont vu leur prix chuter sensiblement.Les modèles les plus simples sontactuellement disponibles pour del’ordre de 1 000FF. Les appareilsdotés de programmes cartogra-phiques sophistiqués et au confortd’utilisation élaboré restent cepen-dant d’un prix trop élevé. Il existe, sil’on ne tient pas impérativement à ceque la solution adoptée soit la pluscompacte possible, une alternativeabordable : acheter un modulerécepteur sans affichage mais dotéd’une sortie données que l’onconnectera à l’interface de sortie

INFORMATIONS

48 Elektor 12/2001

Récepteur GPS avecsortie NMEAPrincipes de base et application

Gunther May, DL3ABQ

On trouve actuellement sur le marché des modules GPS à sortie NMEAà moins de 1 000FF. Il existe même des GPS de poche dotés de cetteinterface pour à peine plus cher. Le présent article a pour but de vousmontrer (tout) ce que l’on peut faire à l’aide de ces appareils.

Page 37: Elektor N°282 - Décembre 2001 - doctsf

d’un PC ou d’un ordinateur de poche (PDA =Personnal Digital Assistant). Ce type demodule existe pour moins de 1 000 FF, les pro-grammes de cartographie pour PC querequiert cette approche ne sont pas trop coû-teux eux non plus.

Récepteur GPSComme le montre le synoptique de la figure 1,les composants nécessaires à la réalisationd’un récepteur GPS se limitent à 2 ou 3 : uneantenne GPS (qui pourra être, selon le modèle,soit intégrée soit séparée du reste de l’appa-reil), module souvent doté déjà d’un préampli-ficateur, le circuit du récepteur GPS proprementdit et une unité de commande. Cette dernièrecomporte dans la plupart des cas un micropro-cesseur pilotant un affichage et un clavier. Ontrouve également, en option, un récepteurDGPS chargé de recevoir, via les éthers, unsignal de correction (données DGPS).La figure 2 vous propose un synoptiquedétaillé d’un récepteur GPS, schéma tiré dela fiche de caractéristiques du module deréception Jupiter LP de Conexant (ex-Rock-well). Le récepteur GPS proprement dit estconstitué en fait d’un set de puces constituéde 2 circuits intégrés spécifiques au fabricant.Le bloc HF (RF-Monopac) sert à la réceptiondu signal GPS et à son échantillonnage. Lereste du traitement, mise en forme et déco-dage du signal GPS ainsi que commande dubloc d’entrée (front end) est l’affaire d’un pro-cesseur numérique de signal (PNS plus connusous la dénomination de DSP, Digital SignalProcessor) spécialisé.La complexité du matériel et du progicielrequis par la partie interface de saisie joue,dans le prix de revient d’un récepteur GPScomplet, un rôle qui est loin d’être négli-geable. Cela est plus particulièrement vrai encas d’utilisation d’un écran TFT couleur debonne taille, mais les programmes de carto-graphie et les banques de données intégréesgrèvent eux aussi le budget de réalisation. Ondécouvre, dans la photo de la figure 3,l’exemple type d’un récepteur GPS haut degamme. Si l’on se contente d’acheter unsimple récepteur et que l’on utilise un PCpour sa commande, la facture s’en voit sensi-blement diminuée. Ce module « GPS insideonly » pourra prendre la forme d’un moduletel que celui de la figure 4 ou encore de ceque l’on appelle une souris GPS (figure 5),module qui possède une antenne intégrée. Ilexiste aussi, pour à peine plus cher, desrécepteurs GPS de poing bas de gamme, telque, par exemple, le petit appareil de Garminreprésenté en figure 6, qui, s’il ne comportequ’une interface d’accès simple, n’en possèdepas moins une interface pour données.

INFORMATIONS

4912/2001 Elektor

Figure 1. Synoptique d’un récepteur GPS complet.

Figure 2. Synoptique du module de réception GPS.

Figure 3. Récepteur GPS haute de gamme.

Page 38: Elektor N°282 - Décembre 2001 - doctsf

Il faut bien évidemment, pour pouvoir utilisercette interface, que le programme tournantsur le PC et le récepteur puissent communi-quer l’un avec l’autre par le biais d’un proto-cole standardisé.

NMEANMEA est un protocole de transmission déve-loppé pour l’échange de données entre diffé-rents instruments de mesure électroniquesutilisés dans la marine (marchande).Comme le GPS a rapidement trouvé, dans lemonde de la navigation maritime, un domainede prédilection, NMEA est rapidementdevenu le Standard du protocole de trans-mission entre récepteur GPS et périphériqueen fin de ligne. Il n’est reste cependant pasmoins un certain nombre de récepteurs quiconnaissent leur propre protocole. Il faudra,sachant que la plupart des applications PCrequièrent NMEA, ne pas opter pour unrécepteur de cette catégorie ne répondantpas au standard.Dans le présent article, lorsque nous parlonsde NMEA, nous sous-entendons le protocoleNMEA 0183 répandu dans ses versions 1.5 ou2.0. On aura affaire, dans la majorité des cas,à la version 2.0, sachant que les récepteursles plus récents n’utilisent pratiquement plusles versions plus anciennes (NMEA 0183 ver-sion 1.5, NMEA 0182 et NMEA 0180).La sortie NMEA du récepteur est connectéeà l’une des interfaces sérielles du PC. Leparamétrage RS-232 défini par le protocoleest 4 800 bauds, 8 bits de donnée, 1 bit d’arrêtet sans parité. Il faudra se rappeler que cer-tains récepteurs fournissent en sortie desniveaux TTL ou CMOS; ce type de récepteurrequiert impérativement l’utilisation d’unconvertisseur de niveau; l’approche la plusclassique fait appel au circuit standard à basede MAX232 (figure 7).Si le manuel mentionne une possibilitédirecte de connexion à un PC il n’y a aucuneraison de se faire de souci à ce sujet.

Chaînes NMEALes informations NMEA sont subdivisées enlignes d’un maximum de 80 caractères, blocsde données baptisés chaînes (string). Il estpossible d’examiner ces chaînes NMEA à

INFORMATIONS

50 Elektor 12/2001

Figure 4. Exemple de module GPS.

Figure 5. Une souris GPS intègre un récepteurGPS complet à antenne intégrée et pourra,selon sa version, être connectée directement àun port sériel ou USB de PC. La présente photomontre une NaviMouse (Unitronic) destinée àêtre connectée à un APN de l’écurie Palm.

Tableau 1Exemple de chaîne :

RMC,225446,A,4916.45,N,12311.12,W,000.5,054.7,191194,020.3,E*68

225446 Heure du point : 22:54:46 UTC (Universal Time Coordinated)A État du récepteur GPS (A: normal; V: Alarme)4916.45,N 49° 16.45’ Latitude Nord12311.12,W 123° 11.12’ Longitude Ouest000.5 Vitesse054.7 Route (cap)191194 Date du point : 19 Novembre 1994020.3,E Variation magnétique 20,3° Est*68 Somme de vérification

Page 39: Elektor N°282 - Décembre 2001 - doctsf

important de programmes gratuits écrits àcet effet; nous vous proposons une descrip-tion succincte de certains d’entre eux.

GPSS (cf. figure 8)Ce programme freeware avec cartographiedisponible à l’adresse www.gpss.co.uk/est remarquable. Son environnement utilisa-teur requiert cependant une certaine périoded’adaptation.

NMEA-MonitorAutre programme freeware de visualisationde données NMEA. À télédécharger àl’adresse :www.navtec.de/english/nmea mon.htm

WinGPSUn programme commercial très puissant aveccartographie dont il existe une version sha-reware. Son adresse de téléchargement :

www.stentec.com/.

l’aide d’un programme de terminaltel que HyperTerminal de Windowsou le Terminal de Norton-Comman-der et d’en lire le contenu sachantqu’il s’agit d’un code ASCII parfaite-ment lisible. Il existe cependant desalternatives au confort d’utilisationsensiblement meilleur auxquellesnous reviendrons un peu plus loin.Les chaînes débutent toujours parun « $ », caractère suivi par un coded’identification du système (systemID) qui est, dans le cas des récep-teurs GPS, tout simplement « GP ».Ces caractères sont suivis par leschamps de données proprement dits.Le tableau 1 propose, à titre

d’exemple, la chaîne RMS (= Recom-mended Minimum SpecificGPS/Transit data) produite en faitpar n’importe quel récepteur GPS. LaFAQ (liste de questions/réponses)disponible à l’adresse Internet [1]donne une description complète ducontenu d’une chaîne NMEA.

Logiciel pour PCOn a beau avoir le meilleur desrécepteurs GPS, il ne sert pas àgrand chose si le logiciel qui traiteles données qu’il fournit ne le faitpas correctement. Il existe heureu-sement un nombre relativement

INFORMATIONS

5112/2001 Elektor

MAX232

T1OUT

T2OUT

R1OUT

R2OUT

R1IN

IC1

T1IN

T2IN

R2IN

C1–

C1+

C2+

C2–

11

12

10

13

14

15

16V+

V-

7

89

3

1

4

5

2

6

C1

10µ

C2

10µ

C4

10µ

C3

10µ

X1

1

2

3

4

5

6

7

8

9

V

DATA IN

DATA OUT

GND

CC

PC(RS232)

011001 - 13

Récepteur GPS

Figure 7. Nombre de récepteurs requièrent un convertisseur de niveau pour laconnexion à l’interface RS-232. Le schéma standard à base de MAX232, circuitconçu spécialement à cet effet, remplit cette fonction à merveille.

Figure 8. GPSS est un programme freeware àvisualisation de cartes on ne peut plus intéres-sant. Mérite le détour.

Figure 6. Les portables à GPS abordables dispo-sent d’une interface NMEA.

Page 40: Elektor N°282 - Décembre 2001 - doctsf

Il ne s’agit là que d’un choix restreint sachantqu’il existe bien d’autres programmes dedécodage de données NMEA. Notons qu’ilexiste également des programmes pour lesordinateurs de poing (PDA ou APN pourAssistant Personnel Numérique) tels que lesPalms et autres Psions.La plupart du temps, les programmes dotésd’une fonction de cartographie comprennentdéjà un certain nombre de cartes géogra-phiques; on pourra en importer d’autresdepuis les CD-ROM prévus à cet effet ou desites offrant des collections de cartes. Il estnécessaire, dans la plupart des cas, de cali-brer ces cartes à l’aide de quelques points derepères connus.

APRSIl s’agit ici d’un nouveau mode connu desradio-amateurs dans lequel on connecte unrécepteur GPS à un émetteur/récepteur detrafic radio-amateur en utilisant le protocoleNMEA évoqué plus haut. Il est possible ainsid’échanger des informations de position entredifférentes stations radio. Pour de plusamples informations on pourra faire un tour àl’adresse Internet :

www.dididahdahdidit.com/.

Liens Internet

Il existe sur Internet nombre de sitestraitant des thèmes GPS et NMEA.Donnons, en guise de conclusion àce premier article, un florilèged’adresses :– Pour en savoir plus sur le système

GPS (TU Ilmenau) :www-emt.tu-ilmenau.de/emt/gps www/gps main.htm

– La page NMEA de TorstenBaumbachs avec projet logiciel :http://pandora.inf.uni-jena.de/ttbb/ nmea.html

– Liste des modules GPS les plusabordables :

http://rover.wiesbaden.netsurf.de/~hirschgps/gpsbord.htm

– Site Internet d’informationconcernant le GPS de JoeMehaffey et Jack Yeazel :http://joe.mehaffey.com/

– Le site GPS et NMEA de PeterBennett :http://zazu.optiva.ee/pub/nmea/

– La « Global Positioning System(GPS) Resource Library » :www.gpsy.com/gpsinfo/

– La FAQ du Newsgroupmaus.technik.gps :http://home.wtal.de/noegs/mtg-faq.htm

(011001-1)

INFORMATIONS

52 Elektor 12/2001

Sources :[1] Bennett, Peter (2000): The NMEA FAQ Version 6.3

(http://vancouver-webpages.com/peter/nmeafaq.txt)[2] Schrödter, Frank (1994): GPS Satelliten-Kommunikation en allemand);

Franzis-Verlag, Poing[3] Récepteur GPS (figures 3 et 6) : www.garmin.de[4] Récepteur GPS (figures 4 et 5) : www.icc-unitronic.de[5] Synoptiques (figures 1 et 2) : www.conexant.com

Page 41: Elektor N°282 - Décembre 2001 - doctsf

La transmission de don-nées par infrarouge (IR)ne cesse de voir sa partde marché croître. Si, iln’y a encore que peu detemps, les télécom-mandes étaient les seulsustensiles à travailleravec cette lumière invi-sible (pour l’oeil humain)de plus en plus de péri-phériques allant de lasouris aux claviers pourPC en passant par lesimprimantes font appel àl’infrarouge pour com-muniquer. Aujourd’hui,on utilise même lalumière IR dans les fais-ceaux de câbles à fibreoptique. Le montageproposé ici, notre « émet-teur/récepteur IR pourPC » constitue, de parson aspect pratiquepuisqu’il fait appel àl’utilisation d’une inter-face de PC et son logicielà Visual BASIC, en

MICROINFORMATIQUE

54 Elektor 12/2001

Émetteur/récepteurIR pour PCTélécommande d’appareils et liaison de données en un

Projet : Burkhard Kainka

Le présent article ne se contente pas de décrire un projetd’émetteur/récepteur IR à l’aide duquel il sera possible, à partir d’un PC,de télécommander et de transférer des données. Il constitue une suite àla série d’articles intitulée « L’électronique sur PC » et donnera égalementdes informations additionnelles sur le transfert par le biais des IR et lesinterfaces utilisées, de sorte que vous pourrez utiliser ces éléments lors dela conception de projets propres.

Page 42: Elektor N°282 - Décembre 2001 - doctsf

tion, 30, 33, 36 kHz et ainsi de suite. Lacourbe du filtre possède une bande relative-ment large de sorte qu’une dérive dequelques kilohertz n’entraîne qu’une détério-ration relativement faible de la sensibilité.Le TSOP1836 de Vishai/Telefunken est un cir-cuit intégré de fonction similaire. Ces 2 com-posants requièrent une tension d’alimenta-tion de 5 V seulement et se contentent d’uneconsommation de moins de 2 mA. Il est par-tant possible de les alimenter directementdepuis l’interface sérielle du PC.L’émetteur/récepteur IR proposé ici comporte,outre le récepteur, on s’en serait douté, éga-lement un émetteur IR modulé pour des fré-quences de porteuse auxiliaire comprisesentre 30 et 40 kHz. L’émetteur IR pourra êtreutilisé pour la télécommande d’appareils telque magnétoscopes ou téléviseurs. Mais ilest également possible de s’en servir pour latransmission de données par voie sérielleentre 2 PC.Un coup d’oeil sur le schéma de la figure 1nous permet de découvrir les 3 picots aux-quels vient se connecter le circuit intégré durécepteur, IC3, et un régulateur de tensionintégré, IC1, un 78L05. La tension d’alimen-tation est dérivée des sorties DTR (DaTaReady) et RTS (Ready To Send) de l’interfaceRS-232, lignes interconnectées par le biaisdes diodes D1 et D2 en vue de leur décou-plage. Il est possible, en faisant tourner unprogramme sur le PC, de disposer à ce niveaud’une tension de l’ordre de 10 V. Ces lignesalimentent en outre, au travers des diodes D6et D7, la partie émission du montage. Il nousa fallu prévoir un condensateur de capacitérelativement importante, 4,7 µF pour C1, enraison du courant impulsionnel relativementélevé requis lors de l’émission d’une part, etpour le lissage de la tension d’entrée du régu-

quelque sorte une suite à la séried’articles « L’électronique sur PC »(Elektor n° 267 à 273, septembre2000 à mars 2001) et du livre« Petites expériences d’électroniqueavec mon PC » (avec CD-ROM) parutout récemment.Nombre de télécommandes IR pourtéléviseurs, magnétoscopes et autreséquipements grand public fonction-nent selon le standard RC5 défini parPhilips. Les programmes donnésplus loin permettent de s’assurerfacilement si une télécommandedonnée utilise ou non le code RC5.Ce standard utilise des signauxmodulés dont la fréquence se situeentre 30 et 40 kHz. La télécommandeémet ce que l’on appelle des trainsd’impulsions (burst) qui sont en faitdes paquets d’impulsions d’une lon-gueur de 0,888 ou 1,776 ms.Dans le cas d’une fréquence demodulation de 36 kHz, un train courtcomporte 32 impulsions distinctes,un train long 2 fois plus, 64 partant.La durée de l’ensemble du paquet

est de 25 ms environ; sa répétition sefait toutes les 100 ms tant que seprolonge l’action sur l’une ou l’autretouche.Il est possible, très facilement,d’utiliser une télécommande infra-rouge à d’autres fins. On peut ainsis’en servir pour piloter certainesfonctions d’un programme de sonpropre cru. L’une des applicationstypiques pourrait être le pilotaged’un diaporama. Une fois le pro-gramme démarré, il ne reste plusqu’à s’enfoncer dans son fauteuil età effectuer la régie du spectacle àpartir de là.

Émetteur/récepteur : lematérielLa réception de signaux infrarougecourants est devenue, grâce à lamise sur le marché de récepteursintégrés, une opération relativementsimple. Le SFH506, un récepteur IRtrès connu de Siemens existe pourdifférentes fréquences de modula-

MICROINFORMATIQUE

5512/2001 Elektor

K1

DB9

1

2

3

4

5

6

7

8

9

TSOP1836

21 3

IC33

1

2

R2

4k7

R1

4k7

R7

1k

R8

22

Ω

R5

4k7

R4

470Ω

R3

100k

R6

27k

D2

D1

1N41482x

C1

4µ7 25V

C5

1µ 25V

C2

100n

C3

10n

C4

22n

D7

D6

1N41482xD3

1N4148

2k5P1

T2

BC547

T3

BC337

T1

BC547

D5

D4

78L05

IC1

RxD

RTS

TxD

CTS

DTR

GND

010052 - 11

IC1DIS

THR

OUT

555TR

CV

2

7

6

4

R

3

5

8

1

Figure 1. L’électronique de l’émetteur/récepteur IR à connecter à l’interface sérielle d’un PC.

Émetteur/récepteur IRCaractéristiques techniques

– Fréquence de réception : 30, 33, 36 kHzen fonction des composants mis en place

– Fréquence d’émission : 30 à 40 kHz ajus-table continûment

– Alimentation : par le biais de l’interfacesérielle

– Portées : 10 m environ– Récepteur IR : pour télécommandes au

standard RC5– Émetteur IR : compatible RC5– Émetteur/récepteur de données IR : don-

nées sérielles, max 2 400 bauds.

Page 43: Elektor N°282 - Décembre 2001 - doctsf

lateur de tension de l’autre.Le récepteur IR intégré prévu pour dessignaux IR modulés à 36 kHz produit à soncontact central, un signal de sortie actif auniveau bas. Ce signal est appliqué directe-ment à la ligne CTS d’où il subira un déco-dage logiciel. La présence d’une résistancede forçage au niveau haut (pull-up) addition-nelle se justifie en raison de la résistanced’entrée relativement faible de la ligne CTS.Le signal subit en outre une inversion intro-duite par un étage à transistor, T1, avantd’être appliqué à l’entrée RxD de l’interfacesérielle. Cette ligne sert à la réception dedonnées sérielles, lors de l’établissementd’une liaison de données entre 2 PC parexemple.L’émetteur infrarouge comporte un étage demodulation constitué par IC2 et un amplifi-cateur d’impulsions prenant la forme d’unepaire de transistors, T2 et T3, le tout atta-quant 2 LED IR, D4 et D5. IC2 est un tempo-risateur du type 555 monté en oscillateurchargé de fournir des impulsions en aiguillenégatives d’une durée de quelque 2 µs.L’ajustable P1 permet d’ajuster la fréquenceentre 30 et 40 kHz. On peut ainsi, en fonctionde l’application, ajuster le circuit à la fré-quence requise et de ce fait obtenir la por-tée maximum. Le 555 tire son alimentationde la ligne TxD qui active et désactivel’émetteur le modulant ainsi (on parled’« échantillonnage »).L’énergie requise par les 2 diodes IR d’émis-sion est elle aussi dérivée de l’interfacesérielle. Les lignes DTR et RTS chargent uncondensateur de 1 µF, C5, par le biais desdiodes D6 et D7. Les brèves impulsions desortie disponibles à la sortie (broche 3) dutemporisateur rendent passant l’étage decomme des LED que constituent T2 et T3. Ceprocessus se traduit par la naissance de cou-rants impulsionnels d’une intensité compriseentre 200 et 300 mA. La portée est, dans cesconditions, de l’ordre de 10 mètres. Bien quele courant de charge maximum que puissefournir l’interface sérielle soit, avec ses40 mA, relativement faible, il n’en est pasmoins, en raison de l’intervalle séparant2 impulsions, largement suffisant pour rechar-ger à chaque fois le condensateur électrochi-mique de charge.Nous avons dessiné une platine en vue devous faciliter la réalisation de ce montage.Elle vous est proposée, recto-verso, enfigure 2. Le seul point auquel il faille veillerlors de la mise en place des composants estle respect de la polarité de toutes les diodeset condensateurs électrochimiques, et del’orientation des circuits intégrés. L’une deserreurs les plus souvent commises est l’utili-sation, pour l’embase Sub-D en équerre à

MICROINFORMATIQUE

56 Elektor 12/2001

010052-1

(C) ELEKTOR

C1

C2

C3

C4 C5

D1

D2

D3

D4

D5

D6

D7

G

G1

IC1

IC2

IC3

K1P1

R1

R2

R3

R4R5

R6

R7

R8

T1

T2T3 010052-1

01

00

52

-1(C

) ELE

KTO

R

Figure 2. Dessin des pistes et sérigraphie de l’émetteur/récepteur IRl.

Liste des composants

Résistances :R1,R2,R5 = 4kΩ7R3 = 100 kΩR4 = 470 ΩR6 = 27 kΩR7 = 1 kΩR8 = 22 ΩP1 = ajustable 2kΩ5

Condensateurs :C1 = 4µF7/25 V verticalC2 = 100 nFC3 = 10 nFC4 = 22 nFC5 = 1 µF/25 V vertical

Semi-conducteurs :D1 à D3,D6,D7 = 1N4148D4,D5 = LED IR telle que, par

exemple, LD271T1,T2 = BC547T3 = BC337IC1 = 78L05IC2 = 555IC3 = TSOP1836 (Temic),

SFH506-36

Divers :K1 = embase femelle Sub-D à

9 contacts femelle en équerreencartable

Page 44: Elektor N°282 - Décembre 2001 - doctsf

MICROINFORMATIQUE

5712/2001 Elektor

Listage 1Réception et visualisation de données RC5

Dim CtrDim AdrDim Dat

Sub RC5Error()Ctr = -1Adr = -1Dat = -1

End Sub

Function RC5Bit() As IntegerTIMEINITUSIf CTS = 0 ThenWhile ((TIMEREADUS < 500) And (CTS = 0))WendIf TIMEREADUS > 499 Then RC5ErrorDELAYUS 444If CTS = 0 Then RC5ErrorRC5Bit = 0

ElseWhile ((TIMEREADUS < 500) And (CTS = 1))WendIf TIMEREADUS > 499 Then RC5ErrorDELAYUS 444If CTS = 1 Then RC5ErrorRC5Bit = 1

End IfEnd Function

Sub RC5()Ctr = 0Adr = 0Dat = 0Startbit = FalseREALTIME TrueTIMEINITWhile Not StartbitWhile (CTS = 1) And (TIMEREAD < 500)Wend

Startbit = TrueDELAYUS 444If CTS = 1 Then Startbit = FalseDELAYUS 888If CTS = 0 Then Startbit = FalseDELAYUS 888If CTS = 1 Then Startbit = FalseAdr = StartbitIf TIMEREAD > 499 Then Startbit = True

WendDELAYUS 888Ctr = RC5BitAdr = 0For N = 1 To 5DELAYUS 888Adr = Adr * 2Adr = Adr + RC5Bit

Next NDat = 0For N = 1 To 6DELAYUS 888Dat = Dat * 2Dat = Dat + RC5BitNext N

REALTIME (False)End Sub

Private Sub Form_Load()OPENCOM “COM2”DTR 1RTS 1

End Sub

Private Sub Form_Unload(Cancel As Integer)CLOSECOM

End Sub

Private Sub Timer1_Timer()RC5Text1.Text = Str$(Ctr) + “ “ + Str$(Adr) + “ “ +

Str$(Dat)End Sub

Listage 2Chargement d’images pour un diaporamaPrivate Sub Timer1_Timer()RC5If Dat <> Dat_old ThenIf Dat = 1 Then Picture1.Picture = LoadPicture(“D:\Homepage\Bast11.jpg”)If Dat = 2 Then Picture1.Picture = LoadPicture(“D:\Homepage\Bast21.jpg”)If Dat = 3 Then Picture1.Picture = LoadPicture(“D:\Homepage\Bast31.jpg”)If Dat = 4 Then Picture1.Picture = LoadPicture(“D:\Homepage\Bast41.jpg”)If Dat = 5 Then Picture1.Picture = LoadPicture(“D:\Homepage\Bast51.jpg”)If Dat = 6 Then Picture1.Picture = LoadPicture(“D:\Homepage\Bast61.jpg”)If Dat = 7 Then Picture1.Picture = LoadPicture(“D:\Homepage\Bast71.jpg”)If Dat = 8 Then Picture1.Picture = LoadPicture(“D:\Homepage\Bast81.jpg”)If Dat = 9 Then Picture1.Picture = LoadPicture(“D:\Homepage\Bast91.jpg”)End IfDat_old = Dat

End Sub

9 voies K1, d’une embase mâle(9 contacts) au lieu de l’embasefemelle (9 orifices) qu’il faut en faitutiliser.

Décodeur RC5 : le logicielLa sortie de données du récepteurintégré est reliée directement à laligne CTS. On dispose à ce niveau

des signaux produits par une télécommandedirigée vers le récepteur. Il nous faut mainte-nant un programme de décodage du signalqui traite les impulsions entrant de manière

Page 45: Elektor N°282 - Décembre 2001 - doctsf

à identifier la touche ayant été actionnée surla télécommande.La figure 3 montre le signal RC5 entrant,signal émis par une télécommande RC5.Notons que le chronodiagramme a été saisipar le biais d’un analyseur logique que décritl’ouvrage cité en début d’article.Un programme visualise immédiatement toutchangement du signal sur l’entrée CTS.Voyons ce signal d’un peu plus près. Le pro-tocole RC5 utilise ce que l’on appelle unsignal biphase. L’information proprement ditese trouve dans le changement de phase. Leniveau de signal change au plus tard après1,776 ms. Le récepteur peut ainsi, grâce à cechangement de niveau, se resynchroniser enpermanence sur le signal.Le signal démarre toujours avec la mêmeséquence initiale. Celle-ci est suivie de3 trains de données, dans lesquels les chan-gements de niveau à des intervalles de1,776 ms constituent en fait les vrais bits dedonnée. Après chacun de ces changementsde niveau, le récepteur attend un peu plus de0,888 ms avant de prendre en compte leniveau suivant, qu’il ait ou non changé. Lechangement de niveau qui le suit est tout àla fois et un point de synchronisation et uneinformation de bit. Il est possible, avec ceprincipe, de transmettre des mots de donnéede longueur quelconque. Dans le cas dusignal RC5, ces mots de donnée ont une lon-gueur de 12 bits :* Le bit de commande (Ctl) change d’état lorsde chaque action sur une touche, basculantentre 0 et 1 et inversement. Ceci permet aurécepteur de faire la différence entre uneaction prolongée sur une touche et une actionrépétée sur cette touche.* L’adresse de l’appareil (Adr) comporte5 bits, la transmission débutant par les bitsde poids fort. Les adresses d’équipement

courantes sont 1 pour les téléviseurset 5 pour les magnétoscopes. Celapermet d’utiliser plusieurs télécom-mandes dans une même pièce.* Le train de données (Dat) com-porte 6 bits, ce qui permet de diffé-rencier un maximum de 64 touchesdifférentes. Les touches numériques0 à 9 produisent les codes corres-pondants, 0 à 9. Ici encore la trans-mission commence par les bits depoids fort.Le listage 1 donne le programme dudécodeur logiciel écrit en VisualBASIC. La procédure RC5 reçoit lesdonnées. On utilise dans ce cadre lefichier PORT.DLL du livre « Je piloteles interfaces de mon PC » (téléchar-geable gratuitement depuis le siteInternet d’Elektor, adressewww.elektor.presse.fr, cf. la noteTéléchargement en fin d’article) sertà tous les accès à l’interface sérielleet assure le respect de la chronolo-gie.Cette tâche possède une chronomé-trie relativement critique et requiertla mise en oeuvre de REALTIMETrue. La procédure commence parattendre un niveau logique bas fai-sant office d’impulsion de début.Pour éviter qu’en l’absence de signalle PC ne se plante dans une boucled’attente, le programme a été dotéd’une condition de Timeout. Si, aubout de 500 ms, il n’y a toujours pas

de réception de signal, le pro-gramme s’arrête et génère un mes-sage d’erreur.Les pilotages par infrarouge peu-vent être gênés par la présenced’autres sources de lumière. Lessources de parasites sont lesampoules fluorescentes qui produi-sent des parasites lumineux impul-sionnels. La routine de réceptionRC5 vérifie pour cette raison laséquence de début du signal reçupour s’assurer de son déroulementcorrect. Si le signal ne correspondpas au train d’impulsions attendu, ildoit s’agir d’un parasite. Ce proces-sus permet la réception correcte designaux RC5 même dans un envi-ronnement relativement parasité.Après la séquence de début, chacundes bits est traité dans la procédureRC5bit. En cas de lecture, au débutde la procédure, d’un niveau 0, il doits’agir d’un bit 0. On attend ensuitele changement de niveau. Au boutd’une demi-longueur d’impulsion,444 µs, on procède à une interroga-tion pour voir si le niveau présent estencore le même. Si cela n’est pas lecas, il y a eu une erreur. Toutes lesinformations prises en compte jus-qu’à cet instant sont écrasées parune valeur –1. La procédure RC5bitse manifeste, après un peu plus de444 µs, avec le résultat du bit lu. Laprocédure RC5 mise à contribution

MICROINFORMATIQUE

58 Elektor 12/2001

1 0 0 1 0 1 0 0 0 1 1 1

Début Ctrl Adresse Données

010052- 12

Figure 3. Exemple de signal RC5 correspondant à l’adresse 5 et à la touchenumérique 7.

Figure 4. Visualisation de données RC5.

Figure 5. Diaporama sur l’écran d’un PC.

Page 46: Elektor N°282 - Décembre 2001 - doctsf

traite le bit et attend à nouveau444 µs jusqu’au nouvel appel de laprocédure RC5bit.Ce faisant, on ne tient pas compted’un éventuel changement de niveausuivant. C’est d’ailleurs le but de lamanoeuvre sachant que ce n’est que1,776 ms après le dernier change-ment de niveau pris en compte quel’on attend le nouveau changementde niveau valide.La réception des caractères est pilo-tée par un temporisateur (timer) duprogramme en VB. Toutes les infor-mations reçues sont visualisées dansune fenêtre de texte. La figure 4montre la recopie d’écran des infor-mations reçues en provenance d’unetélécommande d’un appareil se trou-vant à l’adresse d’équipement 5, unmagnétoscope. La touche ayant étéactionnée est la touche numérique 7.En l’absence de réception de signal,on constate, avec Ctr = –1 et Adr =–1, l’émission d’un message d’erreur.Dans le cas d’une véritable applica-tion cette information d’erreur neserait pas visualisée mais utiliséepour faire la distinction entre lesinformations de touches utilisableset celles que ne le sont pas.On pourra utiliser ce programmepour se familiariser avec les diffé-rents codes de la télécommandedont on dispose. Cela pourra servirde base pour des systèmes de com-mande à venir avec lesquels le PC sesubstituera à une télécommande. On

pourra également trouver sur Inter-net une liste complète des codescourants.

Télécommande de PCAutre application intéressante, latélécommande du PC. On pourraitainsi, par exemple, piloter chez soiun diaporama par le biais d’une télé-commandé. Le listage 2 montre unextrait du programme de la procé-dure Timer modifiée. On utilise ici9 codes de touches pour chargerautant d’images stockées sur ledisque dur.Le fait qu’il ne s’agisse dans le casprésent que de 9 images pourraréjouir nombre de victimes ayant euà subir l’une ou l’autre soirée diapos.Mais rien n’empêche une éventuelleextension du programme. On pour-rait bien entendu imaginer d’utiliser,par exemple, les touches « + » et« – »pour la commande.

(100052-1)

Dans le prochain numéro nous vousproposerons le programme pour unémetteur RC5 avec le PC et la platinede l’émetteur/récepteur IR. L’en-semble permettra de piloter lemagnétoscope et d’autres équipe-ments depuis le PC ou encore trans-férer des données sérielles entre 2 PCpar le biais d’une liaison infrarouge.

MICROINFORMATIQUE

5912/2001 Elektor

Note : TéléchargementLe fichier PORT.DLL mentionné dans cet article ainsi d’ailleurs que les listages desprogrammes et les dessins de platine sont mis à votre disposition sur le site Inter-net d’Elektor (www.elektor.presse.fr) pour un téléchargement gratuit. Vous pour-rez y accéder par le biais du point de menu « Téléchargements » présent sur lagauche de la page d’accueil, pour ensuite choisir le numéro du magazine (mois)dans lequel l’article a été publié. Notons que les fichiers de programmes sont éga-lement disponibles sur le site de l’auteur : http://home.t-online.de/home/B.Kainka.

Littérature :Burkhard Kainka: « Petites expériences d’électronique avec mon PC, Publitronic (ISBN 2-86661-126-8)

Burkhard Kainka: « Je programme les interfaces de mon PC sous Windows »Publitronic (ISBN 2-86661-115-2)

Page 47: Elektor N°282 - Décembre 2001 - doctsf

Les amplificateurs de puissance pour lareproduction audio dans les véhicules auto-mobiles basés sur un étage de sortie declasse B classique atteignent une puissancede sortie dépassant légèrement 6 watts. Mal-gré leur faible puissance de sortie, cesétages finals sont utilisés dans la plupart desautoradios ; en voici la raison : Les étagesfinals de classe B atteignent le très bon ren-dement de 78,5 % (pour un sinus à la puis-sance maximale), la puissance dissipée n’at-teint que de 20 % de la puissance de sortie.Cela permet d’éviter un échauffement exces-sif dans le véhicule ou de faire appel à unrefroidisseur démesuré. La températureambiante que doit supporter l’amplificateurdans un véhicule automobile peut devenir eneffet considérablement plus élevée que celledu salon, de sorte que l’autoradio doit chauf-fer le moins possible.Rien à redire jusque là. Mais il est impossiblede vendre actuellement une autoradio qui nebrille que par son manque de puissance desortie (2 x 6 watts). Mais les fabricants d’ap-pareils audio pour véhicules automobiles nese sont pas tenus pour battus. Il importe toutd’abord de définir une puissance de sortie quin’ait rien à voir avec la réalité (sinus de100 Hz, tension de fonctionnement de 18 V,10 % de THD). Une puissance apparente de30 watts retombe en effet dans des condi-tions réalistes (signal audio, Ub = 13,2 V,THD = 0,5 %) à entre 7 et 8 watts. C’estcertes inadmissible mais autorisé par lanorme japonaise EIAJ.

Une seconde possibilité (plus hon-nête) consiste à se servir d’une ali-mentation à découpage qui élèverala tension de fonctionnement à(presque) n’importe quelle valeur.Cela permet de faire tonitruer lehaut-parleur sans aucun problème.

Mais une alimentation à découpage(habituellement installée dans le boî-tier contenant les étages finals) estencombrante et nécessite un refroi-disseur de taille considérable qui,outre les pertes des transistorsfinals, doit aussi éliminer l’excédent

APPLIKATOR

60 Elektor 12/2001

Étage de sortie 2 x 25 Wpour automobileDopé au TDA1563QLes fabricants de semi-conducteurs ne sont jamais à court d’idées et d’as-tuces pour utiliser efficacement l’énergie. Les étages finals des véhiculesautomobiles ne constituent pas une exception.

Figure 1. Comparaison d’un amplificateur en pont conventionnel et d’unTDA1563Q : la puissance dissipée par le nouveau composant de Philips estindubitablement moindre.

APPLIKATOR est une rubrique servant à la description de composants intéressants récents et de leurs applications; parconséquent, leur disponibilité n'est pas garantie. Le contenu de cette rubrique est basé sur les informations fournies par lesfabricants et les importateurs, ne reposant pas nécessairement sur les expériences pratiques de la Rédaction.

Page 48: Elektor N°282 - Décembre 2001 - doctsf

amplificateur en pont conventionnel, la par-tie inférieure au TDA1563Q. La « cassure »causée par le point de commutation apparaîtclairement sur la courbe. La puissance dissi-pée en mode unipolaire n’atteint pas la moi-tié de celle d’un amplificateur en pont usuel.Si l’on suppose que l’amplitude de sortie d’unsignal musical suit une distribution normale(gaussienne), la puissance dissipée d’unamplificateur en pont usuel est de 70 % supé-rieure.L’amélioration du rendement présente tou-tefois d’autres conséquences que des éco-nomies d’énergie. Un amplificateur en pontconventionnel avec une résistance ther-mique totale (dissipateur thermique de lacouche d’arrêt) de 1,5 K/W, une températurede la puce permise de 145 °C pour une tem-pérature ambiante maximale de 65 °C et unepuissance de sortie prélevée de 6,5 wattspar canal a besoin (dans le cas d’un signalmusical) d’un dissipateur thermique de

RK = (145–65)/2⋅6,5 – 1,5 ≈ 4,6 K/W

Comme le fonctionnement du TDA1563Q est

de chaleur de l’alimentation elle-même. Le bâti normé d’une radion’offre en aucun cas la place néces-saire pour un engin de ce genre.Une autre façon d’augmenter la puis-sance est offerte par le fonctionne-ment en pont. On a besoin de2 étages finals dont l’un fonctionnecomme d’habitude tandis que l’autreest excité par le signal B.F. inversé(au moyen d’un étage inverseur dephase). Le haut-parleur est commutéentre les deux sorties de l’amplifica-teur de sorte que l’amplitude de latension est doublée par rapport aumode unipolaire (ou asymétrique =single-ended) et la puissance est(théoriquement) quadruplée. Mais,hélas, la puissance dissipée estaussi quadruplée. Cela signifie : ungrand radiateur, un échauffementnotable et un gaspillage de la capa-cité de la batterie.Mais les fabricants d’électroniquepour véhicules automobilesdéploient de grands efforts pourprendre en défaut les lois de la phy-sique en faisant appel à des recettesplus ou moins élaborées. On part dufait que la puissance normale de sor-tie d’un étage final de classe B effi-cace suffit parfaitement pour assurerune reproduction audio correcte, hor-mis lors de pointes de courte durée. Ilsuffit donc de fournir l’énergie suffi-sante pendant ce court laps detemps pour atteindre une puissancede sortie plus élevée.Dans le numéro 201 d’Elektor (mars1995, étage de puissance « auto »),nous vous avons fait part de l’exis-tence d’un circuit intégré, leTDA1560Q, équipé d’une sorte depompe de charge intégrée qui multi-plie presque par deux la tension defonctionnement lorsque des picstransitoires apparaissent. Cela per-met d’obtenir théoriquement unepuissance de sortie de 26 watts(mais en pratique cette valeur estconsidérablement moins élevée).Quelque génial que semble être deprime abord ce procédé, un coupd’œil aux valeurs de distorsion nousramène à la réalité. Lors de la com-mutation de la tension de fonction-nement, l’étage final engendre desdistorsions considérables, distincte-ment audibles, ce qui est très désa-gréable lorsque le niveau sonore estélevé et que les commutations sefont d’autant plus fréquentes.

Moins d’énergie, un radiateur plus petit Philips vient de mettre au point unnouveau concept incarné par leTDA1563Q. L’étage final fonctionneautant que possible en classe B,donc à la moitié de la tension defonctionnement en régime sinusoï-dal. Le rendement est particulière-ment élevé dans cette région. Si lavaleur réelle de la tension de sor-tie dépasse 3 V, le circuit intégrécommute en mode pont. Ce n’estcertes pas aussi efficace que lefonctionnement en classe B, maisla puissance de sortie obtenue(avec une tension de fonctionne-ment réaliste et une distorsionsupportable) peut atteindre20 watts par canal. Le rapport entre la puissance de sor-tie et la puissance dissipée est repro-duit dans la figure 1 pour un signald’entrée sinusoïdal de 1 kHz ; la par-tie supérieure se rapporte à un

APPLIKATOR

6112/2001 Elektor

Figure 2. Circuit interne et exemple d’application du TDA1563Q.

Page 49: Elektor N°282 - Décembre 2001 - doctsf

d’environ 70 % plus efficace, on obtient dansce cas

RK = 1,7⋅[(145-65)/2⋅6,5] – 1,5 ≈ 9,0 K/W

Le radiateur peut être sensiblement (!) pluspetit.La figure 2 représente le circuit interne et uneapplication standard du TDA1563. La sourcedu signal –symétrique ou par rapport à lamasse– est connectée à IN+/–. On peut voiren haut comment raccorder une source designal asymétrique. L’entrée avec inversionest mise à la masse par le condensateur. Lecâblage de l’autre canal est prévu pour unesource de signal symétrique. Les résistancesindiquées par RS symbolisent simplement larésistance interne de la source du signal.Comme cette résistance interne forme unfiltre passe-haut avec le condensateur, RS nesert qu’au calcul de la fréquence limite infé-rieure.Le signal B.F. est envoyé à 2 amplificateursqui engendrent des signaux inverses l’un parrapport à l’autre. Une des connexion du haut-parleur est couplée de façon permanente à unétage final, l’autre est commuté par le « BlockSlave Control » entre le deuxième étage final(pour fonctionnement en pont) et la liaisonCSE (single-ended). La liaison CSE est main-tenue à la moitié de la tension de fonctionne-ment par une source de tension de référencepour laquelle un condensateur électrolytiquede 1 000 µF fait office de tampon. Un amplifi-cateur opérationnel supplémentaire dont lesentrées sont reliées aux sorties du haut-par-leur empêche la présence d’une tension off-set continue aux sorties du haut-parleur.

Sécurité et diagnosticEt voilà pour le traitement du signal. Mais leTDA1563Q dispose aussi – comme bien desétages finals pour véhicules automobiles –d’une série de fonctions de diagnostic et desécurité.

– TempératureSi la température du TDA1563Q dépasse150 °C, la puissance de sortie est limitéeautomatiquement à 5 watts par canal.

– Court-circuitL’amplificateur est à l’épreuve d’un court-circuit des sorties haut-parleur avec lamasse, la tension d’alimentation positiveet entre elles. Si le court-circuit avec unetension d’alimentation est permanent, lesétages de sortie se déclenchent définitive-ment, dans le cas d’un court-circuit duhaut-parleur, l’étage de sortie est périodi-quement déclenché puis enclenché. La

phase de mise sous tension est sibrève qu’un excès de puissancedissipée n’est pas à craindre.

– La puce TDA1563Q possède3 modes de fonctionnement :un mode d’attente (Standby) avecune consommation de moins de

50 µA, un mode silence (mute) oùle signal BF à l’entrée de l’amplifi-cateur est coupé et un mode demarche normale (On). La tensionà la broche 6 (MODE) déterminel’état : < 1 V : Standby

2 à 3 V : Mute> 4 V : On

APPLIKATOR

62 Elektor 12/2001

Figure 3. Une carte qui ne sert pas qu’à expérimenter.

Page 50: Elektor N°282 - Décembre 2001 - doctsf

Si un signal B.F. se trouve à l’en-trée, un détecteur de passage parzéro intégré empêche la commuta-tion de « Mute » à « On » ou de« On » à « Mute/Standby » à unautre moment que lors du passagepar zéro. Cela évite un « plop » lorsde la commutation. Si toutefois latension descend au-dessous de 6 V(par exemple lors de la mise enmarche), le circuit intégré com-mute directement sur « Mute ».

– La puce TDA1563Q possèdedeux sorties de diagnostic.Les deux sorties sont à collecteurouvert et nécessitent des résis-tances de charge. La sortie CLIPdevient Basse si la valeur THD(Total Harmonic Distorsion = dis-torsion harmonique totale)dépasse 2,5 % (entrée SC1,5 à 18 V) ou 10 % (SC <0,5 V).

La deuxième sortie DIAG devientBasse si un court-circuit se produit,au cours de la coupure automa-tique du son lors de la mise enmarche du circuit intégré, et enfinlorsque le seuil d’avertissement detempérature de 145 °C est atteint(le fonctionnement en pont estinterrompu à 150 °C).

ApplicationLa figure 3 montre le tracé d’une pla-tine double face pour l’application dela figure 2. Le tracé provient de lafiche de données de Philips. Hormisles 2 condensateurs électrolytique,tous les composants sont à monteren surface, non seulement pourréduire au maximum l’espace néces-saire dans le bâti de la radio, maisaussi pour réduire la vulnérabilité ducircuit. Le montage ne présente

APPLIKATOR

63

presque aucun problème. N’oubliez pas lesorifices de métallisation ! Les 2 résistancesRPU aux sorties de diagnostic ne sont pasdimensionnées. Les valeurs sont fonction dela tension logique et peuvent être facilementcalculées lorsqu’on sait que le courant est de2 mA à la connexion active.Le mode est déterminé par 2 commutateurs(On/Off, Mute). Le diviseur de tension estdimensionné de sorte que la tension corres-pondant à un mode soit appliquée à labroche 6.La structure compacte de cette application ladestine aux installations actives de véhiculesautomobiles dont chaque haut-parleur abesoin de son propre amplificateur de puis-sance. Le TDA1563Q forme avec un haut-par-leur efficace (par exemple muni d’un pavillonacoustique) le couple idéal qui peut fonction-ner des jours durant sur une batterie d’auto-mobile « au repos ».

(010084)

12/2001 Elektor

Page 51: Elektor N°282 - Décembre 2001 - doctsf

Depuis l’apparition des régulateurs de ten-sion tripodes, les régulateurs réalisés en tech-nologie discrète ont quasiment disparu. Pour-quoi se compliquer la vie si l’on peut se tirerd’affaire à l’aide d’un seul composant ? Ilsexistent pour quasiment n’importe quelle ten-sion de sortie souhaitable et les spécificationsdes membres de la série 78xx, fameuse s’il enest, conviennent à la grande majorité desapplications. De plus, étant donné qu’ils sontdotés d’origine d’une protection thermique etanti-surcharge efficace, il faut vraiment ymettre de la « bonne volonté » si l’on veut queles choses tournent au vinaigre.La seule exigence que pose ce type de régu-lateur tripode est que la tension brute appli-

quée à l’entrée soit supérieure d’aumoins 3 V à la tension requise ensortie. Si cette condition n’est pasremplie le circuit de régulation nepeut pas fonctionner correctement.Des composants on ne peut plus pra-tiques que ces régulateurs de lafamille 78xx vu le peu de place qu’ilsrequièrent sur la platine et le faitqu’il ne leur faut pratiquement pasde composant externe. Dans la plu-part des cas, le schéma d’un circuitde régulation basé sur un tel régula-teur de tension ressemble à celuireprésenté en figure 1. Un pont dediodes redresse la tension fournie

par le transformateur, le condensa-teur C1 se chargeant ensuite du lis-sage de la tension disponible en avaldu pont de redressement. C2 et C3servent à améliorer la stabilité durégulateur de tension ainsi que saréponse aux transitoires, le derniercondensateur, C4, faisant office detamp0on local pour la chargeconnectée au circuit.L’inconvénient des schémas stan-dard est qu’ils ne rendent pas claire-ment les fonctions spécifiques desdifférents composants. Il serait de cefait plus parlant de dessiner leschéma de la figure 1 de la façonillustrée en figure 2. Si son aspectest (peut-être) moins structuré etmoins beau on y voit du moinsimmédiatement à quoi servent lesdifférents composants qu’il com-porte. Lors de la réalisation pratiquec’est d’ailleurs ainsi qu’il faudra, depréférence, les disposer : le conden-sateur de lissage C1 le plus prèspossible du pont de redressement,C2 et C3 directement, respective-ment, à l’entrée et à la sortie durégulateur et C4 à la distance la plusfaible possible de la charge. Autrepoint tout aussi important d’ailleurs,veiller à ce que les lignes de massesoient ramenées à un point nodalcentral, le côté « froid » du conden-sateur électrochimique de sortieconstituant, techniquement, l’endroitle plus pratique.

ALIMENTATIONS

66 Elektor 12/2001

La pratiqueDes régulateurs de tension

d’après une idée de Alexander Voigt

La réputation des régulateurs de tension est d’être des composants pra-tiques et ne posant pas le moindre problème. Il n’en reste pas moins qu’ilexiste l’une ou l’autre caractéristique intéressante méritant d’être men-tionnée. Comme souvent, la pratique s’écarte légèrement de la théorie.

Page 52: Elektor N°282 - Décembre 2001 - doctsf

ceci en fonction du courant de sortie.En ce qui concerne le condensateur de lis-sage C1, la règle classique consiste à lui attri-buer une capacité, exprimée en µF, au mini-mum égale, voire de préférence 2 fois supé-rieure au courant exprimé en milliampères.Ainsi, dans le cas du courant de 1 A(1 000 mA) du schéma de la figure 2, nousopterons pour une valeur de 1 000 ou, mieuxencore, de 2 200 µF.

2 résistances de plusBien que nous n’ayons pas réussi, au labora-toire d’Elektor, à reproduire de façon indiscu-table les constatations de l’auteur, ce dernieraffirme qu’il est possible, à l’aide d’une petitemodification, d’améliorer sensiblement un cir-cuit à base de 78xx standard. Cette améliora-tion se traduit, en particulier, par unemeilleure réponse impulsionnelle dans le casde variations de charge rapides.La modification se résume en fait à la mise enplace, au niveau de C2 et C4, de 2 résis-tances-série. On peut supprimer le conden-sateur C3 sans que cela n’ait d’effet sur laqualité de fonctionnement du circuit et aug-menter la valeur de C4. Cela nous donne alorsle schéma modifié représenté en figure 3.Il est difficile de fournir une explication scien-tifique de l’amélioration des caractéristiquesobtenue. L’une des théories possible est que,dans certaines conditions, les condensateurset les lignes de liaison se mettent à constituerdes réseaux LC, ce qui se traduit par desoscillations qui empêcheraient le régulateurde tension de réagir de façon optimale. Unerésistance-série de faible valeur pourrait avoirun effet amortisseur favorable. Il se peut quela marque (l’origine partant) du régulateur detension joue elle aussi un certain rôle.Bien qu’il soit difficile d’affirmer que les résis-tances-série aient, quel que soit le cas defigure, un effet favorable, il nous paraît valoirla peine de tenter l’expérience. Le coût descomposants additionnels est négligeable etsi le comportement dynamique du régulateurs’en voit effectivement amélioré, cela seratoujours cela de pris.Il est difficile de donner des valeurs concrètespour R1 et R2. Sur le circuit expérimental àbase de 7812 de l’auteur, les valeurs donnéesen figure 3 ont donné les meilleurs résultats.Après moult expériences, il apparaît que lavaleur de R2 répond au principe : plus lacapacité du condensateur électrochimique C4est importante, plus la valeur de cette résis-tance pourra être diminuée. La valeur de R1est moins critique. Expérimenter consiste, ànotre avis, la meilleure solution pour endécouvrir la valeur à utiliser en pratique.

(010072)

ALIMENTATIONS

6712/2001 Elektor

B1

78XX

C1 C3 C4

010072-11

C2

Figure 1. Schéma standard d’application d’un régulateur de tension de la série 78xx.

7812V+

C1

C2 100n 100n C3

C4

47µ

µ

010072--12

18V1A

100035V

16V

Figure 2. Il est plus parlant, d’un point de vue fonctionnel, de dessiner le schémade la figure 1 de cette façon.

7812V+

C1C2 100n

C4

1000µ µ

18V1A

R1

10

Ω R2

470

010072---13

35V 16V

0,3

Figure 3. Une paire de résistances-série permet, dans certains cas, d’améliorer laréponse impulsionnelle.

Si l’on opte pour la disposition de lafigure 2, la stabilité, la réjection duronflement et le comportementimpulsionnel du régulateur de ten-sion sont sensiblement meilleursque ceux obtenus lors d’une dispo-sition des composants au petit bon-heur la chance, surtout lorsque, surla platine, de par les circonstances,la distance entre le pont de redres-

sement et la charge est relativementimportante.Un petit mot au sujet de la valeurdes condensateurs. En pratique, unevaleur de 100 nF pour C2 et C3convient parfaitement en toutes cir-constances. La valeur du condensa-teur électrochimique C4 n’est pastrès critique et pourra varier, engénéral, entre, disons 10 et 47 µF,

Page 53: Elektor N°282 - Décembre 2001 - doctsf

COINDULECTEUR

68 Elektor 11/2001

Programmateur AtmelLe fonctionnement du pro-gramme grillé dans le program-mateur Atmel décrit dans lenuméro de septembre 2001(010005) n’est pas parfait, ce quise traduit par une programma-tion incorrecte du dernier octetdu processeur programmé. Celane pose de problème que dans lecas où l’on voudrait griller dansle composant un programme uti-lisant jusqu’au dernier octet dis-ponible. Les lecteurs quiauraient un problème peuventnous renvoyer leur disquette ori-ginale (010005-11, ne pas oublierde mentionner l’adresse) quenous remplacerons par une ver-sion corrigée du programme.

Transfo ETD-29Dans un ancien numéro d’Elek-tor vous aviez proposé unconvertisseur TL 12 V. J’envisa-geai de le réaliser parce que je netrouve nulle part ailleurs unmontage similaire capable detravailler avec ces ampoules de8 watts. J’ai cependant des pro-blèmes pour me procurer letransformateur du type EB29 deBlock à réaliser soi-même. Per-sonne n’est en mesure de m’ai-der. De plus, comme vous avezutilisé exactement le mêmetransformateur dans votre ali-mentation haute tension publiéedans le numéro de janvier 2001,je reviens à la charge. Auriez-vous une adresse ou le site Inter-net d’un fabricant ou d’un dis-tributeur ?Luuk Wendels

Nous avons eu plusieurs ques-tions quant à la disponibilité dece transformateur à réaliser soi-même. Etonnant, car ce trans-formateur est toujours encore enproduction chez Block et cer-tains distributeurs tels que Far-nell (www.farnell.com) l’on enstock. Redonnons une foisencore les composants dont ilest constitué :2 x demi-coquille

ETD29 (n° 305-6375)1 x bobine ETD29 (n°178-506) et

2 x clips acier ETD29 (n°178-507).

Site EDiTS ProOutre le Forum de langue fran-çaise consacré à EDiTS Pro sis àl’adresse :http://fr.groups.yahoo.com/group/editsproSignalons également l’existencedu site de l’auteur proposé en2 langues, le néerlandais et l’al-lemand, ce qui ne l’empêche pasd’être intéressant par les nom-breuses illustrations et les liensqu’il propose. Si EDiTS Pro vousintéresse, faites donc un tour à :www.gironet.nl/home/editspro

Booster pour EdiTSDans l’article consacré à la nou-velle mouture de booster pourEdiTS (numéro de juillet/août1999), il est indiqué dans la listedes composants un transforma-teur de 2 x 25 V, alors que danstoutes les autres publicationsrelatives à ce booster on parled’un transformateur de 2 x 18 V.Quelle est la puissance correcte ?Ad van Iersel

La liste des composants enquestion est malheureusementerronée. La tension redresséedoit être de 2 x 25 V, de sorte quele transformateur pourra bienêtre du type 2 x 18 V. Nosexcuses pour cette erreur.

Réalisation de circuits imprimésBonjour,Désirant réaliser le “Switchvidéo/audio” ainsi que l’« Émet-teur IR rustique » et le « Petitrécepteur IR » parus dans lenuméro Hors gabarit 2001, j’aicommandé les circuits imprimés: 014119-1, 014120-1, 014121-1.J’ai appris que ces circuitsimprimés n’étaient pas commer-cialisés ??? J’ai donc téléchargéles fichiers zip de ces circuits. Jeles ai ensuite imprimés à l’aided’une imprimante laser. C’est

beau. Ma question est :Comment réaliser le négatif ?car je ne connais pas l’échelleexacte de ces dessins.Merci d’avance pour le rensei-gnementM. RENOU par E-mail

Nous ne pouvons malheureuse-ment pas commercialiser toutesles platines dont nous proposonsles dessins dans les différentsnuméros d’Elektor. Ceci estd’ailleurs l’une des raisons pourlesquelles nous proposons lesdessins des platines au téléchar-gement depuis notre site. Unenote générale pour commencer.Sauf mention contraire, les des-sins proposés le sont à l’échelle1:1. Il suffit partant de faire faireun film par un photographe et/oud’utiliser une platine photosen-sible sur laquelle sera posé ou lefilm ou la photocopie du dessindes pistes réalisé sur un supporttransparent.Il reste ensuite à développer et àgraver la platine. Un ensembled’opérations plutôt délicat si onn’en a pas l’habitude. Mais c’esten forgeant que l’on devient for-geron. Notons qu’il existe encoreune autre possibilité, lire lespetites annonces où de temps àautre un lecteur d’Elektor pro-pose de réaliser les platines noncommercialisées ou épuiséesd’Elektor (cf. numéro de sep-tembre 2001).

Thermomètre numérique à LEDJe me suis lancé dans la réalisa-tion du thermomètre numériqueà LED décrit dans le numérod’avril 2001 d’Elektor et j’aidécouvert une erreur dans laliste des composants. Chez Far-nell ils ne connaissent pas lecode 760-704. Le code correctpour le DS1621 est 670-704. Unepetite inversion aux consé-quences importantes.Rik Deketelaere

Merci de cette correction quenous rendons publique.

LS contre HC

Est-il possible, dans l’affichagemodulaire à matrice de pointsdécrit dans le numéro de juin2001, de remplacer les 74 LS138et 74LS164 par leur version HCou cela est-il risqué sans modifi-cation ?Tom Marchand

D’un point de vue électroniqueles 2 familles que vous évoquezsont identiques de sorte qu’il nedevrait pas y avoir, à ce niveau,de problème de substitution.Dans le cas du projet en ques-tion il n’est cependant pas per-mis d’effectuer ce remplace-ment, pour la bonne et simpleraison que les circuits LS sontcapables de supporter un cou-rant plus important, caractéris-tique dont il a été ici tiré profit.

Brancher une radio portableau câble ?

Dans mon appartement d’étu-diant j’utilise une radio-cassettequi ne possède qu’une antennetélescopique et pas d’entréeantenne. Il m’est partant impos-sible de capter les stations quin’émettent que par le câble.Existe-t-il une solution à monproblème ou dois-je me résoudre àacheter un autre récepteur radiodoté d’une entrée antenne ?Wyben

Il n’est pas nécessaire que vousfassiez les frais de l’achat d’unnouveau récepteur radio, car ilexiste peut-être une solution quisi elle n’est pas élégante, al’avantage d’être simple. Il fau-dra rentrer l’antenne télesco-pique à fond et la relier par lebiais d’une petite pince crocodileà l’âme (conducteur central) ducâble coaxial du système d’an-tenne centrale. Il n’est pasnécessaire de relier le manchonexterne qui sert de blindage.

Cette façon de procéder permetdans bien des cas une excellenteréception des signaux véhiculéspar le câble.

Nous ne pouvons malheureusement pas répondre in extenso à toutes les lettres relevant des questions tech-niques. Dans cette rubrique nous répondons à des lettres pouvant présenter un intérêt général et concernant desmontages âgés de moins de 2 ans. Vu le nombre de lettres qui nous arrivent mensuellement, nous regrettons dene pas pouvoir répondre séparément à chacune d'entre elles et sommes dans l'impossibilité de donner suite àdes souhaits individualisés d'adaptation de montages publiés ou de réalisation de montages à publier ni mêmede répondre à des demandes d'information additionnelle concernant un montage décrit dans Elektor.

B.P. 11 568

Page 54: Elektor N°282 - Décembre 2001 - doctsf

Qui pourrait, de nos jours, imaginer un PCsans disque dur. Si, voici 2 lustres à peine, ledisque dur brillait par sa taille et son prix, on

en trouve aujourd’hui des modèlestrès compacts et de capacité impres-sionnante à des prix très abordables

(si tant est que l’on puisse dire que150 pour 40 Goctets soit abor-dable). Le standard le plus courant

MICROINFORMATIQUE

70 Elektor 12/2001

Interface disque durpour port imprimanteIDE2LPT - branchez un DD sur le port Centronics

Projet : Andrew Buckin (idée : Leonid Slobodchikov)

La présente interface permet de connecter n’importe quel disque dur detype IDE au port imprimante d’un PC, ce qui permet, par exemple, detransporter facilement des quantités importantes de données. L’interfaceIDE2LPT convient tout aussi bien aux interfaces parallèles de type clas-

sique qu’aux versions les plus récentes tra-vaillant en mode ECP et EPP. L’utilisationd’une EPLD d’Altera permet de réaliser unmontage joliment compact.

Page 55: Elektor N°282 - Décembre 2001 - doctsf

dans le monde des disques dursreste de nos jours l’interface IDE.Depuis qu’il existe des ordinateurs leproblème de sauvegarder et de trans-porter des données sur des médiasde supports de données est un pro-blème connu. Lorsqu’il s’agit dutransport de quantités de donnéesimportantes (et comme tout le mondele sait de nos jours les quantités dedonnées concernées croissent defaçon exponentielle) il peut être inté-ressant d’envisager d’utiliser undisque dur à interface IDE compactqui deviennent de plus en plus bonmarché aujourd’hui. Le seul problèmeauquel se trouve confronté cetteapproche est qu’il n’existe pas de PC

doté d’une interface IDE externe. Aucontraire, chaque PC dispose d’aumoins un port imprimante parallèle.Si l’on prend la peine de comparer latechnologie du port imprimante àcelle de l’interface IDE, on ne man-quera pas de constater quelquessimilitudes, qui ont encouragé l’au-teur à développer une interface IDEvers LPT. L’interface présentée ici estune des différentes versions ayantvu le jour, au coeur de laquelle batune CPLD d’Altera.

LPT vers IDEDans le numéro de mars 2001 d’Elek-tor nous vous avons proposé une

MICROINFORMATIQUE

7112/2001 Elektor

70 ns 20 ns

010047 - 12

A2..A0 -CS1FX, -CS3FX

Ecriture données

-HRD/-HWR

Lecture données

165 ns pour 16 bits

290 ns pour 8 bits

600 ns

5 ns

30 ns

50 ns

60 ns

Figure 1. Le chronodiagramme visualise l’évolution des signaux sur le bus IDE lorsde processus de lecture et d’écriture.

Broche Désignation Description

1 HRESET Remise à zéro (reset)

2 GND Masse (GND)

3 HD7 Bus de données bit 7

4 HD8 Bus de données bit 8

5 HD6 Bus de données bit 6

6 HD9 Bus de données bit 9

7 HD5 Bus de données bit 5

8 HD10 Bus de données bit 10

9 HD4 Bus de données bit 4

10 HD11 Bus de données bit 11

11 HD3 Bus de données bit 3

12 HD12 Bus de données bit 12

13 HD2 Bus de données bit 2

14 HD13 Bus de données bit 13

15 HD1 Bus de données bit 1

16 HD14 Bus de données bit 14

17 HD0 Bus de données bit 0

18 HD15 Bus de données bit 15

19 GND Masse (GND)

20 N/C Broche de détrompage

21 DMARQDemande d’accès direct à la mémoire(DMA request)

22 GND Masse (GND)

23 HWR Écriture E/S (I/O Write)

24 GND Masse (GND)

25 HRD Lecture E/S (I/O Read)

26 GND Masse (GND)

27 IORDY Canal d’E/S paré (I/O Channel Ready)

28 SPSYNC:CSEL SPINDLE SYNC ou CABLE SELECT

29 DMACK Acquittement DMA (DMA Acknowledge)

30 GND Masse (GND)

31 INTRQ Demande d’interruption (Interrupt Request)

32 IOCS16 E/S 16 bits (16 bit I/O)

33 HA1 Bus d’adresse bit 1

34 PDIAG Diagnostics OK (Passed Diagnostics)

35 HA0 Bus d’adresse bit 0

36 HA2 Bus d’adresse bit 2

37 CS1FX Sélection de circuit 0 (Chip Select 0)

38 CS3FX Sélection de circuit 1 (Chip Select 1)

39 DASPLecteur actif/lecteur 1 présent (Drive active/drive 1 present)

40 GND Masse (GND)

Tableau 1 Brochage de l’interface ATA

Disquedur

Reg-In

Di Dio

16

Do

010047- 13

Di

Reg-Out

Reg-Com

8

8Control

4

LPT

Figure 2. Synoptique de principe du convertisseur LPT/IDE.

En résumé :Capacité du disque dur : illimitée

(ne dépend que du type de DD utilisé)

Nombre de disques durs connectables : 1

Transfert de données : jusqu’à 100 Koctets/s

Alimentation : 5 V / 100 mA

Page 56: Elektor N°282 - Décembre 2001 - doctsf

interface similaire permettant l’utilisation d’undisque dur IDE sur le bus 8 bits de microcon-trôleurs. Dans le cadre du dit article nousavons décrit dans le détail l’interface IDEdéveloppée par Compaq pour une connexionfacile de disques durs au bus du (AT-)PC, desorte que nous ne passerons en revue dans leprésent article que les signaux IDE les plusimportants (pour ses spécifications complèteson pourra faire un tour sur le site Internet sis àl’adresse www.t13.org). Le tableau 1 donne lebrochage de la liaison IDE à 40 lignes.L’interface LPT2IDE utilise, en ce qui laconcerne, les signaux suivants :

HD15 à HD0 Lignes de données (largeurde bus de 8 ou 16 bits, bidirectionnel)

CS1FX (Chip Select 0) Sert au décodagedu bloc du registre de commande (com-mand register)

CS3FX (Chip Select 1) Sert au décodagedu bloc du registre d’état (status register)

HRD (I/O-read) Signal de lecture desadresses de port d’E/S. Lorsque cette ligneest au niveau bas le disque dur place desdonnées sur le bus (HD0 à HD7 voire HD0à HD15). Lors du flanc montant de ce signall’h⌠te verrouille les données dans sonregistre.

HWR (I/O-write) Signal d’écriture pour les

MICROINFORMATIQUE

72 Elektor 12/2001

Figure 3. L’électronique produite en AHDL et créée par programmation de la CPLD.

AdressesLPT1/LPT2

Description

378h/278h Registre de données - DATA7 à DATA0 (écriture seule)

Registre d’état - (écriture seule)

Bit LPT Nom IDE2LPT Nom État État en lecture Fonction

379h/279h

7 BUSY LI3 1 0 DATA3 du convertisseur

6 SLCT LI2 1 1 DATA2 du convertisseur

5 PE LI1 1 1 DATA1 du convertisseur

4 ACK LI0 1 1 DATA0 du convertisseur

3 ERROR — 1 1 —

2 — — — 0 —

1 — — — 0 —

0 — — — 0 —

Registre de commande

Bit LPT Nom IDE2LPT Nom État État en lecture Fonction

37ah/27ah

7 — — — 0

6 — — — 0

5 — — — 0

4 — — — 0

3 SLCT_IN RCWR 0 1 Signal d’écriture pour Reg_COM

2 INIT RLWR 0 0Signal d’écriture pour Reg_IN de DATA7 à DATA0 vers HD7 à HD0

1 AUTO_FD RHWR 0 1Signal d’écriture pour Reg_IN de DATA7 à DATA0 vers HD15 à HD8

0 STROBE HRESET 0 1 RAZ (Reset) HDD

Tableau 2 Signaux et registres : Interface LPT et convertisseur LPT/IDE

Page 57: Elektor N°282 - Décembre 2001 - doctsf

signalisation retour de l’état de l’imprimante(lignes d’état).Dans le cas du port parallèle numéro 1 ditLPT1, ces lignes sont associées au registre dedonnée à l’adresse 378HEX (écriture seule), auregistre de commande à l’adresse 37AHEX(écriture seule) et au registre d’état àl’adresse 379 HEX (lecture uniquement); (cf. letableau 2 qui donne en outre les adresses deregistre du port LPT2). Bien que la vitesse duport imprimante ne dépasse pas 150 Koctets,cette interface n’en présente pas moinsl’avantage de permettre une commande logi-cielle totale de tous les signaux. Cette réalitépermet un transfert de données sans compli-cation et la création sans difficulté de l’élec-tronique d’interfaçage LPT2IDE.

L’électroniqueIl n’est pas nécessaire, sachant que le disquedur traite à son niveau toutes les instructionsde l’interface IDE, de mettre en oeuvre la tota-

adresses de port d’E/S. Lors duflanc descendant de ce signal lesdonnées (HD0 à HD7 ou HD0 àHD15) présentes sur le bus sonttransférées dans le registre dudisque dur.

HA0 à HA2 (bit 0 et bit 2 du busd’adresse) La sélection desregistres ou des ports du disquedur se fait par le biais de ceslignes d’adresses.

HRESET (Reset) Un niveau bas surcette ligne initialise le disque dur.

Le diagramme impulsionnel de lafigure 1 visualise les signaux véhi-culés par le bus IDE en cours de lec-ture et d’écriture.L’autre côté de l’interface LPT2IDEse voit connectée, par l’intermédiairede son connecteur Sub-D à 25contacts, au port imprimante (LPT)du PC. Cette interface parallèle pos-sède un bus de données d’une lar-geur de 8 bits, comporte 6 lignes designal utilisés pour le pilotage del’imprimante ainsi que 5 lignes de

MICROINFORMATIQUE

7312/2001 Elektor

EPM7064-J84

IO32/TMS

IO8/TDI

GCLK1

IC1

IO33

IO10

IO11

IO12

IO13

IO14

IO15

IO16

IO17

IO18

IO19

IO20

IO21

IO22

IO23

IO24

IO25

IO26

IO27

IO28

IO29

IO30

IO31

GCLR

IO34

IO35

IO36

IO37

IO38

IO39

IO40

IO41

IO42

IO43

IO44

IO45

IO46

IO47

IO48

IO49

IO50

IO51

IO52

IO53

IO54

IO55

IO56

IO62

IO57

IO58

IO59

IO60

IO61

IO64

IO63

IO1

IO2

IO3

IO4

IO5

IO6

IO7

IO9

OE2 OE1

4422

21

20

18

17

16

15

14

12

11

10

41

40

39

37

36

35

34

33

31

30

29

28

27

25

24

23

43 13 26 5338 66 78

IO IO IO IO IO IO

45

46

48

49

50

51

52

54

55

56

57

58

60

61

62

63

64

65

67

68

69

70

71

79

73

74

75

76

77

81

80

84

83

19 32 42 47 59 72 82

2

7

3

9

8

6

5

4

1

+5V

C5

100n

C4

100n

C7

100n

C6

100n

1 2

3 4

5 6

7 8

9 10

11 12

13 14

15 16

17 18

19 20

21 22

23 24

25 26

27 28

29 30

31 32

33 34

K3

35 36

37 38

39 40

K1

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

1

2

3

4

5

6

7

8

9

HD0

HD1

HD2

HD3

HD4

HD5

HD6

HD7

HD8

HD9

HD10

HD11

HD12

HD13

HD14

HD15

HD0

HD1

HD2

HD3

HD4

HD5

HD6

HD7 HD8

HD9

HD10

HD11

HD12

HD13

HD14

HD15

HA0

HA2

HA1

HA0

HA1

HA2

9 81

IC2.D

1 21

IC2.A

5 61

IC2.C

3 41

IC2.B

8x 1k1

2 3 4 5 6 7 8 9

R1

R2 4x 470Ω1

2 3 4 5

DATA0

DATA1

DATA2

DATA3

DATA4

DATA5

DATA6

DATA7

DATA0

DATA1

DATA2

DATA3

DATA4

DATA5

DATA6

DATA7

DA

TA0

DA

TA1

DA

TA2

DA

TA3

DA

TA4

DA

TA5

DA

TA6

DA

TA7

+5V

+5V

LI0

LI1

LI3

LI2

LI0

LI1

LI2

LI3

7805

IC3

C2

100µ16V

C1

100n

C3

100n

+5V

1 2

3 4

5 6

7 8

9 10

K2JTAG

+5VJP3

JP2

JP1

+5V

HRESET

RHWR

RLWR

RCWR

HRESET

RHWR

RLWR

RCWR

TDI

TMS

CS1FX

CS3FX

HRD

HWR

RESET

TDO

TCK

RESET

TMS

TDI

TCK

TDO

IC2

14

7

C8

100n

+5V

010047 - 11

IC2 = 74HCT14

HRD

HWR

CS

1FX

CS

3FX

Figure 4. Schéma du convertisseur LPT/IDE. Le connecteur JTAG sert à la programmation en site (in-circuit programming) de la CPLD.

Bit Nom Description

7 — —

6 TRW Signal d’écriture HWR sur le bus IDE Le niveau actif est « 1 »

5 RCW Signal de lecture HRD sur le bus IDE Le niveau actif est « 1 »

4 -CS1FX Sélection de circuit (Chip Select) 0 Le niveau actif est « 0 »

3 -CS3FX Sélection de circuit (Chip Select) 1 Le niveau actif est « 0 »

2 à 0 HA2 à HA0 Bus d’adresse

Tableau 3 Signaux du registre de commande dans le convertisseur LPT/IDE

Page 58: Elektor N°282 - Décembre 2001 - doctsf

lité des possibilités de l’interface IDE dudisque dur telles que DMA-Request, le trans-fert de données sur 16 bits, la mise en veille(standby) et le diagnostic. De ce fait, leconvertisseur assurant le passage de LPTvers IDE se résume, en principe, à un tamponintercalé entre l’interface LPT et l’interfaceIDE du disque dur. Comme le montre leschéma de la figure 2, la connexion vers ledisque dur se fait au travers d’un registre dedonnées bidirectionnel et d’un registre d’ins-tructions unidirectionnel. Les données sur8 bits en provenance du PC subissent unstockage temporaire dans le registre de don-nées du convertisseur pour ensuite être lues,à la sortie, sous une largeur de 16 bits endirection du disque dur. Lors de la prise encompte de données en provenance du disquedur le processus se fait dans le sens inverse.Les données sur 16 bits fournies par le disquedur sont stockées temporairement dans leconvertisseur, pour ensuite être transférées,

MICROINFORMATIQUE

74 Elektor 12/2001

010047-1(C) ELEKTOR

C1C2

C3

C4

C5

C6

C7 C8

HOEK1

HO

EK

2

HOEK3

HO

EK

4

IC1

IC2

IC3

JP1 JP2 JP3

K1

K2

K3

R1

R2

010047-1

0 +

010047-1(C) ELEKTOR

Figure 5. La sérigraphie de l’implantation descomposants de la platine double face à trousmétallisés rend bien la fonction de cetteélectronique : IC1 assure l’interconnexion entreune embase LPT d’une part et une embase IDEde l’autre.

Liste des composants

Résistances :R1 = réseau de 8 résistances de 1 kΩR2 = réseau de 4 résistances de 470 Ω

Condensateurs :C1,C3,C8 = 100 nFC2 = 100 µF/16 V vertical

Semi-conducteurs :IC1 = Altera 7064LC84-15 (programmé

EPS 010047-31)IC2 = 74HCT14NIC3 = 7805

Divers :JP1 à JP3 = embase à 1 rangée de 3 contacts

+ cavalier de court-circuitK1 = embase Sub-D mâle à 25 contacts

encartableK2 = embase mâle à 2 rangées de

5 contacts avec guide (HE-10)K3 = embase mâle à 2 rangées de20 contacts avec guide (HE-10)

2 picotscâble prolongateur pour alimentation de PC

(cf. texte) câble prolongateur pour imprimante (1:1)câble IDE

Page 59: Elektor N°282 - Décembre 2001 - doctsf

Le logiciel

Il existe, pour le convertisseur LPT/IDE« LPT2IDE » un pilote et pour DOS et pourWindows 9x. Le pilote DOS « ide2lpt.exe »tourne sous MS-DOS à partir de la version 3.3et ne se différencie guère des autres pilotesIDE. Il n’est partant pas nécessaire d’écrireun pilote spécifique à partir de zéro; onpourra adapter un pilote IDE existant pourl’écriture et la lecture par le biais de l’inter-face parallèle. Il faut cependant lui ajouterquelques fonctions telles que des fonctionstest et de recherche. L’auteur remercie Ewge-nij Kuleschow pour le code-source du piloteutilisé ici.

Il faudra, pour installer le pilote, ajouter uneligne au fichier config.sys :

device=[path]\ide2lpt.exe [options]

normalement :

device=c:\lpt2ide\i2l4.exe.

On pourra, pour le paramétrage et les testsinitiaux, lancer le pilote directement depuisl’annonce DOS (prompt) et ajouter un para-mètre à l’instruction, tel que l’option/T (I2L4.EXE/T) pour le test.Autres options disponibles :/H Aide (Help)/L:LPT L’adresse de la sortie LPT (378 HEX

pour LPT1 et 278 HEX pour LPT2)

sous une largeur de 4 bitsseulement alors, vers l’inter-face imprimante. L’ordina-teur peut à son tour lire cesdonnées depuis le registred’état de l’interface impri-mante. C’est l’ordinateur,par le biais du registre decommande (control register,cf. tableau 3), qui se chargedu pilotage du transfert desdonnées. On dispose enoutre d’une logique de com-mande qui interdit toutesituation illicite au niveaudu bus IDE (cf. tableau 4).En vue de l’intégration duconvertisseur LPT/IDE dansun circuit CPLD les fonc-tions requises (registres etlogique) doivent êtredécrites en AHDL, un lan-gage de programmation. Lelistage des définitions estdisponible au télécharge-ment sur le site Elektor(www.elektor.presse.fr)parmi les autres téléchargements dece numéro. Le schéma créé en ADHLrésultant de ces définitions est pro-posé en figure 3. Ce schéma est réa-lisé par la programmation de laCPLD du type EPMM 7064 d’Altera.Ce circuit intégré prend à soncompte une bonne partie de l’élec-tronique du convertisseur LPT/IDEdont le schéma est donné enfigure 4. Les 2 autres circuits inté-grés requis par cette réalisation sontdes périphériques : IC2 est un75HCT14, qui fait office, par le biaisde ses triggers de Schmitt, de met-teur en forme d’impulsions pour lessignaux RHWR, RLWR, RCWR etHRESET, ceci en vue d’améliorerl’insensibilité aux parasites. IC3 estl’indispensable régulateur de ten-sion chargé de fournir le 5 V requis.La 3 ème embase du montage (outreK1 pour la connexion à l’interfaceLPT et K3 pour le branchement dudisque dur) est ce que l’on appellel’interface JTAG de la CPLD. Il estpossible, par le biais de cette inter-face -reliée ici à l’embase K2- dedéboguer et de programmer IC1. Ilfaut cependant, pour cela, ajouterune électronique de programmationexterne et disposer du logiciel dedébogage et de programmation cor-respondant. Le logiciel de program-mation « MAX2Plus » est disponible

gratuitement sur le site Internetd’Altera (www.altera.com), le pro-grammateur correspondant, baptiséBitBlaster qui lui, s’il n’est pas gra-tuit, n’est cependant pas très chernon plus. Seuls les CPLS de lafamille MAX7000 en version S d’Al-tera (la EPM7064S dans le cas pré-sent) possèdent l’interface JTAG.Les 3 signaux de programmationTCK, TMS et TDI se trouvent norma-lement forcés à la masse par le biaisde 3 cavaliers de court-circuit, JP1àJP3; ce n’est que pour une pro-grammation qu’ils sont transférésaux broches correspondantes de K2par la mise en position adéquatedes dits cavaliers. Il n’est pas néces-saire, si l’on se contente de réaliserl’interface LPT/IDE, d’acheter unBitBlaster : IC1 est en effet dispo-nible programmé auprès desadresses habituelles.

La platine dessinée à l’intention dece montage et dont on retrouve ledessin des pistes et la sérigraphie del’implantation des composants enfigure 5, est elle aussi disponible àces adresses. Si vous voulez fabri-quer vous-même votre platinedouble face vous trouverez sur le siteInternet d’Elektor les dessins de pla-tine à télécharger (de même que lelistage comme mentionné plus haut).

MICROINFORMATIQUE

7512/2001 Elektor

Page 60: Elektor N°282 - Décembre 2001 - doctsf

/G:SEC:HEAD Définit les paramètres dudisque dur (sert aux disques dur tra-vaillant en mode LBA) : SEC donne lenombre de secteurs, HEAD le nombre detêtes. L’entrée de ces paramètres se faiten mode décimal.

/L mode LBA/V 0Interrogation des paramètres du disque

dur.

Le pilote DOS travaille avec les partitions dutype FAT12, FAT16, BIG et étendue (exten-ded). Il ne supporte pas FAT32. Ce mode departition est lui reconnu par le pilote Win-dows qui s’installe de la manière suivante(Windows 95) :

Ouvrir « Démarrer » -> « Paramètres » ->« anneau de configuration » -> « Ajout depériphérique ».

Dans l’« Assistant de nouveau matériel » faire« Suivant ».

Cliquer, dans la fenêtre « Assistant de ajoutde nouveau matériel » l’option « Non » puiscliquer sur « Suivant ».

Dans la liste proposée qui s’ouvre alors choi-sir le « Contrôleurs SCSI » et « Suivant ».

Cliquer la « Disquette fournie ».Cliquer sur « Parcourir ». Rechercher le réper-

toire (disquette ou disque dur si on y arecopié ces fichiers) avec les fichiers piloteet sélectionner les fichiers ide2lpt/inf etide2lpt.mpd et fermer la fenêtre par un clicsur le bouton « OK ». L’installation despilotes se fait ensuite automatiquement.

Une fois l’installation des pilotes terminée,fermer les Assistants Matériel et redémarrerWindows.

Il est recommandé, pendant l’utilisation dupilote LPT2IDE de mettre la sortie LPT hors-fonction, sachant que sinon on risque desproblèmes en cas de tentative d’accès à lasortie LPT sous Windows.

ConnexionLe plan de câblage de la figure 6 représente,schématiquement l’interconnexion du PC, dela platine du convertisseur et de l’interfacedisque dur. L’interconnexion du convertisseurau PC se fait à l’aide d’un câble prolongateurpour imprimante, voire un câble (en multi-brins) de caractéristiques similaires que l’onaura fait soi-même, la connexion vers ledisque dur se fera à l’aide d’un câble IDEclassique. Il se peut que l’utilisation d’uncâble trop long entre le port imprimante etson embase sur la platine du convertisseur,K1, puisse entraîner des problèmes. Onpourra, le cas échéant, découpler en HF leslignes de signal DAT 0 à DATA 7 par la mise

en place à cet endroit de condensa-teurs céramique de 12 à 22 pF.Il ne faudra bien entendu pas oublierde connecter la tension d’alimenta-tion. Comme l’illustre la figure 6, onpourra faire appel, pour l’alimenta-tion du disque dur et de la platine duconvertisseur, à une alimentation dePC additionnelle qui fournit toutesles tensions requises et ce à uneintensité plus que suffisante et qui necoûte pas très cher, surtout si on larécupère sur un PC mis au rebut. Laliaison entre cette alimentation et ledisque dur se fera de préférence àl’aide d’un câble d’extension norma-lement utilisé à cet effet dans un PC.Depuis le connecteur d’extrémité dece câble on prolonge 2 des lignes,+12 et 0 V vers les points deconnexion de l’alimentation sur laplatine du convertisseur LPT/IDE.Les 2 picots concernés disposés àproximité de C1, sont identifiés parles mentions + et 0.

PerspectivesL’auteur a prévu d’autres variantesde ce montage, l’une d’entre ellesétant dotée d’un oscillateur à quartz,ce qui le rend, en ce qui en concernela chronologie, indépendant des cir-cuits d’entrées/sorties de la carte-mère. Avec cette version future, letaux de transmission devrait passer àquelque 1,5 Moctets/s. Ceux d’entrenos lecteurs que cette variante inté-

resse peuvent s’en informer sur lesite Internet de l’auteur et le contac-ter par le biais de son adresseE-mail.

(010047)

MICROINFORMATIQUE

76 Elektor 12/2001

Figure 6. Le plan de câblage montre également comment effectuer l’alimentationde ce montage à l’aide d’une alimentation de PC récupérée.

Information de dernière minute :L’interface a été réalisée dans leslaboratoires d’Elektor (cf. photo)et testée sur différents PC avecdivers DD. Ces tests ont étéconclus sans le moindre problème.Tout juste avant publication, l’au-teur nous a cependant fait savoirqu’il n’était pas exclu qu’il puisse yavoir des problèmes de chronolo-gie (timing) avec l’un ou l’autretype de PC. D’après l’auteur, ceproblème est cependant très peufréquent et se manifeste dans laplupart des cas avec des cartes-mères à Pentium I (en relation avecle type de circuit d’E/S présent surcette dernière).

[email protected] [email protected] [email protected]/ipm grphttp://members.aol.com/

andrewbuckinhttp://hometown.aol.com/

andrewbuckin

Page 61: Elektor N°282 - Décembre 2001 - doctsf

La raison d’être du standard DMX-512 est, àl’origine, la commande d’éclairages dans lemonde du théâtre et des spectacles. Depuislors, les possibilités et les appareils dispo-nibles ont énormément évolué au point qu’ilest devenu possible de faire bien plus avecun système DMX-512 qu’uniquement télé-commander des lampes. Cela le lecteurassidu d’Elektor le sait depuis belle lurette,après la lecture de l’article publié à ce sujetdans le numéro de mai dernier (« Les mys-tères du DMX-512 »). Il y a bien évidemmentbien plus de choses à dire au sujet du proto-cole DMX-512 que ce que nous pouvonsconcentrer sur quelques pages de magazine.Le standard DMX complet est publié parl’USITT. Ce standard est disponible sousforme imprimé, la version disponible surInternet n’étant pas complète. Il n’en restepas moins que le site de USITT (United StatesInstitute for Theatre Technology) [1] offre desinfos et décrit les développements les plusrécents dans ce domaine. Si le standard DMXvous intéresse et que vous voulez le com-mander vous pouvez, en Europe, vous adres-ser à PLASA (Professional Lighting and SoundAssociation) [2].Il existe, hormis ces sources officielles,nombre d’autres sites tenus par des utilisa-teurs/amateurs de DMX qui donnent toutel’information nécessaire au sujet de ce proto-cole. Aucun d’entre ne peut cependant se tar-guer d’être complet, mais cela ne devraitguère poser de problème pour la majorité desutilisateurs. Nous avons découvert quelquessites intéressants publiés en diverseslangues : Ressources Techniques [3] est en

français, DMX512.COM [4] et Theanatomy of DMX512 [5] en anglais,Soundlight [5] étant en allemand.Le site Ujjal’s DMX512 Website [7]est un site s’intéressant à tous lesaspects de DMS-512. Ce site trèsdéveloppé est structuré intelligem-ment et traite également de pro-blèmes rencontrés avec DMX. Il pro-pose aussi une collection importantede liens ayant trait à DMX, aunombre desquels tous les fabricantsd’appareils DMX connus.On y trouve en outre une section de

téléchargement de logiciels et maté-riels relatifs à DMX. Autre sectionintéressante, les FAQ où l’on est sur-pris de constater que la plupart sontrelativement anciennes. Nous avonsainsi découvert 3 adresses propo-sant la même liste de FAQ mais avecdes dates de révision différentes.Elles avaient toutes près de 5 ans.Nous vous proposons, à titred’exemple, DMX512 mini-FAQ [8],dont le contenu est, en dépit de sonâge, encore très utilisable (elle traiteprincipalement de sujets de base).

ÉLECTRONIQUEEN LIGNE

80 Elektor 12/2001

DMX-512protocole, logiciels et interfaces Harry Baggen

Nous avons, ces derniers temps, consacré à DMX-512 un certain nombre d’articlespubliés dans Elektor. Nous avons décrit plusieurs projets et n’en resterons sans doutepas là. On trouve, sur Internet, un nombre impressionnant de sociétés fabriquant ouvendant des produits DMS professionnels. Le nombre de projets réalisables parl’amateur est encore très limité. Il n’en reste pas moins qu’il est possible de découvrirquelques projets intéressants et de consulter quelques sites très informatifs.

Page 62: Elektor N°282 - Décembre 2001 - doctsf

sher DMX à 12 boutons.Les pages Electronic Projects [13] de Chris-tian Mohr proposent plusieurs projets d’élec-tronique attrayants. Les 2 projets DMX encours de mise au point sont une interfaceDMX-PC et un récepteur DMX.Sur le site d’un autre amateur de DMX-512,Adam Davis, nous avons découvert la des-cription d’un petit système de commandeDMX réalisé à l’aide d’un PIC [14]. Ce projetaussi est encore à l’état expérimental, mais ilnous paraît intéressant de le suivre pour voircomment les choses évoluent.LPR2DMX [15] est une minuscule interfaceimprimante pour le PC permettant la com-munication DMX-512. L’interface se laissepiloter par le biais d’un pilote Linux. Le ditpilote, DMX4Linux est disponible à l’adresse[16]. Il supporte également, outre LPR2DMXd’autres interfaces DMX (commerciales).

(015101)S’il est dans vos intentions de vouslancer dans le développement delogiciels et/ou de matériels DMX, ilvous faudra non seulement savoir ceque recouvre le protocole DMX maiségalement connaître quels sont lescodes auxquels réagissent les appa-reils des différents fabricants. Nousavons trouvé 2 sites donnant unpanorama intéressant à ce sujet :ESTA propose une page avec DMXUsage Data [9] et Interactive Tech-nologies met à disposition une DMXProtocol Library [10].On ne trouve sur Internet que trèspeu de développements tant aupoint de vue matériel que logiciel,mais les choses risquent de changerdès lors que le standard DMXdevient de plus en plus populaireauprès des amateurs.La combinaison PC et système DMX-

512 semble attirer de plus en plus deconcepteurs. Il existe ainsi AVRDMX-512 dongle [11], un dongleAVR DMX-512 pour PC. Il s’agit enl’occurrence d’une mini-interfacereposant sur un microcontrôleur detype AVR et un circuitémetteur/récepteur RS-485. Commele laisse sous-entendre sa dénomi-nation, ce montage se connecte auport imprimante du PC. Son logicield’exploitation est écrit en C. L’auteurpropose sur son site tant le matérielque le logiciel au téléchargement.Sur le site Kristof’s Webpage [12] ontrouve une autre interface pour portimprimante. Le schéma et les codeshexadécimaux sont proposés gratui-tement au téléchargement.On trouve en outre à cet endroit leschéma d’un booster DMX ainsi quele schéma et le fichier hex d’un fla-

ÉLECTRONIQUEEN LIGNE

8112/2001 Elektor

Adresses Internet :[1] USITT:

www.usitt.org/DMX/DMX512.htm[2] PLASA:

www.plasa.org[3] DMX512.COM:

www.dmx512.com/web/light/dmx512/index.htm

[4] The anatomy of DMX512:www.euro-pa.be/dmx.html

[5] Soundlight:www.soundlight.de/techtips/dmx512/dmx512.htm

[6] Ressources Techniques:http://ogloton.free.fr/dmx_512/presentation.html

[7] Ujjal’s DMX512 Website:www.geocities.com/dmxpage/

[8] DMX512 mini-FAQ:www.lightresource.com/dmx512fq.html

[9] DMX Usage Data:www.esta.org/tsc_dmx_data/dmx-cat.htm

[10] DMX Protocol Library:www.interactive-online.com/library/

[11] AVR DMX-512 dongle for PC’s:www.ele.tut.fi/~viikari

[12] Kristof’s Webpage:http://users.skynet.be/kristofnys/

[13] Electronic Projects:www.hb.se/cmo/projekt/default.htm

[14] Adam Davis:www.ubasics.com/adam/electronics/dmx512.shtml

[15] LPR2DMX:www.lighting-solutions.de/products/LPR2DMX/index.html

[16] DMX4Linux:http://llg.cubic.org/dmx4linux/