Vous êtes sur la page 1sur 7

MICROPROCESSEURS

carte dvaluation
pour 80C166
2me partie : ralisation et mise en oeuvre
Le circuit de la carte dvaluation pour 80C166
se distingue, par rapport aux systmes 8 bits
prsents jusqu prsent dans Elektor, par le
nombre de ses lignes de bus.

projet : Karl Heinz Domnick

Comme dans le cas de nimporte quel


microcontrleur, la carte dvaluation
pour 80C166 dispose elle aussi de bus
de donnes, dadresse et de commande. Le fait que les bus de donnes
du 80C166 comportent 16 lignes oblige
utiliser des paires de circuits intgrs
priphriques tels que verrous (latch)
et mmoires. Le 80C166 dispose dun

Tableau 1. Implantation minimale de composants sur la carte C166


R7
R9
R23
R24
C1,C2
C9,C10,C16,C17
C22 C25
T1
IC1
IC4
IC8
IC9/IC10
IC11/IC12
IC13/IC14
Q1
JP1,JP2,JP5

rsistance 1 k
rsistance 10 k
rsistance 4,7 k
rsistance 10 k
10 mF tantale
100 nF
condensateur lectrochimique
(tantale) 10 F
Transistor BS170
MAX232
GAL 16V8, 15 12 ns
SAB 80C166M
74HC573
62256
27C256
40 MHz

pull-up pour signal S0


pull-up pour signal WR
pull-up pour signal RSTINt
pull-up pour signal NMI
dcouplage
dcouplage
SIO 2
pour signal S0 (Chip Select 0 pour la RAM)
SIO 2
programme
microcontrleur
verrou dadresse
RAM statique
EPROM avec programme (Moniteur)
oscillateur ou quartz avec C18/C19

Tableau 2. Contenu modifi du fichier de configurations


;*******************************************************************
;* configuration-file for EVA165/166/167-monitor MON16X

(c)ertec GmbH *

;*******************************************************************
bios=0

; use direct port i/o

;baud=9600

; baudrate 9600

baud=38400

; baudrate 38400

com=2

; use COM2

;boot=boot.166

; loader for monitor MON166

;monitor=mon.166

; monitor MON166

;*******************************************************************
Elektor

4/99

total de 6 ports (P0 P5), dont le


port P5 est occup par le convertisseur A/N 8 bits. Lesdites lignes sont
protges par des combinaisons
diodes zener (R10 R19, R21, R22 et
D2 D13) lencontre de tensions
dentre trop leves. Le port P0 est
multiplex en bus dadresses et de
donnes. Le bus dadresses proprement dit commence en aval des 2 verrous, IC9 et IC10. Il est possible
dadresser un espace mmoire de
64 Koctets. Le bus dadresses sert dinterface entre les circuits de mmoire
IC11 IC18 et la GAL, IC4, le circuit
dhorloge en temps rel (RTC), IC5, et
le dcodeur, IC6. On dispose en outre
dune embase dextension, K2, pour
ses propres applications.
Les entres et sorties numriques sont
transfres, au travers des tampons
IC19 IC22, vers lembase de
connexion K1. Les adaptateurs RS-232,
IC1 et IC2 assurent ladaptation de
niveau requise des lignes srielles. Les
rsistances R1 R4 sont optionnelles
pour des applications spcifiques des
SIO. IC7 galement est optionnel et servira le cas chant des applications
spciales faisant appel au signal Ready
du contrleur et une extension du
signal de sortie du port P1.13.
Le dcodage des signaux de slection
de circuit (chip select, CS\) se fait
lintrieur de la GAL. Il est possible
dans ces conditions de modifier la cartographie mmoire. La prsence des
transistors FET T1 et T2, des BS 170,
est indispensable pour viter, aprs la
coupure de lalimentation, la circulation, par le biais des rsistances de forage au niveau haut (pull up), dun
courant au cas o lon aurait prvu un
tamponnage par pile de la RAM.
Il faut, aprs un accs pour criture
aux EEPROM, attendre entre 2 et
4 ms avant un nouvel accs. Sur certains types dEEPROM la broche 1 se
trouve relie une information dtat
Ready/Busy.
Les
lignes
ERDY1/ERDY2 (EEPROM-Ready)
permettent dinterroger, par logiciel,

53

5V
R20

5V

C4

1V34
8 VBATT

IC21

Bt1

18

IO0

31BC

17

IO1

30A

16

IO2

30BC

15

IO3

29A

14

IO4

29BC

13

IO5

28A

12

IO6

28BC

11

IO7

EN

RESET

1%
4

3V6

3V6
1

VOUT

IC3 WDI

30k1

R5

CS6

RSTIN

MAX690
PFI

JP3

JP10

JP4
5

PFO

R6
C6

11k

2
31A

VBAT

100n

CONTRLEUR
EN BOTIER MRFP

10n
1%
RESET

NMI

&

5V

19

74LS541

5V

K1
1

EBC1

11

62

20BC

12

63

19A

13

64

19BC

14

65

18A

15

66

18BC

16

67

17A

17

68

17BC

18

69
70

2A

2BC

3A

3BC

19

4BC

5A

5BC

6A

6BC

8A

8BC

9A

9BC

10A

10

11A

11

12A

71

& EN
74LS541

IC19

SCLK

72

CTS0

73

CTS1

74

BREQ

75

HLDA

76

HOLD

77

15A

11

10 10BC

16BC

