Sei sulla pagina 1di 21

CAPTULO XI PLACA DE TESTES

MICROCONTROLADORES (MCS-51) 11 - 1
CAPTULO XI

PLACA DE TESTES


11.1. INTRODUO

Neste captulo descreve-se o projeto e a operao da Placa de Testes. No captulo XII
esto os detalhes do software que gerencia est placa. A finalidade da placa permitir flexibilidade
no ensino de microcontroladores. O esquema possibilita a utilizao de um computador para
assemblar e linkar os programas e depois envi-os por porta serial Placa de Testes para que sejam
executados.

IBM PC
PLACA
DE TESTES
CANAL SERIAL
transmitir programas
receber resultados

Figura 11.1. Conexo da Placa de Testes com o IBM PC.

O mais usual quando se trabalha em ensino de microcontroladores montar uma
pequena placa onde so montados o microcontrolador, chaves para se interagir, leds para sinalizar
alguns resultados e uma memria EPROM onde se gravam os programas. Isto tem uma sria
desvantagem: apagar e gravar a EPROM cada vez que se muda o programa. Para cada correo
que se faz, repete-se o processo de apagar e gravar. Alm de ser um processo lento, significa que se
deve ter disponibilidade de um gravador de EPROM.
Com a Placa de Testes no se pretende utilizar a EPROM pois os programas sero
transmitidos atravs da porta serial do PC, escritos na memria de programa do 8031 e executados.
A velocidade aumenta bastante pois os erros podem ser rapidamente corrigidos no PC e em seguida
transmitidos para a placa.
A placa tem dois modos de operao:
modo Boot Serial
modo Execuo
CAPTULO XI PLACA DE TESTES
11 - 2 MICROCONTROLADORES (MCS-51)
Para o funcionamento correto existem duas memrias: uma EPROM e uma RAM
esttica (SRAM). Quando a placa est em modo Boot Serial, a EPROM trabalha como memria de
programa e a memria esttica trabalha como memria de dados. Na EPROM est um programa
muito simples que tem como funo receber o programa que chega pela porta serial e escrev-lo na
RAM esttica. Ao terminar a transmisso do programa, o usurio pe a placa em modo Execuo e
com isto a RAM esttica, que era memria de dados, se transforma em memria de programa e a
EPROM desabilitada; com isto o programa recm transmitido executado. Se for preciso transmitir
um novo programa, simplesmente basta colocar a placa em modo Boot Serial e transmitir o novo
programa. H um programa escrito em C (TAR_PRU.C) que ajuda na comunicao com a Placa de
Testes.
Para que o circuito seja completo foram colocados recursos para gravar e ler os
membros da famlia MCS-51 que tm EPROM interna: 8751H, 8751BH, 87C51, 87C51FA, 8752BH e
outros modelos. H recursos para gravao usando o modo standard (pulsos de 50 ms) como
tambm usando o modo "quick pulse programming" (pulsos de 100 s).
A seguir h uma descrio detalhada de cada item da placa de testes. Os esquemas
esto no final deste captulo e tm os nomes:
esquema da CPU (cpu.sht)
esquema da MEMRIA (memo.sht)
esquema da SERIAL (serial.sht)
esquema do GRAVADOR (grav.sht)

A seguir so apresentados os quatro esquemas:

C
A
P

T
U
L
O


X
I


P
L
A
C
A


D
E


T
E
S
T
E
S

M
I
C
R
O
C
O
N
T
R
O
L
A
D
O
R
E
S


(
M
C
S
-
5
1
)


1
1


-


3

*
R
D
M
E
M
O
R
I
A
S
A
O
.
.
A
1
5
*
R
D
*
W
R
*
P
S
E
N
B
O
O
T
*
B
O
O
T
A
D
0
.
.
A
D
7
*
R
D
R
S
T
P
1
.
7
G
R
A
V
A
D
O
R
A
0
.
.
A
1
5
*
R
D
*
W
R
R
S
T
P
1
.
7
P
1
.
6
A
D
0
.
.
A
D
7
V
C
C
R
2
4
7
K
D
1
1
N
4
1
4
8
R
1
8
2
S
W
1
S
W

P
U
S
H
B
U
T
T
O
N
C
11
0
u


1

2
U
5
A
7
4
L
S
1
4
P
1
.
6
*
W
R
*
W
R
*
P
S
E
N
B
O
O
T
*
B
O
O
T
A
0
A
1
A
2
A
D
0
A
D
1
A
D
2
D
0


3
Q
0

2
D
1


4
Q
1

5
D
2


7
Q
2

6
D
3


8
Q
3

9
D
4

1
3
Q
4
1
2
D
5

1
4
Q
5
1
5
D
6

1
7
Q
6
1
6
D
7

1
8
Q
7
1
9
O
C


1
G

1
1
U
2
7
4
L
S
3
7
3
A
D
0
A
D
1
A
D
2
E
A
/
V
P

3
1
X
1

1
9
X
2

1
8
R
E
S
E
T


9
I
N
T
0

1
2
I
N
T
1

1
3
T
0

1
4
T
1

1
5
P
1
.
0


1
P
1
.
1


2
P
1
.
2


3
P
1
.
3


4
P
1
.
4


5
P
1
.
5


6
P
1
.
6


7
P
1
.
7


8
P
0
.
0
3
9
P
0
.
1
3
8
P
0
.
2
3
7
P
0
.
3
3
6
P
0
.
4
3
5
P
0
.
5
3
4
P
0
.
6
3
3
P
0
.
7
3
2
P
2
.
0
2
1
P
2
.
1
2
2
P
2
.
2
2
3
P
2
.
3
2
4
P
2
.
4
2
5
P
2
.
5
2
6
P
2
.
6
2
7
P
2
.
7
2
8
R
D
1
7
W
R
1
6
P
S
E
N
2
9
A
L
E
/
P
3
0
T
X
D
1
1
R
X
D
1
0
U
1
8
0
3
1
C
3
3
0
p
R
S
T
C
23
0
p
X
1
3
5
7
5
6
1
1
H
z
*
R
S
T
1
1

1
0
U
5
E
7
4
L
S
1
4
V
C
C
L
E
D
6
Q
_
A
M
R
9
2
2
0
V
C
C
R
4
2
2
0
R
5
2
2
0
L
E
D
3
R
_
A
M
L
E
D
2
R
_
V
M
P
1
.
0

