Sie sind auf Seite 1von 7

Microcontroladores

com Arduino

Aula 1
Semana Acadmica 2013/1

Instalando o ambiente de desenvolvimento do Arduino


Para Windows, h um instalador automtico, disponvel no seguinte link:
http://arduino.cc/en/Main/Software. Na seo Download, selecionem Windows Installer.Basta
instalar o programa com as opes padro selecionadas que os drivers necessrios sero
automaticamente instalados. Quem usa MAC OSX ou Linux deve fazlo manualmente sigam
asinstruesdisponveisnoslinksabaixo:
InstruesparaMACOSX:http://arduino.cc/en/Guide/MacOSX
InstruesparaLinux:http://playground.arduino.cc/Learning/Linux

Microcontroladores
Um microcontrolador um pequeno computador em um nico circuito integrado,quecontm
processador, memria e perifricos de entrada e sada. Eles so feitos para aplicaes de
propsito especfico, como aplicaes embarcadas, em contrastecomosmicroprocessadores
usadosemcomputadorespessoais,quesoparaaplicaesdepropsitogeral.
Microcontroladores so usados para controlar automaticamente produtos e aparelhos, tais
como sistema de controle de motores de automveis, implantes mdicos, controles remotose
outrossistemasembarcados.
Sistema embarcado: um sistema computacional com uma funo dedicadaem um
sistema eltrico ou mecnico maior. Dizse que ele est embarcado em um aparelho
completo. A sua principal caracterstica estar dedicado a realizar uma tarefa
especfica.
Por ter tamanho epreo reduzidoemcomparaocomusar ummicroprocessador,memriae
perifricos de entrada e sada separados, microcontroladorestornam economicamentevivelo
controle digitalde cada vez mais aparelhoseprocessos. Elesnormalmentetemcapacidadede
processamento e memria reduzidos em relao a um computador comum devido a
priorizaremoutrosaspectos,taiscomoconsumodeenergia,tamanhoepreo.
Referncias:
http://en.wikipedia.org/wiki/Microcontrollers
http://en.wikipedia.org/wiki/Embedded_system

Arduino
Arduino uma plataforma de computao fsica composta por microcontroladores de placa
nica e por um ambiente de desenvolvimento para escrever programas para as placas. Ele
pode ser usado para desenvolver objetos interativos, tomando entrada de uma variedade de
sensores e chaves e controlando uma variedade de luzes, motores e outras sadas fsicas.
Tanto o hardware como o software so open source, isto , o cdigo fonte do ambiente de
desenvolvimentoeosesquemticosdasplacassodisponibilizadoslivremente.

Computao Fsica: a rea da computao que trata da construo de sistemas


interativos que,atravs do usode software e hardware, percebem omundoanalgicoe
respondemaele.
Microcontroladordeplacanica:ummicrocontroladorpostoemumanicaplacade
circuito impresso, que contm todos os componentes e circuitos necessrios para o
funcionamentodoprimeiro.
Parasabermais:
http://arduino.cc/en/Guide/Introduction
http://en.wikipedia.org/wiki/Arduino
http://en.wikipedia.org/wiki/Singleboard_microcontroller
CdigofontedoambientededesenvolvimentoArduino:http://github.com/arduino/Arduino
EsquemticodoArduinoUno:Arduino_Uno_Rev3schematic.pdf
Testando se o o ambiente de desenvolvimento e os drivers foram configurados
corretamente:
1. AbraoambientededesenvolvimentoArduino.
2. AbraoexemploPiscaLEDemFiles>Examples>01.Basics>Blink.
3. Selecioneanossaplaca:escolhaArduinoUnoemTools>Board.
4. Selecione a porta serial em que o Arduino est conectado em Tools > Serial Port. Se
houver mais de uma e voc no souber qual delas a certa, basta desconectar o
Arduino do computador, ver qual delas sumiu do menu, reconectlo e escolher a que
voltouaaparecer.
5. Clique no boto Upload para enviar o exemplo placa.Se o envio foi bemsucedido, a
mensagem Done Uploadingaparecer na barra de statuse o LED que estabaixodo
pino 13 no Arduino estar piscando. Caso contrrio, veja a pgina de soluo de
problemasdoArduino:http://arduino.cc/en/Guide/Troubleshooting.
Referncia: http://arduino.cc/en/Guide/Windows (passos 5 a 9 passos 1 a 4 so feitos ao
instalaroambientededesenvolvimento).

Pisca LED
O cdigo que enviamos ao Arduino faz um dos LEDs (Light Emitting Diode, diodo emissor de
luz) da placa ligar e desligar acadaumsegundo.EsteprogramaconsideradooHello,World
dosmicrocontroladores.Vejamoscomoelefunciona:

EstruturabsicadeumcdigoparaArduino
Duasfunesdeveroestarpresentesemqualquercdigo:setup()eloop().
setup(): a funo setup() chamada quando o cdigo comea. Usea para inicializar
variveis, definir modos dos pinos, usar bibliotecas, etc. A funo rodar apenas uma
vez,depoisqueligarmosouresetarmosaplacaArduino.
loop(): depois da setup(), temos a funo loop(), que faz exatamente o que o nome
sugere, isto , executa em loop o cdigo nela presente, permitindo assim que o seu
programaverifiquemudanaserespondaaelas.
Outrasfunesusadasnestecdigo:
pinMode(): configura um pino como sendo de entrada ou sada. Para usla, passe o
nmero do pino a configurar e a constante INPUT ou OUTPUT. Quando configurado
como entrada, um pino pode detectar o estado de um sensor como, por exemplo, um
boto. Quando configurado como sada, ele pode controlar umelemento comoumLED
ou um motor. uma boa prtica de programao criar variveis que contm o nmero
dos pinos que usaremos assim, se precisarmos mudar o pino que far algo, apenas
precisaremosmudaroseunmeronadeclaraodavarivel.
digitalWrite(): a funo define o valor de sada de um pino digital.Passamosparaelao
nmero do pino e ovalor de sada, que deve ser HIGH (5 Volts, ligado,Vdd) ouLOW(0
volts,desligado,conectadoterra,ground).
delay(): faz o Arduino esperar uma quantidade especificada de milissegundos antes de
continuarcomocdigo.
Pisca LED: definimos que o nosso LED estar no pino 13 pois o Arduino Uno j tem um LED
ligado a esse pino na prpria placa. Ao fazermos pinMode(led,OUTPUT), configuramos o pino
13 (led = 13) como de sada, pois ele ligare desligar o LED. Precisamos fazer isso uma e

apenas uma vez, porisso estchamada de funo est dentro dasetup(). Ocdigoefetivo de
piscar o LED, que ficar sendo repetido, est na loop(). digitalWrite(led,HIGH) ligaopinoaque
estconectadooLEDdelay(1000)espera1000ms,isto,1segundo,atseguircomocdigo
e digitalWrite(led, LOW) desliga o mesmo pino. Este cdigo executado repetidamente
enquanto o Arduino estiver ligado e, assim, o LED conectado ao pino 13 ficar piscando com
intervalosde1segundo.
Pisca LED com um LED externo: agora, faremos um LED que no est na placa Arduino
piscar, utlizandoomesmocdigodeantes.Paraisso,devemosconectloaopino13.Vejamos
como devemos conectlo. Sabemos que a corrente eltrica vai do potencial positivo para o
negativo e que so os elementos da corrente que carregam a energia que acender o LED.
Assim, podemos conectar uma daspernas do LED ao pino 13 e a outra ao ground, isto , 0V.
Dessa forma, quando ligarmos a sada do pino 13, l haver 5V, e a corrente ir passar pelo
LED, acendendoo, e quando a desligarmos, l haver 0V, no havendo assim diferena de
potencial entre as duas pernas do LED, logo por ele no passar corrente e ele estar
desligado. Noentanto, devemos atentar a que, comotodos os diodos, ele polarizado logo, a
correntesomentepassarporeleemumsentidodeterminado,nocaso,donodo(perna maior)
para o ctodo (perna menor). Alm disso, correntes elevadas so prejudiciais tanto ao LED
como ao Arduino, logo devemos colocar uma resistncia juntamente ligao para reduzir a
correntequepassar.

Referncias:
http://arduino.cc/en/Tutorial/BareMinimum
http://arduino.cc/en/Reference/Setup
http://arduino.cc/en/Reference/Loop

http://arduino.cc/en/Tutorial/Sketch
http://arduino.cc/en/Reference/PinMode
http://arduino.cc/en/Reference/DigitalWrite
http://arduino.cc/en/Reference/Delay
http://arduino.cc/en/Tutorial/Blink

Botes
Botes conectam dois pontos de um circuito quando sopressionados.Acorrenteatravessao
boto no sentido indicado na figura. Conectando um fio em qualquer um dos terminais V1 a
corrente atravessar para qualquer um dos terminais V2. Os terminais de mesmo nome
possuem a mesma tenso. A corrente s passar enquanto o boto estiver pressionado
quandoeleestiversolto,ocircuitoestaraberto.

Afimdeevitarqueasadadobotofiqueflutuando,isto,notenhaumvalordefinido, devemos
fazer um PULL DOWN, ou seja, garantirquesempre que o boto noestiver pressionado, a
sada dele ser de valor lgico 0. Isso feito colocando emparalelo com asada um resistor
queestligadonoGND.

Agora, faremos um cdigo que mantm um LED aceso enquanto oboto estiver pressionado.
O Arduino dever receber o sinal deestadodobotoeentomandaroLEDacender.Para lero
valordesadadoboto,devemosusarafunodigitalRead:
digitalRead(): recebe o nmero deum pino e retorna o seu valor, isto , ligado (HIGH)

oudesligado(LOW).
LembresededeclararobotocomoINPUTnosetup.

Referncia:
http://arduino.cc/en/tutorial/button
http://arduino.cc/en/Reference/DigitalRead

Projeto: Sinaleira
Desenvolvaumasinaleiracombotocomoquefoiaprendidoatomomento.
A sinaleira devepossuir3estados:aberta(LED verde),ateno(LEDamarelo)e fechada(LED
vermelho).
A sinaleira sempre est aberta at que algum aperte o boto. Ento, aps 2s do
pressionamento do boto, ela dever ficar em estado de Ateno por 2s, e s ento ficar
Fechada.Aps5segundos,osinaldeveestarabertonovamente.

Das könnte Ihnen auch gefallen