12

11 11BC

14A

13

12

12 12BC

16A

14

13A

13

13 13BC

13A

15

84

14A

14

14 14BC

13BC

16

85

15A

15

15 15BC

12A

17

86

16A

16

16 16BC

12BC

18

17A

17

17 17BC

18A

18

18 18BC

19A

19

19 19BC

20A

20

20 20BC

21A

21

21 21BC

22A

22

22 22BC

23A

23

23 23BC

9A

24A

24

24 24BC

9BC

25A

25

25 25BC

26A

26

26 26BC

27A

27

27 27BC

28A

28

28 28BC

21BC

29A

29

29 29BC

21A

30A

30

30 30BC

22BC

31A

31

31 31BC

22A

32

32

23BC

5V

R23

80
T6OUT

T3OUT

83

87

74LS541

10k

81
82

& EN

19

R24

RSTIN
NMI

TXD1

88

RXD1

89

TXD0

90

RXD0

91

BHE

92

WR

95

READY

96

CLK

97

26A

54

26BC

55

23A
24BC
24A
25BC
25A

100
100
100
100
100
100
100
100
100
100

R10

48

R11

49

R12

50

R13

51

R14

52

R15

53

R16

56

R17

57

R18

58

R19

59

P2.0/CC0IO

P0.0/AD0

P2.1/CC1IO

P0.1/AD1

P2.2/CC2IO

P0.2/AD2

P2.3/CC3IO

P0.3/AD3

P2.4/CC4IO

P0.4/AD4

P2.5/CC5IO

P0.5/AD5

P2.6/CC6IO

P0.6/AD6

P2.7/CC7IO

P0.7/AD7

P2.8/CC8IO

10x 5V6

Q1

P0.11/AD11

P2.12/CC12IO

P0.12/AD12

P2.13/BREQ

P0.13/AD13

P2.14/HLDA

P0.14/AD14

P2.15/HOLD

P0.15/AD15

P3.0/T0IN

P1.0/A0

P3.1/T6OUT

P1.1/A1

P3.2/CAPIN

P1.2/A2

P3.3/T3OUT

P1.3/A3

P3.4/T3EUD

P1.4/A4
P1.5/A5

P3.5/T4IN
P3.6/T3IN

P1.6/A6

P3.7/T2IN

P1.7/A7

P3.8/TXD1

P1.8/A8

P3.9/RXD1

P1.9/A9

P3.10/TXD0

P1.10/A10

P3.11/RXD0

P1.11/A11

P3.12/BHE

P1.12/A12

P3.13/WR

P1.13/A13

P3.14/READY

P1.14/A14

P3.15/CLKOUT

P1.15/A15

VAREF

P4.0/A16

VAGND

P4.1/A17
SAB
80C166-M

P5.1/AN1

RD

P5.2/AN2

RSTOUT

P5.3/AN3

NMI

P5.5/AN5

BUSACT

2 IO9

27A

17

3 IO8

11A

16

4 HOLD

11BC

15

5 HLDA

10A

14

6 BREQ

10BC

13

7 CLK

14BC

12

8 T3OUT

15BC

11

9 T6OUT

10

D9

EN

RXD1

&

R1

2
V+

C1+

IC1
C1
3BC
3A

5V

2BC
2A
C9

C10

C16

C17

100n

100n

100n

100n

13

14
7

C11

C14

R1IN

R1OUT

R2IN

R2OUT

T1OUT

T1IN

T2OUT

T2IN
C2+

15

C18

C19
22p

BHE

WR

A0

A14

Q2

I3

Q3

IC4

I6

Q4

I7

Q7

I8

Q8

20

IC19 IC20 IC21 IC22


10

10

10

10

8A

IO4

35

IO5

36

IO6

37

IO7
IO8

41

IO9

42

SDAT

43

RTS0
RTS1

45

P1.13

46

ERDY1

47

ERDY2

16

A16

17

A17

25

ALE

26

RD

28

RSTOUT

27

RSTIN

29

NMI

S2

14

S38
S30
S2

15

S1
S0
LBW

18

HBW

19

WAIT

I9

RXD1

CTS1

BS170

11

TXD1

10

RTS1

C15

S0

C22

T1

5V

JP2

R3

R4

SIO 1
2

5V

V+

C1+

IC2
C1
13
8
14
7

R22

SDAT

R21

SCLK

D2
5V6

IO3

34

13

16

100

IO2

33

12

R1IN

R1OUT

R2IN

R2OUT

T1OUT

T1IN

T2OUT

T2IN

C21
20

IO1

32

10

12

5A

20

IO0

31

OE

5BC

20

AD15

30

GAL Q5 16
16V8 Q6 17

C11...C15 = 10

100

AD14

15

BS170

I2

I5

11

6A

8BC

AD13

14

T2

Q1

I4

7
A15

6BC

5V

CLK

C13

V6

AD12

13

20
1
RSTOUT

MAX232
C2

12

21 39

5V

5V

A17

SIO 2

16

22p

JP1

19

(Monitor)

5V

19

X1

A16

R2

AD11

94

10k

C12

10k

11

R9

74LS541

AD9
AD10

5V

TXD1

AD8

10

D13

D12

D9

D11

D10

D8

D7

D6

18

5V6

AD7

X2

20

27BC
10

AD6

78

P5.9/AN9

IC20

C2

AD5

60

P5.8/AN8

10k

D1

AD4

24

P5.7/AN7