3


4
U
5
B
7
4
L
S
1
4

5


6
U
5
C
7
4
L
S
1
4
R
S
T
B
O
O
T
R
S
T
A
D
3
A
D
4
A
D
5
A
D
6
A
D
7
A
8
A
9
A
D
3
A
D
4
A
D
5
A
D
6
A
D
7
A
L
E
A
3
A
4
A
5
A
6
A
7
V
C
C
T
X
D
I
N
T
E
R
F
-
S
E
R
I
A
L
T
X
D
R
X
D
V
C
C
2
5
V
A
1
0
A
1
1
A
1
2
A
1
3
A
1
4
A
1
5
*
R
D
*
W
R
P
1
.
0
P
1
.
1
P
1
.
2
P
1
.
3
*
I
N
T
0
*
I
N
T
1
T
0
T
1
R
A
M
X
L
E
D
1

(
Q
_
V
D
)
O
N

-
-
>

B
O
O
T

S
E
R
I
A
L
1
R
O
M
0
R
A
M
P
1
.
1
P
1
.
2

9


8
U
5
D
7
4
L
S
1
4
R
6
2
2
0
L
E
D
4
R
_
V
D
S
W
2
S
W

P
U
S
H
B
U
T
T
O
N
S
W
3
S
W

P
U
S
H
B
U
T
T
O
N
P
1
.
3
*
I
N
T
1
T
1
O
F
F

-
-
>

P
R
O
G

R
A
M
(
B
O
O
T
=
1
)
(
B
O
O
T
=
0
)
V
C
C
R
9
2
K
2
P
1
.
4
P
1
.
5
P
1
.
6
P
1
.
7
L
E
D
1
Q
_
V
D
P
S
E
N
T
X
D
R
X
D
B
O
O
T
R
X
D
2
5
V
*
B
O
O
T
R
3
2
2
0
D


2
Q

5
C
L
K


3
Q

6
PR
4
CL
1
U
8
A
7
4
L
S
7
4
C
4
1
u
L
E
D
5
Q
_
V
M

1
1
1
0
U
5
E
7
4
L
S
1
4
R
7
2
2
0
*
I
N
T
0
V
C
C
S
W
4
S
W

S
P
S
T
R
8
8
K
2
F
E
C
H
A
D
A
A
B
E
R
T
A
S

S
T
E
P
(
Q
_
V
M

O
F
F
)
(
Q
_
V
M

O
N
)
R
S
T
V
C
C
B
O
O
T
*
B
O
O
T
D
a
t
e
:


J
a
n
u
a
r
y


5
,

1
9
9
5
S
h
e
e
t




1
o
f




4
S
i
z
e
D
o
c
u
m
e
n
t

N
u
m
b
e
r
R
E
V
A
1
1
.
0
T
i
t
l
e
C
P
U
.
S
H
T

(
C
I
R
C
U
I
T
O

D
E

L
A

C
P
U
)
1 M
I
C
R
O
C
O
N
T
R
O
L
A
D
O
R
E
S

M
C
S
-
5
1
R
U
N
*
P
S
E
N
*
R
D

*
W
R

C
A
P

T
U
L
O


X
I


P
L
A
C
A


D
E

T
E
S
T
E
S

1
1


-


4



M
I
C
R
O
C
O
N
T
R
O
L
A
D
O
R
E
S


(
M
C
S
-
5
1
)

A
0
.
.
A
1
5
P
1
.
7
P
1
.
6
P
1
.
6
P
1
.
7

1

2


3
U
?
A
7
4
L
S
0
8
4 5
6
U
1
4
B
7
4
L
S
0
2
A
0
A
1
A
2
A
3
A
D
0
A
D
1
A
D
2
A
D
3
A
0

8
A
1

7
A
2

6
A
3

5
A
4

4
A
5

3
A
6

2
A
7

1
A
8
2
3
A
9
2
2
A
1
0
1
9
C
E
1
8
O
E
2
0
W
E
2
1
D
0


9
D
1

1
0
D
2

1
1
D
3

1
3
D
4

1
4
D
5

1
5
D
6

1
6
D
7

1
7
U
4
6
1
1
6
A
D
0
A
D
1
A
D
2
A
D
3
A
0


8
A
1


7
A
2


6
A
3


5
A
4


4
A
5


3
A
6


2
A
7


1
A
8

2
3
A
9

2
2
A
1
0

1
9
A
1
1

2
1
C
E

1
8
O
E
/
V
P
P

2
0
O
0

9
O
1
1
0
O
2
1
1
O
3
1
3
O
4
1
4
O
5
1
5
O
6
1
6
O
7
1
7
U
3
2
7
3
2
A
0
A
1
A
2
A
3
A
4
A
5
A
6
A
7
A
8
A
9
A
1
0
A
1
1
A
D
4
A
D
5
A
D
6
A
D
7
A
D
4
A
D
5
A
D
6
A
D
7
A
4
A
5
A
6
A
7
A
8
A
9
A
1
0

1

2


3
U
6
A
7
4
L
S
3
2
*
B
O
O
T
*
B
O
O
T
*
B
O
O
T
*
W
R
*
P
S
E
N
B
O
O
T
P
S
E
N
*
W
R
B
O
O
T

4

5


6
U
6
B
7
4
L
S
3
2

1

2


3
U
7
A
7
4
L
S
0
8
*
B
O
O
T
P
S
E
N
A
D
0
.
.
A
D
7
P
1
.
7
1
*
B
O
O
T
P
1
.
6
*
W
R
/
*
R
D

A
C
C
I
O
N
A
N
X
X
6
1
1
6

9
1
0


8
U
6
C
7
4
L
S
3
2
*
R
D
*
B
O
O
T
*
R
D
6
1
1
6
8
2
5
5
3
7
3
1
11
01
0
0
0
00
M
O
D
O

B
O
O
T

=
=
>

*
B
O
O
T
=
0
M
O
D
O


R
U
N

=
=
>

*
B
O
O
T
=
1
0
0
P
R
O
I
B
I
D
O
D
a
t
e
:


J
a
n
u
a
r
y


4
,

1
9
9
5
S
h
e
e
t




2
o
f




