32
INTRODUÇÃO As páginas seguintes mostrarão como é possível desenvolver um kit de gravação e simulação de circuitos baseados em microcontroladores, especificamente no 8051. Com os modestos tópicos a seguir, queremos mostrar que é possível o desenvolvimento de tal tecnologia, bastando apenas compreensão do funcionamento básico dos blocos de funcionamento de um microcontrolador. Esse estudo pode ser entendido para microcontroladores de outros fabricantes, tais como os microcontroladores da série PIC, Motorola e até mesmo Holtek. 5

Gravador de 8051

Embed Size (px)

DESCRIPTION

Gravador de 8051

Citation preview

Page 1: Gravador de 8051

INTRODUÇÃO

As páginas seguintes mostrarão como é possível desenvolver um kit de

gravação e simulação de circuitos baseados em microcontroladores,

especificamente no 8051. Com os modestos tópicos a seguir, queremos mostrar

que é possível o desenvolvimento de tal tecnologia, bastando apenas

compreensão do funcionamento básico dos blocos de funcionamento de um

microcontrolador. Esse estudo pode ser entendido para microcontroladores de

outros fabricantes, tais como os microcontroladores da série PIC, Motorola e até

mesmo Holtek.

5

Page 2: Gravador de 8051

1.1 Objetivos

Este trabalho visa á criação de um modelo aberto de programação e

simulação de hardware com a arquitetura do 8051, neste caso explicitaremos o

funcionamento dos microcontroladores das séries AT89S51 e AT89S52, execução

dos processo de gravação tanto pela porta serial como paralela. Também

mostraremos sugestões de alguns softwares para gravação. O projetista de circuitos

poderá solucionar muitos processos que exijam repetição ao longo do tempo e isto

com o mínimo de circuitos extras.

Não é de nosso intuito esgotar o assunto, pois é necessário muita pesquisa

para que o projetista possa desenvolver suas aplicações. Nossa proposta que se

baseia no conceito de laboratório portátil, porém com uma certa flexibilidade na

arquitetura, para que o usuário desenvolva quaisquer aplicações que sua

imaginação permitir, respeitando os limites de processamento do equipamento.

1.2 Objetivos específicos

O projeto visa não somente uma arquitetura robusta para desenvolvimento de

processos, mas também uma vasta gama de aplicações que serão propostas

através de um sítio na Internet, sugestões para aplicações, e na documentação do

equipamento, assim como entradas e saídas da placa para a realização de

processos e leitura de dados.

6

Page 3: Gravador de 8051

MICROCONTROLADORES

Microcontroladores são componentes que podem executar diversas funções,

possuem memória interna (ROM) que permite gravar programas criados pelos

projetistas. Tais programas controlam as portas de entrada e saída de dados destes

dispositivos, facilitando assim a criação de projetos complexos com o mínimo de

dispositivos e o máximo de eficiência, dependendo apenas da criatividade do

projetista.

Com o crescimento da informática e da construção de componentes

eletrônicos mais eficientes, em 1974 foi lançado o primeiro microcontrolador pela

Texas, o TMS 1000, com apenas 4 bits, RAM e ROM.

Em 1977, a Intel lançou o 8048 que possuía memória externa (ROM) e

memória de dados (RAM).

Os anos 80 iniciaram uma revolução no processo de automação. A Intel

lançou o 8051, que possui 4K de memória de programa e 128 bytes de memória de

dados.

Desde o lançamento do microcontrolador TMS 1000, vemos uma explosão de

fabricantes e conceitos de microcontroladores tais como os da ATMEL, HOLTEK,

MOTOROLA, MICROCHIP, dentre outros. (1)

7

Page 4: Gravador de 8051

1.1 Microcontroladores versus Microprocessadores

Microcontroladores são diferentes de microprocessadores. A diferença está

na funcionalidade do primeiro. O microprocessador necessita de componentes

extras para que possa executar suas funcionalidades, tais como memórias e

periféricos, para enviar e receber dados. Os microcontroladores foram projetados

para possuírem memórias e periféricos de entrada e saída agregadas em um só

circuito integrado, onde nenhum outro componente externo é necessário para