AD3

22

EBC0

P5.6/AN6

AD2

44

RSTIN

P5.4/AN4

AD1

100

40

ALE

P5.0/AN0

10K

C1

D5

D4

5V

P0.10/AD10

P2.11/CC11IO

AD0

99

P0.9/AD9

P2.10/CC10IO

98

P0.8/AD8

IC8

P2.9/CC9IO

X1

5V

23

18 38 61 79 93

IC22
20A

10k

La position-clef lors de la ralisation de


la carte dvaluation pour 80C166 est,
sans lombre dun doute, la fixation
correcte du cent-pattes en botier MRFP. Il vous faudra, outre de la
soudure fine (1 mm de diamtre max),
galement de la pte fixer et de la
pte souder. On utilisera un fer souder pointe fine porte une temprature de lordre de 320 C. Le contrleur sera le premier composant
mettre en place sur la platine. Il faudra
commencer par vrifier que les
100 pattes du 80C166 se retrouvent
bien sur leurs lots de soudure respectifs et, le cas chant, effectuer la chirurgie platique requise. On procde,
dans une petite coupelle, au mlange,
laide dun cure-dent, de 5 6 parties
de pte de fixation et de 1 partie de
pte de soudure, le tout arros de
quelques gouttes dalcool brler jusqu obtenir une masse lgrement
liquide. On mettra, laide dun curedent, ou mieux encore, dun fin pinceau, un rien de cette pte semi-liquide
sur les extrmits des lots du contour
ou sur les pattes du composant. La
rgle qui peut le plus peut le moins...
ne pas exagrer, mettre le moins possible en fait.
On peut ensuite placer le contrleur
sur les lots et le fixer en soudant rapidement 2 broches diamtralement
opposes. Si, aprs une vrification la
loupe, toutes les broches reposent sur
leurs lots respectifs on pourra procder leur soudure. Pour ce faire, on
appuie un doigt (qui sert galement de
dtecteur de surchauffe) sur le composant et on fait glisser la panne proximit (pas dessus) de la broche souder.
Si tant est que llot et la patte aient une
temprature gale, la soudure se
regroupe de par la prsence de la pte
fixer. Si la temprature du 80C166
augmente trop il faudra lui laisser le
temps de refroidir avant de poursuivre
la soudure. Il restera ensuite vrifier
laide dune loupe toutes les soudures
et, le cas chant, tablir celles qui ne
seraient pas satisfaisantes. En cas de
court-circuit il restera utiliser de la
tresse dessouder dote dun rien de
pte de fixation que lon intercalera
lendroit dessouder pour enlever la
soudure excdentaire. Les rsidus de
pte fixer et souder seront enlevs

8x 4k7

4k7

ltat desdits circuits intgrs.


Le dcodeur IC6 fournit les signaux
CS\ pour les circuits dhorloge, IC5, le
chien de garde intgr dans le
MAX 690, IC3, et le bus dextension K2.

100n
C24

D3
5V6

C2+
15

C23

3
12

RXD0

CTS0

11

TXD0

10

RTS0

C20

MAX232
C2

V6

C20, C22...C24 = 10

Figure 1. Un schma impressionnant que celui de la


carte dvaluation 16 bits.

54

Elektor

4/99

VBAT

IC9
ALE

11
1

JP5

5V
5V

C1
EN

28

R7
1k

28

AD0

12

A0

A1

10

AD1

13

A1

A2

AD2

14

A2

A3

AD3

15

A3

A4

AD4

16

A4

A5

AD5

17

A5

A6

AD6

18

A6

A7

AD7

19

A7

A8

A9

25

A10

24

A11

21

A12

23

1D

74HC573
5V
16

20

IC7

IC9

20

C3

10

IC10
10

100n

A13

A14

26

A15

26

A0
A1

CE

CS2

ERDY1 1

20

LBW

A3

D0

IC11

A4

D1

A5

D2

A6

RAM

D3

A7
A8

D4
D5

62256

A9

D6

0L

A10

D7

11

AD0

AD0

11

12

AD1

AD1

12

13

AD2

AD2

13

15

AD3

AD3

15

16

AD4

AD4

16

17

AD5

AD5

17

18

AD6

AD6

18

19

AD7

AD7

19

A11
A12

OE

A13

WE

22

RD

27

LBW

RD

22

S30

20

A0

RDY/B

27

A1

WE

A2

A2

IC17

D0

A3

D1

A4

D2

EEPROM

D3
D4

A5
A6
A7

28C64

D5

A8

3$ 0L

D6

A9

D7

A10
A11

OE

A12

10

A1

A2

A3

A4

A5

A6

A7

A8

25

A9

24

A10

21

A11

23

A12

A13

10

A1

A2

A3

A4

A5

A6

A7

CS1

A14
14
14

IC10
ALE

11
1

5V

C1

S0

EN

AD11

12

A11

A1

10

AD8

13

A8

A2

AD12

14

A12

A3

AD10

15

A10

A4

AD9

16

A9

A5

AD14

17

A14

A6

AD13

18

A13

A7

AD15

19

A15

A8

A9

25

A10

24

A11

21

A12

23

A13

A14

26

A15

1D

74HC573
5V

R26

C7

*
6

RX/CX
RSTIN

CX

11

26
A0
A1

CE

CS2

ERDY2 1

20

A3

D0

IC12

A4

D1

A5
A6

D2

RAM

D3

A7
A8

D4
D5

