Você está na página 1de 6

Saber Eletrnica Online

Pgina 1 de 6

Imprimir

PRODUTOS / Tecnologia
25/08/2011 07:59:03

Curso sobre Arduno - Arduno Duemilanove - Parte 1


Filipe Pereira

Apresentao do Arduno Duemilanove: uma placa microcontroladora baseada no mC AT-mega 328 (datasheet). Ela tem 14 pinos I/O digitais, 6 entradas analgicas, um oscilador de 16 MHz ( a cristal ), uma conexo USB, um jaque de alimentao, um header ICSP, e um boto de reset. Ela contm tudo o que necessrio para o suporte do C, ligando-a simplesmente a um computador atravs de um cabo USB, ou alimentando-a com um adaptador AC/ AD ( ou bateria) para dar a partida. Duemilanove (que significa dois mil e nove, em italiano) o mais recente modelo do Arduno Analisemos suas especificaes na tabela 1.

Alimentao O Arduno Duemilanove pode ser alimentado pela ligao USB ou por qualquer fonte de alimentao externa. A fonte de alimentao selecionada automaticamente. Alimentao externa (no USB) pode ser tanto de uma fonte como de uma bateria. A fonte pode ser ligada com um plugue de 2,1 mm (centro positivo) no conector de alimentao. Cabos vindos de uma bateria podem ser inseridos nos pinos GND (massa) e Vin (entrada de tenso) do conector de alimentao. A placa pode funcionar com uma alimentao externa de 6 a 20 volts. Entretanto, se a alimentao for inferior a 7 volts, o pino 5 V pode fornecer menos de 5 volts e a placa poder ficar instvel. Se a alimentao for superior a 12 volts, o regulador de tenso poder sobreaquecer e avariar a placa. A alimentao recomendada de 7 a 12 volts. Os pinos de alimentao so: VIN - Entrada de alimentao para a placa Arduno quando uma fonte externa for utilizada. Poder fornecer alimentao por este pino ou, se for usar o conector de alimentao,empregar a alimentao por este pino. 5V - A fonte de alimentao utilizada para o microcontrolador e para outros componentes da placa pode ser proveniente do pino Vin atravs de um regulador on-board, ou ser fornecida pelo USB ou outra fonte de 5 volts. 3V3 - Alimentao de 3,3 volts fornecida pelo chip FTDI. A corrente mxima de 50 mA. GND - Pino terra ou massa. Memria O ATmega328 tem 32 KB de memria flash para armazenar cdigo (dos quais 2 KB so utilizados pelo bootloader), alm de 2 KB de SRAM e 1 KB de EEPROM (Electrically-Erasable Programmable ReadOnly Memory), que pode ser lida e escrita atravs da biblioteca EEPROM. Entrada e Sada Cada um dos 14 pinos digitais do Duemilanove pode ser utilizado como entrada ou sada, usando as funes de pinMode(), digitalWrite(), e digitalRead().

http://www.sabereletronica.com.br/secoes/leitura/1836/imprimir:yes

28/08/2011

Saber Eletrnica Online

Pgina 2 de 6

Eles trabalham com 5 volts. Cada pino pode fornecer ou receber um mximo de 40 mA e tem uma resistncia de pull-up interna (vem desligada de fbrica) de 20-50 k. Alm disso, alguns pinos tm funes especficas, a saber: Serial: 0 (RX) e 1 (TX) so usados para receber (RX) e transmitir (TX) dados srie, TTL. Estes pinos so ligados aos pinos correspondentes do chip serial FTDI USB-to-TTL External Interrupts: 2 and 3 Estes pinos podem ser configurados para ativar uma interrupo por um baixo valor, uma elevao ou falling edge ou uma mudana de valor. Veja a funo attachInterrupt () para mais pormenores. PWM: 3, 5, 6, 9, 10, e 11 Fornecem uma sada analgica PWM de 8-bit com a funo analogWrite (). SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) - Estes pinos suportam comunicao SPI, que embora compatvel com o hardware, no est includa na linguagem do Arduno LED: 13 - H um LED j montado e ligado de origem ao pino digital 13. Quando o pino est no valor HIGH, o LED acende; quando o valor est em LOW, ele apaga. O Duemilanove tem 6 entradas analgicas e cada uma delas tem uma resoluo de 10 bits (i.e. 1024 valores diferentes). Por padro, elas medem de 0 a 5 volts, embora seja possvel mudar o limite superior usando o pino AREF e um pouco de cdigo de baixo nvel. Adicionalmente alguns pinos tm funcionalidades especficas, a saber: I2C: 4 (SDA) and 5 (SCL) Suportam comunicao I2C (TWI) usando a biblioteca Wire (documentao no site do WIRE). H ainda mais alguns pinos na placa: AREF - Referncia de tenso para entradas analgicas. So usados com o analogReference(). Reset - Envia o valor LOW para efetuar o RESET ao microcontrolador. tipicamente utilizado para adicionar um boto de reset aos shields que bloqueiam o que h na placa. Analise o diagrama de blocos entre os pinos do Arduno e as portas do Atmega 168 e referncia do ATmega328. Veja, na figura 1, a representao esquemtica do Arduno Duemilanove.

