Você está na página 1de 40

MICROCONTROLADOR 8051

Prof. Ricardo Brando Sampaio ricardo@cefetam.edu.br

MODELO DE SISTEMA DIGITAL

Um sistema digital qualquer sistema para o processamento da informao em que esta consiste em sinais discretos.

Sinal Digital um sinal eltrico que varia no tempo, mas s pode assumir determinados valores entre sua amplitude mnima e mxima.

MODELO DE SISTEMA DIGITAL

Para a onda sinusoidal direita, podemos verificar que os valores quantiados em momentos de amostragem so:

7, 9, 11, 12, 13, 14, 14, 15, 15, 15, 14, etc.

Codificando esses valores em nmeros binrios resultaria no seguinte conjunto de nibbles:

0111 (230+221+211+201=0+4+2+1=7), 1001, 1011, 1100, 1101, 1110, 1110, 1111, 1111, 1111, 1110, etc.
Amostragem e quantizao dum sinal (vermelho) para 4-bit PCM

MODELO DE SISTEMA DIGITAL

As informaes processadas em um sistema digital podem ser classificadas em dois tipos:

Sinais de Dados: Normalmente, so os sinais do tipo nvel e constituem em conjuntos ordenados de bits representados por variveis do tipo vetor. Em geral, os dados so constitudos por um grande nmero de bytes que recebem processamento semelhante. Os sinais de dados podem ser de entrada ou de sada. Sinais de Controle: Normalmente, so sinais do tipo pulso ou nvel e consistem em um pequeno nmero de bits representados por variveis do tipo escalar.
A informao de controle pode ser de dois tipos:

Comandos: So sinais utilizados para selecionar e iniciar processamentos, e podem ser externos ou internos ao sistema.
Estado: So sinais que informam as condies ocorridas durante o processamento dos dados. So tambm denominados de sinais de status.

MODELO DE SISTEMA DIGITAL

Um sistema digital pode ser modelado atravs de um bloco, onde os sinais de entrada e os sinais de sada so representados, respectivamente, por linhas entrando no bloco e saindo do bloco que representa o sistema. No caso dos dados so usados conjuntos de linhas representados por linhas duplas, enquanto que, no caso dos sinais de controle so usadas linhas individuais.
Dados de Entrada
SISTEMA

Dados de Sada
DIGITAL

Sinais de Controle

Modelo de Sistema Digital Estrutura de Processamento: especifica todos os dados de entrada, dados intermedirios e dados de sada, bem como todos os sinais de controle, inclusive sinais de status, que sejam necessrios. Estrutura de Controle: especifica a ordem em que os sinais de controle devem ser produzidos em resposta aos comandos externos e aos sinais de status.

MODELO DE SISTEMA DIGITAL

Classificao dos sistemas digitais em Sistemas Assncronos e Sistemas Sncronos, de acordo com o modo de execuo do fluxo de dados.

Sistema Assncrono: Neste tipo de sistema, uma nova sub-tarefa iniciada imediatamente aps o trmino da sub-tarefa que a precede no fluxo de dados. Sistema Sncrono: Neste tipo de sistema, h um sinal de controle geral, normalmente um sinal peridico do tipo pulso denominado relgio (clock). Os pulsos ocorrem regularmente a cada perodo T. Todas as sub-tarefas ou eventos ocorrem em sincronismo com algum pulso, ou seja, o pulso usado para comandar o incio das sub-tarefas.

Classificao dos sistemas digitais em Sistemas Paralelos e Sistemas Seriais, de acordo com o modo como os bits individuais dos dados so processados.

Sistema paralelo: Neste tipo de sistema, todos os bits de cada vetor de dados so processados simultaneamente. Sistema Serial: Neste tipo de sistema, os bits de cada vetor de dados so processados individualmente, ou seja, de modo seqencial.

EXERCCIOS PROPOSTOS

EP.1 Qual a diferena entre sinais binrios do tipo Pulso e do tipo Nvel ? EP.2 Qual a diferena entre sistemas Sncronos e Assncronos ? EP.3 Qual a diferena entre sistemas Seriais e Paralelos ? EP.4 Descreva as vantagens apresentadas pela transmisso paralela e serial de dados binrios.

Diagrama em Blocos de um Sistema Genrico com Microprocessador

Sistema genrico com Microprocessador

PRINCIPAIS COMPONENTES DE UM SISTEMA MICROPROCESSADO

Memria somente de Leitura, no Volteis


ROM PROM EPROM EEPROM

Memria de Leitura e Escrita, Volteis

RAM

Chip Temporizadores

(8253 3 temporizadores de 16 bits)

Canal de Comunicao Serial

8250 e o 8251

PRINCIPAIS COMPONENTES DE UM SISTEMA MICROPROCESSADO

Software