62256

A9

D6

0H

A10

D7

11

AD8

AD8

11

12

AD9

AD9

12

13

AD10

AD10 13

15

AD11

AD11 15

16

AD12

AD12 16

17

AD13

AD13 17

18

AD14

AD14 18

19

AD15

AD15 19

A11
OE

A12
A13

WE

22

RD

27

HBW

RD

22

S30

20

A0

RDY/B

HBW 27

A1

WE

A2

A2

IC18

D0

A3

D1

A4

D2

EEPROM

D3
D4

A5
A6
A7

28C64

D5

A8

3$ 0H

D6

A9

D7

A10
A11

OE

A12

A8

25

A9

24

A10

21

A11

23

A12

A13

CS1

A14

14

&

10
P1.13

28

28

IC7b

14

12

K2
RSTIN

VBAT

JP6

5V
5V

5V
28

VPP
A0
A1
AD0

11

AD1

12

AD2

13

AD3

15

AD4

16

AD5

17

AD6

18

AD7

19

A2

D0

IC13

D1

A3
A4

D2

A5

D3

EPROM A6

D4

A7

D5

20

RD

22

A1

A1

10

A2

A2

A3

A3

A4

A4

A5

A5

A6

A6

A7

A7

A8

A8

A9

A9

25

24

A10

A10

24

21

A11

A11

21

23

A12

A12

23

A13

A13

26

A14

A14

26

27

A15

27C256 A8 25

D6

A9

1L

D7

A10
A11

S1

10

CS4

CE

A12

OE

A13
A14

CE

CS2

20

CS1

A2
A3

D0

IC15

A4

D1

A5

D2

11

AD0

12

AD1

13

AD2

15

AD3

RAM/ D3
3
16
A7 EPROM D4
A6

A8

D5

62256

A9

D6

2L

A10

D7

CARTE & PC

CS3

A0
A1

CS0
AD0
AD1
AD2
AD7

AD4

17

AD5

18

AD6

19

AD7

AD6
AD5
AD4
AD3

A11

A12

OE

A13

WE

22

RD

27

LBW
HBW

A14

RD
A10

14

14

AD8
JP7

A15

AD9

LBW

AD10

5V
EPROM
1

28

RAM

AD15

S2

AD14

28

AD13

VPP
10

A1

A1

10

A2

A2

A3

A3

A4

A4

A5

A5

A6

A6

EPROM A6 4

A7

A7

A8

A8

27C256 A8 25 A9

A9

A0
A1
AD8

11

AD9

12

AD10 13
AD11 15
AD12 16
AD13 17
AD14 18
AD15 19

A2

D0

IC14

D1

A3
A4

D2

A5

D3
D4

A7

D5
D6

A9

1H

D7

A10
A11

S1

20

RD

22

CE

A12

OE

A13
A14

AD12

A0
A1

CE

20

AD11

A2

5V

11

AD8

12

AD9

13

AD10

RAM/ D3 15
3
16
A7 EPROM D4

AD11

CS0

15

A3

A10

A10

24

21

A11

A11

21

23

A12

A12

23

A13

A13

26

A14

A14

26

27

A15

D1

A5

D2

A6

25

24

D0

IC16

A4

A8

D5

62256

A9
A10

D6

2H

D7

OE

A13

WE

16

AD12

CS1

14

17

AD13

CS2

13

18

AD14

CS3

12

19

AD15

CS4

11

CS5

10

CS6

A11
A12

22

RD

27

DX

0
7

A11

A12

A13

5V

IC6
4 74HC138
3

&

8
14

S38

JP8
A15

HBW
EPROM

VBAT

RAM
C8

5V

R25

C5

15

AD0

13
2

WAIT

&
IC7a

JP9

CX

18

5V

14

RX/CX
RSTIN

A15

READY

IC7 = 74HCT123
tekst
* zie
text
* see
texte
* voir
siehe Text
*

14

AD1

13

AD2

12

AD3

11

RD

LBW

10

RSTIN 15

A1

A2

A3

7
RTC- A3
72421

A4

IC5

A0

D1

A1

D2

A2

D3
RD
WR

STOP

CS1
9

990028 - 11

Elektor

4/99

[Lecteur:\Cheminement\]MON16X
-c
[Lecteur:\Cheminement\]MON16X.CFG -s
[Lecteur:\Cheminement\]MON16X.SCR

-c donne le lecteur/cheminement/nom du
fichier de configuration (configuration file),
-s donne le lecteur/cheminement/nom du
fichier de Script (script file)

100n

ALE

CS0
D0

La communication entre la carte


80C166 et le PC implique la prsence,
sur la carte, dune paire dEPROM,
IC13 avec loctet de poids faible et IC14
avec loctet de poids fort, comportant
un programme de moniteur et linstallation sur le PC du programme
MON16X.EXE ou MON16XS2.EXE
et des fichiers
MON16X.OVL,
MON16X.CFG et
MON16X.SCR.
On branche ensuite le cble sriel entre
SIO2 et un port sriel (COMx) libre du
PC, remet la carte zro et lance, sur le
PC, le programme MON16X.EXE.
Le lancement de MON16X.EXE se fait
par rapport paramtres :

A14

14

MISE EN FONCTION
On connecte la carte dvaluation
pour 80C166 une tension de 5 V portge par une limitation de courant
(fixe 0,3 A). Aprs mise sous tension,
la carte devrait consommer de lordre
de 0,2 A.

