Buscar

MicroProc e MicroContr 02

Prévia do material em texto

1
1º semestre 2018 – pg. 1
Universidade Paulista – UNIP
Engenharia Elétrica
02 – Arquitetura Básica 8051
Microprocessadores e Microcontroladores
Prof. Me. José Ricardo G. Pinheiro
jrgpinheiro@feb.unesp.br
Microprocessadores e Microcontroladores
pg. 2UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
Microprocessador x Microcontrolador
CPU
I/O Timer
RAM ROM
Porta
Serial
Microcontrolador
RAM ROM PORTAde
I/O
TIMER
PORTA
SERIAL
CPU
Micropro 
cessador 
uso geral
Barramento de Dados
Barramento de Endereços
Microprocessador
2
Microprocessadores e Microcontroladores
pg. 3UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
Escolhendo um µµµµ-controlador
• Características do µ-controlador
• Velocidade de processamento
• Dimensão
• Consumo de energia
• Memórias: RAM, ROM
• Pinos de I/O
• AD´s, Timers
• Upgrade para melhorar desempenho ou para versões de baixo consumo
• Custo, etc.
• Ferramentas de Desenvolvimento de Software
• Assembler
• Debugger
• Compiladores – C, Basic, Ladder
• Emulador
• Suporte técnico
• Disponibilidade & Fonte
Microprocessadores e Microcontroladores
pg. 4UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
Empresas que estão produzindo o 8051
Empresa Site na Internet
Intel www.intel.com/design/mcs51
Atmel www.atmel.com
Philips/Signetics www.semiconductors.philips.com
Siemens www.sci.siemens.com
Dallas Semiconductor www.dalsemi.com
3
Microprocessadores e Microcontroladores
pg. 5UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
O 8051 por dentro
AT89C51 da Atmel
Microprocessadores e Microcontroladores
pg. 6UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
O 8051 por fora – encapsulamento DIP40
• DIP40: plastic dual in-line package; 40 leads
4
Microprocessadores e Microcontroladores
pg. 7UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
O 8051 por fora – encapsulamento PLCC44
• PLCC44: plastic leaded chip carrier; 44 leads
Microprocessadores e Microcontroladores
pg. 8UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
Descrição da Pinagem
Vcc (40) → Alimentação de +5 V
Vss (20) → Terra
P0 (32-39) → Porta 0 (AD0...AD7). Além de porta paralela, está multiplexada com o 
bus de dados e o byte menos significativo (LSB) do bus de endereços. 
P2 (21-28) → Porta 2 (A8...A15). Além de porta paralela, está multiplexada com o 
byte mais significativo (MSB) do bus de endereços. 
P1 (1-8) → Porta 1. 
P3 (10-17) → Porta 3. Compartilhada com uma série de recursos 
P3.0 → RXD, entrada serial
P3.1 → TXD, saída serial
P3.2 → *INT0, interrupção externa 0
P3.3 → *INT1, interrupção externa 1
P3.4 → T0, entrada para o timer 0 (contador neste caso)
P3.5 → T1, entrada para o timer 1 (contador neste caso)
P3.6 → *WR, escrita na memória de dados externa
P3.7 → *RD, leitura na memória de dados externa
5
Microprocessadores e Microcontroladores
pg. 9UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
Descrição da Pinagem 
RST (9) → Reset. Com o oscilador funcionando, deve ser mantido um nível alto 
durante 24 períodos de clock ou 2 ciclos de máquina.
ALE/PROG (30) → Address Latch Enable. Pulso para acionar o latch que captura o 
LSB do endereço (com sua borda ascendente). Também é usada na gravação 
da ROM interna.
*PSEN (29) → Program Store Enable. Pulso de leitura para a Memória de 
Programa Externa. Quando o programa está sendo executado na memória de 
programa externa ele aparece como 1/6 da frequência de clock. 
*EA/VPP (31) → External Access Enable. Informa à CPU se o programa está na 
Memória de Programa Externa ou na ROM Interna. Também usado para 
gravação da ROM Interna.
*EA = 1 (Vcc) → (0000H - 0FFFH) ROM Interna
→ (1000H - FFFFH) Memória de Programa Externa
*EA = 0 (Vss) → (0000H - FFFFH) Memória de Programa Externa
XTAL1 (19) → Entrada do amplificador inversor do oscilador interno. 
XTAL2 (20) → Saída do amplificador inversor do oscilador interno.
Microprocessadores e Microcontroladores
pg. 10
Família 8051
• Comparação entre os membros da Família do 8051
Recursos 8051 8052 8031 
ROM (memória de programa interna, em 
bytes) 4K 8k 0k
RAM (bytes) 128 256 128
Timers 2 3 2
Pinos de I/O 32 32 32
Porta Seriais (UART/USART) 1 1 1
Fontes de Interrupção 6 8 6
UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
6
Microprocessadores e Microcontroladores
pg. 11
Vários microcontroladores 8051
• Microcontrolador 8751
• UV-EPROM
• AT89C51/2/3 da Atmel Corporation (Microchip)
• Flash (erase/write)
• Os anões da Atmel Corporation
• AT89C1051 (CHIP - 18 pinos)
• AT89C2051 (CHIP - 20 pinos)
• DS5000 da Dallas Semiconductor
• NV-RAM (changed one byte at a time), RTC (real-time clock)
• OTP (one-time-programmable) versão do 8051
• Família 8051 da NXP (Philips)
• A/D, D/A, I/O estendido, OTP e flash
UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
Microprocessadores e Microcontroladores
pg. 12UNIP - Campus Bauru - Engenharia Elétrica
Vários microcontroladores de arquitetura 8051
µC UV-EPROM 8751
AT89C2051 e alguns de 
seus encapsulamentos
(SOIC, PLCC e DIP)
µC piggyback 87P50
7
Microprocessadores e Microcontroladores
pg. 13
Clock
UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
Microprocessadores e Microcontroladores
pg. 14
Reset
C3
10 uF
9 RST
VCC VCC
R1
100R
R2
8K2
CONDIÇÕES DE RESET
REG VALOR
PC 0000H
ACC 00H
B 00H
PSW 00H
SP 0007H
DPTR 0000H
Circuito de (Auto) Reset
UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
8
Microprocessadores e Microcontroladores
pg. 15
Pinos para ROM/RAM Externos
ALE
31
P0.0-P0.7
AD0-AD7
P2.0-P2.7
A8-A15
17
29
16
30
39-32
RD
WR
PSEN
EA
21-28
P3.7
P3.6
8051/8031
VCC/GND
UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
Microprocessadores e Microcontroladores
pg. 16
Pinos para ROM/RAM Externos
D Q
G
OEPSEN
P2.0-P2.7
ALE
P0.0-P0.7 D0-D7
A0-A7
A8-A15
8051
EPROM
EA 74LS373
UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
9
Microprocessadores e Microcontroladores
pg. 17
RAM Externa
D Q
G
WWR
P2.0 (A8)
ALE
P0 D0-D7
A0-A7
A9
8051
RAM
1K
EA
74LS3373
P2.1 (A9)
RD OE
CS
A8
“1”
UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
Microprocessadores e Microcontroladores
pg. 18
• Porta P1
• Possui exclusivamente a função de porta de entrada ou saída (I/O).
Configuração dos pinos das Portas
UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
10
Microprocessadores e Microcontroladores
pg. 19
• Porta P3
• Além da função de porta de entrada e saída, têm-se ainda as diversas funções 
alternativas: *RD, *WR, T0, T1, TXD, RXD, *INT0, *INT1.
Configuração dos pinos das Portas
UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
Microprocessadores e Microcontroladores
pg. 20
• Porta P2
• Além da função de porta de entrada e saída, também fornece o byte mais
significativo dos endereços.
Configuração dos pinos das Portas
UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
11
Microprocessadores e Microcontroladores
pg. 21
• Porta P0
• Esta porta é a mais complexa pois atende a três funções:
• bus de dados da CPU
• byte menos significativo dos endereços
• porta paralela (bidirecional verdadeira)
Configuração dos pinos das Portas
UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
Microprocessadores e Microcontroladores
pg. 22Port 0: I/O, Coletor Aberto
Esta porta inicialmente é configurada como porta de saída
Para operação como porta de saída necessita de resistores de PULL-UP
P0.0-P0.7
AD0-AD7
39-32
8051/8031
Vcc Vcc Vcc Vcc Vcc Vcc Vcc Vcc
D0 D1 D2 D3 D4 D5 D6 D7
UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru
12
Microprocessadores e Microcontroladores
pg. 23
Um exemplo de operação com portas
EXEMPLO 2.1
Escrever um programa que faça o seguinte:
a) Fica monitorando o estado do pino P1.2
b) Quando vai para nível alto, escreve 45H na P0
c) Envia uma transição de alto-para-baixo em P2.3 
SOLUÇÃO:
SETB P1.2 ; faz P1.2 operar como entrada
MOV A,#45H ; A=45H
AGAIN: JNB P1.2,AGAIN ; verifica estado de P1.2
MOV P0,A ; escreve A em P0
SETB P2.3 ; P2.3=HIGH
CLR P2.3 ; P2.3=LOW
JMP $ ; fica em loop
UNIP – Universidade Paulista – Engenharia Elétrica – Campus Bauru

Continue navegando