Software uma sequncia de instrues a serem seguidas e/ou executadas, na manipulao, redirecionamento ou modificao de um dado/informao ou acontecimento. O hardware, circuitaria, material ou ferramental a parte fsica do computador, ou seja, o conjunto de componentes eletrnicos, circuitos integrados e placas, que se comunicam atravs de barramentos.
Firmware o conjunto de instrues operacionais programadas diretamente no hardware de um equipamento eletrnico. armazenado permanentemente num circuito integrado (chip) de memria de hardware, como uma ROM, PROM, EPROM ou ainda EEPROM e memria flash, no momento da fabricao do componente. A programao de um firmware em princpio no-voltil (no perde seu contedo com o desligamento da eletricidade) e inaltervel, entretanto, quando presente na forma de PROM ou EPROM, o firmware pode ser atualizado.

Hardware

Firmware

Sistema Operacional

sistema operacional (portugus brasileiro) um programa ou um conjunto de programas cuja funo servir de interface entre um computador e o usurio.

PRINCIPAIS COMPONENTES DE UM SISTEMA MICROPROCESSADO

Driver

Amplificador de corrente. Usado para amplificar a capacidade de fornecimento de uma porta. Driver de dispositivo - software que permite ao sistema operacional usar as funcionalidades de um dispositivo. Buffer uma regio de memria temporria utilizada para escrita e leitura de dados. Os dados podem ser originados de dispositivos (ou processos) externos ou internos ao sistema. Os buffers podem ser implementados em software (mais usado) ou hardware. Normalmente so utilizados quando existe uma diferena entre a taxa em que os dados so recebidos e a taxa em que eles podem ser processados, ou no caso em que essas taxas so variveis.
O Modem um dispositivo eletrnico que modula um sinal digital em uma onda analgica, pronta a ser transmitida pela linha de transmisso (ex. telefnica), e que demodula o sinal analgico e o reconverte para o formato digital original.

Buffer

MODEM MOdulador-DEModulador

Perifrico

Perifricos so aparelhos ou placas que enviam ou recebem informaes do microcontrolador/computador.

PRINCIPAIS COMPONENTES DE UM SISTEMA MICROPROCESSADO

DMA (Acesso direto memria)

O termo DMA um acrnimo para a expresso em ingls Direct Memory Access. O DMA permite que certos dispositivos de hardware num computador acedam a memria do sistema para leitura e escrita independentemente da CPU. Muitos sistemas utilizam DMA, incluindo controladores de disco, placas grficas, de rede ou de som. Nome que se d ao fato de que para o sistema como se aquele ponto no estivesse fisicamente ligado. Latch um circuito eletrnico digital que implementa uma funo de trava de informaes, uma clula de memria esttica. O Latch funciona como uma porta, que estando ativa, deixa passar a informao presente em suas entradas, e se inativo, faz com eu a informao na sada no se altere, independente das alteraes na entrada.

HiZ (Alta Impedncia)

Latch

PRINCIPAIS COMPONENTES DE UM SISTEMA MICROPROCESSADO

Pull-down

Processo pelo qual garantimos que um certo ponto num circuito lgico ficar num nvel lgico fixo, no flutuando aleatoriamente. Neste caso garantimos o nvel 0.

Pull-up

Exatamente como o pull-down, apenas aqui o nvel 1.

ARQUITETURA DE MICROCONTROLADORES MODERNOS

Diagrama em blocos de um sistema controlador.

Tpica arquitetura de um microcontrolador integrada em um nico chip.

PSOC

OS FABRICANTES DE 8051
So diversos os diversos fabricantes da arquitetura 8051 e eles adicionam recursos extras, tais como conversores A/D e D/A, geradores PWM, modos de baixo consumo e at relgio permanente, de acordo com o mercado a que se dedicam.
Fabricante Intel Philips Philips Philips Philips Atmel Atmel Atmel Dallas Microcontrolador 87C51-24 P80C31 P87C51 P87C51MB2 P80C552 AT87F51 AT87F51RC AT89C5115 DS87C550 Relgio 24 MHz 12 MHz 12 MHz 24 MHz 24 MHz 24 MHz 24 MHz 40 MHz 33 MHz RAM 256 128 B 128 2 KB 256 128 512 512 1 KB 4 KB 4 KB no 4 KB 32 KB 18 KB 8 KB 1 1 2 1 1 1 2 3 4 3 2 3 3 3 no no 8/10 bits no no 8/10 bits 8/10 bits ROM 4K no Serial 1 1 Timer 2 3 AD no no