6
S
i
z
e
D
o
c
u
m
e
n
t

N
u
m
b
e
r
R
E
V
A
1
1
.
0
T
i
t
l
e
M
E
M
O
.
S
H
T

(
C
I
R
C
U
I
T
O

D
E

L
A
S

M
E
M
O
R
I
A
S
)
1 M
I
C
R
O
C
O
N
T
R
O
L
A
D
O
R
E
S

M
C
S
-
5
1
(
*
P
S
E
N
)
(
*
W
R
/
*
R
D
)
(
*
W
R
/
*
R
D
)
(
*
W
R
/
*
R
D
)

C
A
P

T
U
L
O


X
I


P
L
A
C
A


D
E


T
E
S
T
E
S

M
I
C
R
O
C
O
N
T
R
O
L
A
D
O
R
E
S


(
M
C
S
-
5
1
)


1
1


-


5

-
1
2
T
X
D
(
8
0
3
1
)


(
I
N
T
E
R
F
A
C
E
)


P
C
_
R
X
+
50
0
5
+
P
C
_
T
X


(
I
N
T
E
R
F
A
C
E
)


R
X
D
(
8
0
3
1
)
1
2
-
1
2
+
V
C
C
Q
1
P
N
2
9
0
7
R
1
0
1
0
K
T
X
D
R
1
1
4
K
9
D
1
0
1
N
4
1
4
8
P
C
_
R
X
(
3
)
V
C
C
R
1
4
1
0
K
C
1
0
1
0
0
u
D
1
1
1
N
4
1
4
8
P
C
_
T
X
(
2
)
R
1
2
1
0
0
K
R
1
3
1
0
K
D
1
2
1
N
4
1
4
8
Q
2
P
N
2
2
2
2
R
X
D
P
I
N
O

2

T
X

-
-
>
P
I
N
O

3

R
X

<
-
-
P
I
N
O

7

G
R
O
U
N
D
P
I
N
O
S

4
,
5

C
U
R
T
O
S
E
R
I
A
L
P
C
C
O
N
E
C
T
O
R
P
C
_
G
N
D
(
7
)
J
1
P
H
O
N
E
J
A
C
K
(
E
N
T
R
A
D
A

9
V

D
C
)
C
1
7
4
7
0
u
F
V
I
GND
V
O
U
1
6
L
M
7
8
0
5
C
1
8
4
7
u
F
V
C
C
P
I
N
O
S

6
,
8
,
2
0

C
U
R
T
O
1
2
V
1
2
V
2
5
V
/
I
N(
E
N
T
R
A
D
A

2
5
V

D
C
)
C
1
9
4
7
u
F
/
3
0
V
2
5
V
D
a
t
e
:


J
a
n
u
a
r
y


4
,

1
9
9
5
S
h
e
e
t




3
o
f




4
S
i
z
e
D
o
c
u
m
e
n
t

N
u
m
b
e
r
R
E
V
A
1
1
T
i
t
l
e
S
E
R
I
A
L
.
S
H
T

(
I
N
T
E
R
F
A
C
E

S
E
R
I
A
L
)
M
I
C
R
O
C
O
N
T
R
O
L
A
D
O
R
E
S

M
C
S
-
5
1
+
1
2

C
A
P

T
U
L
O


X
I


P
L
A
C
A


D
E

T
E
S
T
E
S

1
1


-


6



M
I
C
R
O
C
O
N
T
R
O
L
A
D
O
R
E
S


(
M
C
S
-
5
1
)

V
c
c
Z
E
R
O

F
O
R
C
E

(
Z
I
F
)
Z
1
(
A
0
)
Z
2
(
A
1
)
Z
3
(
A
2
)
Z
4
(
A
3
)
Z
5
(
A
4
)
Z
6
(
A
5
)
Z
7
(
A
6
)
Z
8
(
A
7
)
Z
9
(
R
S
T
)
Z
1
0
Z
1
1
Z
1
2
Z
1
3
Z
1
4
Z
1
5
Z
1
6
(
*
W
R
)
Z
1
7
(
*
R
D
)
X
T
A
L
2
X
T
A
L
1
G
N
D
Z
2
1
(
A
8
)
Z
2
2
(
A
9
)
Z
2
3
(
A
1
0
)
Z
2
4
(
A
1
1
)
Z
2
5
(
A
1
2
)
Z
2
6
Z
2
7
Z
2
8
Z
2
9
Z
3
0
(
*
P
R
G
)
Z
3
1
(
V
p
p
)
Z
3
2
(
D
7
)
Z
3
3
(
D
6
)
Z
3
4
(
D
5
)
Z
3
5
(
D
4
)
Z
3
6
(
D
3
)
Z
3
7
(
D
2
)
Z
3
8
(
D
1
)
Z
3
9
(
D
0
)
V
c
c
P
D
0
A
D
0
D
0


3
Q
0

2
D
1


4
Q
1

5
D
2


7
Q
2

6
D
3


8
Q
3

9
D
4

1
3
Q
4
1
2
D
5

1
4
Q
5
1
5
D
6

1
7
Q
6
1
6
D
7

1
8
Q
7
1
9
O
C


1
G

1
1
U
1
3
7
4
L
S
3
7
3
*
W
R


2


3

1
U
1
4
A
7
4
L
S
0
2
P
1
.
6
A
D
1
A
D
2
A
D
3
A
D
4
A
D
5
A
D
6
A
D
7
P
D
1
P
D
2
P
D
3
P
D
4
P
D
5
P
D
6
P
D
7
P
B
0
P
B
1
P
B
2
P
B
3
P
A
0
P
A
1
P
A
2
P
A
3
P
A
4
P
A
5
P
A
6
P
A
7
P
B
4
P
B
5
P
B
6
P
B
7
P
A
0
V
C
C
8

X

1
0
K
A
D
0
D
0

3
4
D
1

3
3
D
2

3
2
D
3

3
1
D
4

3
0
D
5

2
9
D
6

2
8
D
7

2
7
R
D


5
W
R

3
6
A
0


9
A
1


8
R
E
S
E
T

3
5
C
S


6
P
A
0

4
P
A
1

3
P
A
2

2
P
A
3