execução de suas tarefas. Isso possibilita maior economia de espaço, tempo e

viabilidade para construção do projeto. (2)

Para aplicações específicas é necessário que o controle do processo seja

dedicado a um pequeno conjunto de tarefas. Para tal aplicação os

microcontroladores levam vantagem para controlar o ambiente externo. Estes

possuem circuitos eletrônicos mais adequados para a conexão ao ambiente e seu

custo acaba sendo reduzido, em comparação aos microprocessadores, que são

construídos para a otimização de processamento de dados, necessitando de auxílio

de diversos componentes externos, tais como: memórias, co-processadores,

dispositivos periféricos, dentre outros. Desta forma, sua principal aplicação torna-se

mais eficiente na execução de processamento de alto volume de dados. (3)

1.2 O microcontrolador 8051

8

Page 5: Gravador de 8051

São microcontroladores que incorporam memória de programa e dados em

sua estrutura interna. Possibilitam expansão para até 64 Kbytes de programa e mais

64 Kbytes de dados. O acesso à portas internas de I/O é permitido, canal de

comunicação UART full duplex, interrupções “nesting” com clock de 12 a 60 Mhz.

Através de softwares, é possível a execução de complexas operações aritméticas e

lógicas.

A escolha do 8051 para o desenvolvimento do projeto foi devido as

características de seu hardware interno:

- RAM Interna de uso geral de 128 bytes e 128 bytes para os registradores

especiais;

- ROM de 4 Kbytes;

- 4 portas I/O;

- 2 timers de 16 bits;

- Uma interface serial;

- Capacidade de 64 Kbytes de endereçamento externo de ROM;

- Capacidade de 64 Kbytes de endereçamento externo de RAM;

- Processador booleano;

- Ciclos típicos de instrução de 1 a 2 us a 12Mhz;

- Instrução direta de divisão e multiplicação;

- Entradas de interrupção externa;

Outras características importantes a ressaltar seriam as portas de comunicação do

8051, este possui:

- 8 portas de comunicação de uso geral, via software, sendo possível ler e escrever

nessas portas, sendo chamadas de (Port P1).

- 8 portas de uso geral para comunicação externa caso o projetista não as utilize

para comunicação externa com RAM/ROM/EPROM. Essas portas são chamadas

(Port P2).

- 8 portas de comunicação com RAM externas, interface entre os periféricos internos

do chip e externos a ele. Entradas programáveis também podem ser utilizadas com

I/O. São conhecidas como (Port P3). (4)

O HARDWARE BÁSICO

9

Page 6: Gravador de 8051

Quase todos os processadores atualmente são utilizados em sistemas

embarcados. Seu início ocorre na fabricação de computadores pessoais, mas

diferentes destes que são utilizados para executar uma tarefa específica. O projeto a

ser apresentado visa execução de algumas aplicações, de acordo com a

necessidade do usuário, sejam elas multitarefa ou individuais. As aplicações a

serem desenvolvidas dependem das características físicas externas de cada

hardware que são projetados para executarem tarefas genéricas independendo de

seus hardware interno. As aplicações serão bem sucedidas de acordo com o nível

de proteção física do hardware que estará sujeito ao meio ambiente o qual esse será

submetido.

2.1 O circuto de Clock

O circuito interno do microcontrolador é formado por um circuito oscilador,

chamado de clock. Depende de uma ligação externa através de cristal e capacitores.

“É o relógio interno do microprocessador para execução de qualquer atividade

interna ou externa à máquina.” (NICOLESI, 2009, p98)

O circuito abaixo nos mostra a ligação feita para que o circuito funcione

adequadamente, reparemos na figura 1 o uso de capacitores e o cristal ligados nos

pinos 18 e 19.

Figura 1. Circuito oscilador.

Os capacitores podem ser entre 10pf a 30pf e o cristal de até 12Mhz para as

versões AT89Sxxx.

A ligação do cristal permite que o circuito funcione adequadamente,

energizado pelos capacitores, oscila, gerando um sinal periódico que é uma forma

10

Page 7: Gravador de 8051