CS5

R8

28

1k

laide dalcool brler.


On procdera ensuite, en plusieurs
tapes, la mise en place des composants de petite taille (rsistances) pour
terminer par les condensateurs lectrochimiques. La liste des composants
vous propose limplantation minimum
de composants (M), cf. tableau 1.
On pourra, pour la remise zro lapplication de la tension dalimentation
(POR = Power On Reset) remplacer IC3,
un MAX690, par un condensateur au
tantale de 10 F pris entre la broche 7
(+) et la broche () du support dudit circuit. En cas dutilisation du MAX690 il
faudra ouvrir le cavalier JP3, vu que
sinon ce circuit intgr met une RAZ
chaque seconde. On pontera, pour lalimentation des composants de mmoire,
le cavalier JP5 au +5 V et on mettra la
masse les broches 1 et 11 de la GAL, par
le biais des cavaliers JP1 et JP2.
Aprs un dernier contrle critique on
placera le reste des composants. Nous
sommes pars pour la premire

On constituera, pour ce lancement,


un fichier Batch, ceci vous facilitera
lexistence.
Il faudra modifier le contenu du fichier
MON16X.CFG originel en saidant du
tableau 2. Les lignes en gras sont nouvelles, celles qui nont plus dimportance sont prcdes dun point virgule. Le fichier Script MON16X.SCR
devrait avoir le contenu suivant :

55

K2

R20

C17

C2
a b c

C19 C18
IC21

C16

IC8

IC18

IC16

IC14

IC12

C1

R10
R11
R12
R13
R14
R15
R16
R17
R18
R19

D4
D5
D6
D7
D8
D9
D10
D11
D12
D13

Q1 X1

IC10

32

R8

IC22

C10

C5
JP4

R2

R1

R4
IC2

a 1 c
C11 C13 C12 C15 C14

JP5
T2

JP3

IC3

IC4
R9

C23 C22 C20 C24

C4

C6

Rsistances :
R1 R4 = 10 k (SIO1)
R5 = 30 k/1 % (E/S)
R6 = 11 k/1% (E/S)
R7 = 1k0 (M)
R8 = 1k0 (RAM/ROM)
R9,R24 = 10 k (M)
R10 R19,R21,R22 = 100 (E/S)
R23 = 4k7 (M)
R25,R26 = cf. texte (RDY)
Condensateurs :
C1 C4,C8 C10,C16,C17,C21 =
100 nF cramique RM5 (M)
C5,C7 = cf. texte
C6 = 10 nF RM5 (E/S)
C11 C15 = 10 F/16 V vertical (M)
C18,C19 = 22 pF (avec quartz
100 MHz uniquement)
C20,C22 C24 =10 F/16 V vertical
(SIO1)
Semi-conducteurs :
D1 = diode zener 5V6/1W3 (M)
D2 D13 = diode zener 5V6/1W3 (E/S)
T1 = BS170 (M)
T2 = BS170 (RAM/ROM)
IC1 = MAX 232 (M)
IC2 = MAX 232 (SIO1)
IC3 = MAX 690 (E/S)
IC4 = GAL 16V8-15 programme
(ESS 996508-1) (M)
IC5 = RTC 72421 (RTC)

IC6 = 74HCT138 (BAT, RTC)


IC7 = 74HCT123 (RDY)
IC8 = SAB 80C166 M (M)
IC9,IC10 = 74HCT573 (M)
IC11,IC12 = RAM 62256-100 (M)
IC13= EPROM 27C256-120 (Low Byte
programme EPS 996509-1) (M)
IC14 = EPROM 27C256-120 (High
Byte, programme EPS 996509-2)
(M)
IC15,IC16 = RAM 62256-100 ou
EPROM 27C256-120 (RAM/ROM)
IC17,IC18 = EEPROM 28C64-250
(EEPROM)
IC19 IC22 = 74LS541/540 * (E/S)
Divers:
Q1 = gnrateur quartz 40 MHz (M)
supports pour circuits intgrs
8/16/20/28 broches (M)
support pour circuit intgr
18 broches (RTC)
embase femelle 2 ranges de
32 contacts ou connecteur DIN 41612
(M)
(M)
(E/S)
(BAT)
(SIO1)
(RTC)

IC17

IC15
JP9

IC5
C8 990028-1 JP7

JP1

Figure 2. Bien pleine, cette carte double


face trous mtalliss au format europe
dessine pour la carte dvaluation.

Liste des composants

IC13

IC11
R7

C21

IC1

R3

R5
R6

JP2

RESET

C3
R23

JP10

D1

T1

R26

D3
D2

R24

R21
R22

IC7

BT1

IC20

R25

IC19

IC9

C7

K1

Implantation minimum
Entre/Sortie
MAX690, Pile
extension SIO 1
extension horloge temps
rel
(RAM/ROM) extension RAM ou EPROM
(EEPROM) extension EEPROM
(RDY)
extension READY

JP8

C9
IC6

JP6
990028-1

