Vous êtes sur la page 1sur 7

Revista Ilha Digital, volume 1, pginas 91 97, 2009.

Artigo disponibilizado on-line

Revista Ilha Digital


Endereo eletrnico: http://florianopolis.ifsc.edu.br/~ilhadigital/

KIT DIDTICO PARA TRABALHO COM OS MICROCONTROLADORES AVR KIT ATMEGA++


Charles Borges de Lima1, Leandro Schwarz 2
Resumo: Os avanos tecnolgicos demandam cada vez mais dispositivos eletrnicos. Assim, a cada dia so criados componentes mais versteis e poderosos. Nesta categoria, os microcontroladores tm alcanado grande desenvolvimento. Sua facilidade de uso em ampla faixa de aplicaes permite o projeto relativamente rpido e fcil de novos equipamentos. O estudo dos microcontroladores um dos pilares da formao tcnica na rea de eletrnica digital. O uso de plataformas de desenvolvimento crtico no ensino-aprendizado. Assim, foi desenvolvido um kit didtico empregando o microcontrolador AVR ATmega32. O kit desenvolvido agrega os perifricos bsicos necessrios para o projeto com microcontroladores, tais como: teclado, displays e interface serial, dentre outros. Ele permite, portanto, a explorao de vrias tcnicas de hardware e software. Palavras-chave: Microcontroladores. Kit didtico. AVR. ATmega. Abstract: The last technological advances demand more electronics. Thus, constantly are developed powerful and new devices. In this category, the microcontrollers have being growing exponentially. Their flexibility in a wide range of projects allows fast and easy design development. The microcontroller study in digital electronics is one of the main bases of technical formation. So, the development boards are very important to the teaching and learning processes. In this way, a didactic board was designed using the microcontroller AVR ATmega32. The didactic board has several basic peripherals used for microcontroller projects, such as keypad, displays and serial interface, among others. Therefore, it allows the exploration of many hardware and software techniques. Keywords: Microcontroller. Development board. AVR. ATmega.
1 2

Professor do DAELN do IF-SC <cborges@ifsc.edu.br>. Professor do DAELN do IF-SC, do Departamento de Design da UDESC e doutorando do CPGEI da UTFPR <schwarz@ifsc.edu.br>.

1.

INTRODUO

No estudo de microcontroladores importante o uso de hardware para o teste dos programas desenvolvidos. Atualmente, muitos programas podem ser testados via software de simulao, empregando, por exemplo, o programa PROTEUS ISIS (Labcenter Electronics1). Todavia, o desenvolvimento prtico fundamental e no pode ser dispensado do processo de aprendizagem. Experimentos prticos trazem consigo realidades fsicas no simulveis e, portanto, permitem o desenvolvimento e depurao do programa para atuao no mundo real.
1

Alm da compreenso da arquitetura do microcontrolador, a programao outro ponto fundamental no trabalho com microcontroladores. Assim, o emprego de uma placa de circuito impresso contendo a maioria dos perifricos bsicos necessrios para o estudo e desenvolvimento de habilidades de projeto, torna-se importantssimo para uma maior velocidade de aprendizado e diminuio do tempo de implementao de hardware. Com esse objetivo, foi desenvolvido um kit didtico contendo a maioria dos circuitos bsicos essenciais, comumente ensinados nas disciplinas de Microcontroladores, reunidos em uma nica placa. O microcontrolador empregado foi um AVR

Disponvel em http://www.labcenter.co.uk/.

AOC0008

91

Revista Ilha Digital, volume 1, pginas 91 97, 2009.

