Buscar

Apostila microprocessadores

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 23 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 23 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 23 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Microcontrolador 8051
Alcides Silveira CostaAlcides Silveira Costa
AlexAlex Silveira Martins Silveira Martins
Cristina CunhaCristina Cunha
ElbioElbio Renato Torres Renato Torres Abib Abib
RafaelRafael Zan Zan
Roberto Roberto DrebesDrebes
Família, Fabricantes e
Aplicações
Rafael Zan
! CPU de 8-bits otimizada para aplicações de controle
! Processamento Booleano Amplo (lógica Single-bit)
! Espaço de endereçamento de Memória de Programa de 64K
! Espaço de endereçamento de Memória de Dados de 64K
! 4K bytes de Memória de Programa on-chip
! 128 bytes de RAM de Dados on-chip
! 32 linhas de I/O programáveis
! Dois contadores/timer de 16-bits
! UART Full duplex
! Estrutura de interrupção com dois níveis de prioridade
! Oscilador de relógio On-chip
Características do 8051 Chip do 8051
Arquitetura Básica em Blocos do 8051
Organização das Estruturas internas do
Microprocessador 8051
Bloco de Interrupção, Timer e Serial
! além dos registradores da figura também fazem parte deste bloco
registradores como P0, P1, P2, P3, IE ...
!Existem registradores de uso casado como
! A+B, DPH+DPL,TH0+TL0,TH1+TL1
PSW UART
Temperatura Ambiente.................................................-40°C a +125ºC
Temperatura de Armazenamento.................................-65ºC a +150ºC
Voltagem no ~EA/Pino VPP para VSS....................................0V a +13V
Voltagem em quaisquer outros pinos .............................-0,5V a +6,5V
IOL por Pino de I/O.......................................................................15 mA
Dissipação de Potência................................................................1,5 W
Taxas Máximas Absolutas
Símbolo Parâmetro Min-Max Unidade
VIL Voltagem de Entrada Baixa (Exceto ~EA) -0,5 ! 0,2 VCC-0,25 V
VIL1 Voltagem de Entrada Baixa para ~EA 0 ! 0,2 VCC-0,45 V
VIH Voltagem de Entrada Alta (Exceto XTAL1,RST) 0,2VCC+1,0! VCC+0,5 V
VIH1 Voltagem de Entrada Alta (XTAL1,RST) 0,7VCC+0,1! VCC+0,5 V
VOL Voltagem de Saída Baixa (Portas 1, 2, 3) 0,45 V
VOL1 Voltagem de Saída Baixa (Portas 0,ALE,~PSEN) 0,45 V
VOH Voltagem de Saída Alta (Portas 1, 2, 3, ALE, ~PSEN) 2,4 ou 0,9VCC V
VOH1 Voltagem de Saída Alta (Porta 0 no Modo de
Barramento Externo)
2,4 ou 0,9VCC V
IIL Corrente de Entrada Lógica 0 (Portas 1, 2, 3) -75 µA
ITL Corrente de Transição Lógica 1-para-0 (Portas 1, 2, 3) -750 µA
ILI Corrente de Entrada de Fuga (Porta 0) ±10 µA
ICC Corrente de Alimentação de Energia:
Modo Ativo a 12MHz
Modo de Espera Idle
Modo de Power Down
≡ 11,5
≡ 1,3
≡ 3
mA
mA
µA
RRST Resistor de Reset Interno 50 ! 300 KΩ
CIO Capacitância do Pino 10 pF
Características DC
Componentes da linha 8051
- 8031AH, 8051AH, 8051AHP, 8751H, 8751BH
Componentes da Família (linhas):
- 8052, 80C51, 8XC52/54/58, 8XC52/54/58, 
8XC51FA/FB/FC, 8XL51FA/FB/FC, 8XC51GX, 
8XC152, 8XC51SL
Componentes da Família MCS 51 Características dos Componentes do MCS 51
Memória
Roberto Jung Drebes
Memória
❚ O 8051 possui 4kB de memória de
programa internos (ROM), podendo-se
ainda utilizar 64kB externos (8031 não
possui ROM interna).
❚ Possui RAM interna e possibilidade de
RAM externa, com espaços de
endereçamento distintos (instruções
distintas).
Memória
❚ Mapeia em memória registradores, portas
de I/O, ponteiros do sistema,
temporizadores.
❚ Os endereços de 0x00 a 0x20 são 4
bancos de registradores com 8
registradores cada.
❚ Os endereços de 0x21 a 0x30 podem ser
endereçados bit a bit ou byte a byte.
Memória
❚ O pino PSEN é elevado a 1 para acessos a
memória interna, ficando em 0 em
acessos a memória externa.
❚ O sinal ALE é utilizado para enviar o
endereço a ser acessado na memória
externa a um latch. Esse endereço vem
do registrador DPTR.
Entrada e Saída
Alex Targanski Medeiros
Entrada e Saída
Capacidades de I/O:
 A família 8051 possui as seguintes capacidades de I/O “nativas”, variáveis