de onda próxima de uma senóide. O sinal que vem do cristal entra no oscilador

interno que o transforma numa onda quadrada. Esta servirá como relógio para o

microcontrolador.

Em alguns casos, uma fonte de clock pode ser uma TTL do tipo NOT. Abaixo os

tipos de configurações que podem ser realizadas:

Figura 2. Circuitos osciladores a Cristal e TTL

Sendo o CLOCK o elemento que gera e controla os ciclos e o microcontrolador um

equipamento dinâmico, é necessário entender como funciona o ciclo de máquina.

Vamos definir cada pulso “P” como um ciclo de oscilação e a cada dois P (P1 e P2)

um estado “S”.

Figura 3. Os ciclos de máquina.

Na imagem acima temos um ciclo de máquina igual a 12 ou seja, se temos um

cristal de 12 MHz ligado ao circuito temos:

12 x (período do clock) = 12 x (1/12 x 106)=1 microsegundo.

2.2 O Reset (RST)

11

Page 8: Gravador de 8051

O reset ou RST do 8051 é efetuado através do pino 9, quando ligamos o CHIP este

deve possuir um circuito externo. Quando há a energização do circuito (+Vcc 5

Volts), o capacitor esta descarregado e assim é aplicado um pulso de alto no pino

RST que na sequência vai a zero. O tempo é dado pelo circuito RC. Desta forma o

reset forçado faz o capacitor se descarregar e carregar novamente, aplicando um

pulso alto no RST.

Ao projetar um gravador de microcontroladores, é necessário ficar atendo a estes

detalhes e sempre que ligar o equipamento, efetuar um reset forçado através de

uma chave normalmente aberta, desta forma o circuito fica habilitado para a

gravação. (5)

Figura 4. O circuito de reset.

12

Page 9: Gravador de 8051

2.3 Os Ports de uso geral

Abaixo descrevemos algumas as portas de comunicação com o mundo externo ao

8051, chamaremos por convenção de Ports. (1)

Abaixo a pinagem do 8051.

Figura 5 – :Pinagem do AT89S51/52

Port P0: Vão dos pinos 32 a 39, esses oito pinos físicos formam o barramento de 1

byte. Utilizado para a comunicação de entrada e saída (Input/Output) de dados. É

um barramento de uso geral, mas também pode ser um barramento multiplexado,

nesse caso pode ser usado utilizamos uma memória externa que pode ser lida ou

escrita via software.

Port P1: Seguem dos pinos 1 a 8, formando um Byte, também são utilizadas como

porta (I/O) de dados. Pode ser utilizados também como barramento de uso geral,

geralmente em kits comerciais são utilizadas para comunicação com Displays de

LCD.

Atenção: Os pinos 6, 7 e 8 ou os Ports 1.5, 1.6 e 1.7 também são utilizados para

gravação do microcontrolador através da porta paralela.

13

Page 10: Gravador de 8051

Port P2: Os pinos físicos de 21 a 28 também formam um Byte, também utilizados

como (I/O). São utilizados como barramento de uso geral ou para trabalharmos com

memórias externas. Em kits comerciais são muito utilizados para a comunicação

com Displays.

Port P3: Essas portas de comunicação possuem funções especiais, pois são elas

que efetuamos a comunicação serial, controle das interrupções, timers e contadores,

também podemos utilizar como escrita e leitura de dados de uso geral.(4)(5)

Ports Função

P3.0 RXD – Port de entrada Serial

P3.1 TXD – Port de saída serial

P3.2 INT0 – Interrupção externa (T0)

P3.3 INT1 – Interrupção externa (T1)

P3.4 T0 – Entrada Externa para Timer0

P3.5 T1 – Entrada Externa para Timer1

P3.6 WR – Port para escrita em memória externa (DADOS)

P3.7 RD – Port para leitura da memória externa (DADOS)

Tabela 1. Funções dos ports (pinos).

ALE/PROG: O Pino 30 é o pino responsável pela demultiplexação de dados e bits

menos significativos. Gera um pulso de entrada enquanto a memória do tipo de

FLASH é programada. (1)(2)(4)(5)

