Вы находитесь на странице: 1из 27

AP1 Lgica de Programao

1Manual do Program-ME......................................................................................................................... 6
1.1Componentes para Program-ME / Arduino ................................................................................................. 6 1.2Ap ica!es pr"ticas...................................................................................................................................... # 1.$% &ue ' Arduino........................................................................................................................................... ( 1.$.1Caracter)sticas t'cnicas do Arduino/Program-ME.......................................................................... ( 1.$.2Program-ME *1.+ *s. Arduino......................................................................................................... , 1.$.$Program-ME *2.+ *s. Arduino....................................................................................................... 1+ 1.$.-./ie ds.......................................................................................................................................... 11 1.$.01ipos de Arduino .......................................................................................................................... 11 1.$.6Arduino em proto2oard................................................................................................................. 12 1.$.#Arduino para e3ecutar ou para desen*o *er4............................................................................... 12 1.$.(Arduino em pape .......................................................................................................................... 12 1.$.,Portas digitais5 ana gicas e P6M............................................................................................... 1$ 1.-Con7igurando seu Program-ME................................................................................................................. 11.-.1Cuidados Especiais...................................................................................................................... 11.-.2A imentando seu Program-ME / Arduino...................................................................................... 10 1.-.$Mapa de portas dos componentes Program-ME *1.+................................................................... 16 1.-.-Mapa de portas dos componentes Program-ME *2.+................................................................... 1# 1.0.eus primeiros programas com o Program-ME......................................................................................... 1( 1.0.18nsta ando os so7t9ares necess"rios............................................................................................ 1( 1.0.2Con/ecendo o editor Arduino....................................................................................................... 1( 1.0.$Escre*endo cdigo do primeiro programa.................................................................................... 2+ 1.6La2oratrio Program-ME: 1estando sua p aca ......................................................................................... 2#

AP1 Lgica de Programao

Anota!es

Cop;rig/t 2++, < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados. >er. 1.1

CAPTULO

Manual do Program-ME
Ar&uitetura do Program-ME Preparando o am2iente e insta ando so7t9ares Arduino e Processing E3emp os pr"ticos de uso

AP1 Lgica de Programao

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

AP1 Lgica de Programao

1 Manual do Program-ME
Program-ME ' um computador de pe&ueno porte5 2aseado em uma p ata7orma de prototipagem e etr?nica open-souce c/amada Arduino. .endo um computador de pe&ueno porte e e uti i@a um microcontro ador Acomputador comp eto em um c/ipB e no um microprocessador tradiciona &ue precisa de memrias e demais recursos e3ternos para 7uncionar. Pode ser uti i@ado para contro ar di*ersos tipos de componentes e etr?nicos digitais e ana gicos permitindo a criao5 prototipao e at' mesmo produo de /ard9ares e proCetos e etr?nicos e in*en!es em gera . >eCamos um comparati*o entre um computador tradiciona APC 8nte 5 App e5 D8.CB e uma p aca com microcontro ador program"*e AProgram-ME5 Arduino5 etc.B: Computador Tradicional (PC Intel, Apple, RI C! Placa microcontrolada pe"ueno porte A to consumo de energia Eai3o consumo de energia Amuito 2ai3oFB Muita memria Pouca memria Amuito poucaFB Caro Muito 2arato Comp e3o .imp es Gti i@a um sistema operaciona Ho uti i@a um sistema operaciona A2are meta B >"rios programas ao mesmo tempo Gm programa por *e@ Pseudo tempo rea 1empo rea A/ard rea -timeB Cone3o de /ard9are por G.E / 7ire-9ire Cone3o de /ard9are *ia portas digitais e ana gicas .a)da de *)deo padro .em sa)da de *)deo padro IConsiderando uso de microcontro adores de pe&ueno porte. Em termos de ap ica!es pr"ticas5 no &ueremos um computador de a to consumo de energia5 &ue roda *"rios ap icati*os ao mesmo tempo5 para contro ar um porto de garagem com acionamento remoto. 1++J das so u!es de contro e de a2ertura de port!es uti i@am p acas com microcontro adores com caracter)sticas simi ares ao &ue uti i@amos no Program-ME / Arduino. >a e em2rar &ue e3istem tam2'm microcontro ador 2em mais poderosos c/amados de ADM5 estes so microcontro adores mais a*anados e de m'dio at' grande porte &ue podem sim rodar sistemas operacionais e se comportar como um computador tradiciona 2aseado em microprocessador. 1e e7ones ce u ares como iP/one e 2aseados em Android so c "ssicas ap ica!es do ADM.

1.1 Componentes para Program-ME / Arduino


=i*ersos componentes podem ser igados no Program-ME / Arduino: Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

AP1 Lgica de Programao Ace er?metro5 2Ksso a5 <P.L Comunicao sem 7io: r"dio-7re&uMncia5 in7ra-*erme /o5 E uetoot/5 DN8= A Radio-Frequency IDentificationBL =isp a;s LC=L .ensores de u@5 temperatura5 to&ue5 umidade5 presenaL Motores: =C5 motor de passo e ser*o-motorL Circuitos integrados em gera L Leds e pain'is de edsL =etector de corL Leitor de impresso digita L

1.2 Aplicaes prticas


Criao de ro2?s e in*en!esL M"&uinas de corte CHCL =esen*o *imento de sistemas de oca i@ao e identi7icao autom"tica com DN8=L Automao residencia : contro e de tomadas / re Ms5 dimmer5 sensores de presenaL Arte tecno gica e entretenimento OacPing de /ard9are: integrao com iP/one5 te as de HoPia5 <P. da <armin5 contro e remoto5 .un .potL Ensino / Educao: pode ser uti i@ado em cursos de graduao e t'cnicos em gera para ensinar programao5 e etr?nica5 ro2tica e computao 7)sica.

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

AP1 Lgica de Programao

1.3 O

ue ! Arduino

Arduino 7oi criado na 8t" ia por M"3imo Ean@i com o o2Ceti*o de 7omentar a computao 7)sica5 cuCo conceito ' aumentar as 7ormas de interao 7)sica entre ns e os computadores. Por se tratar de um padro com especi7ica!es i*res de patentes e so7t9ares open-source5 temos *"rios 7a2ricantes independentes de Arduino ao redor do mundo5 inc uindo o Erasi &ue o7erece as marcas: .e*erino5 1atuino5 Mode i3ino e agora o Program-ME da < o2a code. Arduino ' %imple%, &'cil de programar e (arato. Moti*os mais &ue su7icientes para 7a@er uma comunidade crescente no mundo todo.

Caracter"sticas Arduino/Program-ME

t!cnicas

do

Easeado no A1Mega da empresa A>D5 7a2ricante de micro-contro adores em p ena ascenso e concorrente do P8C Pode usar A1Mega ( A(QB5 A1Mega 16( A16QB ou A1Mega $2( A$2QB C ocP 16 MO@ 012 2;tes de EEPD%M 1 seria GAD1 1 inter7ace 82C 2+ mi /!es de instru!es por segundo 1- portas digitais 6 ana gicas 0* com regu ador para tra2a /ar com a imentao e3terna de at' 12*

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

AP1 Lgica de Programao

Program-ME #1.$ #s. Arduino


% Program-ME ' 1++J compat)*e com Arduino *erso 2++,5 por'm o Program-ME inc ui componentes on-2oard para *ocM ingressar 7aci mente no mundo da e etr?nica5 computao 7)sica5 programao e ro2tica. % Program-ME C" inc ui os seguintes componentes on-2oard:

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

AP1 Lgica de Programao

Program-ME #2.$ #s. Arduino

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

1*

AP1 Lgica de Programao

%&ields
%utra interessante caracter)stica do Program-ME / Arduino ' a possi2i idade de e rece2er inKmeros s/ie ds em camadas. ./ie ds so p acas com componentes adicionais &ue podem ser encai3adas em cima do Arduino / Program-ME. A guns tipos de s/ie ds tam2'm permitem &ue outro s/ie d seCa empi /ado5 7ormando di7erentes camadas de componentes. Essa ar&uitetura 7aci ita o acop amento5 reuso e manuteno de s/ie ds espec)7icos &ue podem ser comparti /ados por di7erentes proCetos.

'ipos de Arduino
Ha imagem a seguir podemos *er o Arduino con*enciona &ue tipicamente uti i@a A1Mega 16( ou A1Mega$2(:

E3istem tam2'm di7erentes tipos de Arduino a 'm do con*enciona para atender a proCetos mais espec)7icos: Arduino Mega Arduino +ano

+ portas e maior capacidade ,il-pad Arduino

Para pequeno devices Program-ME .1.*

+ portas e maior capacidade

Dispositivo didtico

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

11

AP1 Lgica de Programao

Arduino em proto(oard
Como o proCeto e etr?nico do Arduino ' muito %imple%5 ' 7"ci construir um uti i@ando proto2oard5 pape ou corroendo uma p aca de 7ace simp es. >eCa o Arduino em proto2oard: 2 Capacitores e etro )ticos de 1++ microNarads por 20> 2 Leds 1 crista de 16MO@ Apara o c ocPB 1 proto2oard 1 resistor de 1P 1 resistor de $$+D 2 capacitores cerRmicos A22B 1 A1Mega 16( ou $2(

Arduino desen#ol#er*

para

e)ecutar

ou

para

Podemos 7a@er com 2ai3o custo um Arduino em proto2oard com um m)nino de componentes. Mas nesse caso teremos um Arduino su7iciente apenas para e3ecuo de programas. Como podemos o2ser*ar5 no temos nen/um tipo de circuito &ue permita a trans7erMncia de no*os programas para o c/ip A1Mega 16(. Por esse moti*o ' &ue o proCeto origina conta com um circuito &ue permite conectarmos o Arduino *ia G.E no PC - o N12$2-DL5 &ue representa um tipo de ponte de comunicao seria D.-2$2 *ia G.E. >a e em2rar &ue o custo deste circuito G.E AN12$2-DLB pode representar o maior custo do proCetoF

Arduino em papel
S poss)*e tam2'm 7a@er Arduinos em pape 5 ou seCa5 imprimimos em um pape o es&uema do circuito5 co ocamos os componentes por cima e em 2ai3o do pape e so damos a 7iao:

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

1/

AP1 Lgica de Programao

Portas digitais+ anal,gicas e P-M


% Arduino disponi2i i@a di*ersas portas digitais e ana gicas para igarmos di7erentes componentes e etr?nicos Ae3. eds5 sensores5 motoresB e programar seu comportamento *ia so7t9are ou er dados de sensores .

Has portas digitais5 podemos ler ou gra.ar * 0 1 ou 1I21 0 ,34. Gm ,E5 em uma porta digital no estado 1I21 ' um ed ace%o L se passarmos o *a or da porta para * ou ,345 o ed ser" apagado. Has portas ana gicas de entrada podemos con*erter um sina ana gico5 dentro da 7ai3a de tra2a /o do Arduino5 para nKmeros entre + e 1+2$ A&uanto maior a amp itude da onda5 maior o *a or o2tidoB. Potenci?metros e sensores de u@ so e3emp os de componentes &ue tipicamente so igados nas portas ana gicas de entrada. % Arduino tam2'm disponi2i i@a portas digitais P4M APulse With ModularizationB &ue simu am um contro e de potMncia em portas digitais. Podemos usar P6M para contro ar a *e ocidade de rotao de um motor ou a intensidade de 2ri /o de um LE=. Cada componente do circuito ' igado em um porta digita con*enciona 5 P6M ou uma porta ana gica. A 'm disso5 o Arduino permite &ue uma porta ana gica 7uncione como digita 5 mas no o contr"rio.

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

13

AP1 Lgica de Programao

1.. Con/igurando seu Program-ME


Cuidados Especiais
% Program-ME no ' um dispositi*o 7r"gi 5 mas ' importante 7icarmos atentos em a guns deta /es &uando tra2a /amos com corrente e 'trica: % primeiro cuidado ' &uanto T 7orma de a imentao: *ia G.E ou 7onte e3terna &ue de*e ser esco /ida e con7igurada com ateno Aessa con7igurao ser" a2ordada a seguirB. % segundo cuidado ' &uanto Ts partes do Program-ME Ae Arduinos em gera B &ue condu@em corrente5 sendo a parte mais perigosa o conector G.E prateado &ue ' aterrado e no de*e encostar em componentes de um s/ie d insta ado. % terceiro cuidado ' &uanto a usar 11+ ou 22+ em re Ms5 por e3emp o5 e esti*er igando isso no seu Program-ME. % Program-ME conta com um diodo para proteo do transistor5 mas se um re M esti*er igado de 7orma errada pode ser 7ata para a p aca toda. Portanto5 toda ateno ' pouco.
Dediquei este t pico ao primeiro Pro!ram-M" fa#ricado que e$plodiu em minha #ancada quando es#arrei um fio com %%&' no conector prateado ()*+++ ,'in-cius )en!er./

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

16

AP1 Lgica de Programao

Alimentando seu Program-ME / Arduino


% Program-ME / Arduino pode ser a imentado com energia da porta G.E ou rece2er uma 7onte e3terna de a imentao. % uso da 7onte e3terna ' 7ortemente recomendado &uando se usa componentes &ue consomem corrente tota i@ando 0++mA5 como ' o caso de motores5 re Ms e di*ersos outros. 7 muito importante "ue .oc8 ten9a e%%e% cuidado%, poi% .oc8 pode "ueimar %ua porta : ; ou at< me%mo o %eu Program-ME %e u%ado de &orma incorreta=== >ocM de*e con7igurar atra*'s de um Cumper AUEV1 / UG.EB &ua ' a 7orma pretendida de a imentao con7orme apresentado na imagem a seguir. .e o Program-ME 7icar sem o strap5 e e no igar"FF

Heste

caso

temos

Program-ME con7igurado para rece2er a imentao e3terna. % strap esta igando os pinos 1 e 2.

Para &ue os eds esteCam /a2i itados5 todos os straps precisam estar corretamente co ocados nos Cumpers.

A&ui temos o Program-ME sendo a imentado por G.E com o strap pinos 2 e $. igando os

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

15

AP1 Lgica de Programao

Mapa Program-ME #1.$


Porta
5igital * 5igital 1 5igital / 5igital 3 5igital 6 5igital 5 5igital 6 5igital # 5igital $ 5igital ) 5igital 1* 5igital 11 5igital 1/ 5igital 13 5igital 16 Anal>gica * Anal>gica 1 Anal>gica / Anal>gica 3 Anal>gica 6 Anal>gica 5

de

portas
C>digo

dos

componentes

Componente
Eoto / C/a*e 1 Led 2 *erde Led $ *erde Led - amare o Led 0 amare o Led 6 amare o Led # *erme /o 1ransistor Led ( *erme /o 1ransistor .er*o 1 .er*o 2 .peaPer LEd , *erme /o Led 1 *erde S o mesmo &ue =igita 1Potenci?metro 1 Potenci?metro 2 1ransistor 1ransistor .ensor de Lu@ L=D

C/*1 L2 L$ L- AP6MB L0 L6 AP6MB L# AP6MB W$ L( W.er*o-1 .er*o-2 .P1 L, L1 Led 1 *erde L1 UP6 UP# W2 W0 D16

% Program-ME / Arduino pode acessar as portas ana gicas e trat"- as como digitais usando os nKmeros dos pinos em se&uencia5 ou seCa5 a porta ana gica @ero ser" tratada como digita &uando 7or re7erenciada como pino 1- e assim por diante. Anal>gica * Anal>gica 1 Anal>gica / Anal>gica 3 Anal>gica 6 Anal>gica 5 Pino 1- ou =igita Pino 10 ou =igita Pino 16 ou =igita Pino 1# ou =igita Pino 1( ou =igita Pino 1, ou =igita 110 16 1( 1( 1,

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

16

AP1 Lgica de Programao

Mapa Program-ME #2.$


Porta
5igital * 5igital 1 5igital / 5igital 3 5igital 6 5igital 5 5igital 6 5igital # 5igital $ 5igital ) 5igital 1* 5igital 11 5igital 1/ 5igital 13 Anal>gica * Anal>gica 1 Anal>gica / Anal>gica 3 Anal>gica 6 Anal>gica 5

de

portas
C>digo

dos

componentes

Componente
Conector E uetoot/ Conector E uetoot/ *ot0o 1 2have% 1 Interrup30o & Interrup30o% 1 4ransistor 56 7ed 8 1 )pea9er )ervo% 1 4ransistor 5: )ervo: 1 4ransistor 5; 7ed ; 1 Motor %-< 7ed 6 1 Motor %-* 1ransistor W0 Motor 1 P6M Motor 2 P6M Motor :-< 1 7ed: Motor :-* 1 7ed% Entrada 1 Entrada 2 .ensor 1emperatura .ensor de Lu@ Conector 82C Conector 82C

UP1UP1C/a*e-1 / UP1, UP1( P0 UP- W2 UP0 WP- / V1 P$ / V1 W0 V1 V1 V1 / P2 V1 / P1 UP6 UP# UP16 D16 UP$ UP$

Podemos perce2er &ue nesta *erso da p aca a guns componentes 7oram co ocados em para e o5 Wuando usamos o sistema de contro e de motores L2,$= Acontro e dup o de motoresB os eds sero acionados em para e o e *ice*ersa.

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

1#

AP1 Lgica de Programao

1.0 %eus primeiros programas com o Program-ME


1nstalando os so/t2ares necessrios
Para iniciar o desen*o *imento de programas para o Program-ME / Arduino5 *ocM de*e 7a@er o do9n oad e insta ar os seguintes so7t9ares: ?a.a E ?5@ : % editor do Arduino 7oi 7eito em Ua*a5 portanto necessita da m"&uina *irtua Ua*a insta ada para 7uncionar. .upondo &ue *ocM ainda no ten/a insta ado o U=Q5 *eCa no cap)tu o anterior como 7a@er essa insta ao e con7igurao. Arduino (**/* ou .er%Ao po%terior!: % do9n oad pode ser 7eito na ur http://www.arduino.cc/. Esse so7t9are ' a 7erramenta Apr3imo a uma 8=EB por meio da &ua escre*emos5 compi amos e e7etuamos a trans7erMncia do programa para a p aca do Program-ME. =epois de insta ar o so7t9are necess"rio5 2asta oca i@ar5 no diretrio de insta ao do Arduino5 um ar&ui*o c/amado arduino.exe Ano 6indo9sB ou arduino.sh Ano Linu3B e e3ecutar esse ar&ui*o para inicia i@ar o editor do Arduino. Agora ' o momento certo de *ocM co ocar todos os straps nos Cumpers con7orme mostramos anteriormente. Wuando terminar de igar *ocM C" pode co ocar o ca2o G.E no Program-ME e5 em seguida5 igar em uma porta G.E do seu computador. A primeira cone3o tipicamente demora mais em 7uno das con7igura!es iniciais. .eu sistema operaciona de*e recon/ecer as portas seriais como COMx:5 por e3emp o COM10:5 COM11: ou at' mesmo COM30: Apode acontecerBF

Con&ecendo o editor Arduino


Gsamos a 7erramenta Arduino para editar5 compi ar e trans7erir programas para nosso Program-ME. E a permite o desen*o *imento com C / CXX uti i@ando um <CC customi@ado para A>D / A1Me A7am) ia de microcontro adores do Arduino A1ME<a 16( / $2(B. A 7erramenta ' simp es e 7unciona e ne a temos uma "rea para edio de cdigo5 uma "rea A7undo pretoB de resposta das opera!es com nosso Arduino e tam2'm menus e 2ot!es de ata /o para as opera!es mais comuns.

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

1$

AP1 Lgica de Programao A 7igura a seguir descre*e as 7un!es principais do Editor Arduino.

erial monitor: usado para er in7ormao do Arduino para o PC :pload: trans7ere o prog. para o Arduino a.e: sa *ar seu proCeto 3pen: a2rir um proCeto +eB: iniciar um no*o proCeto top: parar a compi ao Compile: compi ar o cdigo

=e*emos esco /er no menu Tools Board o mode o correto de microcontro ador &ue estamos uti i@ando. Ho caso do Program-ME ' o Atmega$2( con7orme apresentamos na imagem a2ai3o.

=epois de*emos esco /er a porta seria &ue representa nosso Arduino5 con7orme mostrado a2ai3o.

ProntoF Podemos agora escre*er o cdigo do programa e trans7erir para nosso dispositi*o. Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

1)

AP1 Lgica de Programao

Escre#endo c,digo do primeiro programa


>amos apresentar a&ui a guns e3emp os de programas simp es e pr"ticos com o Program-ME. S importante em2rar &ue os straps pretos de*em estar co ocados nos Cumpers para igar os componentes do Program-ME . 3; C Ho se preocupe5 neste momento5 em entender as instru!es do programa. >amos apenas *eri7icar o 7uncionamento do Program-ME e o processo de desen*o *imento. >ocM *ai notar &ue no Program-ME5 o programa 7onte ' di*ido em trMs partes: 1) Drea de 5eclaraEFe%: onde so de7inidas *ari"*eis e constantes g o2ais1 &ue uti i@aremos no programa. 2) GunEAo de %etup: trec/o de cdigo e3ecutado apenas uma *e@ onde 7a@emos a inicia i@ao de portas e *ari"*eis. 3) GunEAo de loop: trec/o de cdigo principa do Arduino &ue cont'm o programa &ue 7icar" sendo e3ecutado in7initamente Aem oop dentro do dispositi*oB. Lem2re-se &ue os te3tos aps o s)m2o o Y//Z no representam instru!es do programa5 so apenas documentao a respeito do &ue est" sendo programado na instruo seguinte.