key 1 HELP A
key 4 S A
key 5 PROC A
key 9 EXIT A
stat
Le programme du PC commence par
mettre un octet nul de manire permettre au programme moniteur prsent
sur la carte de reconnatre le taux de
transmission (baudrate). La carte signale
par un 0AAHEX dacquitement quelle
est pare. Si, aprs quelques lignes indiquant la version, on voit apparatre
lcran linvite MON166>, cest que la
liaison est tablie.
Une fois le progamme moniteur lanc
avec succs, linstruction L pour Load
suivie du nom de fichier pris entre
apostrophes permet le chargement de
programme pour 80C166 en format
Intel-Hex ou en fichier absolu.
L [Lecteur:\Cheminement\]Fichier.HEX
ou
LLecteur:\Cheminement\]Fichier[.ABS].
On dmarre lexcution du programme
par G ou Go suivi de ladresse de dbut
du programme charg.
La commande H<Enter> permet un
listage de lensemble de commande du
moniteur.
Le programme de moniteur permet de
procder dautres tests et de vrifier
la mmoire.
Si, au bout de quelques secondes, on
voit apparatre sur le PC un message tel
que serial send error ..., communication error
- timeout, fatal error ... abort ou quelque
chose de ce genre, il va falloir invitablement passer au paragraphe suivant.

CAUSES

DE PANNES
Il va falloir commencer par vrifier
toutes les soudures, plus particulire-

56

Elektor

4/99

990028-1
(C) ELEKTOR

990028-1

ment celles au niveau du contrleur.


Une liaison srielle est galement un
facteur important.
Voici quelques-unes des causes de disfonctionnement possibles.
Erreur au niveau du choix du port
COM ou du contenu du fichier de
configuration MON16X.CFG.

pontages indiquent au PC quil est


connect un priphrique de donnes
(la carte 80C166) et que celui-ci est par.

Absence du composant SIO (IC1) ou


de condensateurs indispensables au
fonctionnement de la carte.

Absence de programme (moniteur)


dans les EPROM ou encore interversion des EPROM Low et High.

Le quartz ou loscillateur oublie dentrer en oscillation. vrifier sur la


broche 3 de Q1, loscillateur en botier.

Interversion des lignes srielles RxD


et TxD vers le PC.

Absence de la GAL (IC4), voire


absence ou erreur de programmation
au niveau de ce composant.

Absence de pontage des lignes CTS et


RTS, ainsi que DTR, DSR et CD au
niveau de linterface srielle du PC. Ces

Erreur au niveau de la configuration


correcte des pont JP1 et/ou JP2
(broches 1 et 11 de la GAL).

Lentre de RAZ (Reset) reste au


niveau bas. Il se peut, si lon utilise le
MAX690 (IC3) sans pile, que la RAZ
reste bloque au niveau bas (Low).
mesurer sur la broche Reset (7 de IC3) ou
sur la broche 9a du connecteur K1.

Elektor

4/99

57

Tableau 4. Contenu du fichier 80C166.EQN


; GAL for 80C166 Controller-Board
chip 80C166 GAL16V8
; Pin
1
2
3
4
5
6
7
8
9
10
j1
RST BHE WR
A0
A17 A16 A15 A14 GND
j2
S38 S30 S2
S1
S0
LBW HBW WAIT VCC
; Pin
11
12
13
14
15
16
17
18
19
20
equations
S0
= /A17 * /A16 * RST
; RAM
0$0000h-0$FFFFh
+ /A17 * /A16 * /RST * j2
; (for /RST)
0$0000h-0$FFFFh
/S1 = /A17 * A16
; EPROM
1$0000h-1$FFFFh
+ /A17 * /A16 * /RST * /j2 * /j1
; (for /RST)
0$0000h-0$FFFFh
S2
= A17 * /A16 ; RAM/EPROM
2$0000h-2$FFFFh
+ /A17 * /A16 * /RST * /j2 * j1
; (for /RST)
0$0000h-0$FFFFh
/S30 = A17 * A16 * /A15
; EEPROM 3$0000h-3$8000h
/S38 = A17 * A16 * A15 * /A14
; Decoder 3$8000h-3$BFFFh
/LBW = /WR * /A0
; Low Byte Write
/HBW = /WR * /BHE ; High Byte Write
; Optional
/WAIT
= A17 * A16 * /A15 ; EEPROM 3$0000h-3$8000h
+ A17 * A16 * A15 * /A14
; Decoder 3$8000h-3$BFFFh

La sortie RSTOUT reste au niveau


bas. La sortie RSTOUT voit, lors dune
RAZ, son niveau descendre au niveau
bas; elle doit, immdiatement aprs la
RAZ, retrouver un niveau haut. Si tel
nest pas le cas, lexcution du programme (moniteur) ne se fait pas et
linstruction EINIT (End INIT) nest
pas atteinte. EINIT fait rebasculer la

sortie RSTOUT au niveau haut (mesure


effectuer sur la broche 2 de IC4).
Absence du signal ALE (Address
Latch Enable). Peu importe que le
contrleur trouve un programme correct ou quil se plante dans le bleu ,
on a, toutes les 150 850 ns, des accs
au cours desquels le signal ALE est

Brochage de lembase dextension


Broche

Nom

Fonction

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

GND
RSTIN

Masse de lalimentation
Restart-Input (Reset)

GND
+5
CS5
CS4
CS3
CS2
CS1
CS0
AD0 / P0.0
AD1 / P0.1
AD2 / P0.2
AD7 / P0.7
AD6 / P0.6
AD5 / P0.5
AD4 / P0.4
AD3 / P0.3
GND
LBW
HBW
RD
A10
AD8 / P0.8
AD9 / P0.9
AD10 / P0.10
AD15 / P0.15
AD14 / P0.14
AD13 / P0.13
AD12 / P0.12
AD11 / P0.11