PSEN (Pino 29): Ativamos esse pino quando queremos acessar uma memória

externa, lendo seus códigos.

EA/VPP: Conectamos esse pino ao VCC para a execução interna dos programas,

Estando em nível lógico 1 (5+) o microcontrolador enxerga sua memória interna,

após isso faz a leitura das memórias externas. Em nível lógico zero o

microcontrolador, faz apenas leituras de memórias externas.

14

Page 11: Gravador de 8051

2.4 Memória Flash

Os microcontroladores da série AT89S51/52 possuem dois modos de gravação que

podem ser pelas portas serial ou paralela.

Figura 6 – Características das formas de onda da gravação em modo paralelo.

Figura 7 – Características das formas de onda da gravação serial.

15

Page 12: Gravador de 8051

2.5 Comunicação Serial Síncrona e assíncrona

A transmissão na porta serial pode ser realizada de forma síncrona ou assíncrona, é

realizada em equipamentos do tipo DTE (Data Terminal Equipment - PC) e DCE

(Data Communication Equipment - microcontrolador). Na comunicação serial

síncrona utilizamos a saída para envio ou recepção de dados e a outra para levar o

sinal de sincronismo, assim o receptor enxergará quem é o bit 0 e quem é o bit 1. Já

a comunicação serial assíncrona não depende do sinal de sincronismo, ela gera um

padrão de transmissão para cada byte transmitido. O sistema de recepção espera

um bit de início (start) (ocorre a transição de 1 para 0), inicia a recepção dos outros

bits do byte transmitidos. Ao contá-los, o sistema fica esperando o bit de parada

(stop) (neste momento ocorre a transmissão de 0 para 1), a comunicação é

encerada. (2) (8)

O 8051 possui um modo de comunicação síncrona (Modo 0) e três modos de

comunicação assíncrona (Modos 1, 2 e 3). Mostraremos agora alguns cálculos para

exemplificar seu funcionamento.

Os computadores baseados na arquitetura PC, apresentam basicamente três

saídas, USB (Universal Serial Bus), COM1 e LPT1 (antiga porta de impressão).

Chamamos de comunicação serial porque há a transmissão um byte, bit por bit

Conexão da comunicação serial é mostrada abaixo através do conector DB9 tipo

fêmea.

Chamamos esse tipo de comunicação serial, porque as informações são transferidas

bit a bit de forma seqüencial e programada previamente, assim o receptor

retransmite as informações de forma que a informação não perca sua integridade

original.

Na figura 9 temos um modelo de conexão da porta de comunicação serial, neste

caso a podem ser a COM1, COM2, etc. (4)(8)

16

Page 13: Gravador de 8051

Figura 8. Comunicação serial

1 – Carrier Detect (CD) é sinal de

entrada para uso de modem externo

vindo do DCE

2 – Received Data (RD) Incoming Data

(de um DCE para um DTE) ou sinal RX

3 – Transmitted Data (TD) Outgoing

Data (de um DTE para um DCE) ou sinal

TX.

4 – Data Terminal Ready (DTR) é o sinal

de saída controlado pelo DTE, avisa que

quer transmitir.

5 – Signal Ground Common ou sinal

terra entre os dispositivos envolvidos.

6 – Data set Ready (DSR) ou sinal de

entrada controlado pelo DCE, que avisa

que pode receber.

7 – Request To Send (RTS), sinal de

entrada controlado pelo DTE, para

avisar que quer transmitir.

8 – Clear To Send (CTS), sinal de

entrada controlado pelo DCE, que avisa

que pode receber.

9 – Ring Indicator (RI) é o sinal de

entrada de modem de campanhia.

Figura 9. Conector DB9,

tipo fêmea para cabo.Figura 10. Conector DB9 tipo macho

17

Onde pino 1 é TX, pino 2 é RX e pino 3 é GND. (Na placa)

Onde pino 3 é TX, pino 2 é RX e pino 5 é GND. ( No PC )

Page 14: Gravador de 8051

Abaixo o esquema de ligação serial entre o microcontrolador e o PC, onde:

Eq.: corresponde ao equipamento com microcontrolador.

PC.: Computador IBM-PC.

