Академический Документы
Профессиональный Документы
Культура Документы
14
Figure 1. Lvolution du
nombre de systmes
connects au Web est
quasi-exponentielle.
lIACP
(Intel Applied Computing Platform)
Intel est heureux dannoncer la participation de pas moins de 10 nouveaux
partenaires, fabricants au nombre desquels on compte Nokia, Alcatel, Siemens, pour nen citer que quelquesuns, qui optent dutiliser les noyaux
proposs par Intel et se contentent de
crer le firmware.
Avec la globalisation dInternet, les
frontires entre entreprises svaporent.
Comme le dit Intel There is One Enterprise and its Global. There is One Network
and its the Internet . Cette globalisation
dInternet met, pratiquement, du
mme coup, hors-jeu les nombreux
Intranet tablis dans les limites dune
socit. Les socits ne disposant pas
dn Intranet peuvent se hausser au
niveau des autres en mettant profit
les tonnantes capacits proposes par
lInternet. Mme les personnels dIntel
communiquent avec leur quartier
gnral par Internet, voire des techniques plus modernes dont nous
navons pas encore la moindre ide en
Europe, le rseau Intranet de leur
socit tant quasiment intgr dans la
toile daraigne mondiale.
On connat, en lectronique applique, outre le fameux The number of
transistors on an integrated circuit
doubles every 18 months , une seconde
loi, celle de Metcalf qui dit : The
value of a network increases by the square
Elektor
1/2000
LEntry-level Communications
Appliance Reference Design
Il sagit l dun concept comportant les
composants essentiels pour lobtention
des performances et fonctionnalits
requises pour les appareils de communication de base (entry level). Le but de
ce dveloppement est de permettre
un client potentiel de se concentrer sur
le march en disposant ds le dpart
dun module complet modifiable aisment pour rpondre ses besoins sans
quil nait modifier le coeur du microprocesseur ni adapter le concept du
chipset, tout cela en vue de permettre
une rduction du temps de dveloppement (time-to-market).
Le concept de rfrence utilise les composants suivants :
Un processeur Celeron 300A dIntel,
Le Chipset 440BX dIntel, ce qui sousentend 2xEIDE, 2 ports USB, un BIOS
de 2 Moctets Flash,
2 circuits 82559, composants dinterfaage Ethernet 10/100,
et de la mmoire Flash (dIntel bien
entendu), et tout cela sur une platine de
8,50 x 5,12 sur laquelle il est galement
prvu de la place pour 32 Moctets de
mmoire en barrette SODIMM et pour
lalimentation.
1/2000
Investing in Inovation
Pour illustrer ce dont il parlait, et symboliser ce qui nous attend dans les prochaines annes, Joe Jensen nous parla
de BlackBerry, un petit appareil portable dune dizaine de centimtres de
long sur 6 de large et 2 dpaisseur
(figure 2), une sorte de pager utilisant
un rseau radio sans fil spcialement
conu cet effet pour rester en communication permanente avec lensemble des autres systmes connects
ce rseau spcifique.
15
MICROPROCESSEURS
16
Caractristiques techniques
microcontrleur 80C537, frquence de fonctionnement commutable entre
12 et 16 MHz).
Fiabilit accrue par la prsence du surveillant de microcontrleur MAX807.
32 Koctets dEPROM, 32 Koctets de RAM, avec possibilit dextension
externe vers 64 Koctets pour chaque type de mmoire.
mmoire RAM sauvegarde par pile.
Prsence de 4 adresses CS utilisables librement (dont lune pour LCD si
ncessaire)
Interface srielle 0 : aux normes RS-232
Interface srielle 1 : au choix aux normes RS-232 ou TTL.
Interface permettant une connexion directe dun affichage LCD disposant
de 1 x 16 4 x 20 caractres, rglage de luminosit.
Se laisse programmer dans tous les langages que connat le 8051 (fichier
INTEL-Hex) ou par mots-cl (token) Basic52
Alimentation : 5 V, 75 mA ( 12 MHz), 80 mA ( 16 MHz),
valeurs hors affichage LCD.
Elektor
1/2000
K6
5V
VOUT
VBATT
5V
CW
P1
4k7
PFI
PFO
RESET
D6
11
13
12
14
K4
D4
10
12
LCD
D7
D5
D3
D1
A0
C16
5V
C8
C1
IC4
74HCT573
EN
11
ALE
A0
14
13
12
D3
D2
D1
D0
PSEN
RO
49
82
A1
15
69
A2
1D
A3
10
17
3
4
D6
D5
52
50
RESET
A5
18
ALE
D4
D0
A6
D7
54
53
D2
55
D1
D3
56
57
D4
D5
58
41
59
42
D6
43
D7
A8
44
A9
45
A10
A11
46
D0
A12
D1
D2
A13
11
100n
D0
D1
13
D3
AN5
AN3
AN1
A15
AN2
17
18
AN5
14
15
16
AN6
78
13
79
C2
84
5V
38
VCC
100n
VCC
JP4
11
P1.2
P1.1
P1.0
VAREF
PSEN
RO
OWE
RESET
P1.4
P1.6
P1.5
P0.0
ALE
P1.3
IC1
P0.1
P0.2
P0.3
P0.4
P0.5
P0.6
P3.1
P3.2
P3.3
P3.4
P3.6
P3.5
P3.7
P6.1
P6.0
P5.7
P5.6
P5.5
P5.4
P5.3
P5.2
P5.1
P5.0
P4.7
P4.6
P4.5
P4.4
P4.3
P4.2
P4.1
P4.0
P2.0
P0.7
P3.0
P1.7
80C537
P2.1
P2.2
P2.3
P2.4
P2.5
P2.6
P2.7
P7.0
P7.1
P7.2
P7.3
P7.4
P7.5
P7.6
P7.7
P8.0
P8.1
P8.2
P6.2
P6.3
P6.5
P8.3
P6.6
P6.4
AGND
22p
C10
83
37
60
PE/SWD
X2
P6.7
X1
X2
16MHz
X1
12MHz
40
39
EA
JP7
51
12
81
80
AN8
AN11
AN10
AN9
AN7
AN4
AN3
19
20
48
47
D4
AN7
A14
15
D6
D5
18
D7
17
19
AN10
AN1
16
12
19
C7
16
28
IC2
D2
D3
D4
D5
D6
D7
CS
20
AGND
14
27C256
EPROM
VPP
A1
A2
A3
A4
A5
A6
A7
A8
A9
A10
A11
A12
A13
A14
OE
22
AN0
A4
2
AN0
12
10
K3
AN2
AN8
14
11
16
AN11
13
AN4
AN9
JP3
15
AN6
A7
JP13
JP12
A0
5V
10
A0
A0
A2
10
A3
A2
A1
A3
A5
4
A5
A6
5
A6
3
A4
4
A7
24
A7
A9
21
A9
A10
23
25
24
A10
A11
A8
21
A11
26
23
A13
A13
27
A12
26
A14
GAL1
PROM
READ
JP11
A14
A12
A8
A4
A1
100n
13
GAL3
CS1
CS0
16
17
CS2
LCD
RD
15 GAL3
14 GAL1
RAM
25
10
16V
A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
A10
A11
A12
A13
A14
27
WE
62256
RAM
IC7
D0
D1
D2
D1
13
D3
D7
D2
15
16
D4
D5
D6
D7
CS
28
D6
D3
17
D0
D2
D5
D4
11
D0
D4
VOUT
D3
D5
18
19
20
14
LCD
12 GAL2
5V
F0
F1
F2
F3
F4
18
19
C9
22p
36
INT5
INT4
INT3
67
68
P53
P52
P51
P50
P47
P46
P45
P44
P43
P42
P41
P40
73
P65
P64
P63
D2
1N4148
35
VAREFF
34
INT6
RAM
33
INT2
PFO
66
P54
74
P66
S2
WDRAM
32
T2EX
65
P55
CS2
31
PFI
RXD0
CLKO
21
TXD0
30
22
INT0
T2
23
T0
INT1
29
24
T1
25
26
64
RD
63
P56
WR
62
P57
RXD0
27
61
P60
28
70
TXD1
75
JP5
MR
5V
INT0
RXD1
TXD0
3
11
9
12
10
5V
JP22
C11
C15
JP6
7
11
12
6
10
4
2
1
C1
10
16V
T2IN
C2+
C2
5V
C6
100n
LOW LINE
IC6
CE OUT
CE IN
MR
OUT
RESET
RESET
BATT
BATT OK
16
VBATT
RESET
RESET
VOUT
3V
14
D1
BT1
R1
10
16V
13
15
C6
C4
100n
5V
16
14
8
13
7
15
C12
100n
C13
R1IN
T1OUT
R2IN
C14
T2OUT
K2
JP21
V-
BATT ON
MAX807
WDO
WDI
PFO
PFI
20
IC5
V+
10
IC4
MAX232
R2OUT
R1OUT
T1IN
C1
C1+
71 RXD1
76
P67
72 TXD1
77
INT1
5
1k
RESET
D2
D6
ALE
D1
D7
A7
A6
A5
22
OE
C3
20
IC3
100n
I0
I1
I2
I3
GAL
16V8
F5
F6
F7
GAL2
A15
A4
A3
1
2
3
4
5
I4
I5
I6
I7
10
PROM
A2
A1
A0
A15
A14
A13
A12
A15
A14
A13
A12
A11
6
7
8
9
I8
I9
PSEN
A1
11
WR
D0
RD
RO
WR
PSEN
READ
INT4
INT3
INT6
INT5
INT2
T2EX
CLKO
T2
T1
INT0
INT1
T0
P46
P47
VAREFF
P45
P44
P43
P42
P41
P40
P67
P66
P65
P63
P64
P60
P50
P51
P52
P53
P54
P55
P56
K1
P57
K7
990054 - 11
LE MATRIEL
La mono-carte 537-Lite constitue,
avec le SAB80C537 qui rgne en son
centre, un module microcontrleur
faible cot utilisable toutes les sauces.
Il pourra tre enfich, comme un circuit intgr monstrueux, au coeur
mme de lapplication dont il doit
assurer le pilotage. Lencadr numrant les caractristiques techniques permet de se faire une petite ide de la
A11
A10
A9
A8
PSEN
WR
RD
CS0
CS1
CS2
S1
WDRAM
17
1/2000
Elektor
K5
5V
D1
K5 K6
C5
JP4
K7
S2
R1
K3
BT1
IC6
C1
JP6
18
K4
D2
JP5
C8
C16
JP3
990054-1
C7
IC2
IC4
IC1
C2
JP7
P1
X1
X2
C10
IC7
C12 C13
C6
C3
K1
K2
JP21
JP22
C9
C15
IC5
JP12
JP11
JP13
IC3
S1
C4
C11
C14
RALISATION
ET MISE
EN FONCTION AISES
Il faudra, lors de limplantation des
composants sur la platine dont on
retrouve le dessin des pistes et la sri-
Divers :
K1,K2 = embase sub-D en querre
9 contacts encartable
K3 = embase droite 2 ranges de
8 contacts avec jecteurs
K4 = embase droite 2 ranges de
7 contacts avec jecteurs
K5,K7 = embase autoscable SIL
mle 1 range de 35 contacts
K6 = embase autoscable SIL mle
4 contacts
JP3,JP4,JP6 = embase mle
autoscable 2 contacts + cavalier
JP5,JP7,JP11 JP13,JP21,JP22 =
embase mle autoscable
3 contacts + cavalier
X1 = quartz 12 MHz
X2 = quartz 16 MHz
S1 = embase autoscable
3 contacts destine la connexion
de linverseur unipolaire
S2 = bouton-poussoir unipolaire
BT1 = pile au lithium 3 V de 20 mm
de diamtre + porte-pile
Elektor
1/2000
990054-1
(C) ELEKTOR
K1 de la mono-carte
Sub-D 9
TxD 2
RxD 3
GND 5
PC (AT)
Sub-D 9
RxD 2
TxD 3
GND 5
1/2000
en position 2/3
Placer JP21 et JP22 en position 1/2
Implanter les cavaliers JP3 et JP4
Ne pas implanter ni JP5 ni JP6
Le cavalier JP7 est mis en position 1/2
(frquence dhorloge de 12 MHz)
Linverseur S1 est mis en position
Load RAM (vers la masse).
Il est temps dappliquer la tension
dalimentation. Il est recommand, lors
des essais, de ne pas brancher lalimentation
directement
sur
lembase K6, mais dalimenter la carte
par le biais de lembase sub-D K2
(masse la broche 5 et +5 V la
PC (XT)
Sub-D 25
RxD 3
TxD 2
GND 7
19
MICROPROCESSEURS
cours de programmation
20
Servo
P15
VDD
10k
VSS
Vin
P3
3300F
Servo
10k
VDD
rcepteur IR
P0
par Al Williams
100n
VSS
Figure 20.Llectronique du
Remote Rover. Elle ne comporte quun seul capteur IR
(Panasonic type 4602).
Savez-vous combien de tlcommandes vous possdez. Si vous me ressemblez, leur nombre est ahurissant.
La quasi-totalit des appareils grand
public semblent ne pas pouvoir se passer de leur tlcommande propre. Si
vous avez le malheur de dmolir ou
dgarer la tlcommande fournie
dorigine avec un appareil, il va vous
falloir en acheter une nouvelle, puis
une autre, aucune dentre elles ntant
en fait en mesure de commander
infailliblement lappareil en question.
Nous avons vu, le mois dernier, comment doter votre BoE-Bot dun dispositif de dtection dobstacle par infrarouge (IR). Il existe une plthore de
composants IR pour la simple et bonne
raison que les tlcommandes utilisent
pour la plupart lIR pour lenvoi de
commandes vers lappareil concern.
20
DTAILS
Llectronique requise est, comme le
montre le schma de la figure 20, trs
simple. Il sagit, peu de choses prs,
du mme circuit que celui utilis dans
larticle du mois dernier, ceci prs
quil ne requiert quun seul capteur IR
et ne comporte pas de LED. Les LED se
990050 - 5 - 11
1/2000
MESURES DIMPULSIONS
Le Stamp est en mesure de lire des largeurs dimpulsion (par le biais de son
instruction PULSIN). PULSIN requiert
3 arguments. Le premier spcifie la
broche utiliser pour la mesure de limpulsion. Le Basic Stamp fait de ladite
broche, si elle ne lest pas dj, une
entre. Largument suivant indique
linstruction sil lui faut dtecter une
transition bas/haut (1) ou haut/bas (0).
Le dernier argument est une variable
de la taille dun mot (word-sized) qui
contient la dure de limpulsion (si tant
est quelle en ait une). Le Basic Stamp
utilise une base de temps de 2 s; dans
ces conditions si la variable contient le
nombre 100, limpulsion aura une largeur de 200 s. Linstruction steint
au bout de 131 ms. En labsence dimpulsion au cours de cette dure linstruction met la variable 0. La taille
dimpulsion maximale que lon puisse
mesurer est en effet de 65 353 x 2 s,
do les 131 ms.
Linstruction PULSIN ne prend dimpulsion en compte que si elle dtecte le
flanc prvu. Supposons que nous voulions dterminer la dure dune action
sur un bouton-poussoir. Le bouton
applique un 0 la broche dentre tant
quil est activ. Si on lance lexcution
de PULSIN aprs le passage zro
du bouton on naura jamais mesure de
quelque impulsion que ce soit. Il faut
excuter PULSIN avant larrive du
flanc de limpulsion. Pour peu que lon
y rflchisse, cela semble vident
puisque cela vite que PULSIN ne
fournisse des rsultats errons. Linstruction mesure chaque fois une
impulsion complte.
On pourra utiliser une variable dun
octet de large (byte-wide) si les impulsions mesurer ne dpassent jamais
510 s. Sil devait alors se faire que la
largeur dimpulsion dpasse cette
valeur, le rsultat fourni sera faux sans
quil ny ait davertissement. Linstruc-
Elektor
1/2000
IRREAD:
PULSIN 0,0,W1
IF W1=0 THEN IRREAD
pas dimpulsion
DEBUG ?W1
GOTO IRREAD
IRREAD:
B0=0
lecture de loctet
B1=1
masquage de bit
PULSIN 0,0,W5
IF W5<1200 then IRREAD
ce nest pas un bit de dbut
FOR B2 = 1 to 7
PULSIN 0,0,W5
IF W5<400 THEN READZERO
B0=B0+B1
positionner 1 bit
READZERO:
B1=B1*2 supprimer masquage
NEXT
LA SOLUTION
Il nous faut, pour rsoudre ce problme, rduire les instructions intercales entre les instructions PULSIN. En
fait, il faudrait, pour garantir un fonctionnement correct, liminer les instructions intercales entre les instructions PULSIN. Comment faire ? Se
rsoudre stocker les rsultats bruts
fournis par PULSIN pour les traiter
ultrieurement lorsque lon dispose de
plus de temps de traitement.
Le problme se pose de savoir o lon
stocke ces dures brutes ? On pourrait,
bien entendu, envisager dutiliser des
variables, mais il nous faut un minimum de 8 variables-mot (une pour le
bit de dbut, 7 autres pour les bits de
donnes). Cela pourrait se traduire par
du code on ne peut plus laid. Vous
aurez peut-tre pens, si vous avez
lhabitude de travailler avec dautres
langages de programmation, stocker
les comptages dans un tableau. Bonne
ide, dautant plus que le Basic Stamp
sait travailler avec des tableaux.
TABLEAUX
Un tableau est une technique de
regroupement des variables similaires
en utilisant un nom de variable commun, un nombre-index servant diffrencier une variable de lautre. Supposons que nous voulions travailler avec
des nombres impairs. On pourrait
crire :
oddnums var byte(5)
oddnums(0) = 1
oddnums(1) = 3
oddnums(2) = 5
oddnums(3) = 7
oddnums(4) = 9
La variable oddnums(2) rfre au troisime nombre impair (on se souviendra que lindex dmarre 0). Si lon
rserve 5 lments, lindex utilisera les
chiffres 0 4. Si lon utilise un chiffre
21
pulsout left_servo,center-speed
pulsout right_servo,center-speed
pause 20
next
goto top
right:
for i=1 to delay
pulsout left_servo,center+speed
pulsout right_servo,center+speed
pause 20
next
goto top
rsultat
delay=10
speed=100
top:
gosub read_ir
if value=1 then
if value=3 then
if value=5 then
if value=7 then
goto top
forward
left
right
back
forward:
for i=1 to delay*2
pulsout left_servo,center-speed
pulsout right_servo,center+speed
pause 20
next
goto top
back:
for i=1 to delay
pulsout left_servo,center+speed
pulsout right_servo,center-speed
pause 20
next
goto top
left:
for i=1 to delay
read_ir:
Le problme est ici lexistence dun trou de
quelque 500 us entre les bits de sorte que le
Stamp risque de rater quelque bits moins que
lon ne lise la totalit en une seule passe.
Il nest, partant, pas possible de procder
cette lecture lintrieur dune boucle ni
mme de tester le bit de dbut tant que lon
nen a pas termin.
if irinput=0 then noir Dj au milieu dune
impulsion, autant la sauter
pulsin irsense,0,start
pulsin irsense,0,raw(0)
pulsin irsense,0,raw(1)
pulsin irsense,0,raw(2)
pulsin irsense,0,raw(3)
pulsin irsense,0,raw(4)
pulsin irsense,0,raw(5)
pulsin irsense,0,raw(6)
Pourquoi ne pas les faire sortir
pulsin irsense,0,dummy
pulsin irsense,0,dummy
pulsin irsense,0,dummy
pulsin irsense,0,dummy
pulsin irsense,0,dummy
vrifier bon bit de dbut
if (start<irstartlow) or (start>irstarthi)
then noir
value=0
for dummy=6 to 0
value=value*2
if raw(dummy)<irthreshold then ir0
value=value+1
ir0:
next
return
noir:
value=-1
return
donnent pas de mmoire supplmentaire, ils nous permettent tout simplement de mieux utiliser la mmoire
disponible.
I var byte
for I = 0 to 4
Debug ?oddnums(I)
next
LECTURE
DUN SIGNAL IR
Une lecture avec succs du flux de
donnes IR requiert une srie de
13 instructions PULSIN (ou encore 8 si
on dcide dignorer les bits additionnels). Il nous suffit de stocker 8 de ces
comptages. Voici quoi votre code
devrait ressembler :
irsense con 0
irstartlow con 1100 largeur
minimale du bit de dbut
22
1/2000
pulsin irsense,0,dummy
ID composant ignorer
pulsin irsense,0,dummy
ID composant ignorer
pulsin irsense,0,dummy
ID composant ignorer
pulsin irsense,0,dummy
ID composant ignorer
Internet
or
REMOTE ROVER
Arm de ces routines pour le capteur
IR, il reste doter votre robot dune
tlcommande. Tout ce quil vous faut
savoir cest la correspondance entre
les touches de la tlcommande et les
valeurs mises, ce qui se laisse facilement dduire en faisant appel la
routine ir_read et en utilisant debug
pour limpression la variable reprsentant la valeur.
Dans le cas de la tlcommande Sony,
Elektor
1/2000
http://www.parallaxinc.com BASIC Stamp Manual Version 1.9, BASIC Stamp DOS et Windows Editor, exemples de programmes. Sources ation examples. Sources de distribution
internationale.
http://www.stampsinclass.com documentation BoE-Bot, Robotics curriculum, BoE-Bot
formats de dessin *.dxf and *.dwg, groupe de discussion pour lutilisation du BASIC Stamp
dans lducation.
chucks@turbonet.com crateur du BoE-Bot et auteur de cette srie drticles. Assistance
technique.
kgracey@parallaxinc.com co-auteur de cet article. Assistance technique et questions
concernant le programme d ducation.
http://www.selectronic.fr distributeur du BASIC Stamp de Parallax en France
la touche 1 retournait un 0, la
touche 2 un 1, et ainsi de suite. Lauteur a choisi le 2 comme commande
de marche avant, le 8 comme commande de dplacement vers larrire,
les touches 4 et 6 correspondant
une rotation vers la gauche et la
droite respectivement. Si lon voit les
positions de ces touches, ce choix est
presque naturel.
Il nest pas trs difficile de procder au
test dune touche donne et denvoyer
les instructions correctes aux servos (
limage des autres commandes de
dplacement dcrites dans les articles
prcdents). Le listage 8 vous donne le
code complet du Remote Rover.
Lauteur rencontra cependant une limitation. Aprs stre amus quelque
temps avec le code du Remote Rover, il
imagina obtenir un mouvement vers
lavant du robot lors dune action sur la
touche 2 , mouvement devant se
poursuivre jusqu lentre dune nouvelle commande ou une action sur la
touche 5 . Les choses tournrent au
problme.
Il est trs facile de positionner un indicateur (flag) pour signaler un mouvement vers lavant. Le problme auquel
on se trouve cependant confront est
quil faut, lorsque lon essaie de lire le
signal IR mis par la tlcommande,
attendre que chaque instruction PULSIN se soit coule compltement
avant que le programme ne retourne
dans la boucle principale. Avec 13 instructions auxquelles il faut 131 ms pour
scouler compltement cela se traduit
par prs de 2 s de temps mort entre
2 instructions de mouvement successives. Do un mouvement relativement saccad du robot. Ce phnomne
est moins brutal avec lapproche originelle, vu que les codes rptitifs mis
par la tlcommande terminent les instructions PULSIN sans que celles-ci
naient scouler totalement.
Il est bien videmment possible damliorer les choses quelque peu en ne prenant pas en compte les codes didentification (ID) des composants. Cette
solution diminue le nombre de
priodes devant scouler, mais prsente linconvnient daugmenter le
nombre de fois que votre robot ratera le
bit de dbut et aura partant se resynchroniser avec la tlcommande. Tous
VOLUTIONS
FUTURES
Il existe mille et une modifications
simples faire au programme du listage 8. On pourrait, par exemple, imaginer de programmer les boutons de
volume et de canal en vue de modifier
les variables de vitesse et de dlai.
Essayez-vous y.
Une fois que vous savez lire les codes
de la tlcommande vous pourrez
doter votre robot de toutes sortes de
fonctions plus sophistiques. Il serait,
par exemple, trs simple de faire en
sorte que certaines touches spcifies
produisent une srie prdfinie de pas.
Avec un rien dnergie additionnelle
on pourrait imaginer dutiliser la tlcommande pour programmer une
squence, la stocker en EEPROM, pour
la rappeler ultrieurement ( limage
dune macro). On pourra, une fois saisi
le protocole de la tlcommande,
envoyer au robot une srie de commandes destines au pilotage de votre
tlviseur, mettre le robot dans une
autre pice et lui faire mettre les instructions prvues une fois quil se
trouve en face du tlviseur. On pourrait mme envisager dutiliser ces techniques pour permettre 2 robots de
communiquer lun avec lautre sur des
faibles distances.
Bien que les impulsions craches
par la tlcommande IR soient trs
rapides, le Basic Stamp peut fort bien
les traiter condition que le programme ait t crit correctement.
Linstruction PULSIN permettait une
mesure simple et prcise des impulsions. Bien quils ne soient pas indispensables, les tableaux simplifient normment la tche. Avec un rien dingniosit, il ny a pratiquement pas de
limite ce que le Basic Stamp peut faire.
(990050-5)
Texte : J. Buiting
Technique : L. Lemmens
23
audio-DAC 2000
3e partie : quelques aspects pratiques
Ceux dentre nos lecteurs
qui ont lu avec attention les
2 premiers articles consacrs au sujet connaissent tout du fonctionnement de notre nouveau
convertisseur N/A haut de
gamme. Les seuls aspects
sur lesquels il nous faut
encore attirer lattention
concernent la ralisation
pratique. Ce sera l le
thme majeur de ce troisime et dernier article.
26
LES PLATINES
Comme vous lont appris les articles
prcdents, laudio-DAC 2000 se subdivise en 3 sous-ensembles : le rcepteur,
la conversion N/A et lalimentation. Le
rcepteur est associ une mini-platine
dindication sur laquelle se trouve une
paire dafficheurs 7 segments LED
servant visualiser la frquence
dchantillonnage. Le dessin de circuit
imprim (double face) reprsent en
figure 6 se compose ainsi en fait de
4 platines distinctes que lon pourra
aisment sparer de par la prsence de
lignes de fracture fraises, opration
Elektor
1/2000
Elektor
1/2000
K13
C89
C86
IC17
7805
R58
8V
B1
15
5V
R57
K12
3k9
C85
C87
C88
1000 100n
25V
D7
4x 22n
B80C1500
C84
C83
C82
10
63V
100n
POWER
K11
C81
C78
IC15
15V
7812
R55
B2
33
15V
12V
C76
C72
C70
1000 100n
40V
10
63V
100n
C77
C73
C71
10
63V
100n
C74
K10
C79
C80
4x 22n
B80C1500
C75
1000 100n
40V
R56
12V
33
7912
IC16
990059 - 3 - 16
27
OUT1
K10
C80
C75
5V
H4
H8
C1 C2 JP1
R1
R3
IC1
R2
C3
K1
IC2
R4
IC3
IC4
C4
L1
C9
C14
C15
L4
IC5
+5V
K2
H10
R19
R23
R24
R18
R21
R22
R20
LD2
LD1
R16
R12
R17
R11
R13
R14
R15
H11
H12
H15
K4
K5
OUT3
H9
S3-1 OW0
-2 OW1
-3 IW0
-4 IW1
-5 I2S
-6 SF0
-7 SF1
-8 SRO
H5
K3
H6
990059-1
L2
C8
C5
R8
R9
R10
R7
C44
C42
C40
C41 C39
S3
L3
C6
C7
R5
C13
C22
C19
IC8
IC6
S2 L
C82
OUT2
C20
(MD)
(MC)
(ML) H
H
12V
R6
20bit
INVL
INVR
D4
H16
M2
M1
C18
JP3
C60
MODE
CKO
LRIP
R58
H7
C51
0
K8
S1 1 C11
M3
M0
S4
C16
C83
C84
R57
D7
C43
D6
C21
D5
R52
R51
IC7
C17
C79
C86
C12
R36
R33
R26
C26
R25
C50
IC11
C45
C58
C77
C85 IC17
C88
C89
C37
C36
R30
C33
R27
C30
C27
C25
C46
C47
IC9
C23
R54
R53
C65
C63
C62
C64
+5V
C59
C71
IC16
IC13
C73
R56
B1
R38
R37
C34
H1
C69
IC14
C61 C24
C87
K11
K9 C67
C10
R35
C38
C35
C31
R34
C28
R31
R28
-12V 0 +12V
C68
R29
C29
JP2
C66
9V
H3
R41
R32
R39
R50
15V
K13
IC12
C32 C49
IC10
RE3
RE2
C57
C56
C55
R46
C53 C52
R42
R40
T2
R47
C48
R48
R49
K12
12V
C70
C72
C81
H14
OUT5
C74 IC15
R55
H2
OUT4
D3
R45
R44
R43
D1
C54
K7
K6
D2
H13
T1
RE1
C78
15V
C76
B2
Figure 6. Des lignes de fracture permettent la sparation des 4 platines double face
trous mtalliss que requiert cette ralisation. La srigraphie de limplantation des composants a t reproduite ici 85% de sa taille relle.
28
polystyrne/polypropylne
Selfs :
L1 L4 = 47 H
Semi-conducteurs :
D1 = 1N4001
D2,D3 = 1N4148
D4 D6 = diode zener 5V6/1W3
D7 = LED haut rendement rouge
LD1,LD2 = HDN1075O (Siemens)
T1,T2 = BC517
IC1 = CS8414-CS (Crystal Semiconductor)
IC2 = TORX173 (Toshiba)
IC3 = 6,144 MHz SG531P (Seiko Epson)
IC4 = 74HCT32
IC5 = GAL22V10B-25LP
(programme, EPS996530-1)
IC6 = DF1704E (Burr-Brown)
IC7,IC8 = PCM1704U (Burr-Brown)
* cf. texte
Elektor
1/2000
990059-1
(C) ELEKTOR
Elektor
1/2000
29
Figure 7. Le montage
du DF1704, IC6,
requiert une main trs
ferme et un matriel
adquat.
on pourra en
envisager linterconnexion
pour raliser
notre audioDAC 2000 quil
faudra bien entendu habiller. La solution optimale consiste utiliser un coffret en mtal qui aura de prfrence les
dimensions et laspect du reste des lments de la chane audio o il doit
trouver place. Nous avons utilis, pour
notre prototype, un coffret du type
UC251/SW de Monacor. Ses dimensions, 435 mm de large, 44 mm de haut
seulement et 230 mm de profondeur
sont classiques dans le monde de laudio. Il sagit, comme lillustre la
figure 8, dun coffret relativement compact qui offre cependant suffisamment
de place pour le placement des diffrentes platines. La disposition adopte
ici est lune des plus favorables que lon
puisse envisager, aussi conseillonsnous ceux qui envisageraient de raliser ce montage dadopter la disposition suivante : la platine des CNA dans
un coin, celle du rcepteur juste ct,
la platine de lalimentation juste
devant et le transformateur dalimentation dans le coin oppos. Nous avons
utilis une platine pour transformateur
spciale, dcrite, nous lavons dit plus
haut, dans un article distinct prsent
ailleurs dans ce mme numro.
Les seuls lments monts sur la face
avant sont linterrupteur secteur et laffichage visualisant la frquence
dchantillonnage. On peut galement
y positionner la LED de tension dalimentation D7, mais cela na rien dimpratif vu que les afficheurs LD1 et
LD2 servent, implicitement, de dispositif signalant la prsence de la tension
dalimentation (marche/arrt).
La figure 8 montre clairement le
cblage des diffrents lments quil
va falloir raliser. numrons, pour
viter tout oubli, les interconnexions
effectuer :
30
EN
GUISE DE
CONCLUSION
Juger lcoute de la qualit dun
convertisseur A/N nest pas une sincure. Il ne faut pas sattendre dcouvrir des diffrences dramatiques
comme cela peut tre le cas lors dune
coute comparative denceintes. Les
amliorations par rapport aux audioDAC ayant eu prcdemment lhonneur des colonnes dElektor sont
chercher au niveau de nuances trs
subtiles. Nous avons trouv que notre
dernier-n, laudio-DAC 2000, fournissait un son sensiblement meilleur que
toutes les versions existantes dont nous
disposions encore, le plus impressionnant tant sa nettet et la finesse de
limage stto. Nous vous renvoyons,
pour un jugement plus mesur , aux
rsultats de mesure donns en encadr
ci-aprs. Permettez-nous quelques
remarques dordre gnral : la largeur
de la bande passante aux frquences
dchantillonnage de 32, 44,1 et 48 kHz,
est exactement gale la moiti de la
frquence dchantillonnage vu quaux
dites frquences la bande passante du
filtre analogique est plus grande que
celle du filtre numrique (dont la raideur de pente est trs importante). Aux
frquences de 88,2 et 96 kHz, la bande
passante dpend du filtre analogique.
La distorsion harmonique totale +
bruit (THD + N pour Total Harmonic
Distorsion + Noise) une frquence
dchantillonnage de 96 kHz a t
mesure une bande passante de
22 kHz, vu qu une frquence
dchantillonnage plus faible le filtre de
sortie analogique prsente une bande
passante de 26 kHz. Il est plus facile,
dans ces conditions, deffectuer une
comparaison entre les 3 mesures.
(990059-3)
Texte: Sjef van Rooij
Technique: Ton Giesberts
Figure 8. Un coup doeil au coeur de notre prototype. On constate que le coffret que nous avons
utilis permet une disposition facile des diffrents
composants de cette ralisation.
Elektor
1/2000
Caractristiques techniques :
+3
-0
-3
-6
-9
-12
-15
-18
-21
[dBr]
-24
-27
-30
-33
-36
-39
-42
-45
-48
-51
Spcifications
-54
-57
S1
off
of
off
on
S2
1
2
3
4
on
off
off
off
S3
1 on
2 on
3 on
4 off
5 on
6 off
7 off
8 off
1
2
3
4
10
20
50
100
200
500
1k
2k
5k
10k
20k
50k
[Hz]
100k
200k
990059 - 3 - A.eps
0.5
0.2
0.1
0.05
[%]
0.02
0.01
0.005
0.002
0.001
20
50
100
200
500
1k
2k
5k
[Hz]
10k
20k
990059 - 3 - B.eps
Linarit CD
Linarit CD - Rsultats calculs
+1.4
+1.2
+1
+0.8
S4
off
off
off
N.C.
+0.6
+0.4
+0.2
+0
-0.2
-0.4
-0.6
-0.8
-1
-1.2
-1.4
-110
-100
-90
-80
-70
-60
-50
-40
-30
-20
-10
+0
990059 - 3 - C.eps
+0
-10
-20
-30
-40
Courbes de mesure
Nous vous proposons, pour que vous ayez le maximum dinformations, en plus
dun bulletin chiffr, quelques courbes de mesure de laudio-DAC 2000 commentes.
La courbe a montre la rponse en frquence des filtres analogiques de sortie.
Leur mesure se fait par lapplication dun courant au niveau des convertisseurs
courant/tension, ce qui implique galement une prise en compte du filtrage
effectu par les condensateurs C25 et C26.
La courbe b montre le THD+N pleine modulation. Cette mesure a t faite
dans une situation pratique, par le biais dun CD de test (16 bits/44,1 kHz). La
croissance de la distorsion au-del de 3 kHz est tonnamment faible, ce facteur restant infrieur 0,005 % jusqu plus de 20 kHz. Aux frquences audio leves, la vitesse des CNA joue bien entendu un rle certain.
La courbe c illustre la linarit des CNA. Pas de remarque faire. Le balayage
en amplitude a t fait laide de signaux de test de 400 Hz activation (dither);
en labsence dactivation, il ne serait pas possible deffectuer des mesures
16 bits jusqu 110 dB.
La courbe d montre la diaphonie entre les canaux partir de 40 Hz. En-de
de cette valeur on ne mesure que du bruit de fond. La diaphonie est excellente,
elle est toujours, dans les 2 cas, suprieure 88 dB et ce mme 20 kHz. Ces
valeurs ont t releves blindage entre les canaux en place (cf. texte).
La courbe e montre, pour finir, le spectre de frquences 1 kHz pleine modulation et une frquence dchantillonnage de 48 kHz/24 bits. Comme on le
voit, toutes les harmoniques se trouvent bien en-de de 100 dB.
Elektor
1/2000
-50
-60
-70
[dB]
-80
-90
-100
-110
-120
-130
-140
-150
40
50
100
200
500
1k
2k
5k
[Hz]
10k
20k
990059 - 3 - D.eps
+0
-10
-20
-30
-40
-50
-60
-70
[dBr]
-80
-90
-100
-110
-120
-130
-140
-150
20
50
100
200
500
1k
2k
[Hz]
31
5k
10k
20k
50k
990059 - 3 - E.eps
90k
MICROPROCESSEURS
Burkhard Kainka
32
gigogne 80C32-BASIC parus dans Elektor de fvrier et mars 1998. Les nouvelles variantes du BASIC pour les
microcontrleurs 80C535 et 80C537,
nous y reviendrons trs prochainement, dailleurs. Une platine unique
lusage du microcontrleur 80C537 a
dj t prsente dans le magazine de
juin 97 sous lappellation de monocarte. Mais plus spcifiquement pour
les applications pratiques en relation
avec linterface pour le bus CAN, nous
vous proposons ici une mono-carte
537 Lite , encore plus compacte et
moins chre que la prcdente, telle
que vous lavez aperue en photographie dans len-tte du prsent article.
Elektor
1/2000
MATRIEL
K5
PFI
Pour assurer une liaison aise entre la
PFO
mono-carte 537 Lite quipe de
RESET
lEPROM porteuse du BASIC 537 et la
5V
RESET
platine dinterface CAN, nous avons
K3
ALE
dessin un adaptateur sur circuit
D7
1
2
imprim. Vous en trouverez le schma
D6
3
4 WR
D5
5
6 RD
la figure 1, tandis que la morphologie
D4
7
8 CS2
des pistes et lorganisation de limD3
9
10
plantation des composants se trouvent
D2
11
12
la figure 2. La photo vous le fait
D1
13
14
dcouvrir, la platine du 537 se branche
D0
15
16
directement sur ladaptateur, rsolvant
A7
A6
ainsi la question du cblage. Lautre liaiA5
son, celle avec la carte dinterface CAN,
A4
sera ralise simplement laide dun
A3
cble en nappe, comme la photo en
A2
dbut darticle le laissait prsager.
A1
Reste trouver une solution expditive
A0
A15
pour lalimenter. cet effet, un rgulaA14
teur de +5 V, flanqu dune diode de
A13
protection contre linversion de polaA12
rit lentre de la platine dadaptaA11
tion, assure en mme temps lalimenA10
A9
tation des deux autres cartes. Il ny a
A8
qu connecter K2 un module secteur
PSEN
bon march un courant de 300 mA
WR
sera plus que suffisant dont la tension
RD
de sortie continue non stabilise slve
CS0
entre 9 et 12 V. Si lon dispose dj dun
CS1
CS2
5 V stabilis dans les environs, on peut
laisser de ct IC1, D1, C1 et C2, il suffit alors de relier cette
source aux bornes corFigure 1. Le schma de la
respondantes de K1
platine dadaptation destine
En guise densur ladaptateur.
faciliter la liaison entre la
tranement,
Par raison dconomie,
mono-carte 537 Lite et linterface de bus CAN.
dmarrons avec
la platine de ladaptaun systme simteur est nettement
plifi, une transmoins
spacieuse
mission de donnes entre deux
(encore) que celle du 537 laquelle elle
ensembles quips du 80C537. Lenvise branche. Si lon divise en deux la
ronnement indispensable y sera recr
platine de ladaptateur suivant la ligne
par le logiciel. Le dbit est fix
reprsente en srigraphie, puis quon
20 kbit/s. Les messages sont transmis
fixe les deux sections bonne distance
sans bit RTR, il ny aura donc pas de
sur un chssis, une tle daluminium
demande de rponse. Les deux
par exemple, il sera bien facile dy
ensembles doivent remplir les tches
appliquer la mono-carte 537 Lite .
suivantes.
Cest dessein que le signal dinterLensemble 1 expdie sans cesse des
ruption INT2 est reli par fil entre la
messages portant lidentit 300 et dans
broche 12 de K3 et la broche 32 de K6.
lesquels on a insr huit octets. Les
Pour vous en convaincre, observez la
donnes proviennent des huit prephoto de la carte 537 avec les deux
miers canaux du convertisseur A/N. Il
sections disjointes de ladaptateur. Chay a donc en permanence des mesures
cune de ces parties est pourvue en
effectues sur huit entres analogiques
consquence de points de connexion et
et le ou les autres ensembles connects
dailleurs on voit bien sur la srigraphie
au bus peuvent recevoir et utiliser ces
de la figure 2 un pont de cblage desdonnes.
sin cet endroit.
Lensemble 2 rceptionne toutes les
LA COMMANDE EN
donnes qui circulent sur le bus et les
rpercute vers le PC, travers linterBASIC
Il nous suffit, pour commander la carte
face RS232. On dispose ainsi dun
dinterface CAN, dun programme
superviseur simple du CAN, apte
dont lunique tche consiste dialoobserver le trafic dans son ensemble.
guer avec une pile de registres du
La figure 3 nous expose cet assemblage
contrleur CAN, situs dans un
sous forme de bloc-diagramme. Les
domaine qui commence ladresse
liaisons entre ensembles ne rclament
F000H. Pour accder aux adresses dans
pas de cble spcial. Lors des premires
les domaines de RAM externe et des
expriences sur le banc de laboratoire, l
priphriques, le BASIC 537 fait appel
o les distances sont toujours inf loprateur XBY.
rieures au mtre, un bout de cble
K6
Elektor
1/2000
INT4
5V
INT3
INT6
K4
INT5
VOUT
INT2
VBATT
T2EX
CLKO
T2
T1
ALE
T0
INT2
INT1
RESET
INT0
VAREFF
P47
P46
P45
P44
P43
K1
P42
P41
+5V
P40
P67
P66
P65
P63
IC1
P64
D1
1N4001
5V
7805
P60
P50
K2
P51
+9V
P52
C1
C2
C3
C4
10
16V
100n
10
16V
100n
P53
P54
P55
P56
P57
990066 - 4 - 14
LE LOGICIEL
DMISSION ET LE TEST
Le listage 1 reprend le programme
dmission destin au contrleur 1. Le
systme 80537 interpelle le contrleur
CAN SJA 1000 ladresse 0F000H. Cest
la ligne 95 qui fixe ladresse de dpart
(BA=0F000H). Sur un autre systme, il
ny aurait donc qu changer la valeur
attribue BA. La squence dinitialisation, nous lavons dcrite dans larticle sur le matriel CAN. Aux lignes
110 et 200 sopre la vrification de la
programmation des registres. Le logiciel patiente ici jusqu ce quil soit certain que tous les bits de ces registres se
trouvent dans ltat souhait. Sil ne
dtecte pas lautre contrleur sur le bus
ou sil nobtient pas de rponse comme
prvu, le programme reste coinc ici.
En cas de russite, on peut lire les rapports suivants :
Reset OK
Init OK
Il ne reste plus alors qu raliser linitialisation jusqu la ligne 200. Une premire vrification consiste observer le
signal rectangulaire prsent au point
33
H5
K5
K4
K6
H6
K3
000020-1
Condensateurs :
C1,C3 = 10 F/16 V (vertical)
C2,C4 = 100 nF (cramique)
Semi-conducteurs :
D1 = 1N4001
IC1 = 7805
Divers :
K1,K2 =bornier encartable
2 contacts au pas de 5 mm
K3 = embase HE-10 2 ranges de
8 contacts
K4 = embase autoscable
1 range de 4 contacts
K5, K6 = embase autoscable droite
1 range de 35 contacts
K1
C4
IC1
1-020000
ROTKELE )C(
000020-1
(C) ELEKTOR
C1
C2
D1
C3
H7
K2
H8
LE LOGICIEL DE
RCEPTION
Le moment est donc venu de nous
intresser au logiciel de rception, pour
un systme compos de deux
ensembles, tel quil est consign dans
le listage 2. Nous pouvons y relever
34
Elektor
1/2000
1/2000
90
95
100
110
111
120
130
140
150
160
170
180
190
200
201
500
510
520
530
540
550
560
570
580
590
600
610
620
630
640
35
Rfrence.
Les trois listages dont nous avons discut
au cours de cet article sont disponibles en
tlchargement sur le site Elektor
(www.elektor.presse.fr).
36
Elektor
1/2000
lectronique en ligne
faites votre radio cristal
retour aux origines
Tous ceux qui ont un
minimum de connaissances en lectronique
savent de quoi il retourne
lorsque lon parle de
radio cristal : le premier
modle de rcepteur et
le plus simple qui soit, ne
comportant rien de plus
quune diode (le cristal),
une antenne, une bobine
et un couteur. On
trouve, sur Internet, de
nombreux exemples de
rcepteurs cristal, certains dentre eux accompagns de descriptions
exhaustives et de photos
fort aguichantes.
1/2000
Crystal Radio
(www.ccsd.k12.nv.us/schools/cashman/
CrystalRadio.html)
Crystal radio project
(www.datasync.com/~ignatz/electro/
crystal/crystal.htm).
La complexit des projets est variable
elle aussi. Le vrai rcepteur cristal ne
comporte, en tant qulment actif, rien
de plus quune diode au germanium,
mais nous avons galement trouv des
ralisations complexes utilisant des
transistors voire des circuits intgrs.
En voici 3 exemples :
High power crystal set
(http://hibp.ecse.rpi.edu/~john/xtal.html)
a convertible crystal radio
(www.glynn.k12.ga.us/~opool/XTAL/
radio.htm)
short wave radio project
(www.datasync.com/~ignatz/electro/receive/
receive.htm)
Nous trouvons, chez Radio Winkles,
ladresse :
(www.antiqueradio.org/econmain.htm)
lexemple dune description claire de la
ralisation dun rcepteur O.C. cristal
baptis EconOceanic . Il permet la
rception des O.M. et de la plupart des
O.C. comprises entre 1,7 et 17 MHz.
Si vous voulez en savoir plus au sujet
des diffrents concepts pouvant tre
53
antenne-cadre
pour rcepteur mondial
En rception
ondes courtes, rien
de tel quune antenne
filaire longue, mais
tout un chacun na
pas ncessairement
la place pour en installer une. Alors, lantenne active dcrite
ici offre une solution
de rechange remarquable. Elle est
simple construire,
fournit dexcellentes
prestations et en
plus, elle est trs
bon march.
projet: G. Baars
54
Celui qui dcide dutiliser son rcepteur portatif ondes courtes pour
couter les missions internationales
ailleurs quen vacances sapercevra vite
des limites de lantenne tlescopique.
Le rendement dun fouet court est trs
restreint et dautre part, la maison, les
parasites sont lgion. Sintresse-t-on
quelque peu la rception longue
distance, il faut rechercher une voie
plus srieuse.
Mais laquelle ? Il y a tellement de livres
qui regorgent de techniques de captage et lon dnombre une telle diversit dantennes. Pour sy retrouver
dans cette fort, balisons les sentiers au
dpart des qualits que lon attend
dune telle antenne.
Tout dabord, une antenne ondes
courtes ou pour les missions internationales se doit de possder une largeur de bande suffisante, question de
P E U T- O N
LENCADRER ?
lintrieur, un choix intressant, cest
lantenne-cadre. Certains, lvocation
du ce type de capteur, penseront
Elektor
1/2000
BF494
Elektor
1/2000
5V8
T2
BF451
BF494
BF451
T3
2V1
BF494
C3
1V3
100n
R4
220
R3
560
000005 - 11
+9V
C4
R1
H3
C1
H4
0
T1
T3
C3
T2
C2
R4
R3
ROTKELE )C(
H1
H6
K1
1-500000
R2
000005-1
H5
R2
K1
H2
Condensateurs :
C1,C2 = 2nF2 cr. au pas de 5 mm
C3 = 100 nF cr. au pas de 5 mm
C4 = 100 nF cr. au pas de 7,5 mm
000005-1
CONSTRUCTION
La partie active de lantenne cadre
peut se monter sur une platine, dont la
figure 2 dtaille la disposition des
pistes et des composants. Elle nest pas
disponible chez Publitronic Service, il
faudra donc la graver personnellement, mais vu le petit nombre de composants, elle ne devrait poser de pige
personne.
Le bobinage, lui aussi, reste la simplicit mme. lentour dun cadre dun
mtre sur 1,5 m, en gros, garni dun
clou chaque angle, on bobine deux
quatre spires de fil de cblage isol. Le
100n
(C) ELEKTOR
LA
Rsistances :
R1,R2 = 82 k
R3 = 560
R4 = 220
10mA
C4
T1
82k
9V
R1
82k
Semi-conducteurs :
T1,T3 = BF494
T2 = BF451 (BF450)
Divers :
K1 = embase tulipe ou BNC
10 15 mtres de fil de montage
55
DOMESTIQUE
horloge
Tour du Rhin Mod 2
avec une platine lesthtique indniable
Lhorloge Tour du
Rhin dcrite le millnaire dernier, en
1998 plus exactement, tait une
reproduction miniaturise pilote par
DCF de la fameuse
horloge monumentale se trouvant sur
les bords du Rhin
Dusseldorf. Lauteur,
aiguillonn par les
nombreuses ractions positives suscites par son projet, a
dcid de se rattaquer au programme
en vue de le doter de
nouvelles fonctionnalits. Nous avons,
quant nous, redessin la platine en lui
donnant une esthtique trs proche de
la tour dans sa version originale.
56
1/2000
COMMENT LES
O C T E T S A L L U M E N TILS LES AMPOULES ?
La figure 2 donne le schma de notre
horloge LED. Une grande partie du
schma est identique celui de la premire version dcrite en mai 1998. Le
type de microcontrleur utilis est rest
le mme, ni la circuiterie de commande
des LED ni lalimentation nont
chang. Ce quil y a de neuf est le circuit de commande du rsonateur
pizo. On pourra utiliser ici, avec le
dimensionnement choisi, nimporte
quel rsonateur travaillant une tension continue de 5 V et ne consommant pas plus de 50 mA. Les 3 boutons-poussoirs attaquent des entres
du processeur non utilises sur la preElektor
1/2000
clairage du restaurant
Heures: dizaines
Heures: units
LA
RALISATION
Nous vous proposons, en figure 3, le
dessin des pistes. On constate au premier coup doeil que nous sommes
loin dun lay-out classique. Si la
forme de la platine est spciale, ses
dimensions le sont aussi. Ceci explique
que nous ayons d rduire sa taille
55% de la taille relle. Il vous faudra
donc, si vous voulez raliser votre
propre platine, procder un agrandissement 182% de ce dessin. Il vous
est possible, si vous avez accs Internet, de chercher, sur le site dElektor
(http://www.elektor.presse.fr) le dessin
des pistes lchelle 1 (sous la forme
dun document .pdf).
Laffaire est plus simple si vous achetez
la platine toute faite, vu quelle possde
dj la forme de la Tour du Rhin. Si
vous gravez votre propre platine il
vous faudra lui donner la forme
requise laide dune scie lame fine.
On pourra envisager de doter, avant la
mise en place des composants, le ct
composants de la platine dune fine
(et jolie) couche de peinture en vitant
de boucher les orifices devant recevoir
les composants.
Le pied de la tour comporte une paire
de platines sparables du reste. La platine infrieure est celle du clavier; juste
au-dessus nous avons celle du processeur charg du pilotage de lensemble.
vous de choisir si vous voulez effectuer cette double (voire simple) sparation ou garder la tour dune seule
pice, ce choix ayant bien videmment
des consquences sur la ralisation
finale du montage.
Il va falloir, vu que les 3 platines sont
isoles lectriquement lune de lautre,
procder leur interconnexion.
On commencera par la mise en place
Minutes: units
Secondes: units
980035 - 11
57
5V
C5
R1
100n
47k
47
63V
R2
1
19
2
SEGA
RST
P10/IN+
IC1
6
5V
INT0/P32
P12
INT1/P33
P13
T0/P34
P14
T1/P35
P15
P16
220
R3
89C2051
RXD/P30
11
P37
TXD/P31
X0
R6
10
10k
DCF77
P17
12
12
13
11
14
13
15
14
16
10
17
18
19
ID0
SEGB
ID1
SEGC
IC2
ID2
SEGD
ID3
SEGE
ID4
SEGF
ID5
SEGG
ID6
7218A
ID7
DP
DIG1
DIG2
P11/IN
X1
WR
DIG3
MODE
DIG4
X1
DIG5
DIG6
DIG7
DIG8
C7
C4
47p
C3
47p
27
SEGA 3
SEGC 4
SEGG 5
25
SEGE 6
SEGD 7
24
SEGB 8
26
SEGF
DP
10
15
DIG3 11
16
DIG1 12
23
DIG6 13
20
DIG2 14
17
DIG7 15
22
DIG5 16
21
DIG4 17
18
DIG8 18
19
C2
28
20
R5
4...22p
100n
12MHz
K1
100n
20
1
5V
IC3
D49
1N4001
R4
R
C1
47k
C6
5V
7805
5V
R7
D41
D39
D30
D25
D16
D11
D2
D42
D40
D31
D26
D17
D12
D3
D43
D51
D32
D27
D18
D13
D4
D44
D52
D33
D28
D19
D14
D5
D45
D53
D34
D29
D20
D15
D6
D46
D54
D35
D21
D7
D47
D55
D36
D22
D8
D37
D23
D9
D38
D24
D10
JP1
C8
C9
1000
25V
10
63V
F'
G'
S1
H'
S2
S3
K2
1
2
WECK
ON/OFF
(D50)
WECK
OUT
(D56)
DCF
IMPULSE
(D1)
D'
A'
B'
D50
E'
D1
1k8
R8
C'
SEGA
SEGC
SEGG
SEGE
SEGD
SEGB
SEGF
10
DP
11 DIG3
12 DIG1
T1
R10
13 DIG6
4k7
K'
14 DIG2
D48
15 DIG7
BC557B
1k
R9
16 DIG5
Bz1
17 DIG4
18 DIG8
D56
19
20
D'
D'
990076 - 11
58
source indiscutable
de parasites qui pourraient influer de
faon nfaste le fonctionnement de lhorloge DCF, il faudra veiller disposer le
rcepteur quelque 20 30 cm de la
CPU. On utilisera un petit morceau de
cble blind pour effectuer la liaison
entre le rcepteur et les picots en
question.
Lalimentation fait appel un adaptateur secteur pouvant fournir un courant de lordre de 250 mA une ten-
1/2000
D51
BZ1
S1
D50
F A B
T1
R8
R10
R9
D56
G
S2
H
D1
S3
D55
D54
D53
D47
D48
D52
D46
D40
D39
Platine reproduite
55%
de sa taille relle.
D38
D37
D36
D35
D34
D33
D32
D31
D44
D30
D45
D29
D28
D27
D26
D25
D24
D23
D22
D21
D20
D19
D18
D17
D16
D43
Elektor
1/2000
D42
D41
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
1-670099
(C) Segment
IC3
990076-1
C8
tnemgeS )C(
JP1
R7
++
D49
K2
E
C9
IC2
C6
R4
R5
R1
R2
R6
K1
990076-1
R3
C5
IC1
K
F G C H
C7
H4
C1
C4
H1
X1 C3
C2
59
ENTRE DE LHEURE
DE RVEIL
On pourra, une fois que lhorloge est
remise lheure et quelle marche,
entrer lheure de rveil. Tout au long de
cette opration, lhorloge reste
lheure. Le module DCF est cependant,
lui, mis hors-circuit pendant ce rglage.
Ceci na pas de consquence sachant
que lhorloge dispose dun quartz qui
lui fournit un signal dhorloge relativement prcis (nombre dhorloges DCF
alimentes par piles, conomisent de
lnergie en ne procdant, chaque jour,
qu quelques synchronisations seulement sur le signal DCF. Ceci suffit
garantir une prcision de lhorloge plus
quacceptable).
Il faudra, pour entrer lheure de rveil,
commencer par appuyer sur S3. Toutes
les LED steignent alors voire donnent
la dernire heure de rveil (avec le jour
de la semaine) choisie prcdemment.
Chacune des 3 touches remplit alors
une double fonction en fonction de la
dure de laction : action brve (moins
de 0,6 s) ou action longue (dure suprieure 0,6 s). Lheure de rveil se dfinit sous la forme dun nombre dheure
et dun nombre de minutes.
Voici les fonctions attribues aux
touches :
Action brve sur S1 : incrmentation
des heures
Action brve sur S2 : incrmentation
des minutes
Action brve sur S3 : incrmentation
du jour de la semaine
Action longue sur S1 : rveil on/off
Action longue sur S2 : programmation
du jour de la semaine
60
Elektor
1/2000
LLECTRONIQUE EN PRATIQUE
62
COMPOSANTS
FRAGILES
Les composants lectroniques sont
encore plus sensibles aux (d)charges
statiques que ne le sont les tres
humains. Certains dentre eux sont fra-
1/2000
LA DIFFRENCE ENTRE
UN TRE HUMAIN ET
UN LPHANT
Que peut supporter un circuit intgr ?
Prenons, comme exemple, les familles
logiques modernes. Les fabricants se
sont rendu compte que leurs clients
taient moins rigoureux quils ne le
pensaient. En dpit des avertissements
aux couleurs les plus chatoyantes,
nombre de composants taient endommags vu quon les empoignait sans la
moindre prcaution. Ceci explique
quils aient dot leurs produits de protections leur permettant de supporter
sans
dommage
la
dcharge
moyenne dun corps humain.
Sachez, titre info, quun circuit
logique de la famille HC(T) peut supporter des tensions jusqu 2 000 volts
(!). On peut admettre que le corps
MISE
LA TERRE ?
Et quen est-il de la terre ? Ne vaudrait-il pas mieux de commencer par
mettre les modules en contact avec la
terre ? La terre ne prsente-t-elle pas
un potentiel nul ? Il ny a pas le
moindre risque nest-ce pas ! Examinons la situation :
De mme que vous pouvez parfaitement vous sentir laide au sommet de
la Tour Eiffel (tant que vous ne sautez
ou nen tombez pas), un composant
na que faire de se trouver un potentiel stable nul (celui de la terre) ou de
nimporte quelle autre valeur (leve).
Si le potentiel de la terre ne prsente
ne fait pas la moindre importance, il
nen est pas moins trs pratique. Tant
que le PC se trouve au dpart au
potentiel de la terre et que cela est galement le cas des modules, on est
assur, sans avoir le mesurer, dune
absence de diffrence de potentiel et,
partant, de danger latent.
Elektor
1/2000
63
MICROPROCESSEURS
projet : H. Bhling
64
CIRCUITS INTGRS
EN TOUT ET POUR TOUT
La figure 1 vous donne le schma du
montage. Le coeur de ce projet est un
PCF8574(A), un circuit intgr de lcurie Philips que nous avons utilis dans
plusieurs montages dcrits dans Elektor (cf. lencadr).
Llectronique situe sur la gauche de
ce composant constitue linterface I2C
proprement dite. La communication
avec le monde extrieur peut se faire
de 2 faons, soit par une embase DIN
miniature soit par le biais dun double
bornier encartable vis. On trouve, au
niveau de lembase mini-DIN, les
2 signaux de commande SCL (Serial
CLock = horloge srielle) et SDA
(Serial DAta = donnes srielles) ainsi
que la tension dalimentation et le
potentiel de la masse. Le dernier
contact de cette embase est utilis par
la ligne dinterruption optionnelle
Elektor
1/2000
5V
2
1
330
100n
10
100 16V
A0
A1
P0
P1
IC1
A2
P2
P3
13
INT
D2
D3
D4
D5
D6
1k5
R10
D7
D8
SCL
14
SDA
15
INT
P4
4
5
6
7
9
PCF
10
8574 P5
SCL
P6
SDA
P7
11
12
SCL
IC3
IC2
5V
K2
R9
1k5
R8
1k5
R7
1k5
1k5
R6
K4
R1
INT
R5
16
SDA
R4
100n
D1
330
R2
C2
IC2
K1
3
C1
C3
1k5
R3
20
1k5
5V
1k5
5V
5V
K3
JP1
JP2
JP3
10
K5
+VS
18
18
17
17
16
16
15
15
14
14
13
13
12
12
11
11
VEE
9
1
19
ULN2803
&
EN
74HCT540
Figure 1. Llectronique
de protection (diodes
sables par le biais de
du port dE/S 8 bits
dites de roue libre)
cavaliers. La combipilot par le biais dune
que comporte IC3.
naison de 2 adresses
interface I2C.
Les cavaliers JP1 JP3
de base et de 8 combipermettent
de
naisons de bits se tra(re)dfinir ladresse de base du
duisent par un total de 16 adresses difPCF8574(A). Si lon utilise, pour IC1, un
frentes, ce qui explique que lon
PCF8574 (sans le suffixe (A)) ladresse
puisse connecter, un bus I2C, un
maximum de 16 modules. Ces 3 bits
de base sera $0100xxx (40HEX). Si au
contraire on a opt pour un
sont en fait suivis dun dernier bit qui
PCF8574(A),
cette
sert lui dterminer la
adresse de base sera
direction des donnes
Figure 2. Dessin des
$0111xxx (70HEX). Les
(lecture ou criture).
pistes et srigraphie de
3 x de ladresse de
Passons maintenant
la platine dveloppe
base sont dfinisla partie droite du
lintention de cette ralisation.
schma. IC1 dispose
de 8 sorties bidirectionnelles (P0 P7).
R10
C3
K5
Chacune de ces lignes dE/S est dote
D8
dune rsistance de forage au niveau
K3
994077-1
IC2
D7
IC3
IC1
994077 - 11
D6
D5
R1
R2 C1
C2
JP3
JP2
D3
D2
K1
K2 ROTKELE )C(
Rsistances :
R1,R2 = 330
R3 R10 = 1k5
D4
JP1
R3
D1 1-770499
K4
Condensateurs :
C1 = 100 F/16 V radial
C2,C3 = 100 nF
Semi-conducteurs :
D1 D8 = LED haut rendement
IC1 = PCF8574P ou PCF8574AP
IC2 = 74HCT540
IC3 = ULN2803
994077-1
(C) ELEKTOR
Divers :
JP1 JP3 = embase autoscable
mle 1 range de 3 contacts
K1 = embase mini DIN 6 contacts
encartable
K2 K5 = bornier encartable
8 contacts au pas de 5 mm
Elektor
1/2000
65
Le PCF8574 sous
la loupe
Le PCF8574(A) est un circuit intgr CMOS pouvant tre utiliser pour doter des microcontrleurs de fonctions dE/S additionnelles au travers dun bus I2C. Ce composant intgre un
port quasi-bidirectionnel et une interface I2C. Le terme de
quasi-bidirectionnel dsigne un port combinant entre et sortie. Ce port peut servir dentre condition davoir t mis,
auparavant, au niveau haut. Le logiciel doit, partant appliquer
un 1 logique la dite sortie. Une fois que la sortie se trouve
au niveau haut elle peut tre utilise pour la prise en compte
de niveaux logiques prsents sur la ligne de port. On peut
ainsi savoir, si lon procde, laide dune instruction de lecture, la lecture de la sortie, quel niveau se trouve lentre.
Il faut, pour faire passer au niveau bas ( 0 ) un port dfini en
entre, drainer un courant externe de 100 A au moins vers
la masse.
PCF8574
INTERRUPT
LOGIC
INT 13
A0
A1
A2
SCL 14
SDA 15
LP FILTER
I/O
PORTS
I 2C-BUS
CONTROL
INPUT
FILTER
SHIFT
REGISTER
8 BIT
"1"
P0
P1
P2
P3
P4
10 P5
"0"
11 P6
8x
Figure 4. Chronodiagramme
des oprations de lecture et
dcriture en direction du
PCF8574(A).
12 P7
WRITE pulse
READ pulse
VDD 16
VSS
POWER-ON
RESET
994077 - 12
SCL
SDA
A2
A1
data to port
A0
start condition
data to port
DATA 1
DATA 2
R/W acknowledge
from slave
acknowledge
from slave
acknowledge
from slave
WRITE
TO PORT
DATA OUT
FROM PORT
DATA 1 VALID
t pv
DATA 2 VALID
t pv
994077 - 13a
SDA
start condition
A2
A1
A0
R/W
DATA 1
DATA 4
acknowledge
from slave
acknowledge
from slave
stop
condition
READ
FROM PORT
DATA
INTO PORT
DATA 2
t ph
DATA 3
DATA 4
t ps
INT
t iv
t ir
t ir
994077 - 13b
66
Elektor
1/2000
AIDES
LA
RALISATION :
PLUS DE CONNECTEURS
QUE DE CIRCUITS
INTGRS
La ralisation de ce montage sans la
moindre chausse-trappe ne devrait pas
poser de problme. Nous avons dvelopp son intention une platine
simple face dont la figure 2 donne la
srigraphie de limplantation des composants et le dessin des pistes. Llectronique se trouve au centre, entoure
des connecteurs, mini-DIN et borniers,
servant la mettre en contact avec le
monde extrieur. Les borniers vis
garantissent un contact lectrique trs
fiable. De par leur positionnement cte
L A R A L I S AT I O N
Elektor ne fait pas la vente de composants. Ceux-ci sont normalement trouver chez
un revendeur de composants. Il nous a cependant sembl ncessaire, suite de nombreuses lettres, de rsumer sur cette demi-page les informations cruciales pour la lecture et la comprhension des articles publis dans Elektor. Nous utilisons, pour l'indication des valeurs de composants, les prfixes (classiques) suivants :
a (atto) = 10-18
E (exa) = 1018
P (peta) = 1015
f (femto) = 10-15
T (tera) = 1012
p (pico) = 10-12
G (giga)= 109
n (nano) = 10-9
M (mega) = 106
(micro) = 10-6
k (kilo) = 103
m (milli) = 10-3
h (hecto) = 102
c (centi) = 10-2
da (deca) = 101
d (deci) = 10-1
Dans certains schmas et dans la liste des composants nous prfrons utiliser, contrairement aux recommandations IEC et BS, le prfixe + symbole comme caractre dlimiteur en remplacement de la virgule. 2 exemples :
3k9 = 3,9 k
4F7 = 4,7 F
Sauf mention contraire, la tolrance des rsistances est 5% et leur wattage 1/3
1/2 watt. La tension de service des condensateurs est de 50 V.
Lors de la mise en place des composants on commencera en rgle gnrale par l'implantation des composants passifs de la taille la plus faible, c'est--dire les ponts de
cblage, les rsistances et les petits condensateurs; on passera ensuite aux supports
pour circuits intgrs, aux relais, aux condensateurs de forte capacit tels que les lectrolytiques et aux connecteurs et autres embases. Les semi-conducteurs vulnrable et
les circuits intgrs fragiles seront monts en dernier.
Le soudage. On utilisera un fer souder d'une puissance de 15 30 W dot d'une
pointe fine et de la soudure me de rsine (60/40). On enfiche les connexions du
composant concern dans les orifices prvus cette intention, on les replie lgrement, on les coupe la bonne longueur et on procde leur soudure; on attend de 1
2 secondes jusqu' ce que l'alliage tain/plomb devienne liquide et vienne souder relier
la connexion au mtal de l'orifice. On peut alors enlever le fer souder. Attention viter de surchauffer le composant en particulier les circuits intgrs et les semi-conducteurs. S'il faut dsouder un composant on utilisera de prfrence un fer dessouder
pompe aspirante ou un appareil spcialement prvu cet effet.
Le dpannage. Si le circuit ne fonctionne pas correctement, il faudra comparer soigneusement les composants mis en place sur la platine avec la srigraphie de l'im-
Elektor
1/2000
cte, ces 2 borniers devront tre monts dos dos . Une solution plus lgante consiste implanter 2 borniers
de hauteurs diffrentes qui pourront
alors tre orients dans la mme direction sans interfrer lun avec lautre; ils
sont malheureusement difficiles dnicher.
Une fois que lon en a termin avec les
soudures et que lon a vrifi son montage tant au niveau des soudures qu
celui des composants et de leur positionnement, on pourra le mettre
contribution. Il reste dfinir, par le
biais des cavaliers, ladresse convenable, connecter la carte une interface convenable pour disposer dune
carte dE/S numrique oprationnelle.
De par ses dimensions, la platine
pourra tre implante dans un coffret
standard qui pourra tre cliqu sur un
rail DIN.
Est-il ncessaire de prciser que linterface a besoin, pour fonctionner, dun
rien de logiciel. En rgle gnrale, linterface I2C utilise devrait tre pilote
laide dun programme pilote (driver)
permettant lmission de donnes vers
une adresse donne ainsi que la lecture
de donnes disponibles une certaine
adresse. Cette fonction est ncessaire et
suffisante pour obtenir, avec la prsente carte, le fonctionnement souhait.
(994077)
plantation des composants et vrifier leurs caractristiques l'aide de la liste des composants. Tous les composants se trouvent-ils leur place (celle prvue sur la srigraphie)? Les polarits des composants en ayant une a-t-elle bien t respecte. N'avezvous pas fait d'erreur dans le branchement des lignes d'alimentation ? Toutes les soudures faites sont-elles saines ? N'avez-vous pas oubli de pont de cblage ? Si le
schma de la ralisation en cause comporte des valeurs de mesure, les lments
mesurs sur le circuit imprim correspondent-ils ces valeurs on peut accepter une
drive de 10% des dites valeurs.
La valeur d'une rsistance est indique l'aide d'un code de couleurs qui dfini comme
suit :
couleur
noir
marron
rouge
orange
jaune
vert
bleu
violet
gris
blanc
or
argent
rien
1er chiffre
-1
2
3
4
5
6
7
8
9
----
2me chiffre
0
1
2
3
4
5
6
7
8
9
----
facteur multiplicateur
-x101
x102
x103
x104
x105
x106
---x10-1
x10-2
--
tolrance
-1%
2%
--0,5%
----5%
10%
20%
Exemples :
marron-rouge-marron-or = 120 , 5%
jaune-violet-orange-marron = 47 k, 1%
Il arrive que nous ayons publier des corrections ventuelles concernant l'une ou
l'autre ralisation, ce que nous faisons dans les plus brefs dlais dans l'un des magazines publis ultrieurement. On notera que la rubrique le coin du lecteur contient
de temps autre des commentaires ou/et des informations additionnelles concernant des montages publis dans un numro prcdent.
67
ALIMENTATIONS
platine
spciale-transfos
pour laudio-DAC 2000 (et autres ralisations)
La mini-platine universelle
dcrite dans le prsent article met
disposition la
place requise par
une paire de petits
transformateurs
dalimentation,
2 filtres secteur et une
paire de porte-fusibles.
Elle pourra constituer
une aide pratique indniable lors de la ralisation
de nombre de montages.
Les lecteurs fidles dElektor ne seront
gure tonns de nous entendre affirmer que de moins en moins de projets
dcrits dans ce magazine comportent
un transformateur mont directement
sur la platine. Pourquoi donc ? Pour
des aspects de scurit tout dabord.
Travailler avec la tension du secteur
demande la prise de certaines prcautions et un montage non soign peut se
traduire par la prsence, des endroits
o on ne lattend pas, de la tension du
secteur. Ceci explique que nous utilisions, autant que faire se peut, des
adaptateurs secteurs autonomes.
Mme si la tension requise ne peut pas
tre fournie par un bloc secteur standard, nous prfrons, si possible, ne
pas monter le transformateur sur la
platine du montage concern. Nous
avons 2 raisons pour ce choix. La premire est un cot sensiblement plus
important de la platine, vu laugmentation de la taille de cette dernire que
cette approche implique, dautant plus
que nombre dentre nos lecteurs prfrent rsoudre eux-mmes le problme
du transformateur. La seconde raison
est quil est toujours souhaitable de placer un transformateur dalimentation
le plus loin possible de la partie du
68
montage charge
du traitement du signal, ceci
en vue dviter tout problme de bruit
ou dinterfrences.
TRANSFORMATEURS
On se trouve alors confront au problme de fixation du transformateur. Il
se veut malheureusement que dans la
plupart des cas les transformateurs
proposs nexistent quen version
moul et partant sans la moindre
possibilit de les fixer.
Cest en vue de trouver une solution
lgante ce problme de fixation que
nous avons conu une platine spciale-transfos . Elle a, comme premire
utilisation, laudio-DAC 2000 (auquel ce
numro consacre un nouvel article),
mais nous sommes certains que cette
platine trouvera preneur pour nombre
dautres applications.
limage de nombre de ralisations
modernes, laudio-DAC 2000 requiert
2 tensions dalimentation, une tension
asymtrique de +5 V et une tension
symtrique de 12 V. Les tensions
fournir par le transformateur sont de
ce fait de 8 (voire 9) et de 15 V respectivement. En vue de rendre la platine la plus universelle possible nous
1/2000
F1
Tr1
K2
32mA T
B82721-K2401-N21
C2
L1
X2 100n
275V
K1
C1
K3
X2 100n
275V
Tr2
L2
C3
B82721-K2401-N21
* zie tekst
* see text
K4
X2 100n
275V
F2
* siehe Text
* voir texte
32mA T
ROTKELE )C(
32mA/T
*
000001 - 11
TR1
1-100000
H1
C2
K2
H2
~
0
(000001)
~
C1
L1
K1
~
F2
OUT2
H5
K3
L2
K4
~
~
000001-1
Selfs :
L1,L2 = 2 x 27 mH/0,4 A tel que, par
exemple, Siemens B82721-K2401-N21
Divers :
K1 = bornier encartable 2 contacts
au pas de 7,5 mm
K2 = bornier encartable 3 contacts
au pas de 5 mm
K3,K4 = bornier encartable
2 contacts au pas de 5 mm
F1,F2 = fusible 32 mAT, avec portefusible encartable
Tr1 = transformateur moul 2 x
15 V/4 VA, tel que, par exemple,
Block FLD4/15, Hahn BV UI 302
0165, Monacor FTR-415 *
Tr2 = transformateur moul 2 x 8 (ou
9)V/4 VA, tel que, par exemple, Block
FLD4/8 ou FLD4/9, Hahn BV UI 302
0161, Monacor FTR-49
*) Les sries de Hahn et Monacor ne sont
pas protges contre les courts-circuits,
ceux de Block le sont elles.
(C) ELEKTOR
000001-1
Elektor
1/2000
69
H3
Condensateurs :
C1 C3 = 100 nF/275 VAC X2, au
pas de 15 mm
H4
32mA/T
TR2
OUT3
F1
OUT1
Elektor
DF1704
DF1704
Circuits intgrs
Fonction spciale, Audio
Circuits intgrs
Fonction spciale, Audio
INFOCARTE
1/2000
DF1704
Filtre dinterpolation numrique Soundplus
Stro, 24 bits, 96 kHz octuple surchantillonnage
1/2000
Dnomination
Numro de broche
RESV
13
LRIP
12
Polarit LRCIN
LRIP = H: LRCIN= H = Canal Gauche, LRCIN= L = Canal Droit
LRIP = L: LRCIN= L = Canal Gauche, LRCIN = H = Canal Droit
CKO
11
MUTE
15
I2S
IW0
IW1
3
4
5
Fabricant
Burr-Brown, P.O.
Box 11400, Tucson, AZ 85734,
U.S.A.
Tl. (520) 746-1111, Fax (520) 889-1510.
Internet: http://www.burr-brown.com/
Description
Caractristiques techniques :
FILTRE NUMRIQUE DESTIN A ETRE ASSOCI AU
PCM1704, UN AUDIO DAC 24 BITS
FILTRE A HAUTES-PERFORMANCES
Attnuation de la bande darrt : 115 dB
Ondulation dans la bande passante : 0,000 05 dB
INTERFACE AUDIO :
Formats dentre des donnes : Standard,
justifi gauche et I2S
Longueur du mot dentre : 16, 20, ou 24 bits
Longueur du mot de sortie : 16, 18, 20, ou 24 bits
Frquence dchantillonnage : 32 96 kHz
HORLOGE-SYSTEME :
256 fS , 384 fS, 512 fS , 768 fS
OSCILLATEUR A QUARTZ EMBARQU
FONCTIONS PROGRAMMABLES :
Modes de commande par matriel et par logiciel
Rponse de filtrage raide ou volution lente
Silencieux progressif
Dsaccentuation numrique
Attnuation numrique Gauche/Droite indpendante
NE REQUIERT QUUNE TENSION DALIMENTATION
DE +5V
BOITIER MINIATURE SSOP A 28 BROCHES
27
OW0
OW1
19
20
71
OW1
L
L
H
H
17
18
DEM
16
FORMAT DE SORTIE
16 bits, MSB en premier
18 bits, MSB en premier
20 bits, MSB en premier
24 bits, MSB en premier
SF0
L
H
L
H
TAUX D'CHANTILLONNAGE
44,1 kHz
Rserv, non utilis
48 kHz
32 kHz
1/2000
Brochage.
Exemple dapplication
Audio-DAC 2000, Elektor n 257, 258 et 259,
novembre 1999 janvier 2000.
Description
Le DF1704 est un filtre dinterpolation numrique stro hautes-performances avec octuple surchantillonnage conu pour les applications grand public et
SF0
SF1
OW0
L
H
L
H
INFOCARTE
DF1704
Circuits intgrs
Fonction spciale, Audio
Circuits intgrs
Fonction spciale, Audio
FONCTION
Slection du format
des donnes dentre
LOGICIEL
(MODE = H)
O
Slection de la longueur
du mot dentre
Slection de la longueur
du mot de sortie
O
O
O
Broche
Nom
E/S
DIN
IN
Description
Entre de donnes audio srielles (3)
BCKIN
IN
I2S
IN
IW0
IN
IW1
IN
XTI
IN
XTO
VSS
CLKO
Masse numrique
10
MODE
IN
11
MD/CKO
IN
Slection de la polarit de
LRCIN
Gauche/Droite = H/L
Dsaccentuation numrique
OFF
OFF
Attnuation numrique
12
MC/LRIP
IN
Taux dchantillonnage de la
fonction de dsaccentuation
44,1 kHz
13
ML/RESV
IN
Slection de lvolution
du filtre
14
RST
IN
Slection de la
frquence de sortie
15
MUTE
IN
16
DEM
IN
17
SF0
IN
18
SF1
IN
19
OW0
IN
20
OW1
IN
21
NC
Non connect
22
VDD
23
DOR
24
DOL
25
WCKO
26
BCKO
27
SRO
IN
28
LRCIN
IN
Entre dhorloge G/D (fS) pour les donnes audio srielles (3)
Silencieux logiciel
NOTES: (1) Broches 10 15; entre B trigger de Schmitt avec rsistance de forage au niveau haut.
(2) Broches 3 5, 16 B 20, 27; entre trigger de Schmitt avec rsistance de forage au niveau bas.
(3) Broches 1, 2, 28; entre trigger de Schmitt
(4) Broches 3 5, 15 20, 27; ces broches sont invalides lorsque la broche MODE (10)
1/2000
Brochage
Le tableau ci-dessus rsume les fonctions programmables par lutilisateur dans chacun des modes de
fonctionnement.
MATRIEL
(MODE = L)
INFOCARTE
Elektor
Fonctions programmables
Le DF1704 possde un certain nombre de fonctions
programmables, dont la plupart sont accessibles soit
par matriel (Hard) soit par logiciel (Soft).
1/2000
72
INFOCARTE
1/2000
DF1704
INFORMATIONS
le blindage
= un impratif croissant
comment obtenir de bons rsultats
laide de techniques simples
En lectro-technique, le blindage est le moyen permettant dempcher un
rayonnement lectromagntique
gnant de parasiter dautres
appareils. Cet
article a pour but
de montrer comment il est possible, avec des
moyens simples, de raliser
un blindage efficace autour de
circuits lectroniques.
LA SOURCE
La circulation dun courant alternatif
dans un conducteur ou la prsence
74
990077 - 11
1/2000
UN
BOTIER ADQUAT
Il ny a, pour les signaux de frquence
suprieure 10 MHz, quun seul
remde : empaqueter la source de
signal. Il suffit, dans le cas de signaux
de 40 MHz ou plus, dune fine couche
mtallique conductrice pour raliser un
blindage suffisant. On pourra utiliser
un botier recouvert lintrieur dune
couche conductrice ou dune fine
paisseur de mtal. Un botier hermtique en aluminium convient parfaitement. Autre option, utiliser lun ou
BLINDAGE
PAR TLE
On obtient le meilleur rsultat si lon
place le blindage le plus prs possible
de la source. On disposera, si cela est
possible, un enclt mtallique autour
de la platine ou, sur la platine, des
composants source de rayonnement
(tant sur le dessous que le dessus de la
platine). Il est important de penser, lors
de la conception du blindage, se laisser, pour plus tard, une possibilit de
modification ou de dpannage. On
trouve, dans le commerce des enclos
couvercle cliquant qui apportent une
solution ce problme. Un circuit trs
compact pourra y trouver place en
entier, pour des projets plus grands on
sen servira pour le blindage dune par-
990077 - 12
Elektor
1/2000
75
X-2 - 1/2000
Elektor EXTRA
PC-PLUS
Utilisation du compilateur
Utiliser un diteur de textes (comme
Notepad, WordPad ou lditeur de
MPLAB) pour crer le programme source de haut niveau ; sauvegarder le
fichier texte avec une extension .psf
(PIC Source File). Sassurer que le
fichier sauvegard est en mode texte
seulement et ne contient aucun texte
enchss renfermant de linformation.
linverse dun programme assembleur qui ncessite un colonnage trs
strict (tiquettes, mnmoniques, oprateurs, commentaires), un programme de haut niveau utilise librement
lespace pour indenter le programme.
Ces espacements nont aucune signification pour lexcution du programme et sont ignors par le compilateur.
Mais leur utilisation facilite la lecture et
la mise au point du programme.
Figure 1. La fentre du compilateur. Notez que les fonction des broches du PIC sont
visibles dans leur ensemble.
Utilisation de linterface
Le compilateur PIC Windows est trs
facile utiliser et, mis part le chargement et la sauvegarde des fichiers,
il socupe de tout !
Comme le montre la figure 1, la barre
des tches comporte un certain
nombre dicnes.
load (chargement) appuyez sur le
bouton load et une bote de dialogue rpertoire affiche tous les fichier
source (extensions .psf) du rpertoire,
slectionnez et chargez le fichier source adquat. Par dfaut, le compilateur va souvrir dans le rpertoire le
PC-PLUS
Elektor EXTRA
X-3 - 1/2000
5V
14
D1
R1
680
MCLR
RB0
RB1
18
17
1
2
3
RA0
RB2
IC1
RA1
RA2
RB3
PIC16C84
RB4
RA3
RB5
RA4
RB6
RB7
OSC1
6
7
8
vert
D2
R2
680
9
10
11
12
jaune
D3
R3
680
rouge
13
OSC2
16 X1
C1
15
C2
4MHz
33p
Optimisation
du code compil
33p
000012 - 13
X-4 - 1/2000
Elektor EXTRA
; yellow = 0
; turn yellow off
BCF PORTB,YELLOW
; red = 1
; turn on red
BSF PORTB,RED
Interruptions PIC
Lorsque se produit une interruption, le
compteur du programme est charg
avec ladresse de lemplacement 4,
qui contient le code sauvegardant
ltat du programme et appelle la
procdure de gestion de linterruption.
Une fois linterruption traite ( interrupt ), le programme PIC excute une
instruction retfie (return from interrupt = retour aprs interruption). Le
programme source na pas besoin de
rtablir lautorisation dinterruption,
lordre est dj donn automatiquement par linstruction retfie . La routine de gestion de linterruption doit
tre appele interrupt .
Lutilisation des interruptions rend un
programme PIC plus efficace, lautre
solution ayant t dinterroger en permanence les balises pour contrler si
un vnement particulier ne sest pas
produit.
Il existe quatre sources dinterruptions
que le gestionnaire dinterruptions du
PIC 16C84 doit traiter :
1. interruption externe sur la broche
RB0 ;
2. interruption lors de changement sur
les broches RB4-RB7 ;
3. dbordement du minuteur RTCC ;
4. affect la fin de lcriture dans
lEEPROM.
Linterruption fin de lcriture dans
lEEPROM est prise en compte par la
fonction crire dans lEEPROM
(writeEEPROM).
Pour valider les interruptions, utilisez la
commande irq_enable = true . La
source individuelle dinterruptions doit
tre slectionne avant de lancer
cette commande.
Pour invalider toutes les interruptions,
utilisez la commande irq_enable =
false . Cette commande agit globalement par lintermdiaire de la balise
GIE (Global Interrupt Enable = valider
globalement les interruptions), indpendamment de linterruption individuelle utilise.
La procdure de gestion des interruptions a besoin de quelques octets de
stockage intermdiaire, et la routine
de gestion de linterruption doit avoir
sa zone de stockage variable propre
car elle ne peut partager la mmoire
avec le reste du programme.
Comme linterruption peut arriver nimporte quand, il se peut quavec larithmtique 16 bits, elle se produise en
plein milieu dune procdure arithm-
PC-PLUS
Exemples de programmes
Traffic Lights 1
Written by Roger Thomas.
procedure(main)
alias(RB3,red)
alias(RB2,yellow)
alias(RB1,green)
output(red)
output(yellow)
output(green)
clr(red)
clr(yellow)
clr(green)
clr(x)
clr(y)
while true
inc(x)
;
if x = 1500 then
begin
inc(y)
;
clr(x)
;
end
else
begin
if (y >= 0) AND
begin
red = 1
;
yellow = 0 ;
green = 0
;
end
x = x + 1
y = y + 1
x = 0
if y = 131 then
begin
clr(x)
clr(y)
end
end
loop
PC-PLUS
Elektor EXTRA
X-5 - 1/2000
;
;
;
;
;
;
;
;
;
;
RA2
RA3
RA4
mclr
Vss
RB0
GREEN
YELLOW
RED
1
2
3
4
5
6
7
8
9
|
|
|
|
|
|
|
|
|
16C84
i
i
i
i
i
i
i
i
p
p
i
i
o
i
o
i
o
i
|
|
|
|
|
|
|
|
|
18
17
16
15
14
13
12
11
10
RA1
RA0
osc2
osc1
Vdd
RB7
RB6
RB5
RB4
_PCL
EQU H02
_STATUS EQU H03
_C EQU H00
_Z EQU H02
_RP0
EQU H05
PORTB EQU H06
_PCLATH EQU H0A
_INTCON EQU H0B
IRQ_ENABLE
EQU H07
_STACK0 EQU H0C
_STACK1 EQU H0D
_STACK2 EQU H0E
_STACK3 EQU H0F
_STACK4 EQU H10
_STACK5 EQU H11
_STACK6 EQU H12
_STACK7 EQU H13
_STACK8 EQU H14
_STACK9 EQU H15
X EQU H16
XH EQU H17
Y EQU H18
RED
EQU H03
YELLOW EQU H02
GREEN EQU H01
ORG 0
goto MAIN
;
;
Traffic Lights 1
Written by Roger Thomas.
list p=16C84
__config H3FF9
; var x : word
; var y : byte
MAIN
; alias(RB3,red)
; alias(RB2,yellow)
; alias(RB1,green)
; output(red)
BSF _STATUS,_RP0
BCF PORTB,RED
; output(yellow)
put
BCF PORTB,YELLOW
; output(green)
BCF PORTB,GREEN
; clr(red)
BCF _STATUS,_RP0
BCF PORTB,RED
; clr(yellow)
BCF PORTB,YELLOW
; clr(green)
BCF PORTB,GREEN
; clr(x)
CLRF X
CLRF XH
; clr(y)
CLRF Y
; while true
_WHILE0
;
inc(x)
INCF X,F
X-6 - 1/2000
;
;
;
;
to red
to yellow
to green
pin output
; initialise = 0
; initialise = 0
; x = x + 1
Elektor EXTRA
BTFSC
_STATUS,_Z
INCF XH,F
;
if x = 1500 then
_IF1
MOVF X,W
MOVWF
_STACK0
MOVF XH,W
MOVWF
_STACK1
MOVLW
HFF
MOVWF
_STACK2
MOVLW
HDC
SUBWF
_STACK0,F
BTFSS
_STATUS,_Z
CLRF _STACK2
MOVLW
H05
SUBWF
_STACK1,F
BTFSS
_STATUS,_Z
CLRF _STACK2
MOVF _STACK2,W
MOVWF
_STACK0
MOVWF
_STACK1
BTFSC
_STATUS,_Z
GOTO _ELSE1
;
begin
;
inc(y)
; y = y + 1
INCF Y,F
;
clr(x)
; x = 0
CLRF X
CLRF XH
;
end
;
else
GOTO _END1
_ELSE1
;
begin
;
if (y >= 0) AND (y<= 49) then
_IF2
MOVF Y,W
MOVWF
_STACK0
MOVLW
H00
SUBWF
_STACK0,W
CLRW
BTFSC
_STATUS,_C
ADDLW
HFF
MOVWF
_STACK4
MOVF Y,W
SUBLW
H31
CLRW
BTFSC
_STATUS,_C
ADDLW
HFF
ANDWF
_STACK4,W
BTFSC
_STATUS,_Z
GOTO _ELSE2
;
begin
;
red = 1
; turn on red
BSF PORTB,RED
;
yellow = 0 ; turn off yellow
BCF PORTB,YELLOW
;
green = 0
; turn off green
BCF PORTB,GREEN
;
end
;
if (y >= 50) AND (y<= 75) then
_ELSE2
_IF3
MOVF Y,W
MOVWF
_STACK0
MOVLW
H32
SUBWF
_STACK0,W
CLRW
BTFSC
_STATUS,_C
ADDLW
HFF
MOVWF
_STACK4
MOVF Y,W
SUBLW
H4B
CLRW
BTFSC
_STATUS,_C
ADDLW
HFF
ANDWF
_STACK4,W
BTFSC
_STATUS,_Z
GOTO _ELSE3
;
begin
PC-PLUS
red = 1
; turn on red
PORTB,RED
;
yellow = 1 ; turn on yellow
BSF PORTB,YELLOW
;
green = 0
; turn off green
BCF PORTB,GREEN
;
end
BSF
;
if (y >= 76) AND (y<= 110) then
_ELSE3
_IF4
MOVF Y,W
MOVWF
_STACK0
MOVLW
H4C
SUBWF
_STACK0,W
CLRW
BTFSC
_STATUS,_C
ADDLW
HFF
MOVWF
_STACK4
MOVF Y,W
SUBLW
H6E
CLRW
BTFSC
_STATUS,_C
ADDLW
HFF
ANDWF
_STACK4,W
BTFSC
_STATUS,_Z
GOTO _ELSE4
;
begin
;
red = 0
; turn off red
BCF PORTB,RED
;
yellow = 0 ; turn off yellow
BCF PORTB,YELLOW
;
green = 1
; turn on green
BSF PORTB,GREEN
;
end
;
if (y >= 111) AND (y<= 130) then
_ELSE4
_IF5
MOVF Y,W
MOVWF
_STACK0
MOVLW
H6F
SUBWF
_STACK0,W
CLRW
BTFSC
_STATUS,_C
;
;
;
;
;
ADDLW
HFF
MOVWF
_STACK4
MOVF Y,W
SUBLW
H82
CLRW
BTFSC
_STATUS,_C
ADDLW
HFF
ANDWF
_STACK4,W
BTFSC
_STATUS,_Z
GOTO _ELSE5
begin
red = 0
; turn off red
BCF PORTB,RED
yellow = 1 ; turn on yellow
BSF PORTB,YELLOW
green = 0
; turn off green
BCF PORTB,GREEN
end
;
if y = 131 then
_ELSE5
_IF6
MOVF Y,W
SUBLW
H83
MOVLW
H00
BTFSC
_STATUS,_Z
ADDLW
HFF
ANDLW
HFF
BTFSC
_STATUS,_Z
GOTO _ELSE6
;
begin
;
clr(x)
CLRF X
CLRF XH
;
clr(y)
CLRF Y
;
end
;
end
_ELSE6
_END1
; loop
GOTO _WHILE0
END
Toutes les tiquettes variables engendres par le compilateur sont prcdes dun signe soulign pour les
diffrencier des variables utilises
dans le programme source.
La mthode la plus simple pour mettre
en oeuvre une squence de feux de
signalisation serait dutiliser la commande wait (attente) aprs avoir
mis les diodes LED appropries en ou
hors service.
green = 0
yellow = 0
red = 1
wait(3000)
;
;
;
;
turn
turn
turn
wait
green off
yellow off
on red
for 3 seconds
Description de la syntaxe et
des commandes
Une description complte de toutes
les commandes disponibles et de la
syntaxe demande par le compilateur
existe dans les 56 pages du fichier de
documentation. Ce fichier, sous la
forme dun document MS Word, se
trouve dans la disquette numro EPS996033-1 qui peut tre commande
auprs des adresses habituelles. La
disquette contient aussi les fichiers des
codes source (.psf) des exemples et,
bien sr, le compilateur lui-mme
(Compiler84.EXE). Le fichier readme.txt (lisezmoi.txt) dcrit linstallation
trs simple.
(000012)
Texte : Jan Buiting
PC-PLUS
Elektor EXTRA
X-7 - 1/2000
exprimentateur LPT
porte ouverte sur le port parallle du PC
La platine, dont on retrouve le schma
en figure 1, se branche, par le biais
dun morceau de cble en nappe
25 conducteurs, sur lembase sub D
25 contacts qui constitue la sortie de
linterface parallle dun PC; elle comporte un connecteur de transition (cf.
les informations donnes dans le paragraphe La construction ). Llectronique se rsume en fait une triplette
de sous-ensembles un pour chacun
des registres savoir les registres de
donnes (DATA), dtat (STATUS) et de
commande (CONTROL), requis par un
port dimprimante parallle.
R5
Registre de donnes
Les 8 sorties du registre de donnes
attaquent 8 LED (D5 D12) au travers
de rsistances de limitation de courant
(R5 R12). Les LED utilises sont du type
5 x 2 mm et partant se blotissent merveille dans une grille classique au pas
de 2,54 mm (1/10).
Registre dtat
Le registre dtat comporte 5 entres
que lon simule par le biais dun quin-
X-8 - 1/2000
Elektor EXTRA
R6
D0
D6
D1
D7
D2
D8
D3
14
13
D9
D4
12
11
10
D10
D5
D11
D6
D12
D7
1k8
R9
1k8
R10
1k8
R11
R13
15
R14
17
16
1k8
R12
10k
18
1k8
R8
R15
19
10k
21
20
R18
22
1k8
R7
10k
23
R17
25
24
10k
26
10k
R4
1k8
R3
1k8
R2
1k8
1k8
R1
1k8
D2
CONTROL
D3
D4
ERROR
SELECT
PAPER OUT
BUSY
SELECT-IN
INITIALISE
AUTOFEED
STROBE
D1
ACKNOWLEDGE
DATA REGISTER
Les registres
Commenons par une courte description des registres. Le registre de donnes est un verrou de sortie 8 bits servant normalement au transfert des
donnes vers limprimante. Le registre
dtat comporte 5 entres lecture
seule; lordinateur sen sert pour monitorer ltat de limprimante au niveau
des messages derreur, etc. Le registre
de commande dispose lui de 4 sorties;
il sert normalement mettre en oeuvre
les fonctionnalits de limprimante.
D5
1k8
K1
10 9
S1
REGISTER
STATUS REGISTER
002002 - 11
D6
Acknowledge
D5
Paper out
D4
Select
Registre de commande
Le registre de commande possde une
D3
Error
D2
Non utilis
D1
Non utilis
D0
Non utilis
PC-PLUS
R1
R2
R3
R4
D2
D3
D4
bit
bit
bit
bit
bit
bit
bit
bit
D5
D6
D7
D8
D9
D10
D11
D12
R13
R14
R15
R16
R17
0
1
2
3
4
5
6
7
1-200200
002002-1
ROTKELE )C(
(C) ELEKTOR
error
select
paper out
ack
busy
SW1
J1
LK1
LK
R5
R6
R7
R8
R9
R10
R11
R12
strobe
autofeed
initialise
select in
D1
La construction
Les fichiers de dessin (format Ultiboard)
du circuit imprim dessin par lauteur
pour le prsent projet ont t mis sur
une disquette (ESS 006002-1) disponible auprs des adresses habituelles.
Limplantation des composants sur la
platine reprsent en figure 2 est la
porte de Monsieur-Tout-Le Monde. On
implantera la totalit des composants,
exception faite de J1. Attention ne
pas oublier le pont de cblage LK1. On
pourra ensuite doter le cble en
nappe du connecteur J2, aprs avoir
enlev le conducteur en excdent, il
nest pas possible en effet, sans forcer,
de glisser 26 conducteurs dans un
connecteur qui est prvu de nen comporter que 25 ! Le conducteur color,
qui identifie la broche 1, doit correspondre la broche 1 de J2.
Cest maintenant que les choses
deviennent intressantes. Placez la platine devant vous de manire ce que
J1 soit le plus loign possible de vous.
Disposez le cble plat sur le dessus du
montage de sorte que lextrmit du
cble multi-brin se trouve au-dessus de
J1. Lorientation de ce cble doit tre
telle que le conducteur repre soit sur
la droite. Pas de PB pour le moment ?
Glissez le cble en nappe dans linter-
D3
Select In
D2
Initialise
D1
Autofeed
D0
Strobe
Le logiciel
Comme nous le disions plus haut, le
logiciel requis par ce projet est disponible sur disquette. Il a t crit en C et
tourne sous DOS. Le programme luimme (un fichier excutable) se prsente sous la forme dun menu. Le programme commence par interroger le
BIOS de lordinateur pour tablir
ladresse du port imprimante avant de
lafficher lcran. Dans ltat actuel
des choses, le programme ne sintresse quau premier port LPT1. Le menu
principal offre 3 options, une pour chacun des registres et une voie de sortie.
La premire option concerne le registre
dtat. Dans cette option, la ligne
SELECT IN est automatiquement active, permettant ainsi la lecture des
positions des contacts de linterrupteur.
Lcran affiche alors la valeur hexadcimale des contacts jusqu une nouvelle action sur une touche du clavier.
La seconde option est celle du registre
de donnes. Lors de sa slection, on
voit apparatre un second sous-menu
affichant la valeur actuelle du registre
de donnes. Le sous-menu permet
lutilisateur de dcaler les bits vers la
R1 R12 = 1k8/0W25
R13 R17 = 10 k/0W25
D1 D4 = LED 5 x 2 mm verte haut
rendement
D5 D12 = LED 5 x 2 mm rouge haut
rendement
SW1 = quintuple interrupteur DIL
J1 = connecteur de transisition
26 contacts barette anti-arrachement
J2 = connecteur Sub D mle
25 contacts
morceau de cble plat 26 conducteurs
coup la longueur requise et ramen
25 conducteurs lune des extrmits
PC-PLUS
Elektor EXTRA
X-9 - 1/2000
Lchange de donnes entre PC et imprimantes, numriseurs, tlcopieurs et modems, la communication entre ordinateur et tlphone,
tous deux portatifs : le cblage embrouill des appareils prcdant
linstallation laborieuse des pilotes est incontournable, mme de nos
jours. Il serait merveilleux que tous les appareils de traitement des
donnes utiliss aujourdhui puissent converser de faon autonome.
Plus de cblage, plus dinstallation. Cest enfin possible : avec la
communication des donnes courte distance, Bluetooth rend tout
cblage superflu et ouvre la voie de nouvelles applications.
par lingnieur diplm Gregor Kleine
Bluetooth
communication de
Frquences
X-10 - 1/2000
Elektor EXTRA
PC-PLUS
Piconet A
Piconet B
2,480 GHz
2,402 GHz
625 s
992041 - 11
Largeur de bande
Co-utilisateurs/remarques
0,326 MHz
0,040 MHz
1,74 MHz
2,00 MHz
83,00 MHz
1 Remarque : Autres bandes ISM 5,8 GHz, 24,250 GHz et 122,5 GHz
Piconet A
Slave
A2
Slave
A1
Master
A
Piconet B
Slave
B2
Slave
A3&B1
Slave
A5
Slave
A4
&
Master
C
Master
B
Slave
B4&C1
Slave
B3
Slave
C3
Slave
C2
Piconet C
992041 - 12
PC-PLUS
Elektor EXTRA
X-11 - 1/2000
a) Packet format
Access
Code
Packet
Header
Payload
72 bit
54 bit
fi
b) Multi-Slot
packets
A H
fi +1
P
fi +2
A H
fi +3
fi +4
A H
fi +5
625 s
fi
A H
fi +3
P
fi +4
A H
fi +5
3x 625 s
fi
A H
fi +5
P
A H
5x 625 s
t
992041 - 13
Modulation et protection
contre les erreurs
La porteuse sautante bande troite
de chaque canal est module par
dplacement de frquence gaussien
(GFSK = Gaussian Frequency Shift
Keying) et sa largeur de bande est
220 kHz (3 dB) pour une excursion de
Dbit symtrique
Dbit asymtrique
sans
2 x 172,8 kilobits/s
sans
2 x 384,0 kilobits/s
sans
2 x 432,6 kilobits/s
avec
2 x 108,8 kilobits/s
avec
2 x 256,0 kilobits/s
avec
2 x 286,7 kilobits/s
X-12 - 1/2000
Intervalles
Elektor EXTRA
PC-PLUS
Les modules de Bluetooth qui font partie dun picorseau sont en mode dattente et cherchent la prsence de
transmissions proximit toutes les
1,28 secondes. Il leur faut vrifier
Standby
typ
. 2s
h
tac
Not connected
De
Inquiry
6s
Page
Known Address
typ
. 0.
Unknown Address
Connecting
Transmit
Data
Connected
Active
ms
typ
.2
ms
.2
tats du picorseau
Status:
typ
Hold
Park
Sniff
Releases
Mac Address
Keeps
Mac Address
Low
Power
992041 - 14
Applications intressantes
de Bluetooth
Bluetooth permet en premier lieu de
remplacer le cblage entre des ordinateurs, portatifs ou non, et les imprimantes, numriseurs (scanner) et
rseaux locaux LAN (Local Area Network) par une transmission sans fil. Le
clavier, la souris et la manette de jeu
ou la boule de commande ne doivent
donc plus ncessairement se trouver
dans la ligne visuelle de lordinateur.
Lordinateur et le tlphone portatif
ouvrent la voie dautres applications.
Il fallait jusquici penser envoyer le
courrier lectronique crit sur un ordinateur portatif bord dun avion aprs
PC-PLUS
Elektor EXTRA
X-13 - 1/2000
Loop
Filter
VCO
Tank
2.4-GHz
Antenna
RX
Balun
PD
RF IC
Antenna
Filter
TX
Balun
PA
2.4-GHz
Antenna
Baseband
Radio
Link
Manager
Link
Controller
RF Section
Host
CPU
992041 - 16
X-14 - 1/2000
Elektor EXTRA
Premiers composants
Bluetooth
En collaboration avec Symbionics,
Ericsson a ralis un kit de dveloppement Bluetooth contenant une abondante documentation et un logiciel
dassistance la conception. Le processeur de la bande de base est fourni
par VLSI et provient de la famille Bluetooth VWS26000 [6]. Le module radio
(figure 5) est un hybride conu par la
firme Ericsson elle-mme (PBA 313) [4].
Philips Semiconductors offre aussi un kit
pour ralisateurs Bluetooth : le circuit
intgr spcial de la bande de base
est aussi un ASIC (Application Specific
Integrated Circuit) de VLSI. Le module
radio contient lmetteur-rcepteur
Bluetooth UAA-3558. Le kit comporte
deux cartes-filles Bluetooth identiques
permettant dtablir une premire liaison de communication. La figure 6
illustre la structure typique dun module
Bluetooth. Lentreprise Cambridge Silicon Radio [7] se consacre aux composants Bluetooth sur une seule puce
avec module radio intgr. Les ASIC
BlueCore01, BlueCore02 et BlueCore03 acquerront par tapes un
nombre croissant de fonctions dun
modem Bluetooth. Un module complet
devrait avoir la taille dun timbre-poste.
Pour complter le tableau, de nombreux fabricants de semi-conducteurs
tels que Temic, Philips et Motorola
offrent des C.I. metteurs-rcepteurs
2,4 GHz spcialement conus pour les
modules radio de Bluetooth. Tous les
modules Bluetooth doivent tre soumis
lhomologation du groupe SIG Bluetooth pour en assurer la compatibilit.
PC-PLUS
Les concurrents
de Bluetooth
Le concept de liaison hertzienne
courte distance illustr par Bluetooth a
suscit des concurrents. On se sert dj
depuis un certain temps de trajets parcourus par des infra-rouges selon le
procd IrDA (Infrared Data Association) pour transmettre des donnes
entre un PC et ses priphriques. Mais
les infrarouges ne peuvent fonctionner
qu vue et leur porte nest au mieux
que de quelques mtres pour un angle
douverture ne dpassant pas 60o.
Bluetooth peut littralement traverser les
murs. Pour une comparaison entre IrDA
et Bluetooth, voir [8]. Aux USA, plusieurs
entreprises ont t cres pour tablir
HomeRF [9], une norme similaire Bluetooth. Le protocole daccs sans fil partag (Shared Wireless Access Protocol,
autrement dit SWAP) labor par le
groupe de travail HRFWG (HomeRF
Working Group) permet dutiliser
127 appareils par rseau, porte
Bibliographie et liens
[1]
www.bluetooth.com
[2]
www.bluetooth.net
[3]
www.zdnet.co.uk/news/
[4]
http://bluetooth.ericsson.se/
[5]
www.intel.com/mobile/bluetooth/
specials/1999/04/bluetooth/
default.asp
[6]
www.vlsi.com
[7]
www.cambridgesiliconradio.com/
[8]
[9]
HomeRF : www.homerf.org
Perspectives davenir
Bluetooth semble en voie de simposer
rapidement et partout comme systme
de rseau local sans fil. Outre les applications denvergure de transmission des
donnes, il sera certainement utilis
dans llectronique de divertissement et
dans les vhicules automobiles. Maintenant que Ericsson et Nokia ont prsent des projets pilotes, on peut sattendre voir apparatre cette anne
de nombreuses applications de Bluetooth. Le salon CeBIT 2000 devrait nous
en apprendre davantage. Les premiers
systmes Bluetooth feront prochainement leur apparition sur le march.
(992041)
PC-PLUS
Elektor EXTRA
X-15 - 1/2000