Masse de lalimentation
Alimentation +5 V
Chip-Select 5: 3A800-3AFFFh
Chip-Select 4: 3A000-3A7FFh
Chip-Select 3: 39800-39FFFh
Chip-Select 2: 39000-397FFh
Chip-Select 1: 38800-38FFFh
Chip-Select 0: 38000-387FFh
Adresse/Donne -Bit 0
Adresse/Donne -Bit 1
Adresse/Donne -Bit 2
Adresse/Donne -Bit 7
Adresse/Donne -Bit 6
Adresse/Donne -Bit 5
Adresse/Donne -Bit 4
Adresse/Donne -Bit 3
Masse de lalimentation
Low Byte Write
Hgh Byte Write
Read
Adresse-Bit 10
Adresse/Donne -Bit 8
Adresse/Donne -Bit 9
Adresse/Donne -Bit 10
Adresse/Donne -Bit 15
Adresse/Donne -Bit 14
Adresse/Donne -Bit 13
Adresse/Donne -Bit 12
Adresse/Donne-Bit 11

58

mis au niveau haut pendant de lordre


de 20 ns ( mesurer sur la broche 11 de
IC9 et IC10).
Absence ou erreur au niveau des
bits dadresse. Les bits dadresse 0 15
sont stocks lors de chaque impulsion ALE. Les verrous IC9 et IC10 doivent tre suffisamment rapides pour
tre en mesure de reconnatre le
signal ALE extrmement court et
prendre en compte les bits dadresse
disponibles pendant une dure de
lordre de 40 ns ( mesurer sur les
broches 12 19 de IC9 et IC10).
Absence du signal CS au niveau des
EPROM ( vrifier sur la broche 20 de IC13
et IC14). Cest la GAL, IC4, qui gnre
les signaux CS des circuits de mmoire.
Il faut, pour lobtention du signal CS1
(broche 15 de IC4) pour les EPROM, que
soient prsents les bits suivants :

Tableau 3. CS1 de la GAL


Aprs RAZ
RSTOUT (Pin 2) = 0
A17 (Pin 6) = 0
A16 (Pin 7) = 0
A15 (Pin 8) = 0
A14 (Pin 9) = 0
S1 (Pin 15) = 0

Aprs EINIT
RSTOUT (Pin 2) = 1
A17 (Pin 6) = 0
A16 (Pin 7) = 1
A15 (Pin 8) = 0
A14 (Pin 9) = 0
S1 (Pin 15) = 0

( mesurer sur la GAL IC4).


Lors dune RAZ toutes les lignes prsentent un niveau haut (en Entre).
Absence de liaison srielle. Aprs
chaque lancement du programme PC
MON16X on doit pouvoir mesurer les
signaux de la transmission srielle sur
RxD (broche 13 et 12 de IC1). Le programme moniteur rpond par la ligne
TxD (broche 11/14 de IC1). mesurer
sur les broches 13, 12, 11 et 14 de IC1.
Elektor

4/99

Ne veut tout simplement rien


savoir...?
Les seules sources de panne restantes
se situent au niveau de la ralisation
de la carte 80C166 ou dun composant dfectueux. Il va vous falloir procder un examen plus pouss.

FREEWARE

ET PLUS
La carte dvaluation 80C166 ne vit
pas uniquement de matriel, il lui faut
du logiciel. Pour viter tout malentendu permettez-nous de prciser lun
ou lautre point. Il existe une diffrence fondamentale entre le progiciel
se trouvant sur la carte et le logiciel
tournant sur le PC. On trouve, sur la
carte, le programme moniteur sous la
forme dune paire dEPROM. Ce programme moniteur a t dvelopp par
lauteur et a t spcialement adapt
cette carte 80C166. Il travaille plus
rapidement, mieux et avec moins derreurs que des programmes similaires
non adapts. Le seul inconvnient est
que les EPROM occupent 64 Koctets
dans lespace mmoire. Le 80C166 ne
connat pas, contrairement aux
80C165 et 80C167, de possibilit de
chargement de lancement (bootstraploading). Le programme de moniteur
vous est propos sous la forme de
2 EPROM programmes (EPS 9965091 et EPS 996509-2) ou sous celle dun

fichier HEX sur disquette (EPS 9960091) disponible auprs des adresses
habituelles.
La GAL vous est galement propose
programme (EPS 996508-1). Si vous
disposez dune possibilit de programmation dune GAL16V8, la disquette voque plus haut comporte
galement le court programme donn
dans le tableau 4.
Le programme de moniteur tournant
sur le PC nest pas une cration de
lauteur; on peut le trouver, gratuitement, sous la forme de shareware ou
dune version dvaluation auprs de
nombreux fournisseurs sur Internet
(voire sous la forme dun CD-ROM
gratuit) chez, entre autres :
www.hitex.com
www.keil.com
www.tasking.com
www.ertec.com
Chez la plupart des fournisseurs le
langage de programmation C ou C+
est fortement prsent.
Lauteur utilise le Assembler/Linker/
Locator de Keil (non gratuit) et se sert
des programmes de la socit ertec qui
sont comprims dans le fichier
EV6AAL.ZIP. Il sagit de logiciel destin la carte dvaluation dertec
EVA166, platine compatible avec la
carte dvaluation dcrite ici. Ce
fichier comporte, entre autres, les pro-

grammes suivants qui nous intressent :