Figura 11. Modelo de conexão DB9

Para ligações em serial com um através de um conector DB25, podemos utilizar a pinosgem abaixo:

Figura 12. Ligação da porta paralela, conector DB25 com a serial do

microcontrolador.

Generalizado podemos realizar conexões seriais entre DB25 para DB25, DB9 para

DB9 ou mistas.

Figura 13. Conexões DB9 – DB9, DB25 – DB25, DB9 – DB25

Número Nome Designação2 TXD - Transmit Data Transmissão de dados

18

Onde pino 1 é TX, pino 2 é RX e pino 3 é GND. (Na placa)

Onde pino 2 é TX , pino 3 é RX e pino 7 é GND. ( No PC )

Page 15: Gravador de 8051

3 RXD - Receive Data Recepção de dados4 RTS - Request To Send Pedido de emissão5 CTS - Clear To Send Empréstimo a emitir6 DSR - Data Set Ready Dados prontos7 GND - Signal Ground Massa lógica8 CD - Carrier Detect Deteção de portador20 DTR - Data Terminal Ready Terminal pronto22 RI - Ring Indicator Indicador de campainha eléctrica

Tabela 2. Funções de cada pino na conexão serial DB25.

Abaixo a ligação da porta de comunicação paralela, através do conector DB25.

Figura 14. Conector DB25, tipo macho

para cabo.

19

Page 16: Gravador de 8051

2.6 A tecnologia MAX232

O integrado MAX232 é produzido pela MAXIM, sua função é de converter os sinais

RS232 para os +/-12 volt necessários à transmissão e receber do seu porto série os 

0/5 volt TTL, diretamente pela porta do microcontrolador.

O standard RS232 define um conjunto de especificações para a transmissão série

de dados entre dispositivos DTE e DCE . O RS232 foi desenvolvido com o intuito de

ligar um terminal de dados (no nosso caso um computador) com um modem, para a

transmissão à distância dos dados produzidos, neste caso a porta serial do PC

COM1, COM2, etc, com o microcontrolador 8051, mas pode ser utilizado para a

comunicação com microcontroladores de outros fabricantes.

Figura 15. Circuito de ligação do MAX232.

Fonte: http://www.rogercom.com/PortaSerial/PortaSerial.htm

20

Page 17: Gravador de 8051

TIPOS DE CONEXÕES SERIAL

Abaixo, alguns modelos de comunicação serial que são adotados para ligação de

diversos dispositivos. (13)

Cabos null-modem para comunicação entre 2 computadores através da porta serial

com suporte a controle de fluxo via hardware.(Rogério, 2011)

Figura 16. Cabo Serial para conectar DB9 com DB9.

Figura 17. Cabo Serial para conectar DB25 com DB9.

21

Page 18: Gravador de 8051

Figura 18. Cabo Serial para conectar DB25 com DB25.

CABOS DE COMUNICAÇÃO SEM SUPORTE A CONTROLE DE FLUXO VIA HARDWARE

Figura 19. Cabo Serial para conectar DB9 com DB9.

22

Page 19: Gravador de 8051

Figura 20. Cabo Serial para conectar DB25 com DB9.

Figura 21. Cabo Serial para conectar DB5 com DB5.

23

Page 20: Gravador de 8051

Figura 22. Teste de porta serial sem a necessidade de se conectar dois

equipamentos.

Figura 23. Com o DB9

24

Page 21: Gravador de 8051

O FUNCIONAMENTO DO CIRCUITO

O MAX 232 leva

25

Page 22: Gravador de 8051

O PROGRAMA DE GRAVAÇÃO

O programa que utilizamos é sugestão do Engenheiro Rafael Ferrari (14)

Figura 24. Programa de gravação.

Passo 1. Escolha o modelo de chip que irá gravar, neste caso clique em Chip e

escolha o modelo que esta usando.

Passo 2. Se seu arquivo está no formato Hex (hexadecimal) clique em Tools

(ferramentas) e depois HEX - > BIN onde BIN é o formato binário que vai para o

microcontrolador.

Passo 3. Clique em Write (escrever, gravar)