ATmega32 (Atmel Corporation2); a escolha se deu devido a sua ampla aceitao no mercado e por possuir uma das mais modernas arquiteturas de 8 bits da atualidade. Outra importante caracterstica dos AVRs a grande similaridade entre os microcontroladores de uma mesma famlia e seu bom desempenho frente ao nmero de instrues executadas por ciclo de clock. 1.1. O ATmega32 O ATmega32 possui 32 KB de memria de programa, 2 KB de memria SRAM e 1 KB de memria EEPROM. Com uma arquitetura Harvard estendida disponibiliza mais de uma centena de instrues. Possui conversor A/D de 10 bits disponveis em 8 canais multiplexados, comparador analgico, 2 temporizadores/contadores (T/Cs) de 8 bits e 1 de 16 bits, incluindo 4 canais PWM. Um de seus temporizadores de 8 bits pode ser empregado para a contagem precisa de tempo com o emprego de um cristal externo de 32.768 Hz, o chamado RTC (Real Time Counter) (ATMEL, 2009). Outra caracterstica importante a existncia de um multiplicador por hardware, o que diminui o nmero de linhas de cdigo de programas que exigem multiplicaes (TOCCI; WIDMER; MOSS, 2008). O ncleo do ATmega executa a maioria das instrues em 1 ou 2 ciclos de clock, podendo chegar a 1 MIP (milho de instrues por segundo) a 1 MHz. Possui 19 fontes de interrupo, incluindo duas externas. Suas interfaces seriais incluem SPI (Serial Peripheral Interface), USART (Universal Synchronous and Asynchronous serial Receiver and Transmitter) e a TWI (Two-Wire serial Interface I2C) (ATMEL, 2009). Tambm, possui oscilador interno, pull-ups configurveis em todos os pinos, alm de configuraes especiais para o reset do microcontrolador, incluindo o watchdog timer, brown-out e power-on reset. Todas essas caractersticas permitem a reduo do nmero de componentes externos necessrios para o funcionamento do microcontrolador. Existem vrios modos de operao que podem ser programados para a reduo do consumo de energia, modos esses, fundamentais para a alimentao com baterias. A gravao in system (gravao com o chip no circuito de trabalho) emprega a SPI e facilmente implementada (existem vrios gravadores de fcil aquisio disponveis no mercado). Outra funcionalidade do ATmega a disponibilidade de uma rea da memria de
2

programa especfica para a escrita de um programa para autoprogramao (boot loader), se desejado. 1.2. A programao O fabricante do AVR disponibiliza um programa gratuito para a programao dos microcontroladores, chamado AVR Studio, no qual os programas podem ser desenvolvidos em linguagem Assembly ou em linguagem C, empregando-se o WinAVR (compilador C gratuito). Para a gravao do componente, emprega-se um gravador comercial (por exemplo, o AVR Dragon, tambm da ATMEL). A gravao pode ser feita diretamente pelo AVR Studio com o hardware adequado de gravao conectado ao computador. 2. FUNCIONALIDADES DO KIT As principais funcionalidades do kit incluem: 8 LEDs de sinalizao; 4 displays de 7 segmentos; 1 display de cristal lquido (LCD 16x2); 1 teclado matricial com 16 teclas; 1 sensor de temperatura; 1 sada para acionamento PWM; 1 pequeno sonofletor; 1 um rel para acionamento AC; 1 CI para contagem de tempo (RTC); 1 interface para comunicao RS-232. Todos os pinos do microcontrolador esto disponveis para uso, e todas as funcionalidades podem ser desconectadas com o uso de jumpers (conectores). Da mesma forma, empregando fios possvel alterar todas as ligaes entre os diferentes componentes do circuito. 2.1. Alimentao A alimentao da placa realizada atravs de um conector do tipo Jack J4 2,5 mm (Metaltex3) e uma fonte de alimentao com tenso de sada contnua de no mnimo 9 V e no mximo 15 V pode ser empregada. A Figura 1 apresenta o circuito de alimentao para o kit. Um diodo retificador de uso geral 1N4007 (Fairchild Semiconductor4) protege contra possveis inverses de polaridade da tenso na entrada de alimentao (BOYLESTAD; NASHELSKY, 2005). Um regulador de tenso A7805 (Texas Instruments5) regula a tenso para alimentar os circuitos integrados (5 V). Emprega-se um LED vermelho 5 mm TLDR5400 (Vishay Intertechnology6) para indicao visual do funcionamento da fonte. Os capacitores eletrolticos de alumnio empregados so da srie B41821
3 4

Disponvel em http://www.atmel.com/.

Disponvel em http://www.metaltex.com.br/. Disponvel em http://www.fairchildsemi.com/. 5 Disponvel em http://www.ti.com/. 6 Disponvel em http://www.vishay.com/.

AOC0008

92

Revista Ilha Digital, volume 1, pginas 91 97, 2009.

(Epcos AG7). O resistor pertence srie RC0603, uma srie de resistores de filme fino SMD em encapsulamento 0603 (Phycomp Philips adquirida pela International Yageo Corporation8).