+ MON16X2.EXE Programme Win95
+ MON16X.EXE Programme DOS
+ MON16X.OVL Overlay pour
MON16X.EXE
+ MON16X.SCR fichier Script pour excution aprs appel de MON16X.EXE ou
de MON16X2.EXE
+ MON16X.CFG fichier de configuration
pour le lancement de MON16X.EXE ou
de MON16X2.EXE
+ ASS16X.EXE Assembleur C166 pour
DOS
+ ASS16X2.DLL Assembleur C166 pour
Win95
+ ASSDEMO.XXX Exemple dassembleur
Il faudra, dans le fichier de configuration, mettre le bootstrap loader horsfonction par la prise, en dbut de
ligne, de points-virgule. La version
moniteur en EPROM dveloppe par
lauteur tourne des taux de transmission pouvant aller jusqu
38 400 bauds.
Il peut tre intressant de faire un tour
sur le site anglais de hitex ladresse :
http://www.hitex.demon.co.uk/c166/miscdocs.html

qui propose un grand nombre


dexemples dapplications, de FAQ
(Frequently Asked Questions) et de liens
concernant le thme C166.
(990028-2)

Brochage du connecteur de la carte dvaluation


Fonction
+5V
Alimentation
Sortie
SIO 2 TxD Mon
Entre
SIO 2 RxD Mon
GND
SIO 2
Sortie
SIO 1 TxD Prog
Entre
SIO 1 RxD Prog
+5V
Sriel
Ent/Sortie Donnes srielles *
Entre
Non Maskable Int
Sortie
(Horloge 20 MHz)
Sortie
(hold acknowledge)
Entre
(Timer 2 Input)
Entre
(Timer 4 Input)
Sortie
(Timer 3 Output)
Sortie
(Timer 6 Output
Entre
(Capt/Comp) 10
Entre
(Capt/Comp) 8
Entre
Capt/Comp) 6
Entre
(Capt/Comp) 4
Entre
(Capt/Comp) 2
Entre
(Analog.) 1 *
Entre
(Analog.) 3 *
Entre
(Analog.) 5 *
Entre
(Analog.) 7 *
Entre
(Analog.) 9 *
Masse analogique (GND)
Sortie
10
Sortie
8
Sortie
6
Sortie
4
Sortie
2
GND
Alimentation

Elektor

Nom
+5V
P3.8 / TXD1
P3.9 / RXD1
GND
P3.10 / TXD0
P3.11 / RXD0
+5V
P1.10
NMI
P3.15 / CLK
P2.14 / HLDA
P3.7 / T2IN
P3.5 / T4IN
P3.3 / T3OUT
P3.1 / T6OUT
P2.9 / CC9IO
P2.7 / CC7IO
P2.5 / CC5IO
P2.3 / CC3IO
P2.1 / CC1IO
P5.0 / AN0
P5.2 / AN2
P5.4 / AN4
P5.6 / AN6
P5.8 / AN8
VAGND
P1.9
P1.7
P1.5
P1.3
P1.1
GND

4/99

Broche
1bc
2bc
3bc
4bc
5bc
6bc
7bc
8bc
9bc
10bc
11bc
12bc
13bc
14bc
15bc
16bc
17bc
18bc
19bc
20bc
21bc
22bc
23bc
24bc
25bc
26bc
27bc
28bc
29bc
30bc
31bc
32bc

1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
31
33
35
37
39
41
43
45
47
49
51
53
55
57
59
61
63

2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
32
34
36
38
40
42
44
46
48
50
52
54
56
58
60
62
64

Broche
1a
2a
3a
4a
5a
6a
7a
8a
9a
10a
11a
12a
13a
14a
15a
16a
17a
18a
19a
20a
21a
22a
23a
24a
25a
26a
27a
28a
29a
30a
31a
32a

Nom
+5V
P1.12
P2.12/CC12IO
GND
P1.11
P2.11/CC11IO
GND
P2.10/CC10IO
RSTIN
P2.13/ BREQ
P2.15 / HOLD
P3.6 / T3IN
P3.4 / T3EUD
P3.2 / CAPIN
P3.0 / T0IN
P2.8/ CC8IO
P2.6/ CC6IO
P2.4/ CC4IO
P2.2/ CC2IO
P2.0/ CC0IO
P5.1/ AN1
P5.3/ AN3
P5.5/ AN5
P5.7/ AN7
P5.9/ AN9
VAREF
P1.8
P1.6
P1.4
P1.2
P1.0
GND

Fonction
+5V
Alimentation
Sortie
SIO 2 RTS
Entre
SIO 2 CTS
GND
SIO 1
Sortie
SIO 1 RTS
Entre
SIO 1 CTS
GND
Srielle
Ent/ Sortie Horloge Srielle *
Entre
Reset
Sortie
(Bus Request)
Sortie
(Hold)
Entre
(Timer 3 Input)
Entre
(Timer 3 Up/Dn)
Entre
(Capture Input)
Entre
(Timer 0 Input)
Entre
(Capt/Comp) 9
Entre
(Capt/Comp) 7
Entre
(Capt/Comp) 5
Entre
(Capt/Comp) 3
Entre
(Capt/Comp) 1
Entre
(Analog) 2 *
Entre
(Analog) 4 *
Entre
(Analog) 6 *
Entre
(Analog) 8 *
Entre
(Analog) 10 *
Rfrence Analogique (+5V)
Sortie
9
Sortie
7
Sortie
5
Sortie
3
Sortie
1
GND
Alimentation

59