A ARQUITETURA 8051
4 portas paralelas de 8 bits bidirecionais: P0, P1, P2 e P3. Para uso de memria externa, as portas P0 e P2 so barramentos de endereos e dados. 2 contadores e temporizadores de 16 bits, denominados de "Timers 0 e 1". O Bloco Controlador de Interrupes, trabalha com 5 interrupes. Sendo 2 externas pinos INT0 e INT1, sendo que outras duas interrupes podem ser provocadas pelos contadores e temporizadores. A quinta interrupo gerada pela porta serial. Uma porta serial.

HARDWARE
O 8051 um microcontrolador que tem dois modos bsicos de funcionamento: a) modo mnimo, onde somente recursos internos so utilizados pela CPU. Neste modo, esto disponveis 4 KB de ROM para memria de programa e 128 bytes de RAM para memria de dados. O modo mnimo possui a vantagem (alm da economia de componentes e espao fsico) de poder utilizar as 4 portas de 8 bits cada para controle (I/O); b) modo expandido. Neste modo, a memria de programa (ROM), a memria de dados (RAM) ou ambas podem ser expandidas para 64 kB, atravs do uso de CIs externos. No entanto, apresenta a desvantagem de "perder" duas das 4 portas para comunicao com as memrias externas.
Pinagem do 8051

HARDWARE DESCRIO DA PINAGEM

Pinagem do 8051 no encapsulamento DIP40 (HMOS) 8051 AH:


(40) Vcc Alimentao de +5V. Consumo: Icc = 125 mA, com todas as sadas desconectadas. (20) Vss Terra. 32-39) P0 Porta 0 (AD0...AD7). Alm de porta paralela, est multiplexada com o byte menos significativo (LSB) dos endereos e dos dados. Admite 8 cargas LS TTL. (21-28) P2 Porta 2 (A8...A15). Alm de porta paralela, est multiplexada com o byte mais significativo (MSB) dos endereos. Admite 4 cargas LS TTL.

(1-8) P1 Porta 1. Admite 4 cargas LS TTL.

A pinagem para o 8051

HARDWARE DESCRIO DA PINAGEM

(10-17) P3 Porta 3. Compartilhada com uma srie de recursos Admite 4 cargas LS TTL.
P3.0 RXD, entrada serial P3.1 TXD, sada serial P3.2 *INT0, interrupo externa 0 P3.3 *INT1, interrupo 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 memria de dados externa P3.7 *RD, leitura na memria de dados externa

A pinagem para o 8051

HARDWARE DESCRIO DA PINAGEM

(9) RST Reset. Com o oscilador funcionando, deve ser mantido um nvel alto durante 24 perodos. (30) ALE/PROG Address Latch Enable. Pulso para acionar o latch que captura o LSB do endereo (com sua borda ascendente). Ele emitido razo de 1/6 da freqncia do oscilador e pode ser usado para acionar entradas externas. Um ALE omitido durante o acesso Memria de Dados Externa. Tambm usada na gravao da ROM interna. (29) *PSEN Program Store Enable. Pulso de leitura para a Memria de Programa Externa. Quando o programa est sendo executado na memria de programa externa ele aparece como 1/6 da freqncia de clock. Quando h acesso memria de dados externa, 2 PSEN so perdidos.

A pinagem para o 8051

HARDWARE DESCRIO DA PINAGEM

(31) *EA/VPP External Access Enable. Informa CPU se o programa est na Memria de Programa Externa ou na ROM Interna. Tambm usado para gravao da ROM Interna. *EA = 1 (Vcc) (0000H - 0FFFH) ROM Interna (1000H - FFFFH) Memria de Programa Externa *EA = 0 (Vss) (0000H - FFFFH) Memria de Programa Externa (19) XTAL1 Entrada do amplificador inversor do oscilador interno. Deve ser conectado terra se for usado um clock externo (HMOS) ou ao clock externo (CHMOS).

(20) XTAL2 Sada do amplificador inversor do oscilador interno. Se for usado clock externo, serve como entrada para o mesmo (HMOS) ou no conectado (CHMOS).

A pinagem para o 8051

HARDWARE
CI multiplexao 74373 para a de dados/endereos. No 1o ciclo de mquina, endereo nos pinos AD0 a AD7 o byte menos significativo do endereo externo e leva o pino ALE (Address Latch Enable - Habilitador da Trava de Endereos) a nvel alto, de modo que o 74373 (oito Latches tipo D) coloque em suas sadas essa informao, e logo em seguida passa este pino para nvel baixo, para que esse byte fique retido no 74373. Aps isso, os pinos AD0 a AD7 estaro livres para o transporte dos dados.

TABELA DE ACIONAMENTO

O Chip Select (CS) Temos quatro memorias de 16 Kbytes esto agrupadas para formar um bloco de 64 Kbytes. As vias de dados (D0D7) e de endereo (A0A13) so comuns s quatros memrias, e as vias A14 e A15, atravs do demux 74ls139 seleciona qual das quatro memria ser acionada. As demais tm seus pinos em HiZ.