1
P
A
4
4
0
P
A
5
3
9
P
A
6
3
8
P
A
7
3
7
P
B
0
1
8
P
B
1
1
9
P
B
2
2
0
P
B
3
2
1
P
B
4
2
2
P
B
5
2
3
P
B
6
2
4
P
B
7
2
5
P
C
0
1
4
P
C
1
1
5
P
C
2
1
6
P
C
3
1
7
P
C
4
1
3
P
C
5
1
2
P
C
6
1
1
P
C
7
1
0
U
1
2
8
2
5
5
A
D
0
.
.
A
D
7
A
D
1
A
D
2
A
D
3
A
D
4
A
D
5
A
D
6
A
D
7
P
A
1
P
A
2
P
A
3
P
A
4
P
A
5
P
A
6
P
A
7
V
p
p
P
C
6
P
C
7
P
C
3
P
C
4
P
C
5
P
D
3
P
D
4
P
B
0
P
B
1
P
B
2
P
B
3
P
B
4
P
B
5
P
B
6
P
B
7
*
R
D
*
W
R
A
0
A
1
R
S
T
P
1
.
7
*
R
D
*
W
R
A
0
.
.
A
1
5
R
S
T
P
1
.
7
P
C
0
P
C
1
P
C
2
P
C
3
P
C
4
P
C
5
P
C
6
P
C
7
X
2
4
M
H
z
C
1
5
3
0
p
C
1
6
3
0
p
P
C
0
P
C
1
P
C
2
2
5
V
V
I
GND
V
O
U
1
5
L
M
3
1
7
R
1
8
3
K
9


1

2
U
1
1
A
7
4
0
7


3

4
U
1
1
B
7
4
0
7
P
O
T
3
1
K
P
D
1
(
1
2
)
P
D
0
(
5
)
P
O
T
2
2
2
0
P
O
T
1
1
K
R
1
7
7
2
0
R
1
6
2
K
7
V
p
p
R
1
5
2
2
0
D
a
t
e
:


J
a
n
u
a
r
y


4
,

1
9
9
5
S
h
e
e
t




4
o
f




4
S
i
z
e
D
o
c
u
m
e
n
t

N
u
m
b
e
r
R
E
V
A
1
1
T
i
t
l
e
G
R
A
B
.
S
H
T

(
C
I
R
C
U
I
T
O

G
R
A
B
A
D
O
R
)
M
I
C
R
O
C
O
N
T
R
O
L
A
D
O
R
E
S

M
C
S
-
5
1
C
1
9
1
0
u
F
3
0
V

CAPTULO XI PLACA DE TESTES
MICROCONTROLADORES (MCS-51) 11 - 7
11.2. ESQUEMA DA CPU (CPU.SHT)

Este esquema o de maior hierarquia. Aqui est a CPU e tambm os blocos que
representam os demais esquemas: MEMRIAS, INTERF-SERIAL e GRAVADOR. A seguir h uma
descrio completa de todos os itens que compem est placa.
O CRISTAL utilizado de 3,575611 MHz e basta conect-lo aos pinos (X1 e X2) do
oscilador da CPU. Utilizou-se este cristal porque j estava disponvel e tambm porque esta
freqncia permite que a porta serial opere a 9600 bauds com boa preciso. Este cristal muito
comum no Brasil pois utilizado em todas as televises para gerar a freqncia da portadora de cor
do sistema PAL-M. Um cristal muito comum no Equador o de 3,58 MHz, que a freqncia da
portadora de cor do sistema NTSC e que tambm pode ser utilizado na Placa de Testes. Um cristal
ideal para a gerao de um baud rate preciso um de 3,6864 MHz; um cristal de 11,0592 tambm
interessante pois permite um baud rate preciso alm de permitir um clock maior para a CPU. Os dois
capacitores C2 e C3 esto colocados por recomendao do fabricante da CPU e o motivo da
utilizao garantir que o cristal oscile na freqncia apropriada durante a energizao do circuito.
O circuito de RESET j foi estudado no captulo III. Notar que o resistor R2 de 47 K e
que junto com o capacitor de 10 F, deve garantir um tempo mais que suficiente para o reset da
CPU. O diodo D1 permite uma rpida descarga do capacitor C1 quando se desliga o circuito.
Tambm possvel um reset manual atravs do pushbutton SW1 e o resistor R1 de 82 usado
para impedir a descarga abrupta do capacitor C1. Deve-se tomar cuidado com os resistores R1 e R2
pois quando o pushbutton SW1 acionado (para provocar reset) esses dois resistores formam um
divisor resistivo que define o valor da tenso na entrada do Schimit Trigger 74LS14. Se R1 no for
muito pequeno quando comparado com R2, a tenso na entrada do 74LS14 poder ser interpretada
como "1 lgico" e a CPU no ser resetada. Neste circuito, quando se aciona SW1 a tenso do divisor
de: (5*82) / (47000+82) = 9 mV (muito prxima de zero). A figura 11.2 ilustra o circuito de reset e os
dispositivos conectados a este sinal. Nesta figura pode-se ver o LED6 (led quadrado de cor amarela)
que indica quando o reset manual est acionado; um inversor (74LS14) foi usado para que o led se
acenda quando a chave for pressionada.

CAPTULO XI PLACA DE TESTES
11 - 8 MICROCONTROLADORES (MCS-51)
VCC VCC
R9
220
LED6
Q_AM
11 10
U5E
74LS14
1 2
U5A
74LS14
D1
1N4148
R2
47K
R1
82
SW1
SW PUSHBUTTON
C1
10uF
8031
8255
VCC
R9
2K2
C4
1uF
VCC
LED1
Q_VD
R3
220
D
2
Q
5
CLK
3
Q
6
P
R
4
C
L
1
U8A
74LS74
VCC
BOOT
*BOOT
(VERDE QUADRADO)
(AMARELO QUADRADO)
RESET

Figura 11.2. Esquema do circuito de "power on" reset.