ainda importante referir que a corrente mxima por cada pino analgico e digital de 40 mA, com exceo da sada que providencia 3,3 V, que permite correntes mximas de 50 mA. De acordo com Sousa and Lavinia, 2006, a capacidade de utilizar Pulse Width Modulation (PWM) muito importante, pois permite obter uma tenso analgica a partir de um sinal digital, ou seja, de um

http://www.sabereletronica.com.br/secoes/leitura/1836/imprimir:yes

28/08/2011

Saber Eletrnica Online

Pgina 3 de 6

sinal que apenas pode assumir o estado lgico 0 (0 V) ou 1 (5 V). O conceito de PWM usado para referir sinal que possua uma frequncia constante e um duty-cicle varivel. Comunicao Com o Arduno Duemilanove, a comunicao com um computador, com outro Arduno ou com outros microcontroladores muito simplificada. O ATmega328 permite comunicao srie no padro UART TTL (5V), que est disponvel nos pinos digitais 0 (RX) e 1 (TX), vide figura 2.

Um chip FTDI FT232RL na placa encaminha esta comunicao srie atravs do USB e os drives FTDI (includo no software do Arduno) fornecem uma porta COM virtual para o software no computador. O software Arduno inclui um monitor srie que permite que dados simples de texto sejam enviados placa Arduno Os LEDs RX e TX da placa piscam quando os dados esto para ser transferidos para o computador pelo chip FTDI. Pela ligao USB no d quando h comunicao srie pelos pinos 0 e 1. A biblioteca SoftwareSerial permite a comunicao srie por quaisquer dos pinos digitais do Duemilanove. O ATmega328 tambm oferece suporte aos padres de comunicao I2C (TWI) e SPI. O software do Arduno inclui uma biblioteca Wire para simplificar o uso do bus I2C; para usar a comunicao SPI, veja a folha de informaes do ATmega328. Programao O Arduno Duemilanove pode ser programado com o software Arduno (download). O ATmega328 no Arduno Duemilanove vem pr-gravado com um bootloader que permite enviar novos programas sem o uso de um programador de hardware externo. Ele se comunica utilizando o protocolo original STK500 (referncia, C header files). Tambm poder-se- programar o Tmega328 atravs do ICSP (InCircuit Serial Programming) header; Reset automtico (Software) Algumas verses anteriores do Arduno requerem um reset fsico (pressionando o boto de reset na placa) antes de carregar um sketch. O Arduno Duemilanove projetado de modo a permitir que isto seja feito atravs do software que esteja correndo no computador a que est ligado. Uma das linhas de controle de hardware (DTR) do FT232RL est ligada ao reset do ATmega328 por via de um condensador de 100 nF. Quando feito reset a esta linha (ativo baixo), o sinal cai por tempo suficiente para efetuar o reset ao chip. O software Arduno usa esta caracterstica para permitir carregar o programa simplesmente pressionando-se o boto upload no ambiente Arduno Isto significa que o bootloader pode ter um timeout mais curto, j que a ativao do DTR (sinal baixo) pode ser bem coordenada com o incio do upload. Esta configurao tem outras implicaes. Quando o Duemilanove est ligado a um computador com o Mac OS X ou Linux, ele faz o reset cada vez que a ligao feita por software (via USB). No prximo meio segundo aproximadamente, o bootloader estar rodando no Duemilanove. Considerando que programado para ignorar dados esprios (i.e. qualquer coisa a no ser um upload de um novo cdigo), ele interceptar os primeiros bytes dos dados que so enviados para a placa depois que a ligao for aberta. Se um sketch rodando na placa receber uma configurao de uma vez, ou outros dados ao inicializar, dever-se- assegurar que o software est em comunicao e espere um segundo depois de aberta a ligao, antes de enviar estes dados. Proteo contra sobrecorrente USB O Arduno Duemilanove tem um fusvel que protege a porta USB do seu computador contra curtocircuito. Apesar da maioria dos computadores possurem proteo interna prpria, o fusvel

http://www.sabereletronica.com.br/secoes/leitura/1836/imprimir:yes

28/08/2011

Saber Eletrnica Online

Pgina 4 de 6