%s termos *ari"*eis e constantes g o2ais sero de7inidos mais adiante.

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

/*

AP1 Lgica de Programao

1.0.3.1 3ed Pisca Pisca 4 Program-ME #1.$


% programa a2ai3o 7a@ com &ue o Led >erde5 na porta digita 1-5 rece2a *a ores O8<O e L%6 de 7orma &ue e e 7i&ue acendendo e apagando constantemente.
PiscaPisca

// Associando o nome L !"1 com a porta di#ital 1$ #define LED_1 14 void setup() { //!e%inindo a porta di#ital 1$ como uma porta de sa&da de dados 'acenderemos o led( pinMode(LED_1, OUTPUT); } void loop() { //)ra*amos 1 na porta di#ital 1$+ acendendo o led *erde di it!l"#ite(LED_1, $%&$); //Comando para a#uardar 1 se#undo '1000 milisse#undos( para a pr,xima instru-.o del!'(1(((); // )ra*amos 0 na porta di#ital 1$+ apa#ando o led *erde di it!l"#ite(LED_1, LO"); //Comando para a#uardar 1 se#undo '1000 milisse#undos( para a pr,xima instru-.o del!'(1(((); }

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

/1

AP1 Lgica de Programao

1.0.3.2 3ed Pisca Pisca 4 Program-ME #2.$


% programa a2ai3o 7a@ com &ue o Led digita 1$5 rece2a *a ores O8<O e L%6 de 7orma &ue e e 7i&ue acendendo e apagando constantemente.
PiscaPisca

///ro#ram0M

*1

// Associando o nome L !"1 com a porta di#ital 13 #define LED_1 1)

void setup() { //!e%inindo a porta di#ital 1$ como uma porta de sa&da de dados 'acenderemos o led( pinMode(LED_1, OUTPUT); } void loop() { //)ra*amos 1 na porta di#ital 1$+ acendendo o led *erde di it!l"#ite(LED_1, $%&$); //Comando para a#uardar 1 se#undo '1000 milisse#undos( para a pr,xima instru-.o del!'(1(((); // )ra*amos 0 na porta di#ital 1$+ apa#ando o led *erde di it!l"#ite(LED_1, LO"); //Comando para a#uardar 1 se#undo '1000 milisse#undos( para a pr,xima instru-.o del!'(1(((); }

=epois de digitar esse cdigo no editor do Arduino Ano ' necess"rio inc uir os coment"riosB e sa *ar5 c i&ue em compi ar para *eri7icar se tudo 7oi escrito corretamente. Caso o Arduino no aponte nen/um erro no seu cdigo5 c i&ue no 2oto de Gp oad e trans7ira o programa para o Arduino. 5ICAC +Ao < nece%%'rio compilar ante% de &aHer o upload poi% toda% operaEFe% de upload compilam implicitamente %eu c>digo= Por<m, < nece%%'rio %al.ar o %eu proIeto ante% de colocar em eJecuEAo. Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

//

AP1 Lgica de Programao

1.0.3.3 3eds com luminosidade #ari#el


>amos agora aprimorar nosso programa para &uanto menos u@5 mais eds so acesos. Luminosidade>aria*e // Associamos o nome L!2 3 porta anal,#ica 4 #define LD* + int led,- . {14,1,/,),4,+,0,1,1)}; int lu2inosid!de; void setup() { // !e%inimos as portas di#itais como portas de sa&da fo#(int 3.(;345;366) { pinMode(led,3-, OUTPUT); } } void loop() { //O5temos o *alor da luminosidade *ia sensor da placa lu2inosid!de . !n!lo *e!d(LD*); //Calculamos 6uantos leds de*em ser li#ados int ledsP!#!Li !# . 2!p(lu2inosid!de, (, 7+(, (, 5); // Acendemos os leds a serem li#ados com pe6ueno inter*alo de tempo entre eles fo#(int 3.(;34ledsP!#!Li !#;366) { di it!l"#ite(led,3-, $%&$); del!'(1((); } // Apa#amos os leds a serem li#ados com pe6ueno inter*alo de tempo entre eles fo#(int 3.(;34ledsP!#!Li !#;366) { di it!l"#ite(led,3-, LO"); del!'(1((); } }

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

/3

AP1 Lgica de Programao

1.0.3.. 3eds com luminosidade #ari#el 4 Program-ME #2.$


>amos agora aprimorar nosso programa para &uanto menos u@5 mais eds so acesos. Luminosidade>aria*e #define LD* ) int led 78 9 : 13+ 11+ ;+ <+ $=> int lu2inosid!de; *oid setup'( : %or'int x90>x?4>x@@( : pinMode'led7x8+ OAT/AT(> = = *oid loop'( : //O5temos o *alor da luminosidade *ia sensor da placa lu2inosid!de . !n!lo *e!d(LD*); //Calculamos 6uantos leds de*em ser li#ados int ledsP!#!Li !# . 2!p(lu2inosid!de, )((, 7+(, (, 4); %or'int x90>x?9leds/araLi#ar>x@@( : di#italBrite'leds7x8+ CD)C(> delaE'100(> = %or'int x9leds/araLi#ar>xF01>x00( : di#italBrite'leds7x8+ LOB(> delaE'100(> = =

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

/6

AP1 Lgica de Programao

1.0.3.0 5ece(endo dados computador

do

Program-ME

Arduino

no

% Program-ME / Arduino pode en*iar dados para seu computador desde &ue esteCa com o ca2o G.E igado. Por meio de uma ponte para inter7ace seria 5 um programa Arduino pode a2rir uma comunicao seria com o computador e en*iar dados di*ersos. 8sso ' muito importante principa mente para podermos depurar e *eri7icar poss)*eis erros no nosso programa. Para *er os dados en*iados pe a p aca ' necess"rio con7igurar o monitor seria na inter7ace do Arduino. Comunicao.eria // Associamos o nome L!2 3 porta anal,#ica 4 '/ro#ram0M #define LD* + // Associamos o nome L!2 3 porta anal,#ica 4 '/ro#ram0M #define LD* ) int lu2inosid!de; void setup() { //Dnstru-.o para iniciar a comunica-.o serial com o computador 8e#i!l9:e in(51((); } void loop() { //O5temos o *alor da luminosidade *ia sensor da placa lu2inosid!de . !n!lo *e!d(LD*); //Dnstru-.o para en*iar um dado para o computador 8e#i!l9p#intln(lu2inosid!de); del!'(+((); } 1.0( 1.0(

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

/5

AP1 Lgica de Programao ,igaEAo de componente% o&&-(oard Apesar do Program-ME C" inc uir a guns componentes on-2oard5 como eds5 speaPer e transistores5 muitas *e@es &ueremos igar componentes di7erenciados5 como por e3emp o um u trasom para medir distRncia Amuito Kti para ro2?s contro ados pe o Program-ME des*iarem de o2st"cu osB. Ha imagem a seguir5 podemos *er um u tra-som da Para a3 ApingB igado no Program-ME atra*'s de uma proto2oard Ap aca 2ranca com 7urosB. Podemos o2ser*ar trMs 7ios: 1. 2. 3. .ina digita para o Arduino 1erra / gnd 0*

Cada componente &ue igamos no Arduino demanda um es&uema espec)7ico de 7iao5 para isso temos &ue ter em mos o datas/eet do componente &ue pretendemos usar.

Caso *ocM esteCa uti i@ando um componente on-2oard do Program-ME5 como seus eds5 speaPer5 transistor5 no ' necess"rio igar nen/um 7io e nem mesmo usar a proto2oard. Adiciona mente o Program-ME pode rece2er diretamente ser*o-motores5 motores =C5 step-motor unipo ar e potenci?metros sem a necessidade de proto2oards.

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

/6

AP1 Lgica de Programao

1.6 3a(orat,rio 'estando sua placa


3(Ieti.oC Criar o primeiro programa com Program-ME / Arduino. Ta(ela de ati.idade%C

Program-ME7

LABORATRIO

Ati.idade 1. A2ra o editor Arduino con7orme instru!es e esco /a um dos trMs programas e3emp o para digitar. /. =igite o programa com ateno em re ao Ts etras maiKscu as e minKscu as. 3. C i&ue no 2oto de compi ao para *er se o cdigo est" com a sinta3a correta. 6. P ug seu Program-ME no computador *ia G.E5 7aa a con7igurao da 2oard e da porta de comunicao. =epois c i&ue no 2oto de trans7erMncia do programa para a p aca. 5. Para2'nsF .eu primeiro so7t9are de 2ai3o n)*e escrito com Program-ME / ArduinoF

3@

Anota!es

Cop;rig/t 2++0 < o2a code 1/e =e*e opers Compan;5 todos os direitos reser*ados.

/#

Вам также может понравиться