Sei sulla pagina 1di 30

Aula 02 Microcontrolador 8051

Microcontrolador 8051:

Fonte: CORRADI 2009


Sistemas Microprocessados

Aula 02 Microcontrolador 8051

O Microcontrolador 8051:
Comeou a ser produzido no incio da dcada de 80,

pela Intel;
Hoje fabricado por vrias empresas e com muitas

variaes;
Atualmente, alguns modelos, possuem vrios perifricos

integrados, como: Conversores A/D, PWM, interfaces


seriais, IC, SPI, CAM, decodificador MP3, etc.;
Possuem vrias configuraes de memria interna;

Sistemas Microprocessados

Aula 02 Microcontrolador 8051

Caractersticas Bsicas (Nicolosi 2008):


Palavras de 8 bits;

Capacidade para enderear at 64 kbytes de ROM

(memria de programa);
Capacidade para enderear at 64 kbytes de RAM

(memria de dados);
256 bytes de memria RAM interna, das quais 128 so

usadas para implementar os registradores do 8051.


Assim, somente 128 bytes esto disponveis para dados
e pilha;
Sistemas Microprocessados

Aula 02 Microcontrolador 8051

Caractersticas Bsicas (continuao):


Pelo menos dois timers/counters configurveis que

podem trabalhar em 4 modos distintos;


Uma porta serial (UART);

Quatro portas de I/O;

Seis tipos de interrupo;

Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Estrutura Interna:

Fonte: CORRADI 2009


Sistemas Microprocessados

Aula 02 Microcontrolador 8051

Estrutura Interna (continuao):


ALU (Unidade Lgica e Aritmtica): circuito responsvel

pela execuo das operaes lgicas e aritmticas do


microcontrolador;
ACC (Acumulador): registrador de 8 bits usado como

base de quase todas as operaes;


Registrador B: registrador auxiliar em algumas

operaes aritmticas;

Sistemas Microprocessados

Aula 02 Microcontrolador 8051

Estrutura Interna (continuao):


SP (Stack Pointer Ponteiro da Pilha): contm o

endereo da prxima posio a ser utilizadas para


guardar dados na pilha;
PSW (Registrador de Flags Program Status Word):

contm vrios bits que indicam o estado do


microcontrolador;

Sistemas Microprocessados

Aula 02 Microcontrolador 8051

Estrutura Interna (continuao):


PC (Program Counter ou Contador de Programa):

contm o endereo da prxima instruo a ser


executada;
DPTR (Data Pointer Ponteiro de Dados): registrador

de 16 bits usado para acessar dados nas memrias


externas (tanto na memria de programa quanto na
memria de dados). formado por dois registradores de
8 bits (DPH e DPL);

Sistemas Microprocessados

Aula 02 Microcontrolador 8051

Estrutura Interna (continuao):


Ports 0,1,2 e 3: registradores de 8 bits que do acesso

aos pinos de I/O;


IE (Registro de controle de Interrupo Interrupt

Enable): permite habilitar ou desabilitar as interrupes


individulamente;
IP (Registrador de prioridade de Interupo Interrupt

Priority): determina o nvel de prioridade de cada


interrupo, que pode ser alto ou baixo;

Sistemas Microprocessados

Aula 02 Microcontrolador 8051

Estrutura Interna (continuao):


TH0, TL0, TH1 e TL1: registradores dos timers 0 e 1.

Cada par TH+TL formam um temporizador/contador, que


pode trabalhar de quatro modos distintos;
TMOD (Timer Mode Register): configura o modo de

trabalho dos temporizadores/contadores;


TCON (Timer Control Register): controla a operao dos

temporizadores/contadores e das interrupes dos


temporizadores/contadores e interrupes externas;

Sistemas Microprocessados

Aula 02 Microcontrolador 8051

Estrutura Interna (continuao):


SBUFF: (Serial Buffer): um registrador duplo que

armazena o byte a ser transmitido e o byte recebido pela


interface serial;
SCON: (Serial Port Control Register): controla o modo

de funcionamento da porta serial;


PCON (Power Control Register): configura o 8051 em

alguns modos de economia de energia;

Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Famlias do 8051 (Bsicas):
8031 - 0KB ROM, 128B RAM, 2 T/C;
8051 - 4KB ROM, 128B RAM, 2 T/C;
8751 - 4KB EPROM, 128B RAM, 2 T/C;
8032 - 0KB ROM, 256B RAM, 3 T/C;
8052 - 8KB ROM, 256B RAM, 3 T/C;
8752 - 8KB EPROM, 256B RAM, 3 T/C;
80C31, C51, C32 e C52 - CMOS, Low Power;

Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Famlias do 8051 (Avanadas):
80LV31, LV51, LV32 e LV52 - Low Voltage;
89C51 e 89C52 - Flash EPROM, 24MHz;
89C1051, C2051 e C4051 - 20 terminais;
89S5x - Flash ISP, 24MHz;
89S8252 8kB de Flash ISP, 2kB de EEPROM, Watchdog,
interface SPI;
80C320 - Clock Otimizado (33MHz x 3);
C505L - 32KB ROM, 512B RAM, 10B A/D, LCD;
P51XA-G3, H3 e S3 - Arquitetura de 16 bits;
Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Pinagem do 8051:
Pinagem para um encapsulamento de 40 pinos:

Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Pinagem do 8051 (continuao):
P0.0 a P0.7: pinos de entrada e sada do Port 0. Tambm

so usados como barramento de dados e como parte baixa