Na figura 11.2 tambm se pode notar que o sinal de reset utilizado pelo 8031 e pelo
8255. Alm disto, este sinal tambm aciona um flip flop tipo D que est conectado em modo
"toggled", ou seja, a cada reset o flip flop muda de estado. Este circuito ser explicado quando for
abordado o item do boot serial.
Existem TRS LEDS SINALIZADORES (LED2, LED3 e LED4) que servem de sada aos
programas dos usurios. Estes leds so acionados por 3 bits da porta P1 (P1.0, P1.1 e P1.2). Para
evitar a conexo dos leds diretamente aos pinos da CPU (na verdade no h grandes problemas
nisto) e tambm para que se acendam quando se escrever 1 nos bits da porta P1, foram usados
inversores 74LS14 (que estavam sobrando). A figura 11.3 ilustra em detalhes a conexo dos leds
com os bits da porta P1.

CAPTULO XI PLACA DE TESTES
MICROCONTROLADORES (MCS-51) 11 - 9
8031
VCC
LED2
R_VM
R4
220
3 4
U5B
74LS14
P1.0
P1.1
5 6
U5C
74LS14
9 8
U5D
74LS14
R5
220
LED3
R_AM
LED4
R_VD
R6
220
P1.2
(VERMELHO REDONDO)
(AMARELO REDONDO)
(VERDE REDONDO)

Figura 11.3. Conexo dos leds de sinalizao.

Os DOIS PUSHBUTTONS (SW2 e SW3) permitem que os usurios interajam com a
CPU. Pode-se escrever programas que respondam ao acionamento desses pushbuttons. Notar que
os pushbuttons no possuem resistores de "pull up" porque aproveitam o pull up interno que h na
porta P1. Para que se possa ler o estado do pushbutton SW2 necessrio programar 1 no bit P1.3,
enquanto que para trabalhar com o pushbutton SW3 necessrio programar 1 em *INT1(P3.3) e em
T1(P3.5). Quando a chave est aberta, l-se 1 e quando acionada, lido 0. Deve-se notar que no
h nenhum recurso por hardware para reduzir o bouncing. O pushbutton SW3 pode provocar
interrupes e tambm acionar a entrada do contador/temporizador 1. A figura 11.4 ilustra as
conexes dos pushbuttons com a CPU.

8031
P1.3
SW2
SW PUSHBUTTON
SW3
SW PUSHBUTTON
*INT1
T1

Figura 11.4. Conexo dos pushbuttons com a CPU.

A CHAVE PASSO A PASSO (SW4) est conectada atravs de um inversor entrada de
interrupo 0. H um led quadrado de cor vermelha que se acende quando a chave est aberta.
Quando a chave est fechada, na sada do inversor h um nvel alto e com isto no se ativa a
interrupo, mas quando a chave est aberta (LED5 aceso) a sada do inversor vai para um nvel
baixo, acionando a interrupo 0. Esta interrupo 0 (ou qualquer outra interrupo) pode ser
CAPTULO XI PLACA DE TESTES
11 - 10 MICROCONTROLADORES (MCS-51)
aproveitada para controlar a execuo de programa no modo passo a passo. A figura 11.5 ilustra a
conexo da chave passo a passo.

LED5
Q_VM
VCC
8031
R7
220
VCC
R8
8K2
PASSO A PASSO
SW4
SW SPST
11 10
U5E
74LS14
*INT0
(VERMELHO QUADRADO)

Figura 11.5. Chave para o modo passo a passo.

Como ltimo item do esquema da CPU est a demultiplexao do barramento de
endereos. Esta tarefa realizada por um 74LS373, que congela em sua sada os endereos que
estavam presentes na entrada quando ALE fez a transio de alto para baixo (). O barramento de
endereos totalmente demultiplexado e entregue aos demais dispositivos, enquanto o barramento
de dados multiplexado. Desde que os dispositivos leiam ou escrevam dados no momento correto,
no h nenhum problema em usar o barramento de dados multiplexado (deve-se tomar cuidado com
a carga que este barramento pode suportar).

EA/VP
31
X1
19
X2
18
RESET
9
INT0
12
INT1
13
T0
14
T1
15
P1.0
1
P1.1
2
P1.2
3
P1.3
4
P1.4
5
P1.5
6
P1.6
7
P1.7
8
P0.0
39
P0.1
38
P0.2
37
P0.3
36
P0.4
35
P0.5
34
P0.6
33
P0.7
32
P2.0
21
P2.1
22
P2.2
23
P2.3
24
P2.4
25
P2.5
26
P2.6
27
P2.7
28
RD
17
WR
16
PSEN
29
ALE/P
30
TXD
11
RXD
10
U1
8031
D0
3
Q0
2
D1
4
Q1
5
D2
7
Q2
6
D3
8
Q3
9
D4
13
Q4
12
D5
14
Q5
15
D6
17
Q6
16
D7
18
Q7
19
OC
1
G
11
U2
74LS373
BARRAMENTO DE DADOS
A0
A1
A2
A3
A4
A5
A6
A7
AD0
AD1
AD2
AD3
AD4
AD5
AD6
AD7
AD0
AD1
AD2
AD3
AD4
AD5
AD6
AD7
A8
A9
A10
A11
A12
A13
A14
A15
ALE
BARRAMENTO DE ENDEREOS
(MULTIPLEXADO)

Figura 11.6. Separao dos barramentos de endereos e de dados.


CAPTULO XI PLACA DE TESTES
MICROCONTROLADORES (MCS-51) 11 - 11
11.3. ESQUEMA DA MEMRIA

Para a memria da placa foi utilizada uma EPROM (2732) e uma memria esttica
(SRAM-6116). A primeira idia que a EPROM trabalhe como memria de programa (*PSEN) e a
SRAM trabalhe como memria de dados (*RD e *WR). Isto significaria gravar os programas na
EPROM e, a cada novo programa, seria necessrio apagar e regravar a EPROM. Para evitar este
trabalho, h dois modos em que a placa pode operar:
MODO BOOT A EPROM funciona como memria de programa e a SRAM como
memria de dados. Na EPROM est um programa muito simples que recebe dados
pela porta serial e os escreve na SRAM (envia-se o programa pela porta serial).
MODO EXECUO a EPROM desabilitada e a SRAM trabalha como memria
de programa, executando o programa recm transmitido.