PORTA do microcontrolador. O acionamento realizado utilizando lgica invertida, ou seja, o LED acende quando um nvel lgico zero for colocado no pino do microcontrolador (drenagem de corrente). O bloco de LEDs foi desenvolvido de forma modular, possibilitando sua utilizao em partes ou no todo. Os jumpers LD0 a LD7 conectam os LEDs a cada pino do PORTA no microcontrolador, enquanto que o jumper VCC LEDs faz a conexo da alimentao de todos os LEDs. Na Figura 3 apresentado o diagrama esquemtico dos 8 LEDs., pode-se perceber os jumpers de habilitao.

FIGURA 1 Diagrama esquemtico da fonte de alimentao

2.2.

O microcontrolador

Na Figura 2, so apresentadas as conexes bsicas do ATmega32. Utilizou-se uma chave tctil (push-button) srie A06 (Metaltex) com altura de atuador de 4,3 mm para o reset. Emprega-se um cristal externo de 8 MHz da srie HC49SLF (Fox Electronics9) e dois capacitores 04025A220JAT2A em encapsulamento SMD 0402 (AVX 10 Corporation ), e disponibiliza-se o emprego de um cristal de 32,768 kHz para a contagem de 1 s com preciso. Um pequeno filtro passa-baixas, utilizando um indutor axial da srie CEC (CEC Coils11) e um capacitor 0402YD104KAT2A em encapsulamento SMD 0402 (AVX Corporation) empregado na alimentao do circuito interno do conversor A/D.

FIGURA 3 Diagrama esquemtico dos 8 LEDs de sinalizao

2.4.

Displays de sete segmentos

FIGURA 2 Diagrama esquemtico das ligaes bsicas do ATmega32

2.3.

LEDs de sinalizao

Para a sinalizao, foram disponibilizados aos usurios 8 LEDs amarelos 3 mm TLHE4600 (Vishay Intertechnology), todos conectados ao
7 8

Disponvel em http://www.epcos.com/. Disponvel em http://www.yageo.com/. 9 Disponvel em http://www.foxonline.com/. 10 Disponvel em http://www.avx.com/. 11 Disponvel em http://www.ceccoils.com/. AOC0008

Os displays de 7 segmentos so dispositivos sinalizadores muito empregados em conjunto com microcontroladores. Como os pinos do ATmega podem suprir ou drenar corrente suficiente para ligar LEDs, displays de sete segmentos podem ser ligados diretamente pelo microcontrolador, sem a necessidade de drivers de corrente. Foram empregados quatro displays de sete segmentos anodo comum vermelho LDS-A516RI (Lumex Inc.12). O funcionamento se dar com o principio da persistncia da viso. O programa deve ser responsvel pela varredura dos displays, na qual um display acionado por vez, em seqncia, com frequncia mnima para aparecer constantemente ligado. Foram empregados quatro transistores PNP de uso geral BC559 (Fairchild Semiconductor) para o chaveamento individual dos displays, conforme indicado na Figura 4. O acionamento dos displays feito atravs dos pinos PC2 at PC5; a habilitao destes pinos feito pelos jumpers DY0 a DY3. Os dados do display esto conectados no PORTA; a habilitao dos segmentos do display feita pelos jumpers A, B, C, D, E, F, G e P. A alimentao dos quatro displays pode ser cortada retirando o jumper VCC DISPLAY. O controle da luminosidade dos segmentos feito atravs de resistores de 560 da srie RC0603 (seo 2.1.) e o resistor de base dos
12

Disponvel em http://www.lumex.com/.

93

Revista Ilha Digital, volume 1, pginas 91 97, 2009.

transistores de 10 k, pertencente srie SMD RC0402 de mesmo fabricante. importante salientar que os displays e o bloco de LEDs utilizam o mesmo PORTA do microcontrolador e, portanto, no podem ser utilizados ao mesmo tempo.

acrscimo na complexidade do programa de controle. empregado um potencimetro para ajuste do contraste do LCD. O display tambm possui iluminao de fundo (backlight). Os pinos do barramento de dados do LCD so PA0 a PA3, habitveis atravs dos jumpers D4 a D7. O pino de controle RS acessado via pino PD3 do microcontrolador e habilitvel pelo jumper RS; e o pino de controle E acessado via pino PD2 do microcontrolador e habilitvel pelo jumper E. 2.6. Teclado matricial de 4x4 Frequentemente, utiliza-se como entrada de dados e interface com o usurio, um teclado de chaves tcteis. Visando a aplicaes mais complexas que a simples leitura de um boto, foi construdo um teclado com 16 teclas, no formato de matriz. Para isso, necessrio um programa que faa uma varredura, habilitando uma coluna por vez e testando se alguma tecla foi pressionada (linha) ou vice-versa. Na Figura 6 apresentado o diagrama esquemtico do teclado do kit. Como existem resistores de pull-up habilitveis individualmente no microcontrolador, no existe a necessidade de esses resistores estarem externamente conectados ao teclado. O teclado encontra-se conectado atravs dos jumpers ao PORTB, sendo que as colunas esto conectadas aos pinos PB0 a PB3 e habilitveis pelos jumpers COL1 a COL4, e as linhas esto conectadas aos pinos PB4 a PB7 e habilitveis pelos jumpers LIN1 a LIN4.