conforme o modelo:
" 32 Portas de I/O endereçáveis individualmente, divididas em 4 portas de 8 bits
mapeadas em RAM com bits individualmente endereçáveis (58 ou 24 portas
dependendo do modelo):
P0(80h), P1(90h), P2(A0) e P3(B0)
" 1 UART Full-Duplex
" Modelos com 4 ou 8 Canais A/D
" Modelos com 10 ou 5 Canais PCA
Entrada e Saída
O 8051 “standard” possui 1 canal serial bem como 4 entradas e
saídas de 8 bits, sendo 2 para memória externa (caso utilizada).
Entrada e Saída
Acesso às portas
Pode ser feito a byte, com instruções normais de movimentação
de dados (endereçamento direto) ou utilizando instruções de bit.
Endereçamento direto entre os endereços 80h e FFh acessa os
registradores especiais e portas de I/O, enquanto que endereçamento
indireto acessa a memória.
Por exemplo:
MOV 80H,#0AAH
escreve o valor hexa 0AAH na porta 0, enquanto que
MOV R0,#80H
MOV @RO,#OBBH
escreve o valor hexa 0BBH no endereço de memória 80h.
Entrada e Saída
Acesso às portas - confusão à vista
Para tornar as coisas ainda mais estranhas, existem endereços
que referencia-se a BIT e a BYTE.
MOV 80H, C bit 0 da porta 0 = carry
MOV 80H,#0AAH exemplo anterior
Entrada e Saída
Acesso às portas - ainda
mais confusão
As portas do 8051 tem ainda
mais uma particularidade:
São compostas basicamente
por um flip-flop e um latch.
Dependendo da instrução, o
conteúdo lido pode ser a saída do FF
(pino direto) ou a saída do latch.
Aparentemente o resultado
deveria ser o mesmo, mas observe o
esquema elétrico:
Entrada e Saída
Acesso às portas
A finalidade disto é permitir
que as portas funcionem como I e
também como O.
Escrevendo-se nível 1 na
saída, pode-se forçar o nível 0
externamente e ler este nível com a
instrução apropriada.
Assim, as instruções que
lêem e modificam a porta operam no
latch, e as que só lêem operam no
pino direto.
Entrada e Saída
Portas multifuncionais de I/O
Quase todas são “multifuncionais”, ou seja, podem ser utilizadas
tanto para I/O comum endereçável a bit quanto para sua função
“especial”, como no caso de acesso à memória externa, com as portas 0,
2 e 3:
 Porta 0: " dados e parte baixa dos endereços multiplexados
 Porta 2: " parte alta dos endereços
 Porta 3: " WR e RD (write strobe e read strobe para mem. dados)
Combinações extremas:
" 1 Portas de I/O (8 bits em P1) + 6 bits da P3 + 64K ROM + 64K RAM (EXTERNAS)
" 4 Portas de I/O + 128bits RAM + 4K ROM (INTERNAS)
Entrada e Saída
Portas multifuncionais de I/O
 Utilizando uma ROM Externa:
 " ~EA em 0: mem. ext. programas para 8051
 " ~PSEN : habilita acesso à ROM externa
 Neste caso temos 64K ROM, e as