A especificao do modo de operao controlada por um flip-flop (U8A) conectado em
modo toggled. A cada acionamento do RESET este flip-flop muda de um modo para outro. A
operao simples:
1. Coloca-se a placa em modo BOOT (aciona-se o RESET at que o led verde quadrado esteja
aceso). Com isto a EPROM ser a memria de programa e a SRAM ser a memria de dados.
2. Transmite-se o programa a ser executado pela porta serial. O programa da EPROM
responsvel por receber o que chega pela porta serial (o programa em formato INTEL.HEX) e
escrever na SRAM.
3. Aciona-se o RESET e com isto o flip-flop U8A muda de estado, ou seja, a placa colocada em
modo EXECUO. Neste modo a EPROM desabilitada e a SRAM tomada como memria de
programa, executando o que a est escrito.
4. Se for necessrio enviar um novo programa, basta acionar o RESET e a placa vai novamente
para o modo BOOT.

A tabela da figura 11.7 ilustra o comportamento das memrias segundo o sinal de
BOOT.

BOOT EPROM SRAM
0 *PSEN *RD e *WR
1 X *PSEN
Figura 11.7. O sinal BOOT controlando a EPROM e a SRAM.

Na figura 11.9 esto as memrias, o circuito responsvel por torn-las memria de
programa ou dados (U6A, U6B, U6C, U7A) e o flip-flop de BOOT acionado pelo sinal de RESET. A
EPROM somente estar operante quando BOOT=1 (*BOOT=0) porque este sinal vai diretamente
CAPTULO XI PLACA DE TESTES
11 - 12 MICROCONTROLADORES (MCS-51)
para o *CE deste CI; se BOOT=0 a EPROM est desabilitada. Quando BOOT=1, a entrada *WE da
SRAM acionada pelo sinal de *WR e a entrada *OE acionada por *RD; quando BOOT=0, a
entrada *WE est em 1 (no h como escrever) e a entrada *OE acionada por *PSEN, ou seja,
trabalha como memria de programa. Notar que no flip-flop h um circuito (R9 e C4) que garante o
preset, ou seja, que sempre se inicie em 1 (BOOT=1, pronto para receber um programa). O fato de
existir este circuito de preset necessitou que se aumentasse o tempo do RESET da CPU pois a CPU
s deve funcionar depois que o sinal BOOT esteja totalmente estabilizado.
A tabela da figura 11.8 ilustra como est o pino *CE da EPROM e os pinos *WE e *OE
da SRAM.

EPROM SRAM
BOOT *CE *WE *OE
0 *PSEN *WR *RD
1 1 1 *PSEN
Figura 11.8. BOOT controlando os pinos de leitura e escrita da SRAM e da EPROM.


CAPTULO XI PLACA DE TESTES
MICROCONTROLADORES (MCS-51) 11 - 13
A0
BARRAMENTO DE ENDEREOS
A0
8
A1
7
A2
6
A3
5
A4
4
A5
3
A6
2
A7
1
A8
23
A9
22
A10
19
A11
21
CE
18
OE/VPP
20
O0
9
O1
10
O2
11
O3
13
O4
14
O5
15
O6
16
O7
17
U3
2732
AD0
BARRAMENTO DE DADOS
AD1
AD2
AD3
AD4
AD5
AD6
AD7
A1
A2
A3
A4
A5
A6
A7
A8
A9
A10
A11
*BOOT
*PSEN
AD0
AD1
A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
A10
WE
OE
D0
D1
D2
D3
D4
D5
D6
D7
U4
6116
A0
A1
*WR
1
2
3
U6A
74LS32
A2
A3
A4
A5
A6
A7
A8
A9
A10
AD2
AD3
AD4
AD5
AD6
AD7
A11
A12
1
2
3
U7A
74LS08
4
5
6
U6B
74LS32
9
10
8
U6C
74LS32
*BOOT
*PSEN
*RD
VCC
1 2
U5A
74LS14
D1
1N4148
R2
47K
R1
82
SW1
SW PUSHBUTTON
C1
10uF
VCC
R9
2K2
C4
1uF
VCC
LED1
Q_VD
R3
220
D
2
Q
5
CLK
3
Q
6
P
R
4
C
L
1
U8A
74LS74
VCC
BOOT
*BOOT
(VERDE QUADRADO)
RESET
8
7
6
5
4
3
2
1
23
22
19
CE
18
20
21
9
10
11
13
14
15
16
17
1 2
U?A
74LS04
1
2
3
U7A
74LS08
P1.7
P1.6
1
2
3
U6A
74LS32
P1.7
P1.6
*WR
*BOOT
*BOOT
*PSEN
*RD
BOOT

Figura 11.9. Circuito de memria controlado pelo sinal BOOT.


11.4. ESQUEMA DA SERIAL

O microcontrolador 8031 oferece uma porta serial bidirecional que ser utilizada para
enviar os programas que sero executados pela placa de testes. Pelo pino TXD a CPU transmite os
dados e pelo pino RXD os dados so recebidos. O conector serial de 9 pinos dos PCs transmite pelo
pino 2 (PC_RX) e recebe pelo pino 3 (PC_TX). A soluo parece ser simples pois bastaria conectar
as entradas com as sadas. O problema que no conector serial dos PCs os sinais esto com os
nveis de tenso do padro RS 232 (+/- 12 V) e nos pinos da CPU tm-se nveis TTL. Os conversores
RS 232/TTL necessitam de fontes de alimentao de +12 V e -12 V; os mais consagrados so: 1488
e 1489.
CAPTULO XI PLACA DE TESTES
11 - 14 MICROCONTROLADORES (MCS-51)
Pareceria que para poder operar com a porta serial conectada ao PC deveramos ligar a
Placa de Testes a duas fontes extras (+12 V e - 12 V). Mas com isto a placa se tornaria grande
porque seriam necessrios dois transformadores extras. Mas o que se busca uma placa simples
que permita receber programas do PC e no uma porta serial perfeita.
Converter para TTL os sinais RS 232 gerados por um PC fcil com a utilizao de um
transistor. A figura 11.10 ilustra um circuito que converte RS 232 em TTL. Se a entrada PC_TX est
em +12 V, o transistor se satura e a sada RXD vai a zero; por outro lado, se a entrada PC_TX est
em -12 V, o transistor estar cortado e, devido ao resistor de pull up (R14), a sada vai para VCC. O
diodo D12 aumenta a velocidade de transistor quando este faz a transio da saturao para o corte.

VCC
R14
10K
R13
10K D12
1N4148
Q2
2N2222
PC TX
RXD
(RS 232)
(TTL)

