Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Introduo Pg. 02
Estrutura Pg. 04
Contadores/Temporizadores Pg. 06
Bibliogrfia Pg. 10
1
Introduo
Falaremos nesse projeto sobre o MCS-51 mais conhecido Intel 8051, falaremos da sua
histria, da famlia 8051, suas principais caractersticas e formas de aplicaes.
Este projeto foi baseado em arquivos, livros e apostilas, contedo buscados via internet,
nosso objetivo foi busca da melhor forma expressar o que o MCS-51 foi e o que
representa no cenrio mundial, um dos microcontroladores mais populares do mundo,
sua fcil programao tambm bastante conhecida.
2
Microcontrolador e Microprocessador
Um microcontrolador um componente que tem, num nico chip, CPU, elementos tais
como memrias ROM e RAM, temporizadores/contadores, PWM, conversor AD, canais
de comunicao e conversores analgico-digitais. Est caracterstica diferencia os
sistemas baseados microcontroladores daqueles baseados em microprocessadores,
onde normalmente se utilizam vrios componentes para implementar essas funes.
Como isso, os microcontroladores permitem a implementao de sistemas mais
compactos e baratos do que aqueles baseados em microprocessadores.
Famlia 8051
O Intel MCS-51 (comumente chamado de Intel 8051) faz parte de uma famlia de
microcontroladores de 8 bits laada pela Intel em meados de 1980. conhecido pela
sua facilidade de programao, utilizando a linguagem Assembly ou at mesmo a
linguagem C. tido como o microcontrolador mais popular do mundo, pois existem
milhares de aplicaes para o mesmo, e existem pelo menos dois mil fabricantes
produzindo variantes e clones do modelo. A Intel iniciou a produo do 8051 em 1981.
Em 1982 foram produzidos 2 milhes de unidades, em 1985 foram 18 milhes e em
1993, 126 milhes. As variantes do 8051 como o 8031 (sem memria ROM interna e
com apenas 128 bytes de memria RAM), o 8751 (4kB de memria EPROM) e o 8052
(8kB de memria ROM, um terceiro timer e 256 bytes de memria RAM) a menos dessas
diferenas, os modelos citados so idnticos.
3
formas mutuamente excludentes: 4kB internos (ROM no 8051) e mais 60 kB externos;
64 kB externos; 4 portas bidirecionais de I/O, cada um com 8 bits individualmente
endereveis, duas dessas portas (P0 e P2) e parte de uma terceira (P3) ficam
comprometidas no caso de ser utilizar qualquer tipo de memria externa; 2
temporizadores/ contadores de 16 bits; 1 canal de comunicao serial; 5 fontes de
interrupo ( dois timers, dois pinos externos e o canal de comunicao serial) com 2
nveis de prioridade selecionveis por software; oscilador de clock interno. As
caractersticas citadas so bsicas e formam o ncleo da famlia 8051.
Os aspecto externo do 8051 os pinos com nomes da forma P0.0, P0.1, etc.
correspondem s quatros portas de E/S (P0 A P3). As portas P0 e P2 ficam com dupla
utilidade, pois ficam comprometidas com o uso da memria externa, assim como os
pinos P3.6 e P3.7. O sinal ALE (Address Latch Enable) permite fazer a demultiplexao
de dados e endereos na porta P0. Atravs do sinal PSEN (program storage enable), o
controlador informa o mundo externo se a operao em andamento uma leitura de
instruo (acesso memria de programa) ou um acesso memria de dados. Este
sinal permite que o processador tenha duas regies distintas de memria externa, uma
para armazenar cdigo e outra para dados. Ambas ocupam os endereos de 0 a FFFFH
(64Kb) num total de 128kB.
4
Estrutura
A famlia MCS-51 da Intel, foi desenvolvida utilizando a tecnologia NMOS, suas verses
posteriores so identificadas por uma letra C em seu nome (por exemplo, 80C51),
desenvolvidas com a tecnologia CMOS, garantindo a estes dispositivos um menor
consumo de energia quando alimentados por bateria.
Em sua composio interna, tambm possui uma memria ROM, que tida
exclusivamente para armazenar o programa que a CPU executar. Sua utilizao
tornou-se invivel para alguns projetistas da poca, pois como as aplicaes precisavam
ler e gravar dados em tempo de execuo, era preciso que uma memria RAM externa
fosse utilizada. Em alguns casos, o Intel 8052 foi usado como alternativa, o mesmo
que o Intel 8051, exceto com outro temporizador, RAM e ROM adicionais.
Organizao da Memria
Os 4KB mais baixos da memria de programa podem residir tanto internamente no chip
como na memria externa. A seleo feita pelo pino EA (External Access). Quando
EA=1, a CPU busca as instrues de endereos 0x0000 a 0x0FFF na ROM interna e as
instrues de endereos 0x1000 a 0xFFFF na memria externa.
Memria de Dados: o 8051 pode acessar dados tanto na Memria Interna como na
Memria Externa de dados. A Memria Externa de Dados pode ter at 64 Kbytes e
acessada atravs da instruo MOVX. A Memria interna de Dados do 8051 composta
por 2 blocos de 128 bytes. O bloco inferior 0x00 at 0x7F usado como RAM e pode
ser endereado direto ou indiretamente. O bloco superior 0x80 a 0xFF um espao
reservado para mapear os registradores de funes especiais da CPU (SFR). Este bloco
s pode ser acessado diretamente.
5
O bloco inferior da Memria Interna de Dados 0x00 a 0x7F dividido em 3 partes:
Contadores/Temporizadores
Modo 0: Este modo configura o Timer 0/1 como um contador de 8 bits (THx) com um
prescaler de 5 bits. Quando houver overflow, isto , quando a contagem passar de
todos 1s para todos 0s, o flag de interrupo TF1 setado.
Modo 2: O modo 2 configura o Timer 0/1 como um contador de 8 bits (TL1) com recarga
automtica (auto-reload). O modo 2 o mesmo para o Timer 0 e 1. O registrador TH1
(8 bits) contm o valor de recarga, que transferido ao TL1 a cada overflow. O bit TF1
(interrupo interna) setado a cada overflow. O valor de recarga inicializado em TH1
por software.
6
Modo 3: Este modo s tem efeito sobre o Timer 0. O Timer 1, quando configurado neste
modo, simplesmente mantm seu valor (como se TR1=0). O Timer 0, quando
configurado no modo 3, opera como dois contadores de 8 bits separados (TL0 e TH0).
O registrador TL0 utiliza os bits de controle de Timer 0 (GATE, C/T, TR0), a entrada
INT0 e ativa o flag de interrupo TF0. O TH0, por outro lado, opera somente como
temporizador (contador de Ciclos de Mquina) e utiliza o bit TR1 (do Timer 1) para seu
controle. Alm disso, o TH0 ativa o flag TF1 em seu overflow. Quando o Timer 0 estiver
programado no modo 3, o Timer 1 poder ser programado nos modos 0, 1 e 2, com a
restrio de no setar o flag TF1 e, portanto, no gerar interrupes de contagem. O
Timer 1, neste caso, poder gerar interrupes para a porta serial, definindo a taxa de
transmisso (baud-rate).
Porta Serial
O 8051 possui uma interface serial full-duplex duplamente bufferizada que pode ser
programada para operar nos modos sncrono ou assncrono com taxa de transmisso
varivel e quadro de transmisso de 8, 10 ou 11 bits. A transmisso/recepo serial
feita atravs dos pinos TXD (P3.1) e RXD (P3.2). O pino RXD amostrado
periodicamente e quando a porta serial detecta um start-bit vlido, o dado
correspondente carregado no registrador SBUF.
Modo 0: Transmisso sncrona com taxa de transmisso fixa. O pino RXD usado como
entrada e sada dos dados enquanto o pino TXD emite o sinal de clock para a
transmisso. Modo 1: Transmisso/Recepo assncrona com quadro de 10 bits (1 start
bit, 8 bits de dados, e 1 stop bit). Os bits so transmitidos atravs de TXD e recebidos
por RXD. Na recepo, o stop bit carregado no bit RB8 do registrador SCON. A taxa
de transmisso varivel. Modo 2: Transmisso/Recepo assncrona com quadro de
11 bits (1 start bit, 8 bits de dados, 1 bit de paridade, e 1 stop bit). O bit de paridade (TB8
do registrador SCON) pode ser atribudo por software antes da transmisso fazendo
TB8 <- PSW.0. Na recepo, o bit de paridade carregado em RB8 e o stop bit
ignorado. A taxa de transmisso pode ser programada para 1/32 ou 1/64 da frequncia
do oscilador. Modo 3: Transmisso/Recepo assncrona com quadro de 11 bits. O
modo 3 igual ao modo 2 exceto pela taxa de transmisso, que varivel.
Em todos os modos, a transmisso serial inicia por uma instruo que utiliza o SBUF
como registrador de destino. A recepo inicia, no modo 0, quando RI = 0 e REN = 1 e
7
nos outros modos quando for detectado um start bit e REN = 1. O registrador SCON
contm os bits de controle da porta serial.
Estrutura de Interrupo
O 8051 possui uma estrutura de interrupo com 5 fontes e o 8052 prov 6 fontes de
interrupo e dois nveis de prioridade. As fontes de interrupo so: Timer 0; Timer
1; Timer 2 (apenas no 8052); Porta Serial; Interrupo Externa 0 (INT0);
Interrupo Externa 1 (INT1). As interrupes externas INT0 e INT1 cada uma delas
podem ser ativadas pelo nvel ou pela transio de nvel, dependendo dos bits IT0 e IT1
no registrador TCON. Os flags que atualmente gera estas interrupes so os bits IE0
e IE1 de TCON. Quando uma interrupo externa gerada, o flag que geram zerado
pelo hardware quando a rotina de servio vetorizada para somente se a interrupo
est ativada pela transio. Se a interrupo est ativada pelo nvel, ento a origem de
requisio externa que controla o flag de requisio.
Modos de Endereamento
Endereamento Direto:
Endereamento Indexado:
8
Endereamento Direto via Registrador:
Os bancos de registradores, que contm R0 a R7, podem ser acessados por instrues
que possuem um campo de 3 bits para especificar o registrador endereado. O
operando da instruo o valor contido no registrador.
Endereamento Implcito:
9
Bibliogrfia
https://pt.wikipedia.org/wiki/Intel_8051
http://user.das.ufsc.br/~werner/eel7030/8051/Apostila8051Hari.pdf
files.professorferlin.webnode.com.br/200000338.../apostila%208051.pdf
Referncias Bibliogrficas
PREDKO, Myke. Programming and Customizing the 8051 Microcontroller. 1. ed. New
York - NY: McGraw-Hill, 1999. ISBN 0-07-134192-7.
10
11