A ORGANIZAO DA MEMRIA
Ilustram-se nas figuras ao lado, a organizao da memria de programa e da memria de dados do 8051. Exemplos de endereamentos: a) da RAM interna MOV A,23H ;end.direto b) da RAM externa MOVX R0,#23H ;imediato ;R0 como ponteiro MOVX A,@R0 ;indireto c) da ROM externa CLR A MOV DPTR,#0023H MOVC A,@A+DPTR

_____ PSEN

_____ PSEN

EA = 0 EA = 1

___
RD ___ WR

A ARQUITETURA 8051
4 portas paralelas de 8 bits bidirecionais: P0, P1, P2 e P3. Para uso de memria externa, as portas P0 e P2 so barramentos de endereos e dados. 2 contadores e temporizadores de 16 bits, denominados de "Timers 0 e 1". O Bloco Controlador de Interrupes, trabalha com 5 interrupes. Sendo 2 externas pinos INT0 e INT1, sendo que outras duas interrupes podem ser provocadas pelos contadores e temporizadores. A quinta interrupo gerada pela porta serial. Uma porta serial.

Ncleo da famlia 8051.

RESET E CLOCK

MAPA DE MEMRIA - INTERRUPES

Ordem de Atendimento das Interrupes.

Int. Ext. 0 Maior Prioridade Timer 0 Int. Ext.1 Timer 1 Canal Serial Menor Prioridade

REGISTROS DE FUNES ESPECIAIS E SEU ENDEREOS NA RAM


P0(80) P1(90) P2(A0) P3(B0) SP(81)

So posies da RAM que contm Dados de I/O

Indica o ltimo endereo de armazenamento na pilha.

TH1(8D) TL1(8B) TH0(8C) TL0(8A)


TCOM(88) TMOD(89) PCOM

Registro de dados dos Temporizadores/Contadores Controle e Modo de operao dos Temporizadores/Contadores

Power Control permite adaptar o Chip para situaes de perda de energia

REGISTROS DE FUNES ESPECIAIS E SEU ENDEREOS NA RAM


SCON(98) SBUF(99) IE(A8) IP(B8)

Permite trabalhar com a porta de comunicao serial armazena os dados recebidos o os dados a ser enviados Permite escolher qual das interrupes sero habilitadas Qual a prioridade de cada interrupo

PSW(D0) Program Status Word (palavra de estados do programa). Indica o estado da ALU e qual o banco de registros acesssados (equivale aos Flags) ACC(E0) B(F0) Acumulador Registro B

DPH(83) DPL(82)

Parte alta do registro de 16 bits (DPTR) Parte baixa do registro de 16 bits (DPTR)

REGISTROS DE CONTROLE DE INTERRUPES


IE(A8) IP(B8) Bit7

Permite escolher qual das interrupes sero habilitadas Qual a prioridade de cada interrupo Bit 0

EA

ES

ET1

EX1

ET0

EX0

Registro IE

EA ES

Enable All Quando em nvel 0, desabilita todas as interrupes. Se em nvel 1 permnite escolha de qual interrupo ser habilitada. Enable Serial Habilita canal serial quando em nvel 1

ET1 Enable Timer 1 (habilita timer 1 quando em nvel 1) EX1 Enable External 1 habilita a interrupo pedida externa ligada ao pino INT1
ET0 Enable Timer 0 (habilita timer 0 quando em nvel 1) EX0 Enable External 0 habilita a interrupo pedida externa ligada ao pino INT0

REGISTROS DE CONTROLE DE INTERRUPES


IE(A8) IP(B8) Bit7

Permite escolher qual das interrupes sero habilitadas Qual a prioridade de cada interrupo Bit 0

PS

PT1

PX1

PT0

PX0

Registro IP

PS PT1

PX1 PX1 EX1 ET0 EX0

Priority Serial Prioridade Serial quando em nvel 1, indica alta prioridade, quando em nvel 0, indica baixa prioridade. Priority Timer prioridade do Timer/Counter 1, se em nvel 1 indica alta prioridade. Priority External 1 prioridade de INT1, se 1 indica alta prioridade. Priority External 1 prioridade de INT1, se 1 indica alta prioridade. Enable External 1 habilita a interrupo pedida externa ligada ao pino INT1 Enable Timer 0 (habilita timer 0 quando em nvel 1) Enable External 0 habilita a interrupo pedida externa ligada ao pino INT0

. BIBLIOGRAFIA

1- Nicolosi, Denys.Lab. de Microcontroladores 8051 .So Paulo: Ed. rica 2- Tocci e Ronald. Sistemas Digitais. Rio de Janeiro: Ed. Pratice Hali 3- Silva Jr., Vidal Pereira. Aplicaes prticas do Microcontrolador 8051-11 Ed.So Paulo: Ed. Erica