FIGURA 4 Diagrama esquemtico dos displays de sete segmentos

2.5.

Display de cristal lquido 16x2

Outro componente muito difundido em sistemas microcontrolados o display de cristal lquido alfanumrico de 16 caracteres por duas linhas (LCD 16x2, controlador HD44780) modelo ITM1602B (Intech LCD Group13). Por isso, o kit disponibiliza uma interface de dados de 4 bits (ver Figura 5).

FIGURA 6 Diagrama esquemtico do teclado matricial FIGURA 5 Diagrama esquemtico do LCD 16x2

2.7.

Sensor de temperatura

A interface de 4 bits priorizada frente de 8 bits pela menor complexidade exigida nas ligaes eltricas em detrimento de um pequeno

utilizado como sensor de temperatura, o LM35 (National Semiconductor14), um sensor analgico linear de preciso, que produz 10 mV/C (0 V a 0 C). O LM35 (encapsulamento TO-92) ligado diretamente a uma das entradas do A/D do
14

13

Disponvel em http://www.intech-lcd.com/.

Disponvel em http://www.national.com/.

AOC0008

94

Revista Ilha Digital, volume 1, pginas 91 97, 2009.

ATMega32, o pino PA7 (existe um jumper de seleo). Na Figura 7, possvel ver o diagrama eltrico para o referido sensor. No aparecendo no diagrama, existe um capacitor de 100 nF colocado fisicamente prximo alimentao do sensor para a filtragem de possveis rudos de alta frequncia.

alterar o pino do microcontrolador utilizado para o controle. Por padro, foi disponibilizado o pino PD7 atravs do jumper SOM1 (sada de um T/C de 8 bits) , enquanto que o jumper SOM2 desacopla o sonofletor, permitindo que se conecte uma carga externa ao conector.

FIGURA 7 Diagrama esquemtico para o sensor de temperatura LM35

2.8.

Sada PWM

FIGURA 9 Diagrama esquemtico para o pequeno alto-falante

Uma das sadas PWM do ATmega (16 bits PD5) ligada diretamente a uma chave transistorizada, incluindo um diodo 1N4148 (Fairchild Semiconductors) para o acionamento de cargas indutivas (diodo de roda livre). disponibilizado um LED de alto brilho para fins de sinalizao (ver Figura 8). O sistema totalmente configurvel atravs dos jumpers, permitindo que cargas externas possam ser conectadas ao transistor. O jumper PWM1 habilita o controle do PWM pelo pino PD5, enquanto que o jumper PWM2 desacopla o LED, permitindo que se conecte uma carga externa ao conector do PWM.

2.10. Rel para acionamento de cargas externas O kit possui um rel AT1RC2 (Metaltex) para acionamento de cargas em tenses 220 V e corrente de at 10 A. O circuito possui um LED sinalizador e disponibiliza os contatos do rel atravs de um conector J21, como pode ser visto na Figura 10. Pode-se notar o diodo de proteo para o transistor. O acionamento do rel ocorre via jumper RELE, conectado ao pino PD6.

FIGURA 10 Diagrama esquemtico para o rel FIGURA 8 Diagrama esquemtico para um sinal PWM

2.11. Relgio de tempo real (RTC) Para a contagem de tempo e o trabalho com o protocolo I2C foi empregado um circuito integrado dedicado para a contagem do tempo (Real Time Clock): o DS1307 (Maxim Integrated Products15). Este CI conta com preciso a hora, o dia, o ms e o ano com o emprego de um cristal externo de 32,768 kHz. Possui uma entrada para a conexo de uma bateria externa tipo boto de 3 V (CR2032) para garantir o seu funcionamento na ausncia de
15

2.9.

Sonofletor piezoeltrico