Figura 4.10. Conversor de RS 232 para TTL.

H algumas tolerncias na porta serial do PC, as quais podero ser aproveitadas para
simplificar o conversor TTL/RS 232. O primeiro tpico que a porta serial do PC interpreta como
tenso positiva qualquer valor entre +3 V e +12 V. Com isto, podemos utilizar os +5 V da placa em
substituio fonte de +12 V. O mesmo valido para as tenses negativas, ou seja, a porta serial do
PC interpreta como tenso negativa qualquer valor entre -12 V e -3 V. A figura 4.8 ilustra estas faixas
de tenso.

+12 V
+3 V
0
-3 V
-12 V
FAIXA
POSITIVA
"+12 V"
FAIXA
NEGATIVA
"-12 V"

Figura 11.10. Faixas de tenso toleradas pela porta serial do PC.

CAPTULO XI PLACA DE TESTES
MICROCONTROLADORES (MCS-51) 11 - 15
Se houvesse uma fonte de -12 V disponvel a converso de TTL para RS 232 seria muito
simples. A figura 11.11 ilustra o emprego de um transistor para converter os nveis. Quando o sinal
TXD do 8031 est em 1, o transistor estar cortado e a sada PC_RX vai para -12 V; quando o sinal
TXD est em zero, o transistor se satura e a sada PC_RX vai para +5 V.

VCC
R10
10K
Q1
PN2907
R11
4K9
-12V
TXD
PC_RX
(TTL)
(RS 232)

Figura 11.11. Circuito para converter nveis TTL para nveis RS 232.

O problema agora : onde conseguir uma fonte de -12 V ? H um truque que se pode
usar: uma sada RS 232 quando inativa est com uma tenso negativa (usualmente -12 V), ou seja, o
sinal PC_TX quando no usado estar apresentando uma tenso de -12 V. Esta mesma sada,
quando comea a transmitir apresenta pulsos de +12 V e de -12 V. Se for usado um circuito capaz de
separar as tenses negativas, ser obtida uma fonte que pode substituir a fonte de -12 V. A figura
11.12 ilustra este circuito. Notar que o diodo D11 conectado a PC_TX separa as tenses negativas,
que so armazenadas no capacitor C10. Quando h tenses positivas, esse diodo estar cortado. O
diodo D10 est em paralelo com o capacitor para garantir que as tenses nunca cheguem a um valor
positivo. Um circuito deste tipo consegue fornecer uma tenso prxima de -6 V, mas que suficiente
para que o conversor TTL/RS 232 funcione.

CAPTULO XI PLACA DE TESTES
11 - 16 MICROCONTROLADORES (MCS-51)
VCC
R10
10K
Q1
PN2907
R11
4K9
D11
1N4148
D10
1N4148
C10
100uF
PC_TX
PC_RX
TXD
(RS 232)
(RS 232)
(TTL)
FONTE NEGATIVA

Figura 11.12. Conversor TTL/RS 232 com a fonte negativa.

Agora possvel fazer as converses RS 232 e TTL que so necessrias para que a
porta serial opere. Cabe lembrar que este conversor muito limitado e que funciona apenas a
distncias pequenas. Deve-se testar quando for empregado a distncias maiores e com velocidades
mais altas. O esquema completo da interface serial (serial.sht) est no item 11.2.
Para complementar o presente texto, apresentada na figura 11.13 uma tabela com as
funes dos pinos para os conectores de 9 pinos e 25 pinos.


NOME DIR. 25 PINOS 9 PINOS DESCRIO
TD 2 3 Transmitir dados
RD 3 2 Receber dados
DSR 6 6 Conjunto de dados pronto
DTR 20 4 Terminal de dados pronto
RTS 4 7 Solicitao para enviar
CTS 5 8 Livre para enviar
DCD 8 1 Deteco de portadora
RI 22 9 Indicador de chamada
TERRA 7 5 Terra de sinal
TERRA P. 1 Terra de proteo
Figura 11.13. Descrio dos sinais dos conectores seriais.

CAPTULO XI PLACA DE TESTES
MICROCONTROLADORES (MCS-51) 11 - 17
Para economizar espao na placa, usa-se um adaptador como fonte de alimentao. O
adaptador responsvel por gerar uma tenso retificada, mas no regulada, na faixa de 7,5 a 10 V.
O regulador da placa (LM7805) responsvel por gerar os 5 volts regulados. Normalmente os
adaptadores so de m qualidade e geram uma tenso que depende da corrente; quanto mais
corrente se necessita, menor a tenso. Para evitar uma dissipao de potncia muito grande sobre
o regulador, recomenda-se testar com diversas tenses, iniciando por uma bem baixa como, por
exemplo, 3V. Os capacitores C17 e C18 so usados para garantir a regulao.
Para a fonte de alimentao de 25 V, que usada somente quando se grava a EPROM
das CPUs, usa-se uma fonte externa que deve fornecer 25 V. O capacitor C19 usado, por
segurana, para garantir a regulao. Se for usada uma fonte boa, esse capacitor no ser
necessrio. A figura 11.14 ilustra as duas fontes de alimentao.

VCC
C18
47uF
VI
G
N
D
VO
U16
LM7805
C17
470uF
J1
PHONEJACK
(ENTRADA 9V DC)
12V
12V
25V
C19
47uF/30V
25V/IN
(ENTRADA 25V DC)

Figura 11.14. Fontes de alimentao de 5 V e 25 V.


11.5. ESQUEMA DO GRAVADOR