Passo 4. Encontre o seu arquivo HEX ou BIN.

Passo 5. Observe a barra de progresso.

O comando Erase, serve para apagar o conteúdo que se encontra nas memórias

Flash/EEPROM. Também apaga os Lock Bits que impedem a gravação do

26

Page 23: Gravador de 8051

microcontrolado.

27

Page 24: Gravador de 8051

CONCLUSÕES

O projeto foi pensado inicialmente para ser um circuito de simulação de

microcontroladores da série 8051, porém essa modalidade de circuito mostrou-se

difícil essa, pois para ocorrer uma simulação, é necessário o desenvolvimento de

software específico. Averiguamos também que o circuito pode ser simulado se

ativarmos as portas de comunicação PSEN (pino 29) e ALE (pino 30), mantendo

ativado (+5Vcc) na porta EA (pino 31) o microcontrolador entra em modo leitura .

Recomendamos que em projetos futuros sejam desenvolvido tal Hardware,

expandindo pinos ou barramentos nas portas de comunicação.

Em desenvolvimento de sistema de Hardware para funções específicas, é

recomendável que o projetista incluísse sempre que possível uma parte

microcontrolada, com expansões nas portas, jumpeamentos específicos e

respectivas entradas/saídas de comunicação, desta forma podemos criar circuitos

inteligentes que necessitam somente pouca mudança no Hardware, sendo que sua

funcionalidade fique apenas na parte de software.

28

Page 25: Gravador de 8051

BIBLIOGRAFIA

(1) História dos microcontroladores . Disponível em:

http://www.artigos.com/components/com_mtree/attachment.php?

link_id=6681&cf_id=24. Acesso em 27 de março de 2011-03-27

(2) NICOLOSI, Denis Emílio Campion – Microntrolador 8051: detalhado – 8ª ed. –

São Paulo: Érica, 2007.

(3) Processos em Sistemas embarcados – MOURA, Danilo Santos. Disponível em:

www.lisha.ufsc.br/~guto/teaching/theses/danillo-bsc.pdf.

Acesso em 29 de março de 2011

(4) NICOLESI, Bronzeri – Microcontrolador 8051 com Linguagem C: Prático e

Didático - 2ª ed. – São Paulo: Érica, 2008.

(5) SIMPLÍCIO, Fernando de Sousa – Programação em Basic para

microcontroladores 8051: com base na IDE BASCON 8051: teoria e prática - 1ª

ed. – São Paulo: Érica, 2006.

(6) NEUROTREND, Technology Solutions Ltda. Disponível em:

http://www.jonasbairros.xpg.com.br/apostila%20manual%20kit%20micro

%20controlador%208051.doc

Acesso em 01/11/2011

(7) Microcontroladores - RUIZ, Wilson. Disponível em:

http://alexandrejaragao.vilabol.uol.com.br/Apostilas/microcontroladores.pdf

Acesso em 01/11/2011

(8) Datasheet, ATMEL. Disponível em:

http://www.keil.com/dd/docs/datashts/atmel/at89s52_ds.pdf

Acesso em 01/11/2011

29

Page 26: Gravador de 8051

(9) SWEET, Michael R. Disponível em:

http://www.easysw.com/~mike/serial/serial.html

Acesso em 03/11/2011

(10) Minicomputadores, e Micro. Disponível em:

http://www.dca.fee.unicamp.br/courses/EA078/1s2004/arquivos/turma_ab/cap8.pdf

Acesso em 03/11/2011

(11) Canzian, Edmur. Disponível em:

http://www.professores.aedb.br/arlei/AEDB/Arquivos/rs232.pdf

Acesso em 03/11/2011

(12) ATMEL, Hardware. – Disponível em:

http://www.atmel.com/dyn/resources/prod_documents/doc4316.pdf

Acesso em 3 de novembro de 2011

(13) Antônio Rogério, Messias. - Disponível em:

http://www.rogercom.com/PortaSerial/PortaSerial.htm

Acesso em 3 de novembro de 2011

(14)Ferrari, Rafael. – Disponível em: http://www.rafa.eng.br/index.htm

Acesso em 3 de novembro de 2011.

30