portas 0 e 2 completamente ocupadas.
 Utilizando uma RAM Externa:
 " ~EA em 1: mem. interna programas para 8051
 " ~RD e ~WR: sinalizam o acesso à RAM
 Neste caso temos 4K ROM + 2K RAM, e
ocupadas as portas: P0 (totalmente), P2
(bits 0,1,2) e P3 (bits 6,7)
Entrada e Saída
Entrada e Saída
Portas multifuncionais de I/O
 P0 - Se for utilizada memória externa (RAM ou ROM) fica ´perdida´.
 P2 - Cada 28+2n bits de endereço externo além de 256 utilizam n bits desta.
 P3 - Se memória RAM externa for usada, perde-se os bits 6 e 7 (WR/RD).
 Resumo da Ópera:
A memória externa consome muito da capacidade de I/O nativa
Entrada e Saída
Portas multifuncionais de I/O
 Além das funções especiais já vistas, ainda temos as portas 1 e parte
da P3, que têm as seguintes funções ´especiais´:
Porta 1:
 """" bit 0: T2 Timer/Counter2 external input
 " bit 1: T2EX Timer/Counter2 Capture/Reload trigger
 (Apenas no 8052)
Porta 3:
"""" bit 0: RXD (serial input port) bit 4: T0 (Timer/Counter 0 external input)
"""" bit 1: TXD (serial output port) bit 5: T1 (Timer/Counter 1 external input)
"""" bit 2: INTO (external interrupt) bit 6: WR (externalData Memory write strobe)
"""" bit 3: INT1 (external interrupt) bit 7: RD (external DataMemory read strobe)
Entrada e Saída
Porta 3 - Comunicação Serial
 É feito pelos bits 0 e 1 de P3:
"""" bit 0: RXD (serial input port)
"""" bit 1: TXD (serial output port)
Comunicação serial síncrona ou assíncrona, full-duplex, com buffer
de leitura.
Possui vários modos de operação:
"""" Modo 0: síncrono, RXD transmite/recebe, TXD é o clock, opera 8 bits. Taxa 1/12.
"""" Modo 1: assíncrono, 10bits: 1 start, 8 data, 1 stop. Taxa programável.
"""" Modo 2: assíncrono, 11bits: start, 8 data, 1 programável, stop. Taxa 1/32 ou 1/64.
"""" Modo 3: igual ao modo 2, mas com taxa programável.
Entrada e Saída
Porta 3 - Comunicação Serial
 A transmissão/recepção é feita pelo registro especial SBUF (desde
que a taxa e demais configurações estejam OK):
"""" Escreve em SBUF: transmite o dado (byte)
"""" Lê SBUF: recebe o dado (byte)
Para controlar o I/O serial, temos os registros especiais SCON e
PCON, que controlam o modo de operação e taxa de transmissão,
além do nono bit dos modos 2 e 3 e outros.
Entrada e Saída Entrada e Saída
Porta 3 - Registro SCON
Entrada e Saída
Porta 3 - Registro PCON
Na verdade, o único bit
que interessa em PCON é o bit 0,
já que os outros são bits de
controle de energia (PCON =
Power Control Register).
O Bit 0 dobra a taxa de
transmissão nos modos 1, 2 e 3.
Porta 3 - Formato dos dados
 Modo 0:
Síncrono, 8 bits, taxa alta (1/12 clock)
Modo 1:
Assíncrono, 10bits: 1 start, 8 data, 1 stop,
com taxa programável.
Entrada e Saída
Entrada e Saída
Porta 3 - Formato dos dados
 Modo 2 e 3:
Assíncrono, 11bits: 1 start, 8 data, 1
programável, 1 stop. Taxa 1/32 ou 1/64
(modo 2) ou programável (modo 3). 
Entrada e Saída
Porta 3 - Comunicação entre vários 8051
Os modos 2 e 3 foram feitos especialmente para a
intercomunicação de 8051s.
Neste modo, pode ser gerada uma interrupção caso o nono bit
seja 1; assim, no modelo mestre-escravo, basta o mestre enviar o
endereço de um microcontrolador com nono bit 1, o micro
selecionado ficará pronto para recepção, e os dados seguintes
serão enviados com nono bit 0.
Entrada e Saída
Expandindo o I/O:
+ 512 portas
Utilizando I/O mapeada em memória e os
últimos 256 bytes de endereçamento
externo, podemos criar uma expansão de
512 portas para o 8051 (256 entrada +
256 saída).
Note que, além do hardware básico, ainda
são precisos outros chips, como demux e
latches, para efetivamente usar as 512
portas.
As desvantagens do sistema é que
aumentam muito o número de
componentes do mesmo, e o tempo de
acesso às portas de I/O feitas desta
maneira é o dobro do tempo das portas
“nativas”.
Entrada e Saída
Expandindo o I/O:
+ 1 porta com a serial
Utilizando um contador de
deslocamento e um latch para
proteção contra ruídos, podemos
“criar” mais uma porta a partir da
saída serial (bits 0 e 1 da porta 3).
No modo 0 (síncrono), basta escrever
na serial o valor desejado na saída, e
pronto!
Note a necessidade de controle adicional
por software (P1 bit 0) que efetivamente
transfere o valor do contador para o latch.
Entrada e Saída
Expandindo o I/O: saída analógica
Com um conversor do tipo R/2R podemos ter uma saída analógica para uma porta livre ou
mapeada em memória, como é o caso da figura.
Conjunto de Instruções
Elbio Renato Torres Abib
Conjunto de Instruções
❚ Modos de endereçamento
❚ Status do Programa
❚ Instruções aritméticas
❚ Instruções Lógicas
❚ Instruções para transferência de dados
❚ Instruções de jump
Modos de endereçamento
❚ Visão da memória para o programador
Modos de endereçamento
❚ Registradores
especiais -->
❚ Registradores de
uso geral
Modos de endereçamento
❚ Endereçamento direto
❚ Endereçamento indireto
8 bits
RAM
de
Dados
Interna
RAM
de
Dados
Externa
R0
R1
SP
DPTR (16 bits)
Modos de endereçamento
❚ Endereçamento de registradores
❙ opcodes específicos : 3 bits (R0 a R7)
❙ operador implícito : ex. Acumulador, DPTR, ...
❚ Endereçamento imediato
❙ constantes seguem o opcode na memória de programa
❚ Exemplos
Modos de endereçamento
Bits endereçáveis diretamente
Status do Programa (PSW)
❚ CY também serve como acumulador em operações booleanas
❚ RS0 e RS1 selecionam um dos 4 bancos de registradores
BCD
Instruções aritméticas
Instruções Lógicas Instruções Lógicas(bits)
Xor
Instruções para
transferência de dados Instruções de JUMP
Instruções
observação
Pequena ortogonalidade
Instruções de tamanho variável(1-3 bytes)
Interrupções
Interrupções Interrupções
Interrupções
Timers e contadores
Timers e contadores Timers e contadores
Família, Fabricantes e
Aplicações
Alcides Silveira Costa
A Família MCS-51A Família MCS-51A Família MCS-51A Família MCS-51
❚ No início da década de 80, a INTEL, que já tinha lançado o
microcontrolador 8048, lançou uma nova família, herdeira do 8048,
intitulada 8051, também de 8 bits.
❚ Inicialmente ela lançou o “8051” com ROM interna programável
de fábrica, o “8751” com EPROM interna programável pelo
usuário e o “8031” com necessidade de ter chips de EPROM
externa.
❚ Após alguns anos, a família se expandiu para o”8052”, que tem
um timer a mais que o 8051 e suas variações: com EPROM
(8752) e sem ROM/EPROM (8032), e uma versão especial do 8052,
chamado 8052-BASIC, que tem dentro de sua ROM um
interpretador BASIC que permite programá-lo também em
linguagem BASIC (BASIC-52).
A Família MCS-51A Família MCS-51A Família MCS-51A Família MCS-51 A Família MCS-51A Família MCS-51A Família MCS-51A Família MCS-51
A Família MCS-51A Família MCS-51A Família MCS-51A Família MCS-51 A Família MCS-51A Família MCS-51A Família MCS-51A Família MCS-51
❚ Boolean Processing – Processador Booleano (opera com bits);
❚ One Level Memory Lock – Permite o usuário proteger o seu
programa embutido na EPROM contra ataques de pirataria de
software (1 lock bit). Quando habilitado, nega qualquer espécie de
acesso elétrico para a leitura da memória de programa interna (a
verificação da EPROM é desabilitada, o dispositivo não pode ser
mais programado e não pode executar código da memória
externa);
❚ Two Level Memory Lock – Consiste de um array de criptografia
(Encrypt Array) de 32 bytes (estado inicial com todos 1s, XNOR) e 2
lock bits com 3 níveis de segurança com criptografia (verificação
habilitada, verificação habilitada e movc desabilitado para as
memórias de programa externa, o mesmo que anterior e
verificação desabilitada);
A Família MCS-51A Família MCS-51A Família MCS-51A Família MCS-51
❚ Three Level Memory Lock – Consiste de um Encrypt Array de 64
bytes e 3 lock bits com 4 níveis de segurança com criptografia
(verificação habilitada, verificação habilitada e movc desabilitado
para as memórias de programa externa, o mesmo que anterior e
verificação desabilitada, o mesmo que o anterior e memória de
programa externa não pode ser executada);
❚ Power Save Modes - Versão CHMOS do MCS-51 possuem dois
modos de baixo consumo de energia (Idle e Power Down);
❚ Up-Down Timer/Counter - Timer 2 pode ser configurado para
incrementar ou decrementar (nas linhas que possuem o Timer 2);
❚ Expanded RAM – 512 bytes de RAM interna (256 a mais que o da
versão anterior);
A Família MCS-51A Família MCS-51A Família MCS-51A Família MCS-51
❚ WatchDog timer – quando ativado incrementa seu registrador a
cada ciclo de máquina, resetando o dispositivo quando houver
estouro (14 bits). Usado em aplicações sujeitas a descargas
elétricas;
❚ Programmable Counter Array - consiste de um
temporizador/contador de 16 bits e cinco módulos de
comparação/captura, também de 16 bits. Os módulos de
comparação/captura podem ser programados em cinco modos
diferentes (risingand/or falling edge capture, software timer, high
speed output, pulse width modulator e watchdog timer);
❚ Programmable Clock Out - P1.0 (porta 1 pino 0) pode servir de
gerador de clock, variando de 61 Hz a 4 MHz (trabalhando a uma
freqüência de operação de 16 MHz);
A Família MCS-51A Família MCS-51A Família MCS-51A Família MCS-51
❚ 8 Channel 8 bit A/D - conversor analógico digital. Possui 8
canais de entrada analógicas para um mesmo conversor. A
seleção do canal é feita por um multiplexador;
❚ Em 1994, a Intel a lançou a família MCS-251, um upgrade a
antiga família MCS-51. Incorporando novas características,
permitia execução de instruções em pipeline, até 24 bits de
endereçamento (16 Mbytes) e barramentos de código de 16
bits.
❚ Contudo, o salto entre MCS-51 e MCS-251 foi muito grande e
uma nova família, intitulada MCS-151 foi lançada em abril de
1996 para preencher o espaço tecnológico e financeiro entre as
duas arquiteturas (custo/benefício);
❚ Ambas famílias MCS-151 e MCS-152 mantêm compatibilidade
com o original MCS-51.
A Família MCS-51A Família MCS-51A Família MCS-51A Família MCS-51
❚ Outros fabricantes têm autorização de fabricar o 8051, como a
Atmel, Dallas, Temic, Philips, Siemens, Advanced Microcontroller
Device, Fujitsu, e Oki.
❚ AT89LV55 - 2.7-Volt, 80C32 com 20 Kbytes de memória Flash;
❚ AT89C51 - 80C31 com 4Kbytes de memória Flash;
❚ AT87F52 QuickFlash - 80C32 com 8K bytes de OTP QuickFlash;
❚ AT89C2051 - 2.7-Volt, 80C31 com 2Kbytes de Flash e
encapsulamento de 20 Pinos;
❚ AT87F51RC Preliminary - 80C32 com 512 bytes SRAM e 32K
bytes OTP QuickFlash.
FabricantesFabricantesFabricantesFabricantes
❚ DS87C520 - 87C51/87C52 com 16 Kbytes de EPROM e 1Kbyte de
SRAM;
❚ DS87C550 – 80C51 com 8 canais A/D de 10 bits, 4 canais PWM de
8 bits;
❚ DS80C323 – 80C31/80C32 com baixo consumo de potência;
❚ DS80C390 – 80C51 com capacidade de endereçamento de
4Mbytes (memória externa), co-processador matemático de 16/32
bits;
❚ DS80C320 – 801C31/80C32 com dois ponteiros para dados;
FabricantesFabricantesFabricantesFabricantes
FabricantesFabricantesFabricantesFabricantes
❚ 83C552/80C552 – 8 canais A/D de 10 bits, 2 saídas PWM;
❚ P87LPC764 - 4K bytes de OTP ROM com 128 bytes of SRAM (20
pinos);
❚ XAS3 – 32 Kbytes de EPROM, 1024 bytes de
RAM e 50 pinos de I/O (palavras de 16 bits);
❚ A extensão “XA” significa microcontroladores
de 16 bits (eXtensive Architecture);
❚ T89C51RD2 - compatível com 80C52 (Tecmic);
❚ C513AO – compatível 8051 padrão (Siemens).
AplicaçõesAplicaçõesAplicaçõesAplicações
❚ O microcontrolador 83C51FA pode ser utilizado eficientemente para
controlar um motor de corrente contínua (CC) com o mínimo de
hardware;
❚ Conceitos básicos de um motor (FB = i L x B, força sobre uma
corrente);
❚ Em muitos casos , precisão absoluta em movimentos não é
necessário, mas velocidade constante sim. Por exemplo, um motor
CC em um toca-fitas deve manter velocidade angular constante. Ele
não precisa parar exatamente em um certo ponto, em contraponto
com um ploter de alta resolução. Motores de passo são utilizados
nestas aplicações.
AplicaçõesAplicaçõesAplicaçõesAplicações
❚ Normalmente, aplicações que utilizam motores CC requerem
variação na sua velocidade e inversão no sentido de rotação;
❚ A inversão do sentido de rotação é facilmente adquirida invertendo-
se a polaridade da tensão nos terminais do motor;
AplicaçõesAplicaçõesAplicaçõesAplicações
❚ Variar a velocidade significa variar a tensão nos terminais do motor;
❚ Em um sistema digital, o sinal analógico para o amplificador deve
vir de alguma forma de conversor D/A, significando um
componente a mais no circuito e, conseqüentemente, maior custo e
consumo;
❚ Uma alternativa pode ser utilizar a saída PWM (pulse width
modulator) do 83C51FA, variando a tensão média entregue ao
motor;
❚ O 83C51 pode ser configurando para utilizar até saídas 5 PWM ao
mesmo tempo (possui um PCA com 5 módulos);
❚ O PCA possui um timer principal compartilhado com os demais
módulos que pode ter até 4 diferentes taxas de contagem
(oscillator frequency / 12, oscillator frequency / 4, Timer 0
overflow, external input on ECI (P1.2).);
AplicaçõesAplicaçõesAplicaçõesAplicações AplicaçõesAplicaçõesAplicaçõesAplicações
❚ Alguns pinos da porta 1 são utilizados por cada módulo do PCA
para se comunicar com o mundo exterior;
❚ Quando os módulos do PCA não estão em uso, os pinos da porta 1
são utilizados como pinos de I/O normalmente;
❚ Os cada módulo do PCA pode trabalhar em cinco modos diferentes
de operação. Um desses modos é o PWM;
❚ Cada módulo possui um registrador de modo de 8 bits (CCAPMn) e
um registrador de captura/comparação, de 16 bits, chamado
CCAPnL & CCAPnH;
❚ CCAPMn deve ser setado apropriadamente para trabalhar no modo
PWN;
AplicaçõesAplicaçõesAplicaçõesAplicações AplicaçõesAplicaçõesAplicaçõesAplicações
❚ Primeiramente, o clock do PCA timer/counter deve ser definido (osc
freq/12, osc freq/4, timer 0 overflow e external clock);
❚ Para definir o clock, outros registradores são utilizados (CCON,
CMOD e CCAPMn);
AplicaçõesAplicaçõesAplicaçõesAplicações
 MOV CMOD,#06 ; timer input external
 MOV CCAPM2,#42H ; put the module in PWM mode.
 MOV CCAP2H,#0 ; 0 provides 100% duty cycle (5V)
 SETB CR ; turn timer on
❚ No exemplo acima, o modulo 2 foi se-
lecionado para fornecer um sinal PWM
para o amplificador do motor. Um clock
externo foi selecionado para a entrada do
timer.
AplicaçõesAplicaçõesAplicaçõesAplicações
❚ Quando usamos o 83C51FA pouco hardware é necessário para o
controle de um motor CC;
❚ Apenas é necessário um driver, pois o microcontrolador não tem
como fornecer a corrente e a tensão necessária para o motor;
AplicaçõesAplicaçõesAplicaçõesAplicações
❚ Driver circuit – através do sinal proveniente do microcontrolador
(83C51FA) entrega a corrente e a tensão necessária para o
funcionamento do motor;
❚ Um exemplo de driver circuit pode ser da serie L293, podendo
fornecer 1A quando ligado a uma tensão de 36V. Através de
entradas lógicas pode ser controlado para habilitar e desabilitar o
fornecimento de corrente para o motor;
❚ Ruído elétrico – motores geram ruído elétrico suficiente para
atrapalhar a performance do controlador. Logo, capacitores ajudam
a eliminar o ruído proveniente do motor e devem ser adicionados
ao circuito;
AplicaçõesAplicaçõesAplicaçõesAplicações
AplicaçõesAplicaçõesAplicaçõesAplicações
❚ Podemos ter um controle maior do motor através de uma linha de
realimentação proveniente de um sensor detector de movimento
contido no motor;
❚ Esse sensor pode ser
 do tipo sensível ao campo
 magnético;
❚ Algum cuidado deve ser
tomado para que a distância
entre o imã e o sensor não
seja muito grande;
AplicaçõesAplicaçõesAplicaçõesAplicações
❚ O 83C51FA pode utilizar o sinal proveniente da realimentação para
determinar a velocidade e a posição do motor. Logo, podemos fazer
ajustes, variando a velocidade, revertendo a rotação ou parando o
motor;
❚ A cada momento que o imã passa na frente do sensor, um pulso é
gerado e mandado para a porta 1 pino 6 do microcontrolador
(interface externa do módulo 3 do PCA);
❚ No exemplo a seguir, o módulo 3 do PCA é setado para trabalhar
no modo de captura, sensível a borda de subida;
❚ O tempo ente duas capturas consecutivas correspondem a meia
revolução. Isso nos fornece informação suficiente para calcular a
velocidade atual do motor. Usando esse método podemos, por
exemplo, sincronizá-lo com outro evento;
AplicaçõesAplicaçõesAplicaçõesAplicações AplicaçõesAplicaçõesAplicaçõesAplicações
AplicaçõesAplicaçõesAplicaçõesAplicações BibliografiaBibliografiaBibliografiaBibliografia
❚ 8051 Microcontrolador Detalhado;
❚ Aplicações Práticas do Microcontrolador 8051 – Vidal Pereira da
Silva Jr;
❚ Fundamentos de Física 3 –David Halliday e Robert Resnick - 3ª
edição;
❚ Máquinas Elétricas – A. E. Fitzgerald, Charles Kingsley e Alexander
Kusko;
❚ www.intel.com, www.dalsemi.com, www.philips.com,
www.atmel.com ...

Outros materiais