Para o gravador de EPROM se buscou um projeto que permitisse gravar todas as CPUs
8751 e 8752. Portanto, foi feita uma anlise de que sinais seriam necessrios para cada pino. A
figura 11.15 apresenta uma tabela com todos os pinos e os sinais necessrios. Por essa figura se
pode concluir que o pino *EA/VPP o mais difcil pois, de acordo com a CPU, deve fornecer 3 nveis
de tenso: 21 / 12,75 / 5 V. Pelo pino ALE/*PROG enviam-se pulsos de 50 ms para a gravao
standard ou pulsos de 100 s para a gravao usando "quick pulse programming".

CAPTULO XI PLACA DE TESTES
11 - 18 MICROCONTROLADORES (MCS-51)
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
VCC
P0
7
0
*EA/VPP
ALE/*PROG
*PSEN
P2
7
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
P1
7
0
P3
7
0
RST
XTAL2
XTAL1
GND
5V
D0
P1
D1
D2
D3
D4
D5
D6
D7
5/21 V
L/H
L/H
X
X
A11
A10
A9
A8
A0
A2
A3
A4
A5
A6
A7
H
4-6 MHz
A1
4-6 MHz
X
X
X
X
X
X
5V
D0
P2
D1
D2
D3
D4
D5
D6
D7
5/12,75 V
L/H
L/H
X
X
A11
A10
A9
A8
5V
D0
P2
D1
D2
D3
D4
D5
D6
D7
L/H
L/H
X
A12
A11
A10
A9
A8
A0
A2
A3
A4
A5
A6
A7
H
4-6 MHz
A1
L/H
L/H
4-6 MHz
X
X
X
X
X
X
A0
A2
A3
A4
A5
A6
A7
H
4-6 MHz
A1
L/H
L/H
4-6 MHz
X
X
X
X
X
X
5/12,75 V
X
X
P1 um pulso de 50 milisegundos
P2 um pulso de 100 microsegundos
8751H 8751BH
87C51
8752BH 8751H 8751BH
87C51
8752BH
SOCKET
ZERO
FORCE

Figura 11.15. Sinais necessrios para gravar os diferentes tipos de microcontroladores com EPROM.

A parte mais difcil deste gravador a gerao das tenses de programao (5 V, 12,75
V e 21 V). Alm disso, deve-se ter um controle digital sobre essas tenses. A soluo obtida com o
uso do LM317 (regulador ajustvel), que tem a capacidade de manejar tenses de 1,2 V at 37 V. A
figura 11.16 ilustra o emprego deste CI.

R2
Vin Vout
ADJ
R1
Iadj
I1
LM317
Vref
V2
I2
Vout

Figura 11.16. Uma sugesto de emprego do LM317.

CAPTULO XI PLACA DE TESTES
MICROCONTROLADORES (MCS-51) 11 - 19
Quando em operao, o LM317 apresenta uma tenso nominal de referncia de 1,25 V
entre a sada e o pino de ajuste. Essa tenso de referncia gerada atravs do resistor R1 e como a
tenso constante, a corrente I2 flui pelo resistor R2 gerando a tenso de sada Vout. A corrente Iadj
representa um erro e o dispositivo est preparado para minimiz-la; esta corrente tem um valor tpico
de 100 A. O equacionamento muito simples e feito a seguir:

Iadj R2 +
R1
R2
+ 1 Vref = Vout
Iadj +
R2
Vref
R2 + Vref = Vout
Iadj
R1
Vref
R2 = I2 R2 = V2
Iadj
R1
Vref
= Iadj + I1 = I2
V2 + Vref = Vout

+
+


O que se pretende descobrir que valores de R2 se deve ter para as tenses de 5 V,
12,75 V e 21 V. O equacionamento a seguir apresenta uma expresso genrica para R2.

Iadj +
R1
Vref
Vref - Vout
= R2

Quando so usados os valores tpicos do fabricante (lista abaixo), tem-se:
(Vref=1,25 V Iadj = 100 A R1 = 220 )

R2 =
Vout - 1, 25
5, 782
K


A tabela da figura 11.17 apresenta os valores de resistncia necessrios para gerar as
tenses de interesse.



CAPTULO XI PLACA DE TESTES
11 - 20 MICROCONTROLADORES (MCS-51)
TENSO R2
21 V 3,416 k
12,75 V 1,989 K
5 V 649
Figura 11.17. Valores de R2 para gerar as diversas tenses.

A maneira mais simples de gerar essas 3 tenses conectar ao LM317 esses trs
valores de resistores e controlar seu caminho para terra com transistores. Pode-se usar buffers no
inversores com coletor aberto. A figura 11.18 ilustra este circuito. Deve-se notar que o resistor
responsvel pelos 21 V est permanentemente conectado terra, ou seja, quando se desabilita os
dois transistores a sada vai a 21 V. preciso saber os valores de resistores que, em paralelo com o
resistor de R16, permitam gerar as outras tenses. Na verdade o calculo simples.
Para 12 V: [1/3416 + 1/R18 = 1/1989] R18 = 4,761 K.
Para 5 V : [1/3416 + 1/R17 = 1/649] R17 = 800 .
Para permitir um ajuste preciso das tenses usam-se potencimetros para cada resistor.
claro que primeiro se ajusta o potencimetro dos 21 V e em seguida os outros dois.


25 - 30 V
1 2
U11A
7407
VI
G
N
D
VO
U15
LM317
VOUT
R16
220
POT2
220
POT3
1K
R18
3K9
R17
720
3 4
U11B
7407
V12
V5
OS POTs SERO CALIBRADOS PARA:
R16 + POT3 = 3416
POT1
1K
R16
2K7
R17 + POT2 = 4761
R18 + POT3 = 800
1/3416 + 1/4761 = 1/1919
1/3416 + 1/800 = 1/649
COLOCAM-SE RESISTORES EM PARALELO

Figura 11.18. Gerao das tenses de 21 V; 12,75 V e 5V.

CAPTULO XI PLACA DE TESTES
MICROCONTROLADORES (MCS-51) 11 - 21
No item 11.2 est o esquema completo do gravador de EPROM (GRAV.SHT). O 8255
responsvel pela conexo com os dados da EPROM, a gerao dos endereos e alguns sinais de
controle; o 8255 (PC7) vai tambm gerar o pulso de programao. O 74LS373, alm de alguns sinais
de controle, tambm controla o regulador LM317, gerando as diversas tenses. Como j foi estudado,
a porta P0 no tem pull up interno e portanto tornam-se necessrios os resistores de 10 K para
realizar o pull up externo. O bit P1.7, quando em zero, permite que se escreva no 8255 e o bit P1.6,
quando em zero, permite que se escreva no 75LS373. Logo depois do RESET, P1.7 e P1.6 estaro
em nvel 1, quer dizer, os dois CIs (8255 e 373) estaro desabilitados. Nunca se deve operar com os
dois CIs habilitados ao mesmo tempo pois uma escrita vai escrever nos dois simultaneamente.

Potrebbero piacerti anche