Você está na página 1de 30

Aula 02 – Microcontrolador 8051

Microcontrolador 8051:

Fonte: CORRADI 2009

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051

O Microcontrolador 8051:

Começou a ser produzido no início da década de 80,
pela Intel;

Hoje é fabricado por várias empresas e com muitas
variações;

Atualmente, alguns modelos, possuem vários periféricos
integrados, como: Conversores A/D, PWM, interfaces
seriais, I²C, SPI, CAM, decodificador MP3, etc.;

Possuem várias configurações de memória interna;

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051

Características Básicas (Nicolosi 2008):



Palavras de 8 bits;

Capacidade para endereçar até 64 kbytes de ROM
(memória de programa);

Capacidade para endereçar até 64 kbytes de RAM
(memória de dados);

256 bytes de memória RAM interna, das quais 128 são
usadas para implementar os registradores do 8051.
Assim, somente 128 bytes estão disponíveis para dados
e pilha;

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051

Características Básicas (continuação):



Pelo menos dois timers/counters configuráveis que
podem trabalhar em 4 modos distintos;

Uma porta serial (UART);

Quatro portas de I/O;

Seis tipos de interrupção;

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Estrutura Interna:

Fonte: CORRADI 2009


Sistemas Microprocessados
Aula 02 – Microcontrolador 8051

Estrutura Interna (continuação):



ALU (Unidade Lógica e Aritmética): circuito responsável
pela execução das operações lógicas e aritméticas do
microcontrolador;

ACC (Acumulador): registrador de 8 bits usado como
base de quase todas as operações;

Registrador B: registrador auxiliar em algumas
operações aritméticas;

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051

Estrutura Interna (continuação):



SP (Stack Pointer – Ponteiro da Pilha): contém o
endereço da próxima posição a ser utilizadas para
guardar dados na pilha;

PSW (Registrador de Flags – Program Status Word):
contém vários bits que indicam o estado do
microcontrolador;

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051

Estrutura Interna (continuação):



PC (Program Counter ou Contador de Programa):
contém o endereço da próxima instrução a ser
executada;

DPTR (Data Pointer – Ponteiro de Dados): registrador
de 16 bits usado para acessar dados nas memórias
externas (tanto na memória de programa quanto na
memória de dados). É formado por dois registradores de
8 bits (DPH e DPL);

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051

Estrutura Interna (continuação):



Ports 0,1,2 e 3: registradores de 8 bits que dão acesso
aos pinos de I/O;

IE (Registro de controle de Interrupção – Interrupt
Enable): permite habilitar ou desabilitar as interrupções
individulamente;

IP (Registrador de prioridade de Interupção – Interrupt
Priority): determina o nível de prioridade de cada
interrupção, que pode ser alto ou baixo;

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051

Estrutura Interna (continuação):



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 operação dos
temporizadores/contadores e das interrupções dos
temporizadores/contadores e interrupções externas;

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051

Estrutura Interna (continuação):



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

Famílias do 8051 (Básicas):


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
Famílias do 8051 (Avançadas):
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 (continuação):

P0.0 a P0.7: pinos de entrada e saída do Port 0. Também
são usados como barramento de dados e como parte baixa
do barramento de endereços (quando for usada memória
externa). Estes pinos são FETs em dreno em aberto,
necessitam de resistores de pull-up;

P1.0 a P1.7: pinos de entrada e saída do Port 1;

P2.0 a P2.7: pinos de entrada e saída do Port 2. Também
são usados como barramento de dados e como parte alta
do barramento de endereços (quando for usada memória
externa);
Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Pinagem do 8051 (continuação):

P3.0 a P3.7: pinos de entrada e saída do Port 3. Cada bit
deste port também possui as seguintes funções alternatvas:

RxD: P3.0, pino de recepção de dados da porta serial;

TxD: P3.1, pino de transmissão de dados da porta serial;

Int0 e Int1: P3.2 e P3.3, pinos de interrupção 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 memória externa;

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Pinagem do 8051 (continuação):

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 nível baixo, utiliza
somente a memória de programa externa. Quando em nível
alto (1) utiliza a memória interna. Também é usado no
processo de programação da memória EPROM interna;