do barramento de endereos (quando for usada memria
externa). Estes pinos so FETs em dreno em aberto,
necessitam de resistores de pull-up;
P1.0 a P1.7: pinos de entrada e sada do Port 1;

P2.0 a P2.7: pinos de entrada e sada do Port 2. Tambm

so usados como barramento de dados e como parte alta


do barramento de endereos (quando for usada memria
externa);
Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Pinagem do 8051 (continuao):
P3.0 a P3.7: pinos de entrada e sada do Port 3. Cada bit

deste port tambm possui as seguintes funes alternatvas:


RxD: P3.0, pino de recepo de dados da porta serial;

TxD: P3.1, pino de transmisso de dados da porta serial;

Int0 e Int1: P3.2 e P3.3, pinos de interrupo externa;

T0 e T1: P3.4 e P3.5, pinos de clock para os

temporizadores/contadores internos;
WR e RD: P3.6 e P3.7, usado para controle de escrita e leitura

da memria externa;

Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Pinagem do 8051 (continuao):
Xtal1 e Xtal2: pinos para o cristal do oscilador interno;

RST: pino de reset do microcontrolador, ativo em 1;

EA/VPP (External Address): ativo em nvel baixo, utiliza

somente a memria de programa externa. Quando em nvel


alto (1) utiliza a memria interna. Tambm usado no
processo de programao da memria EPROM interna;
ALE/PROG (Address Latch Enable): gera o pulso de

armazenamento da parte baixa do endereo do port 0,


quando for usada a memria externa;
Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Organizao de Memria:
Abaixo est descrito a organizao de memria geral para

a famlia 8051. Na prtica cada componente possui a sua


prpria organizao:

At 64 kbytes de Memria ROM (EPROM, FLASH);

128 bytes de memria RAM;

Registradores mapeados em memria (endereos F0 a FF


da memria RAM interna);

Alguns modelos implementam memria EEPROM interna


para dados permanentes;

Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Organizao de Memria:
Memria de Programa: quando o pino EA = 0, acessa a
memria externa, quando EA=1, acessa a memria interna
at o seu limite, depois acessa a memria externa.
FFFF

FFFF
Memria
de
Programa
Externa

Memria
de
Programa
Externa

1FFF
Memria
de
Programa
Interna
0000

Pino EA = 0
Sistemas Microprocessados

0000
Pino EA = 1

Aula 02 Microcontrolador 8051


Organizao de Memria:
Memria de Dados: dividida em trs regies: memria
interna (128 bytes), registros internos (128 bytes) e
memria externa, at 64 kbytes;
FF
Registros
de
funes
especiais
7F

FFFF

Memria
de
Dados
Externa

Memria
de
dados
Interna
0000

Sistemas Microprocessados

0000

Aula 02 Microcontrolador 8051


Organizao de Memria:
A memria de dados interna (os primeiros 128 bytes) possui
trs regies com funes especficas, mas pode ser
totalmente usada como memria de dados comum:

Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Organizao de Memria:
A primeira regio da memria interna composta de quatro
banco com 8 registradores cada um. Estes registradores
so nomeados como R0, R1, R2, R3, R4, R5, R6 e R7.

Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Organizao de Memria:
A segunda regio da memria
interna, cujos endereos vo
de 20h a 2Fh, so tambm
endereadas bit a bit. As
instrues que trabalham com
bits acessam estes bits
diretamente e seus endereos
(dos bits) vo de 00h a 7Fh.

Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Organizao de Memria:
A segunda parte memria de dados interna (os ltimos 128
bytes) possuem funes especiais, so os registradores do
8051:
FF
Registros
de
funes
especiais
80

Memria
de
dados
Interna
0000
Sistemas Microprocessados

F0h Registro B
E0h Acumulador Acc
D0h Program Status Word PSW
B8h Interrupt Priority IP
B0h Porta 3 de E/S P3
A8h Interrupt Enable - IE
A0h Porta 2 de E/S P2
99h Serial Buffer BUF
98h Serial Control SCON
90h Porta 1 de E/S P1
8Dh Timer High 1 H1
8Ch Timer High 0 H0
8Bh Timer Low 1 TL1
8Ah Timer Low 0 TL0
89h Timer Mode TMOD
88h Timer Control TCON
87h Power Control PCON
83h Data Pointer High DPH
82h Data Pointer Low DPL
81h Stack Pointer SP
80h Porta 0 de E/S P0

Aula 02 Microcontrolador 8051


Acesso a Memria Externa:
Como o barramento de dados e a parte baixa do endereo
multiplexada no port 0, necessrio um circuito externo
para separar os endereos dos dados:

Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Acesso a Memria Externa:
O ciclo de leitura da memria de programa externa dado
pelo diagrama de tempos abaixo:

Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Acesso a Memria Externa:
O ciclo de leitura da memria de dados externa dado
pelo diagrama de tempos abaixo:

Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Acesso a Memria Externa:
O ciclo de escrita da memria de dados externa dado
pelo diagrama de tempos abaixo:

Sistemas Microprocessados

Aula 02 Microcontrolador 8051


Perifricos mapeados em memria:
Um perifrico mapeado em memria um perifrico
que usa uma faixa de endereos de memria para ser
acessado. Na figura abaixo temos um exemplo:

Sistemas Microprocessados

CORRADI 2009: www.corradi.junior.nom.br; acesso


em 28.09.2009;
NICOLOSI 2008: Nicolosi, Denis Emlio Campion e
Bronzeri, Rodrigo Barbosa. Microcontrolador 8051
com linguagem C: prtico e didtico: famlia
ATS89S8252 atmel. 2 edio. So Paulo: rica
2008.

Potrebbero piacerti anche