O ATmega permite utilizar alguns de seus contadores/temporizadores para gerar sinais com frequncia varivel. Assim, foi colocado um pequeno sonofletor piezoeltrico. Na Figura 9, apresentado o diagrama esquemtico do sistema de acionamento do sonofletor. Da mesma forma que o sistema PWM, possvel, atravs dos jumpers, conectar uma carga externa ao transistor e mesmo
AOC0008

Disponvel em http://www.maxim-ic.com/.

95

Revista Ilha Digital, volume 1, pginas 91 97, 2009.

energia. Tambm disponibiliza uma sada em dreno aberto para a conexo de cargas ou resistores para a transmisso de sinais em frequncia (32,768 kHz, 8,192 kHz, 4,096 kHz ou 1 Hz). Na Figura 11 apresentado o diagrama esquemtico empregado. Os pinos de controle so os pinos do mdulo TWI do ATmega. A comunicao I2C com o dispositivo realizada via pinos PC0 e PC1 do microcontrolador, conectados aos jumpers I2C (SCL e SDA).

FIGURA 12 Diagrama da interface serial RS232

2.13. Conector para gravao Para a gravao ISP (In System Programming) utilizado o padro de pinos recomendado pela Atmel, como apresentado na Figura 13, a qual mostra uma barra dupla de pinos, com os pinos necessrios gravao.

FIGURA 11 Diagrama esquemtico para o RTC DS1307

2.12. Interface serial Para a comunicao entre o ATmega e o mundo externo, foi disponibilizado uma interface IEC RS-232 que trabalha com o mdulo USART do microcontrolador. Um conector DB9 fmea (Metaltex) utilizado e qualquer cabo serial universal pode ser empregado. Para a comunicao com um computador moderno, por exemplo, s fazer uso de algum cabo adaptador serial/USB dos vrios disponveis no mercado. A comunicao feita pelos pinos PD0 e PD1, conectados aos jumpers TX e RX, respectivamente (Figura 12).
FIGURA 13 Diagrama para a gravao ISP

2.14. Circuito completo do Kit ATmega++ O kit montado est ilustrado na Figura 14, e o diagrama esquemtico, na Figura 15. Foi empregada uma placa dupla face, com componentes SMD (Surface Mount Devices) e PTH (Plated ThroughHole).

FIGURA 14 Fotografia do kit ATmega++ montado

AOC0008

96

Revista Ilha Digital, volume 1, pginas 91 97, 2009.

3.

EXEMPLO DE APLICAO

Para exemplificar o uso do kit ATmega++, na Figura 16 apresentada a hora, dia, ms e ano

(proveniente do DS1307) no LCD 16x2. A temperatura resulta da converso do A/D do ATmega para o sinal do LM35.

FIGURA 15 Diagrama esquemtico completo do kit ATmega++

FIGURA 16 Temperatura e horrio

O trabalho com o kit ATMEGA++ permite o domnio das tcnicas de leitura de botes, trabalho com displays, acionamento de cargas e interfaces seriais, entre outras. O kit permite a conexo de qualquer de suas funcionalidades ao meio externo, para conexo com outros sistemas. Da mesma, forma, possvel alterar os pinos de controle do microcontrolador e empregar o kit para o desenvolvimento de aplicaes dedicadas, o que o torna bastante flexvel no seu uso. REFERNCIAS ATMEL ATmega32A 8-bit Microcontroller with 32KB In-System Programmable Flash. Disponvel em: <http://www.atmel.com/dyn/resources/prod_docum ents/doc8155.pdf>. Acesso em: 23 set. 2009. BOYLESTAD, R. L.; NASHELSKY, L. Dispositivos eletrnicos e teoria dos circuitos. Prentice Hall do Brasil, 8 ed, 2005. TOCCI, R. J.; WIDMER, N. S.; MOSS, G. L. Sistemas digitais princpios e aplicaes. Prentice Hall do Brasil, 10a ed., 2008.

Para o funcionamento correto, o programa exigiu o uso da interface TWI (protocolo I2C) do ATmega e do seu conversor Analgico/Digital com o uso da tenso interna de referncia de 2,56 V. 4. CONSIDERAES FINAIS O objetivo do kit ATMEGA++ obter um maior nmero de funcionalidades por unidade de rea da placa de circuito impresso, assim, permitindo, com o uso de uma nica placa, trabalhar conceitos e programas fundamentais para o estudo de microcontroladores, em especial os AVRs de 8 bits. Tal kit foi desenvolvido essencialmente para o trabalho das tcnicas bsicas empregadas no projeto de sistemas microcontrolados.
AOC0008

97

Vous aimerez peut-être aussi