ALE/PROG (Address Latch Enable): gera o pulso de
armazenamento da parte baixa do endereço do port 0,
quando for usada a memória externa;

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Organização de Memória:

Abaixo está descrito a organização de memória geral para
a família 8051. Na prática cada componente possui a sua
própria organização:

Até 64 kbytes de Memória ROM (EPROM, FLASH);

128 bytes de memória RAM;

Registradores mapeados em memória (endereços F0 a FF
da memória RAM interna);

Alguns modelos implementam memória EEPROM interna
para dados permanentes;

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Organização de Memória:
Memória de Programa: quando o pino EA = 0, acessa a
memória externa, quando EA=1, acessa a memória interna
até o seu limite, depois acessa a memória externa.
FFFF FFFF

Memória
de
Programa
Memória Externa
de
Programa
Externa 1FFF
Memória
de
Programa
Interna
0000 0000
Pino EA = 0 Pino EA = 1

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Organização de Memória:
Memória de Dados: é dividida em três regiões: memória
interna (128 bytes), registros internos (128 bytes) e
memória externa, até 64 kbytes;
FF FFFF

Registros
de
funções
especiais
Memória
de
7F Dados
Externa
Memória
de
dados
Interna
0000 0000

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Organização de Memória:
A memória de dados interna (os primeiros 128 bytes) possui
três regiões com funções específicas, mas pode ser
totalmente usada como memória de dados comum:

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Organização de Memória:
A primeira região da memória interna é composta de quatro
banco com 8 registradores cada um. Estes registradores
são nomeados como R0, R1, R2, R3, R4, R5, R6 e R7.

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051

Organização de Memória:

A segunda região da memória


interna, cujos endereços vão
de 20h a 2Fh, são também
endereçadas bit a bit. As
instruções que trabalham com
bits acessam estes bits
diretamente e seus endereços
(dos bits) vão de 00h a 7Fh.

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Organização de Memória:
A segunda parte memória de dados interna (os últimos 128
bytes) possuem funções especiais, são os registradores do
8051:
F0h Registro B
E0h Acumulador – Acc
D0h Program Status Word – PSW
FF B8h Interrupt Priority – IP
B0h Porta 3 de E/S – P3
Registros A8h Interrupt Enable - IE
de A0h Porta 2 de E/S – P2
funções 99h Serial Buffer – BUF
especiais 98h Serial Control – SCON
90h Porta 1 de E/S – P1
80 8Dh Timer High 1 – H1
8Ch Timer High 0 – H0
8Bh Timer Low 1 – TL1
8Ah Timer Low 0 – TL0
Memória
89h Timer Mode – TMOD
de 88h Timer Control – TCON
dados 87h Power Control – PCON
Interna 83h Data Pointer High – DPH
82h Data Pointer Low – DPL
0000
81h Stack Pointer – SP
80h Porta 0 de E/S – P0
Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Acesso a Memória Externa:
Como o barramento de dados e a parte baixa do endereço
é multiplexada no port 0, é necessário um circuito externo
para separar os endereços dos dados:

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Acesso a Memória Externa:
O ciclo de leitura da memória de programa externa é dado
pelo diagrama de tempos abaixo:

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Acesso a Memória Externa:
O ciclo de leitura da memória de dados externa é dado
pelo diagrama de tempos abaixo:

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Acesso a Memória Externa:
O ciclo de escrita da memória de dados externa é dado
pelo diagrama de tempos abaixo:

Sistemas Microprocessados
Aula 02 – Microcontrolador 8051
Periféricos mapeados em memória:
Um periférico mapeado em memória é um periférico
que usa uma faixa de endereços de memória 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 Emílio Campion e
Bronzeri, Rodrigo Barbosa. Microcontrolador 8051
com linguagem C: prático e didático: família
ATS89S8252 atmel. 2ª edição. São Paulo: Érica
2008.

Você também pode gostar