proporciona uma proteo extra. Se mais de 500 mA foram aplicados na porta USB, o fusvel ir automaticamente interromper a ligao at que o curto ou a sobrecarga seja eliminada. Caractersticas fsicas O comprimento e largura mximos do Duemilanove so 2,7 (68,50 mm) e 2,1 (53,34 mm) respectivamente, com o conector USB e o jack de alimentao indo um pouco alm destas dimenses. Trs furos de fixao permitem a montagem da placa numa superfcie ou caixa. Note que a distncia entre os pinos de entrada e sadas digitais n 7 e n 8 de 160 mil (milsimos de polegada), no sequer mltiplo do espaamento de 100 mil dos outros pinos. Observe na figura 3.

O que so Shields? So Escudos, extenses do Arduno que permitem interagirem com tecnologias diversas facilmente. Acompanhe alguns exemplos ilustrados na figura 4.

Como usar as Shields? Conecta-se sobre o Arduno quantas se quiser. Veja a figura 5.

http://www.sabereletronica.com.br/secoes/leitura/1836/imprimir:yes

28/08/2011

Saber Eletrnica Online

Pgina 5 de 6

Converso A/D Este fator de grande interesse e a sua compreenso fundamental para perceber os valores obtidos nos pinos analgicos. O microcontrolador utilizado possui um conversor analgico digital de 10 bits, fazendo as contas:

Como a tenso mxima de referncia, por definio, se encontra nos 5 V, correspondendo ao valor 1023, obtemos a seguinte resoluo:

O que significa que s se conseguir detectar variaes superiores a 5 mV, ou seja, o valor lido pelo Arduno s se altera a cada 5 mV de variao do sinal analgico de entrada. Em caso de aplicaes que possuam sensores analgicos, por vezes 5 mV no uma resoluo aceitvel - existindo uma grande perda de resoluo. Uma possvel soluo, sem recorrer a eletrnica externa, apresentada a seguir. Para a resoluo da questo, existe um pino de entrada denominado AREF, que significa Analog Reference. Este pino permite mudar a referncia analgica do standard 5V para o valor de entrada, ficando todas as entradas analgicas com a referncia introduzida. Simplificando, se for introduzido no pino AREF a tenso de 2 V obtm-se a seguinte resoluo:

importante ter em conta que todos os pinos analgicos ficam com esta referncia, sendo necessria tambm a sua declarao por Software pela forma analogReference (tipo). A referncia analgica pode ser de trs tipos (tabela 2).

http://www.sabereletronica.com.br/secoes/leitura/1836/imprimir:yes

28/08/2011

Saber Eletrnica Online

Pgina 6 de 6

Basicamente, faz-se a configurao do contedo do registro ADMUX (pginas 205 e 206 do respectivo datasheet). importante, por vezes, fazer uma interligao entre a funo em C, uma linguagem de alto nvel (com um nvel de abstrao elevado, mais perto da linguagem humana), e o assembly, uma linguagem de baixo nvel. ento fundamental tentar perceber o que acontece na configurao do microcontrolador e no apenas ver os resultados, embora sejam estes que nos interessam, no ser isso que se pretende na compreenso do funcionamento do microcontrolador e, posteriormente, do Arduno igualmente vlido referir que aps configurar o Arduno para o uso do pino AREF, ele deixa de ter disponveis os pinos de 3,3V e 5V; sendo estes desligados necessrio recorrer alimentao externa, caso se queiram utilizar essas tenses de alimentao. O Arduno possui capacidade de operar alimentado, quer pela porta USB ou por uma entrada PWR (do tipo Power-Jack), sendo recomendada a sua alimentao (PWR) entre os 7 e os 12 V, possibilitando uma operao do tipo Standalone. O pino Vin no foi referido juntamente com os outros tipos de alimentao, pois possui um comportamento duplo. Ou seja, pode servir para alimentar o Arduno na gama de valores especificada ou, caso se alimente o Arduno recorrendo a uma das alimentaes especificadas anteriormente, pode-se ter disponvel um pino com a tenso utilizada na entrada (p.ex. se for alimentado o Arduno recorrendo a uma alimentao externa de 9 V, no pino Vin estaro acessveis os 9 V da alimentao). Concluso Com este primeiro material apresentado, encerramos a 1 lio do Curso. Continuaremos na prxima edio. At l! * Matria originalmente publicada na revista Saber Eletrnica; Ano: 47; N 454; Jul / Ago - 2011 Extrado do Portal Saber Eletrnica Online - Todos os direitos reservados - www.sabereletronica.com.br

http://www.sabereletronica.com.br/secoes/leitura/1836/imprimir:yes

28/08/2011

Você também pode gostar