<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;DkYNSXw_eip7ImA9WhRaF0U.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722</id><updated>2012-02-20T16:29:58.242-08:00</updated><category term="linux" /><category term="arduino" /><category term="driver" /><category term="diecimila" /><category term="setup" /><category term="duemilanove" /><category term="instalação" /><category term="loop" /><category term="nano" /><category term="main" /><category term="C" /><category term="mac" /><category term="Curso Arduino Grátis Robótica Automação Robot Micro Controlador ATMega Variáveis Funções C" /><category term="windows" /><category term="uno" /><category term="linguagem" /><category term="funções" /><category term="mega" /><category term="functions" /><category term="ftdi" /><category term="arduino referência pinMode digitalWrite portas digitais digital pin ATMega" /><category term="IDE" /><category term="Curso Arduino Grátis Robótica Automação Robot Micro Controlador ATMega Variáveis Funções C Constantes HIGH LOW true false pinMode digitalRead digitalWrite" /><title>Renato Aloi</title><subtitle type="html">Blog do Renato Aloi sobre Arduino, tecnologia, política e tendências.</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://renatoaloi.blogspot.com/" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>21</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/RenatoAloi" /><feedburner:info uri="renatoaloi" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;A0QERH07eyp7ImA9WhRbEk0.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-1370655884113884214</id><published>2012-02-02T11:01:00.001-08:00</published><updated>2012-02-02T11:01:45.303-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-02-02T11:01:45.303-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="arduino referência pinMode digitalWrite portas digitais digital pin ATMega" /><title>Imprimir Valor de Porta Analógica Através da Serial</title><content type="html">&lt;h3 class="western" style="font-weight: normal;"&gt;&lt;span style="color: #e34c00; font-family: 'Lucida Sans', Lucida, Verdana, sans-serif; font-size: x-small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/h3&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;Este exemplo mostra como você pode ler uma porta digital usando um potenciômetro. Um potenciômetro é um dispositivo mecânico simples, que permite variar a resistência quando o êmbolo é girado. Ao passar voltagem através do potenciômetro e através de uma porta analógica do seu Arduino, é possível medir a quantidade de resistência produzida pelo potenciômetro, como um valor análogo. Neste exemplo você monitorará o estado do seu potenciômetro após estabelecer comunicação Serial entre o Arduino e o PC.&lt;/div&gt;&lt;h3 class="western" style="margin-bottom: 0.13cm; margin-top: 0cm;"&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/h3&gt;&lt;h3 class="western" style="margin-bottom: 0.13cm; margin-top: 0cm;"&gt;&lt;span style="color: #e34c00;"&gt;&lt;span style="font-family: 'Lucida Sans', Lucida, Verdana, sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-weight: normal;"&gt;Material Necessário&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;&lt;ul&gt;&lt;li&gt;&lt;div class="western" style="border: none; margin-bottom: 0cm; padding: 0cm;"&gt;  Placa do Arduino&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="border: none; margin-bottom: 0cm; padding: 0cm;"&gt;  Potenciômetro de 10K ohms&lt;/div&gt;&lt;div class="western" style="border: none; margin-bottom: 0cm; padding: 0cm;"&gt;  &lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;h3 class="western" style="font-weight: normal; margin-bottom: 0.13cm; margin-top: 0cm;"&gt; &lt;span style="color: #e34c00;"&gt;&lt;span style="font-family: 'Lucida Sans', Lucida, Verdana, sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Circuito&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;Conecte os três fios do potenciômetro na sua placa do Arduino. O primeiro fio vai no GND (0V), o pino central na porta analógica zero (A0) e o terceiro pino do potenciômetro vai no VCC (5V).&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="border: none; padding: 0cm; text-decoration: none;"&gt; &lt;span style="color: black;"&gt;&lt;a href="http://arduino.cc/en/uploads/Tutorial/AnalogReadSerial_BB.png"&gt;&lt;img align="BOTTOM" border="0" height="300" name="figura1" src="http://arduino.cc/en/uploads/Tutorial/AnalogReadSerial_BB.png" width="259" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="western" style="border: none; margin-bottom: 0cm; padding: 0cm;"&gt; &lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;Ao girar o êmbolo do potenciômetro, você altera a quantidade de resistência em um ou outro lado da trilha na qual o pino central está montado. Isto muda a voltagem no pino central. Quando a resistência entre o pino central e o lado conectado no 5V está perto de zero (e a resistência do outro  lado está perto de 10k ohms), a voltagem no pino central fica perto dos 5V. Quando o cenário é invertido, a voltagem no pino central se aproxima dos 0 volts, ou GND. Esta voltagem é a voltagem analógica que você está lendo como entrada.&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;O Arduino possui um circuito interno chamado conversor analógico-digital que efetua a leitura da variação de voltagem e a converte em um número entre 0 e 1023. Quando o êmbolo é girado em um sentido, teremos 0 volts entrando na porta analógica e o valor convertido é 0. Quando o êmbolo é girado completamente para o outro lado, teremos 5 volts entrando na porta e o valor convertido é 1023. Entre esses valores, a função analogRead() retorna um número entre 0 e 1023 que é a quantidade proporcional de voltagem sendo aplicada a porta.&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm; page-break-before: always;"&gt; &lt;br /&gt;
&lt;/div&gt;&lt;h3 class="western" style="font-weight: normal; margin-bottom: 0.13cm; margin-top: 0cm;"&gt; &lt;span style="color: #e34c00;"&gt;&lt;span style="font-family: 'Lucida Sans', Lucida, Verdana, sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Esquema Elétrico&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="border: none; padding: 0cm; text-decoration: none;"&gt; &lt;span style="color: black;"&gt;&lt;a href="http://arduino.cc/en/uploads/Tutorial/AnalogReadSerial_sch.png"&gt;&lt;img align="BOTTOM" border="0" height="400" name="figura2" src="http://arduino.cc/en/uploads/Tutorial/AnalogReadSerial_sch.png" width="330" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h3 class="western" style="font-weight: normal; margin-bottom: 0.13cm; margin-top: 0cm;"&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;/h3&gt;&lt;h3 class="western" style="font-weight: normal; margin-bottom: 0.13cm; margin-top: 0cm;"&gt; &lt;span style="color: #e34c00;"&gt;&lt;span style="font-family: 'Lucida Sans', Lucida, Verdana, sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Código&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;No programa abaixo, a única coisa que você precisa configurar na função setup() é a comunicação Serial, na velocidade de 9600 bauds (bits de dados por segundo), entre o Arduino e o PC, utilizando o comando abaixo:&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;code&gt;Serial.begin(9600);&lt;/code&gt;&lt;/div&gt;&lt;div class="western" style="border: none; margin-bottom: 0cm; padding: 0cm;"&gt; &lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="border: none; margin-bottom: 0cm; padding: 0cm;"&gt; No laço principal do seu programa, na função loop() do seu código, você precisa estabelecer uma variável para armazenar o valor convertido da resistência do seu potenciômetro (que deve ser entre 0 e 1023, perfeito para o tipo int de variável).&lt;/div&gt;&lt;div class="western" style="border: none; margin-bottom: 0cm; padding: 0cm;"&gt; &lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;code&gt;int sensorValue = analogRead(A0);&lt;/code&gt;&lt;/div&gt;&lt;div class="western" style="border: none; margin-bottom: 0cm; padding: 0cm;"&gt; &lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="border: none; margin-bottom: 0cm; padding: 0cm;"&gt; Finalmente, você precisa imprimir essa informação para seu console Serial, convertido em decimal (DEC). Você pode fazer isso com o comando Serial.println() na sua última linha de código:&lt;/div&gt;&lt;div class="western" style="border: none; margin-bottom: 0cm; padding: 0cm;"&gt; &lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;code&gt;Serial.println(sensorValue, DEC)&lt;/code&gt;&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;Agora, quando você abrir o Monitor da Serial, no ambiente de desenvolvimento do Arduino (clicando no ícone exatamente ao lado do botão “Upload”, na barra de ferramentas), você deverá ver um fluxo constante de números entre 0-1023, correlacionados com a posição do êmbolo do potenciômetro. Ao girar o potenciômetro, esses números deverão refletir o valor convertido quase que instantaneamente.&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div dir="LTR" id="sourceblock1"&gt;  &lt;div class="western" style="line-height: 100%; margin-bottom: 0cm;"&gt;  &lt;span style="color: black;"&gt;&lt;span style="font-family: monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;span style="background: #ffffff;"&gt;&lt;span style="color: #7e7e7e;"&gt;&lt;i&gt;/*&lt;br /&gt;
&amp;nbsp;  AnalogReadSerial&lt;br /&gt;
&amp;nbsp;Reads an analog input on pin 0, prints the  result to the serial monitor&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;This example  code is in the public  domain.&lt;br /&gt;
&amp;nbsp;*/&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: #cc6600;"&gt;void&lt;/span&gt;&amp;nbsp;&lt;span style="color: #cc6600;"&gt;&lt;b&gt;setup&lt;/b&gt;&lt;/span&gt;()&amp;nbsp;{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&lt;span style="color: #cc6600;"&gt;Serial&lt;/span&gt;.&lt;span style="color: #cc6600;"&gt;begin&lt;/span&gt;(9600);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: #cc6600;"&gt;void&lt;/span&gt;&amp;nbsp;&lt;span style="color: #cc6600;"&gt;&lt;b&gt;loop&lt;/b&gt;&lt;/span&gt;()&amp;nbsp;{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&lt;span style="color: #cc6600;"&gt;int&lt;/span&gt;&amp;nbsp;sensorValue&amp;nbsp;=&amp;nbsp;&lt;span style="color: #cc6600;"&gt;analogRead&lt;/span&gt;(A0);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&lt;span style="color: #cc6600;"&gt;Serial&lt;/span&gt;.&lt;span style="color: #cc6600;"&gt;println&lt;/span&gt;(sensorValue);&lt;br /&gt;
}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;  &lt;span style="color: #999999;"&gt;&lt;span style="font-family: Monaco, 'Courier New', Courier, mono;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-1370655884113884214?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/QRUaCuheVkIM4oO546NPv0Td0Iw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QRUaCuheVkIM4oO546NPv0Td0Iw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/QRUaCuheVkIM4oO546NPv0Td0Iw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/QRUaCuheVkIM4oO546NPv0Td0Iw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/2nYsNc-8X0Q" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/1370655884113884214/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2012/02/imprimir-valor-de-porta-analogica.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/1370655884113884214?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/1370655884113884214?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/2nYsNc-8X0Q/imprimir-valor-de-porta-analogica.html" title="Imprimir Valor de Porta Analógica Através da Serial" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2012/02/imprimir-valor-de-porta-analogica.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0QHQH49fip7ImA9WhRbEE8.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-8023090868738343664</id><published>2012-01-31T06:48:00.000-08:00</published><updated>2012-01-31T06:48:51.066-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-31T06:48:51.066-08:00</app:edited><title>Curso Arduino - Aula 12 (Revisão 2011) por Renato Aloi</title><content type="html">&lt;iframe width="459" height="344" src="http://www.youtube.com/embed/-BfcDNVISUQ?fs=1" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-8023090868738343664?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/2QijZuQrNo8SFJcPX7F7tmdzNfE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2QijZuQrNo8SFJcPX7F7tmdzNfE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/2QijZuQrNo8SFJcPX7F7tmdzNfE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2QijZuQrNo8SFJcPX7F7tmdzNfE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/EIZdwpMWezA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/8023090868738343664/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2012/01/curso-arduino-aula-12-revisao-2011-por.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/8023090868738343664?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/8023090868738343664?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/EIZdwpMWezA/curso-arduino-aula-12-revisao-2011-por.html" title="Curso Arduino - Aula 12 (Revisão 2011) por Renato Aloi" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://img.youtube.com/vi/-BfcDNVISUQ/default.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2012/01/curso-arduino-aula-12-revisao-2011-por.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ck4HQ3s8cSp7ImA9WhRVF0g.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-3394070214780772770</id><published>2012-01-16T13:55:00.000-08:00</published><updated>2012-01-16T13:55:32.579-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-01-16T13:55:32.579-08:00</app:edited><title>Material de Apoio das Aulas do Curso Arduino 2011</title><content type="html">&lt;b&gt;Download do Material de Apoio&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Abaixo, &lt;i&gt;link &lt;/i&gt;para download das apresentações que utilizei durante as aulas do Curso Arduino, durante o ano de 2011.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.seriallink.com.br/util/Curso_Arduino.zip"&gt;http://www.seriallink.com.br/util/Curso_Arduino.zip&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Os arquivos das Apresentações estão no formato "Curso Arduino - Aula XX.odp", onde XX representa o número da aula. A extensão ".odp" pode ser aberta com o &lt;a href="http://broffice.org/"&gt;BrOffice&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Abraços,&lt;br /&gt;
Renato Aloi&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-3394070214780772770?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/2Z9AN0Er32jzVS_kMkWmSop3gHw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2Z9AN0Er32jzVS_kMkWmSop3gHw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/2Z9AN0Er32jzVS_kMkWmSop3gHw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/2Z9AN0Er32jzVS_kMkWmSop3gHw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/w-psbBq6e-g" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/3394070214780772770/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2012/01/material-de-apoio-das-aulas-do-curso.html#comment-form" title="3 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/3394070214780772770?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/3394070214780772770?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/w-psbBq6e-g/material-de-apoio-das-aulas-do-curso.html" title="Material de Apoio das Aulas do Curso Arduino 2011" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><thr:total>3</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2012/01/material-de-apoio-das-aulas-do-curso.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUMHR386fSp7ImA9WhRXFUQ.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-2223738223469345603</id><published>2011-12-22T14:37:00.000-08:00</published><updated>2011-12-22T14:37:16.115-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-22T14:37:16.115-08:00</app:edited><title>Laços While &amp; For do Arduino</title><content type="html">&lt;h2 class="western"&gt;&lt;span style="color: #333333;"&gt;&lt;span style="font-family: 'Lucida Sans', Lucida, Verdana, sans-serif;"&gt;comando for&lt;/span&gt;&lt;/span&gt;&lt;/h2&gt;&lt;h4 class="western" style="line-height: 0.61cm; margin-bottom: 0.13cm; margin-top: 0cm;"&gt; &lt;span style="color: #e34c00;"&gt;&lt;span style="font-family: 'Lucida Sans', Lucida, Verdana, sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Descrição&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;O comando “for” é utilizado para repetir blocos de comandos inseridos entre chaves. Um contador incremental é normalmente utilizado para incrementar e finalizar o laço. O comando “for” é útil em qualquer tarefa repetitiva, e largamente utilizado em combinação com arrays para processar coleções de dados/portas.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;O laço “for” é constituído de 3 partes:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;strong&gt;&lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-weight: normal;"&gt;for &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;code&gt;&lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;strong&gt;&lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-weight: normal;"&gt;iniciação&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;code&gt;&lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;strong&gt;&lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-weight: normal;"&gt;condição&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;code&gt;&lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;strong&gt;&lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-weight: normal;"&gt;incremento&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;code&gt;&lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;) {&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;code&gt;&lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;//comando(s);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;code&gt;&lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;&lt;div class="western" style="line-height: 0.61cm;"&gt; &lt;span style="color: #555555;"&gt;&lt;img align="BOTTOM" border="0" height="220" name="figura1" src="http://arduino.cc/en/uploads/Reference/ForLoopIllustrated.png" width="385" /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;A iniciação (declaração da variável contadora) acontece primeiro e exatamente uma única vez. Cada vez que o laço “roda”, a condição é testada; se é verdadeira, o bloco de comandos e seu incremento é executado, então a condição é verificada novamente. Quando a condição se torna falsa, o laço termina.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;br /&gt;
&lt;/div&gt;&lt;h4 class="western" style="line-height: 0.61cm; margin-bottom: 0.13cm; margin-top: 0cm;"&gt; &lt;span style="color: #e34c00;"&gt;&lt;span style="font-family: 'Lucida Sans', Lucida, Verdana, sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Exemplo&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;&lt;pre class="western"&gt;&lt;span style="color: #555555;"&gt;// Esvanece um LED usando uma porta PWM&lt;/span&gt;
&lt;span style="color: #555555;"&gt;int PWMpin = 10; // LED em série com resistor 470 ohm na porta 10&lt;/span&gt;

&lt;span style="color: #555555;"&gt;void setup()&lt;/span&gt;
&lt;span style="color: #555555;"&gt;{&lt;/span&gt;
&lt;span style="color: #555555;"&gt;  // nada a ser feito no setup&lt;/span&gt;
&lt;span style="color: #555555;"&gt;}&lt;/span&gt;

&lt;span style="color: #555555;"&gt;void loop()&lt;/span&gt;
&lt;span style="color: #555555;"&gt;{&lt;/span&gt;
&lt;span style="color: #555555;"&gt;   for (int i=0; i &amp;lt;= 255; i++){&lt;/span&gt;
&lt;span style="color: #555555;"&gt;      analogWrite(PWMpin, i);&lt;/span&gt;
&lt;span style="color: #555555;"&gt;      delay(10);&lt;/span&gt;
&lt;span style="color: #555555;"&gt;   } &lt;/span&gt;
&lt;span style="color: #555555;"&gt;}&lt;/span&gt;
&lt;/pre&gt;&lt;h4 class="western" style="line-height: 0.61cm; margin-bottom: 0.13cm; margin-top: 0cm;"&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;/h4&gt;&lt;h4 class="western" style="line-height: 0.61cm; margin-bottom: 0.13cm; margin-top: 0cm; page-break-before: always;"&gt; &lt;span style="color: #e34c00;"&gt;&lt;span style="font-family: 'Lucida Sans', Lucida, Verdana, sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Dicas de Codificação&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;O laço “for” do C é muito mais flexível que outros laços encontrados em outras linguagens de programação, incluindo BASIC. Qualquer uma das 3 partes (ou todas elas) podem ser omitidas, embora os pontos e vírgulas são obrigatórios. Tanto que os comandos de iniciação, condição e incremento podem ser qualquer comando válido em C, mesmo que as variáveis não tenham relação entre si. E é permitido o uso de qualquer tipo de variável, mesmo float. Estes tipos não usuais para comandos “for” devem fornecer soluções para alguns problemas raros de programação.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;Por exemplo, utilizando multiplicação na parte incremental gerará uma progressão logarítimica:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;br /&gt;
&lt;/div&gt;&lt;pre class="western"&gt;&lt;span style="color: #555555;"&gt;for(int x = 2; x &amp;lt; 100; x = x * 1.5){&lt;/span&gt;
&lt;span style="color: #555555;"&gt;println(x);&lt;/span&gt;
&lt;span style="color: #555555;"&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;Resultado: 2,3,4,6,9,13,19,28,42,63,94&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;Outro exemplo, esvanece um LED ao ligar e desligar com esse laço “for”&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;br /&gt;
&lt;/div&gt;&lt;pre class="western"&gt;&lt;span style="color: #555555;"&gt;void loop()&lt;/span&gt;
&lt;span style="color: #555555;"&gt;{&lt;/span&gt;
&lt;span style="color: #555555;"&gt;   int x = 1;&lt;/span&gt;
&lt;span style="color: #555555;"&gt;   for (int i = 0; i &amp;gt; -1; i = i + x){&lt;/span&gt;
&lt;span style="color: #555555;"&gt;      analogWrite(PWMpin, i);&lt;/span&gt;
&lt;span style="color: #555555;"&gt;      if (i == 255) x = -1;             // muda a direção no pico&lt;/span&gt;
&lt;span style="color: #555555;"&gt;      delay(10);&lt;/span&gt;
&lt;span style="color: #555555;"&gt;   } &lt;/span&gt;
&lt;span style="color: #555555;"&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt; &lt;br /&gt;
&lt;/div&gt;&lt;h2 class="western"&gt;&lt;span style="color: #333333;"&gt;&lt;span style="font-family: 'Lucida Sans', Lucida, Verdana, sans-serif;"&gt;laço while&lt;/span&gt;&lt;/span&gt;&lt;/h2&gt;&lt;h4 class="western" style="line-height: 0.61cm; margin-bottom: 0.13cm; margin-top: 0cm;"&gt; &lt;span style="color: #e34c00;"&gt;&lt;span style="font-family: 'Lucida Sans', Lucida, Verdana, sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Descrição&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;strong&gt;&lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-weight: normal;"&gt;Laços “while” vão executar sequencialmente e para sempre, até que a expressão dentro dos parênteses () se torne falsa. Algum evento deve mudar o estado da variável testada, ou então o laço “while” não terminará nunca. Este evento pode estar em seu código, como uma variável incremental, ou uma condição externa, como um sensor de teste, um botão etc.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/div&gt;&lt;h4 class="western" style="line-height: 0.61cm; margin-bottom: 0.13cm; margin-top: 0cm;"&gt; &lt;span style="color: #e34c00;"&gt;&lt;span style="font-family: 'Lucida Sans', Lucida, Verdana, sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Sintaxe&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;&lt;pre class="western"&gt;&lt;span style="color: #555555;"&gt;while(expressão){&lt;/span&gt;
&lt;span style="color: #555555;"&gt;  // comando(s)&lt;/span&gt;
&lt;span style="color: #555555;"&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;h4 class="western" style="line-height: 0.61cm; margin-bottom: 0.13cm; margin-top: 0cm;"&gt; &lt;span style="color: #e34c00;"&gt;&lt;span style="font-family: 'Lucida Sans', Lucida, Verdana, sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Parametros&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;&lt;div class="western" style="line-height: 0.61cm; margin-bottom: 0cm;"&gt; &lt;span style="color: #555555;"&gt;&lt;span style="font-family: Georgia, 'Times New Roman', Times, serif;"&gt;&lt;span style="font-size: x-small;"&gt;expressão - um (boolean) comando C que retorne verdadeiro ou falso (true ou false)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;h4 class="western" style="line-height: 0.61cm; margin-bottom: 0.13cm; margin-top: 0cm;"&gt; &lt;span style="color: #e34c00;"&gt;&lt;span style="font-family: 'Lucida Sans', Lucida, Verdana, sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Exemplo&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;&lt;pre class="western"&gt;&lt;span style="color: #555555;"&gt;var = 0;&lt;/span&gt;
&lt;span style="color: #555555;"&gt;while(var &amp;lt; 200){&lt;/span&gt;
&lt;span style="color: #555555;"&gt;  // faça alguma coisa repetitiva por 200 vezes&lt;/span&gt;
&lt;span style="color: #555555;"&gt;  var++;&lt;/span&gt;
&lt;span style="color: #555555;"&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt; &lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;Traduzido do Original em Inglês por Renato Aloi&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/For"&gt;http://arduino.cc/en/Reference/For&lt;/a&gt; &lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/While"&gt;http://arduino.cc/en/Reference/While&lt;/a&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-2223738223469345603?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/saZ3-MmsHWNY_YTkzfzcRUIzrHs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/saZ3-MmsHWNY_YTkzfzcRUIzrHs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/saZ3-MmsHWNY_YTkzfzcRUIzrHs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/saZ3-MmsHWNY_YTkzfzcRUIzrHs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/soYumOEA7gA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/2223738223469345603/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/12/lacos-while-for-do-arduino.html#comment-form" title="1 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/2223738223469345603?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/2223738223469345603?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/soYumOEA7gA/lacos-while-for-do-arduino.html" title="Laços While &amp; For do Arduino" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/12/lacos-while-for-do-arduino.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk8GRn4yfCp7ImA9WhRQFkk.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-310757872183118173</id><published>2011-12-11T15:05:00.000-08:00</published><updated>2011-12-11T15:07:07.094-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-11T15:07:07.094-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Curso Arduino Grátis Robótica Automação Robot Micro Controlador ATMega Variáveis Funções C Constantes HIGH LOW true false pinMode digitalRead digitalWrite" /><category scheme="http://www.blogger.com/atom/ns#" term="arduino" /><title>Strings no Arduino</title><content type="html">&lt;style type="text/css"&gt;
p { margin-bottom: 0.21cm; }h2 { margin-bottom: 0.21cm; }h2.ctl { font-family: "Lohit Hindi"; }h4 { margin-bottom: 0.21cm; }h4.ctl { font-family: "Lohit Hindi"; }pre.cjk { font-family: "DejaVu Sans",monospace; }a:link {  }
&lt;/style&gt;  &lt;br /&gt;
&lt;h2 class="western"&gt;&lt;/h2&gt;&lt;h4 class="western"&gt;Descrição&lt;/h4&gt;&lt;div class="western"&gt;Strings de texto podem ser representadas de duas formas. Você pode utilizar o tipo de variável “String”, que é parte do Arduino desde a versão 0019, ou você pode fazer uma string a partir de um array de variáveis do tipo “char” e adicionar a terminação nula.&lt;/div&gt;&lt;div class="western"&gt;Este artigo descreve o último método. Para maiores detalhes sobre o objeto String, que permite maiores funcionalidades (e também maior custo de memória), veja o artigo mais abaixo.&lt;/div&gt;&lt;h4 class="western"&gt;Exemplos&lt;/h4&gt;&lt;div class="western"&gt;Todas as formas abaixo são declarações válidas de strings.  &lt;/div&gt;&lt;pre class="western"&gt;char Str1[15];
  char Str2[8]  = {'a','r','d','u','i','n','o'};
  char Str3[8]  = {'a','r','d','u','i','n','o','\0'};
  char Str4[ ]  = "arduino";
  char Str5[8]  = "arduino";
  char Str6[15] = "arduino";&lt;/pre&gt;&lt;div class="western"&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class="western"&gt;&lt;b&gt;Possibilidades para declaração de strings&lt;/b&gt;  &lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;Declare um array  de caracteres (char) sem iniciá-lo, como feito em Str1   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;Declare um array  de caracteres (char), com um caractere adicional, e o próprio  compilador acrescentará o caractere de terminação nula, como  feito em Str2   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;Adicionar  explicitamente o caractere nulo, como em Str3   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;Inicie com uma  constante de texto, contida entre aspas; o compilador vai definir o  tamanho do array de caracteres automaticamente, calculando o tamanho  da string mais o terminador nulo, conforme Str4   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;Inicie um array  com o tamanho declarado explicitamente e uma constante de texto  entre aspas, vide: Str5   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western"&gt;Inicie um array, deixando espaço extra para  strings com tamanhos maiores, conforme Str6   &lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class="western"&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class="western"&gt;&lt;b&gt;Terminação Nula&lt;/b&gt;  &lt;/div&gt;&lt;div class="western"&gt;Geralmente, strings são terminadas com um caractere nulo, (código ASCII zero [0]). Isto permite que funções (como a Serial.print()) conhecerem onde termina o texto da string. Caso contrário, essas funções continuariam a ler bytes da memória que não fazem parte da string.  &lt;/div&gt;&lt;div class="western"&gt;Isso significa que sua string precisa ter espaço suficiente para um ou mais caracteres além do texto que você deseja armazenar. É por isso que a variável Str2 e Str5 (acima) precisam de 8 caracteres, mesmo tendo a palavra “arduino” apenas 7 letras – a última posição é preenchida automaticamente com o caractere nulo. Str4 será automaticamente redimensionada para o tamanho de 8 caracteres, sendo uma posição para o nulo. Na variável Str3, nós declaramos explicitamente o tamanho e adicionamos o caractere nulo ('\0') por nossa conta.&lt;/div&gt;&lt;div class="western"&gt;Veja que é possível ter uma string sem o caractere final nulo (por exemplo, declarando a variável Str2 com 7 ao invés de 8 caracteres). Isso falhará na maioria das funções que esperam uma string para funcionar, portanto não faça isso intencionalmente! Se você perceber um comportamento diferente, como adição de caracteres estranhos na sua string, este pode ser o problema.&lt;/div&gt;&lt;div class="western"&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class="western"&gt;&lt;b&gt;Aspas Simples ou Duplas&lt;/b&gt;&lt;b&gt;?&lt;/b&gt; &lt;/div&gt;&lt;div class="western"&gt;Strings sempre são definidas escrevendo-se um texto contido entre aspas duplas (exemplo: "Abc"), e caracteres sempre são definidos escrevendo-se uma única letra (ou dígito, ou algum caractere da tabela ASCII), contido dentre aspas simples, ou apóstrofes (exemplo: 'A').  &lt;/div&gt;&lt;div class="western"&gt;&lt;b&gt;Quebrando strings longas&lt;/b&gt;  &lt;/div&gt;&lt;div class="western"&gt;Você pode quebrar strings assim:  &lt;/div&gt;&lt;pre class="western"&gt;char myString[] = "Um texto que começa aqui"
" e termina logo"
" ali";
&lt;/pre&gt;&lt;div class="western"&gt;&lt;b&gt;Array de Strings&lt;/b&gt;  &lt;/div&gt;&lt;div class="western"&gt;Quando trabalhamos com uma grande quantidade de texto, em um projeto com display LCD, por exemplo, é muito comum fazer uso de um array de strings. Como as strings por si só são arrays de caracteres, um array de string nada mais é senão um array bi-dimensional de caracteres.&lt;/div&gt;&lt;div class="western"&gt;No código abaixo, o asterisco após o tipo de variável (“char*”), indica que esta variável é um array de ponteiros. Todos os arrays na realidade são ponteiros de memória, então este é o requisito para fazer arrays de arrays. O estudo de ponteiros é uma das partes mais difíceis para um iniciante, mas é necessário entender ponteiros em detalhes, para usá-los de forma efetiva aqui.&lt;/div&gt;&lt;h4 class="western"&gt;Exemplo&lt;/h4&gt;&lt;pre class="western"&gt;char* myStrings[]={"This is string 1", "This is string 2", "This is string 3",
"This is string 4", "This is string 5","This is string 6"};

void setup(){
Serial.begin(9600);
}

void loop(){
for (int i = 0; i &amp;lt; 6; i++){
   Serial.println(myStrings[i]);
   delay(500);
   }
}&lt;/pre&gt;&lt;h2 class="western"&gt;Objeto String&lt;/h2&gt;&lt;h4 class="western"&gt;Descrição&lt;/h4&gt;&lt;div class="western"&gt;A classe String, parte do Arduino desde a versão 0019, nos permite utilizar e manipular strings de texto de uma maneira mais completa aos arrays de caracteres. Você pode concatenar textos, adicionar trechos de texto, pesquisar expressões no texto e substituir trechos, e muito mais. Consome mais memória que um simples array de caracteres, mas é muito mais útil.&lt;/div&gt;&lt;div class="western"&gt;Para referência, arrays de caracteres são declarados como “string” com o “s” minúsculo, e instâncias da classe String são declaradas como “String”, com a letra “S” maiúscula. Repare também que strings constantes, especificadas por aspas duplas, são tratadas como arrays de caracteres, e não como instâncias da classe String.&lt;/div&gt;&lt;div class="western"&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;h4 class="western"&gt;Funções&lt;/h4&gt;&lt;ul&gt;&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringConstructor"&gt;String&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringCharAt"&gt;charAt&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringCompareTo"&gt;compareTo&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringConcat"&gt;concat&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringEndsWith"&gt;endsWith&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringEquals"&gt;equals&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringEqualsIgnoreCase"&gt;equalsIgnoreCase&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringGetBytes"&gt;getBytes&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringIndexOf"&gt;indexOf&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringLastIndexOf"&gt;lastIndexOf&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringLength"&gt;length&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringReplace"&gt;replace&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringSetCharAt"&gt;setCharAt&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringStartsWith"&gt;startsWith&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringSubstring"&gt;substring&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringToCharArray"&gt;toCharArray&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringToLowerCase"&gt;toLowerCase&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringToUpperCase"&gt;toUpperCase&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western"&gt;&lt;a href="http://arduino.cc/en/Reference/StringTrim"&gt;trim&lt;/a&gt;()   &lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;h4 class="western"&gt;Operadores&lt;/h4&gt;&lt;ul&gt;&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringBrackets"&gt;[]  (element access)&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/StringPlus"&gt;+  (concatenation)&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western"&gt;&lt;a href="http://arduino.cc/en/Reference/StringComparison"&gt;==  (comparison)&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;h4 class="western"&gt;Exemplos&lt;/h4&gt;&lt;ul&gt;&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Tutorial/StringConstructors"&gt;StringConstructors&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Tutorial/StringAdditionOperator"&gt;StringAdditionOperator&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Tutorial/StringIndexOf"&gt;StringIndexOf&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Tutorial/StringAppendOperator"&gt;StringAppendOperator&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Tutorial/StringLengthTrim"&gt;StringLengthTrim&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Tutorial/StringCaseChanges"&gt;StringCaseChanges&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Tutorial/StringReplace"&gt;StringReplace&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Tutorial/StringCharacters"&gt;StringCharacters&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Tutorial/StringStartsWithEndsWith"&gt;StringStartsWithEndsWith&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Tutorial/StringComparisonOperators"&gt;StringComparisonOperators&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western"&gt;&lt;a href="http://arduino.cc/en/Tutorial/StringSubstring"&gt;StringSubstring&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;Tradução por Renato Aloi&lt;br /&gt;
Original em Inglês -- http://www.arduino.cc/en/Reference/String&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-310757872183118173?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/BXUIrf8yniCXSqDfgIH77jHXMhI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BXUIrf8yniCXSqDfgIH77jHXMhI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/BXUIrf8yniCXSqDfgIH77jHXMhI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BXUIrf8yniCXSqDfgIH77jHXMhI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/IMcML8bwTv0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/310757872183118173/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/12/strings-no-arduino.html#comment-form" title="1 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/310757872183118173?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/310757872183118173?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/IMcML8bwTv0/strings-no-arduino.html" title="Strings no Arduino" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/12/strings-no-arduino.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEYGRn4-fyp7ImA9WhRRGUs.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-6781586182960551906</id><published>2011-12-03T18:35:00.000-08:00</published><updated>2011-12-03T18:35:27.057-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-12-03T18:35:27.057-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Curso Arduino Grátis Robótica Automação Robot Micro Controlador ATMega Variáveis Funções C Constantes HIGH LOW true false pinMode digitalRead digitalWrite" /><title>Material de Apoio do Curso Arduino (Aulas 7-8)</title><content type="html">&lt;style type="text/css"&gt;
p { margin-bottom: 0.21cm; }
&lt;/style&gt;   &lt;br /&gt;
&lt;div class="western" style="margin-bottom: 0cm;"&gt;Pessoal,&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;Segue esquema elétrico da solução apresentada nas aulas 7 e 8 do Curso Arduino:&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-Q7FynoKHORk/TtrcAo_opZI/AAAAAAAAACg/j3a0MQldgNg/s1600/acionando_motor2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="210" src="http://1.bp.blogspot.com/-Q7FynoKHORk/TtrcAo_opZI/AAAAAAAAACg/j3a0MQldgNg/s320/acionando_motor2.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;Abaixo temos o código da montagem feita na aula 8, para acionamento de um motor, a partir de um botão:&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;byte BOTAO = 0;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;byte MOTOR = 0;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; font-weight: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;byte PORTA_B = 10;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;byte PORTA_M = 8;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;void setup()&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;{&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;pinMode(PORTA_B, INPUT);&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;digitalWrite(PORTA_B, 1); &lt;span style="color: red;"&gt;// Liga PullUp!&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; font-weight: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;pinMode(PORTA_M, OUTPUT);&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;digitalWrite(PORTA_M, 0); // &lt;span style="color: red;"&gt;Motor Deslig.&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;}&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;void loop()&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;{&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;BOTAO = digitalRead(PORTA_B);&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;if (BOTAO == 0)&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;{&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;MOTOR = !MOTOR;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;digitalWrite(PORTA_M, MOTOR);&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;delay(500);&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;}&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;delay(1000);&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; font-weight: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="text-decoration: none;"&gt;&lt;span style="color: black;"&gt;&lt;span style="text-decoration: none;"&gt;&lt;span style="font-style: normal;"&gt;&lt;b&gt;&lt;span style="text-decoration: none;"&gt;}&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; font-weight: normal; margin-bottom: 0cm; text-decoration: none;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; font-weight: normal; margin-bottom: 0cm; text-decoration: none;"&gt;Abraços,&lt;/div&gt;&lt;div align="LEFT" style="font-style: normal; font-weight: normal; margin-bottom: 0cm; text-decoration: none;"&gt;Renato Aloi&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-6781586182960551906?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ak9C1Owmq8j2qj1u0qF-WnH0jUE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ak9C1Owmq8j2qj1u0qF-WnH0jUE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ak9C1Owmq8j2qj1u0qF-WnH0jUE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ak9C1Owmq8j2qj1u0qF-WnH0jUE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/HBejo_uekkY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/6781586182960551906/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/12/material-de-apoio-do-curso-arduino.html#comment-form" title="5 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/6781586182960551906?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/6781586182960551906?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/HBejo_uekkY/material-de-apoio-do-curso-arduino.html" title="Material de Apoio do Curso Arduino (Aulas 7-8)" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-Q7FynoKHORk/TtrcAo_opZI/AAAAAAAAACg/j3a0MQldgNg/s72-c/acionando_motor2.png" height="72" width="72" /><thr:total>5</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/12/material-de-apoio-do-curso-arduino.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUIHQXs7fSp7ImA9WhRSFEQ.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-8128726990793272980</id><published>2011-11-16T18:37:00.000-08:00</published><updated>2011-11-16T18:38:50.505-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-16T18:38:50.505-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Curso Arduino Grátis Robótica Automação Robot Micro Controlador ATMega Variáveis Funções C Constantes HIGH LOW true false pinMode digitalRead digitalWrite" /><title>Constantes do Arduino</title><content type="html">&lt;style type="text/css"&gt;
p { margin-bottom: 0.21cm; }h2 { margin-bottom: 0.21cm; }h2.ctl { font-family: "Lohit Hindi"; }h3 { margin-bottom: 0.21cm; }h3.ctl { font-family: "Lohit Hindi"; }h4 { margin-bottom: 0.21cm; }h4.ctl { font-family: "Lohit Hindi"; }a:link {  }
&lt;/style&gt;  &lt;br /&gt;
&lt;h2 class="western"&gt;Constantes&lt;/h2&gt;&lt;div class="western"&gt;Constantes são variáveis pré-definidas da linguagem do Arduino. Elas são usadas para fazer com que programas fiquem mais fáceis de ler. Constantes são classificadas em grupos.&lt;/div&gt;&lt;h3 class="western"&gt;&amp;nbsp;&lt;/h3&gt;&lt;h3 class="western"&gt;Definindo Níveis Lógicos e Constantes Booleanas (true e false)&lt;/h3&gt;&lt;div class="western"&gt;Existem duas constantes utilizadas para representar verdade e falsidade na linguagem do Arduino: &lt;b&gt;true &lt;/b&gt;&lt;b&gt;(verdadeiro)&lt;/b&gt; e &lt;b&gt;false &lt;/b&gt;&lt;b&gt;(falso)&lt;/b&gt;. &lt;/div&gt;&lt;h4 class="western"&gt;false&lt;/h4&gt;&lt;div class="western"&gt;Falso é o mais fácil de se definir. Falso é definido como zero (0).&lt;/div&gt;&lt;h4 class="western"&gt;true&lt;/h4&gt;&lt;div class="western"&gt;Verdadeiro é normalmente tido como um (1), que está correto, mas verdadeiro tem uma definição mais ampla. Qualquer inteiro que não seja zero (0) é considerado verdadeiro, num sentido booleano. Então -1, 2 e -200 são todos definidos como verdadeiro, também em um sentido booleano.&lt;/div&gt;&lt;div class="western"&gt;Note que as constantes verdadeiro (true) e falso (false) são digitadas em caixa-baixa (letras minúsculas), ao contrário de HIGH (ALTO), LOW (BAIXO), INPUT (ENTRADA) e OUTPUT (SAIDA).&lt;/div&gt;&lt;h3 class="western"&gt;&amp;nbsp;&lt;/h3&gt;&lt;h3 class="western"&gt;Definindo os Níveis das Portas, HIGH e LOW&lt;/h3&gt;&lt;div class="western"&gt;Quando lendo ou escrevendo em uma porta digital, existem apenas dois valores possíveis que a porta pode ser lida/configurada: &lt;b&gt;HIGH &lt;/b&gt;&lt;b&gt;(ALTO)&lt;/b&gt; e &lt;b&gt;LOW &lt;/b&gt;&lt;b&gt;(BAIXO)&lt;/b&gt;.  &lt;/div&gt;&lt;div class="western"&gt;&lt;b&gt;HIGH&lt;/b&gt;  &lt;/div&gt;&lt;div class="western"&gt;O entendimento de HIGH (em relação a porta) é um pouco diferente dependendo se a porta foi configurada como INPUT (ENTRADA) ou OUTPUT (SAIDA). Quando uma porta é configurada como INPUT, utilizando a função pinMode, e lida com a função digitalRead, o microcontrolador retornará HIGH se a voltagem de 3 volts ou mais estiver presente na porta.&lt;/div&gt;&lt;div class="western"&gt;Uma porta também pode ser configurada como INPUT com o pinMode e na sequência ser configurada como HIGH com a função digitalWrite. Isto ativará o resistor interno de elevação de 20K ohms, o qual derivará a porta para o valor HIGH a não ser que ela seja trazida para LOW, por um circuito externo.&lt;/div&gt;&lt;div class="western"&gt;Quando uma porta é configurada para OUTPUT com a função pinMode, e configurada para HIGH com a digitalWrite, a porta ficará em 5 volts. Neste estado, a porta pode fornecer corrente, por exemplo para acender um LED, conectado através de um resistor em série com o terra (ground ou GND), ou mesmo para outro pino configurado como saída e com valor LOW (tem o mesmo efeito do GND).&lt;/div&gt;&lt;div class="western"&gt;&lt;b&gt;LOW&lt;/b&gt; &lt;b&gt;(BAIXO)&lt;/b&gt;&lt;/div&gt;&lt;div class="western"&gt;O significado de LOW também tem diferentes entendimentos dependendo de como a porta é configurada para INPUT ou OUTPUT. Quando uma porta é configurada como INPUT pela função pinMode, e lida com a função digitalRead, o microcontrolador irá retornar LOW se a voltagem de 2 volts ou menos estiver presente na porta.&lt;/div&gt;&lt;div class="western"&gt;Quando uma porta é configurada para OUTPUT com pinMode, e configurada como LOW pelo digitalWrite, a porta terá o valor de 0 volts. Neste estado podemos ancorar corrente, como no exemplo do LED ligado através de um resistor em série com uma porta OUTPUT no estado HIGH.&lt;/div&gt;&lt;h3 class="western"&gt;&amp;nbsp;&lt;/h3&gt;&lt;h3 class="western"&gt;Definindo Portas Digitais, INPUT (ENTRADA) e OUTPUT (SAIDA)&lt;/h3&gt;&lt;div class="western"&gt;Portas digitais podem ser usadas tanto como &lt;b&gt;INPUT&lt;/b&gt; ou &lt;b&gt;OUTPUT&lt;/b&gt;. Mudar o estado de uma porta de  INPUT para OUTPUT com a função pinMode() muda drasticamente as características elétricas da porta.  &lt;/div&gt;&lt;h4 class="western"&gt;Porta Configurada como Entrada&lt;/h4&gt;&lt;div class="western"&gt;Portas do Arduino (ATMega) configuradas como &lt;b&gt;INPUT&lt;/b&gt; com pinMode estão em um estado conhecido por alta-impedância. Uma forma de explicar isso é que a porta configurada como INPUT demanda muito pouca corrente do circuito que está amostrando, como se tivesse um resistor de 100 Megaohms em série com a porta. Isto se faz útil para leitura de um sensor, mas não para acender um LED.&lt;/div&gt;&lt;h4 class="western"&gt;Porta Configurada como Saída&lt;/h4&gt;&lt;div class="western"&gt;Portas configuradas como &lt;b&gt;OUTPUT&lt;/b&gt; com pinMode estão em um estado conhecido por baixa-impedância. Isso significa que elas podem fornecer uma quantidade substancial de corrente para outros circuitos. As portas do ATMega podem fornecer (prover corrente positiva) ou ancorar (prover corrente negativa) até 40 mA (miliamperes) de corrente para outros dispositivos/circuitos. Configuradas dessa forma, as portas podem fornecer corrente para acender um LED, mas se tornam inúteis para leitura de um sensor. Portas configuradas como saída podem também ser danificadas ou destruídas se curto-circuitadas tanto ao terra quanto aos 5 volts. A corrente fornecida pelas portas do ATMega também não são suficientes para a maioria dos motores e relês, então algum circuito de casamento se faz necessário.&lt;/div&gt;&lt;div class="western"&gt;&lt;/div&gt;&lt;h4 class="western"&gt;Tradução  &lt;/h4&gt;&lt;div class="western"&gt;Por Renato Aloi, do original em inglês, no site: &lt;a href="http://arduino.cc/en/Reference/Constants"&gt;http://arduino.cc/en/Reference/Constants&lt;/a&gt;&lt;/div&gt;&lt;div class="western"&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-8128726990793272980?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hBrTgJbnm4e1ipCYv3h_Eiuw5DE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hBrTgJbnm4e1ipCYv3h_Eiuw5DE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hBrTgJbnm4e1ipCYv3h_Eiuw5DE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hBrTgJbnm4e1ipCYv3h_Eiuw5DE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/PEL5HOs8Uxg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/8128726990793272980/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/11/constantes-do-arduino.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/8128726990793272980?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/8128726990793272980?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/PEL5HOs8Uxg/constantes-do-arduino.html" title="Constantes do Arduino" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/11/constantes-do-arduino.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkUFQnszeCp7ImA9WhRSFEs.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-8518888376731615041</id><published>2011-11-16T09:23:00.000-08:00</published><updated>2011-11-16T09:23:33.580-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-16T09:23:33.580-08:00</app:edited><title>Curso Arduino - Aula 5 (Variáveis) por Renato Aloi</title><content type="html">&lt;iframe width="459" height="344" src="http://www.youtube.com/embed/jtz2YwAXm3U?fs=1" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-8518888376731615041?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/-q8eRBuVn8Cs1-8RioIkNSiTjVQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-q8eRBuVn8Cs1-8RioIkNSiTjVQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/-q8eRBuVn8Cs1-8RioIkNSiTjVQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/-q8eRBuVn8Cs1-8RioIkNSiTjVQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/Bu1keo8XEqk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/8518888376731615041/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/11/curso-arduino-aula-5-variaveis-por.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/8518888376731615041?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/8518888376731615041?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/Bu1keo8XEqk/curso-arduino-aula-5-variaveis-por.html" title="Curso Arduino - Aula 5 (Variáveis) por Renato Aloi" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://img.youtube.com/vi/jtz2YwAXm3U/default.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/11/curso-arduino-aula-5-variaveis-por.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4DRH4yeip7ImA9WhRSEk0.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-3664277418787845789</id><published>2011-11-13T09:56:00.000-08:00</published><updated>2011-11-13T09:56:15.092-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-13T09:56:15.092-08:00</app:edited><title>Curso Arduino - Aula 4 (Setup &amp; Loop) por Renato Aloi</title><content type="html">&lt;iframe src="http://www.youtube.com/embed/I0JKPBBvSLs?fs=1" allowfullscreen="" frameborder="0" height="344" width="459"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-3664277418787845789?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/viE6evNgUOoMfsa2RgG2V1C4zFA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/viE6evNgUOoMfsa2RgG2V1C4zFA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/viE6evNgUOoMfsa2RgG2V1C4zFA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/viE6evNgUOoMfsa2RgG2V1C4zFA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/j-q07UDHTAM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/3664277418787845789/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/11/curso-arduino-aula-4-setup-loop-por.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/3664277418787845789?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/3664277418787845789?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/j-q07UDHTAM/curso-arduino-aula-4-setup-loop-por.html" title="Curso Arduino - Aula 4 (Setup &amp; Loop) por Renato Aloi" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://img.youtube.com/vi/I0JKPBBvSLs/default.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/11/curso-arduino-aula-4-setup-loop-por.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcFRHgycSp7ImA9WhRSE00.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-4149433282349868219</id><published>2011-11-09T15:44:00.000-08:00</published><updated>2011-11-14T14:00:15.699-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-14T14:00:15.699-08:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Curso Arduino Grátis Robótica Automação Robot Micro Controlador ATMega Variáveis Funções C" /><title>Variáveis do Arduino</title><content type="html">&lt;style type="text/css"&gt;
p { margin-bottom: 0.21cm; }h2 { margin-bottom: 0.21cm; }h2.ctl { font-family: "Lohit Hindi"; }h4 { margin-bottom: 0.21cm; }h4.ctl { font-family: "Lohit Hindi"; }pre.cjk { font-family: "DejaVu Sans",monospace; }code.cjk { font-family: "DejaVu Sans",monospace; }a:link {  }
&lt;/style&gt;  &lt;br /&gt;
&lt;h2 class="western"&gt;Variáveis&lt;/h2&gt;&lt;div class="western"&gt;Uma variável é uma forma de nomear e guardar um valor para usar depois pelo programa, como dados de um sensor, ou ainda, um valor intermediário de um cálculo.&lt;/div&gt;&lt;h4 class="western"&gt;Declarando Variáveis&lt;/h4&gt;&lt;div class="western"&gt;Antes de serem utilizadas, as variáveis devem ser declaradas. Declarar uma variável significa definir seu tipo, e opcionalmente, configurar um valor inicial (iniciar a variável). Variáveis não precisam ser iniciadas (conferidas um valor) quando estas são declaradas, mas muitas vezes se faz útil.&lt;/div&gt;&lt;pre class="western"&gt;int inputVariable1;  // iniciando variável
int inputVariable2 = 0;     // iniciando e atribuindo valor
&lt;/pre&gt;&lt;div class="western"&gt;Programadores devem considerar o tamanho dos números que desejam guardar, escolhendo o tipo da variável. Variáveis sobrecarregam quando o valor excede o espaço designado para guardá-lo. Veja abaixo por exemplo.&lt;/div&gt;&lt;h4 class="western"&gt;Escopo da Variável&lt;/h4&gt;&lt;div class="western"&gt;Outra escolha importante que os programadores enfrentam é onde declarar as variáveis? O lugar específico que as variáveis são declaradas influencia como várias funções do programa a &lt;i&gt;enxergarão&lt;/i&gt;. Isto é chamado de escopo.&lt;/div&gt;&lt;h4 class="western"&gt;Iniciando Variáveis&lt;/h4&gt;&lt;div class="western"&gt;Variáveis devem ser iniciadas (designadas um valor) no momento que elas são declaradas ou depois. É sempre uma boa prática de programação verificar que uma variável tenha dados válido dentro dela, antes de ser utilizada.&lt;/div&gt;&lt;div class="western"&gt;Exemplo:  &lt;/div&gt;&lt;pre class="western"&gt;int calibrationVal = 17;  // declara calibrationVal e configura seu valor
           // inicial&lt;/pre&gt;&lt;h4 class="western"&gt;Sobrecarga da Variável&lt;/h4&gt;&lt;div class="western"&gt;Quando variáveis têm seu valor excedido pela capacidade máxima do seu tipo, elas sobrecarregam e voltam para seu valor mínimo. Isto acontece em ambas&amp;nbsp; direções.&lt;/div&gt;&lt;pre class="western"&gt;int x
   x = -32,768;
   x = x - 1;       // x contém 32,767 - sobrecarrega na direção negativa
   x = 32,767;
   x = x + 1;       // x contém -32,768 – sobrecarrega&lt;/pre&gt;&lt;h4 class="western"&gt;Usando Variáveis&lt;/h4&gt;&lt;div class="western"&gt;Uma vez que variáveis tenham sido declaradas, elas podem ser usadas configurando a variável para o valor que se deseja armazenar, através do operador de atribuição (um sinal de igual). O operador de atribuição diz ao programa para atribuir o que estiver do lado direito do sinal de igual, dentro da variável que deve ficar do lado esquerdo do sinal de igual.&lt;/div&gt;&lt;pre class="western"&gt;inputVariable1 = 7;             // configura variável chamada inputVariable1 
        // atribuindo o valor 7
inputVariable2 = analogRead(2); // configura variável chamada inputVariable2 
        // atribuindo a voltagem lida de uma porta 
                                // analógica 2&lt;/pre&gt;&lt;h4 class="western"&gt;Exemplos&lt;/h4&gt;&lt;pre class="western"&gt;int lightSensVal;
   char currentLetter;
   unsigned long speedOfLight = 186000UL;
   char errorMessage = {"escolha outra impressão"}; // vide: string&amp;nbsp;&lt;/pre&gt;&lt;pre class="western"&gt;&amp;nbsp;&lt;/pre&gt;&lt;div class="western"&gt;Uma vez que a variável tenha sido configurada (conferida um valor), você pode testar seu valor para verificar se atende determinada condição, ou usar seu valor diretamente. Por exemplo, o código a seguir testa se o valor da variável inputVariable2 é menor que 100, então configurando um atraso (delay) baseado no valor de inputVariable2, que é no mínimo 100.&lt;/div&gt;&lt;pre class="western"&gt;if (inputVariable2 &amp;lt; 100)
{
  inputVariable2 = 100;
}

delay(inputVariable2);&lt;/pre&gt;&lt;pre class="western"&gt;&amp;nbsp;&lt;/pre&gt;&lt;div class="western"&gt;Este exemplo mostra todas as três operações úteis que se pode fazer com variáveis. Ele testa a variável (&lt;b&gt;&lt;code class="western" style="color: #e69138;"&gt;if (inputVariable2 &amp;lt; 100)&lt;/code&gt;&lt;/b&gt;), configura o valor 100 caso o teste tenha passado &lt;span style="color: black;"&gt;(&lt;/span&gt;&lt;b&gt;&lt;code class="western" style="color: #e69138;"&gt;inputVariable2 = 100&lt;/code&gt;&lt;/b&gt;), e utiliza o valor armazenado na variável como parâmetro de entrada na função &lt;i&gt;delay &lt;/i&gt;(&lt;b&gt;&lt;code class="western" style="color: #e69138;"&gt;delay(inputVariable2)&lt;/code&gt;&lt;/b&gt;).&lt;/div&gt;&lt;div class="western"&gt;&lt;u&gt;&lt;b&gt;Nota de Estilo:&lt;/b&gt;&lt;/u&gt; Você deve nomear suas variáveis descrevendo as características do valor guardado, para fazer o código ficar mais agradável de ler. Nomes de variáveis como &lt;b&gt;tiltSensor&lt;/b&gt; ou &lt;b&gt;pushButton&lt;/b&gt; te ajudam (ou a qualquer um que esteja lendo seu código) a entender o que a variável representa.  &lt;/div&gt;&lt;div class="western"&gt;Você pode nomear uma variável com qualquer palavra que você quiser, desde que não sejam as reservadas do Arduino (&lt;a href="http://arduino.cc/en/Reference/HomePage?from=Reference.Extended"&gt;link para palavras reservadas&lt;/a&gt;). Evite nomes que comecem com números.&lt;/div&gt;&lt;h4 class="western"&gt;Alguns Tipos de Variáveis&lt;/h4&gt;&lt;ul&gt;&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/Char"&gt;char&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/Byte"&gt;byte&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/Int"&gt;int&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/UnsignedInt"&gt;unsigned  int&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/Long"&gt;long&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/UnsignedLong"&gt;unsigned  long&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;a href="http://arduino.cc/en/Reference/Float"&gt;float&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western"&gt;&lt;a href="http://arduino.cc/en/Reference/Double"&gt;double&lt;/a&gt;   &lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class="western" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;h2 class="western" style="page-break-before: always;"&gt;Escopo das Variáveis&lt;/h2&gt;&lt;div class="western"&gt;Variáveis na linguagem C, que o Arduino usa, tem uma característica conhecida por &lt;i&gt;escopo&lt;/i&gt;. Isto é um contraste com linguagens como BASIC que qualquer variável é uma variável &lt;i&gt;global&lt;/i&gt;.&lt;/div&gt;&lt;div class="western"&gt;Uma variável global é uma que pode ser &lt;i&gt;vista&lt;/i&gt; por qualquer função dentro de um programa. Variáveis locais são apenas visíveis para a função na qual foram declaradas. No ambiente do Arduino, qualquer variável declarada fora de uma função (ex. setup, loop, etc.), é considerada uma variável global.&lt;/div&gt;&lt;div class="western"&gt;Quando programas começam a ficar grandes e mais complexos, variáveis locais são úteis para garantir que apenas uma função terá acesso apenas as suas próprias variáveis. Isso evita erros de programação quando uma função inadvertidamente, modifica o valor de variáveis utilizadas por outra função.&lt;/div&gt;&lt;div class="western"&gt;Algumas vezes é útil declarar e iniciar uma variável interna para um &lt;i&gt;laço&lt;/i&gt; (loop). Assim criamos uma variável que possa apenas ser acessada na parte interna das chaves {} do &lt;i&gt;laço-for&lt;/i&gt;.&lt;/div&gt;&lt;h4 class="western"&gt;Exemplo:&lt;/h4&gt;&lt;pre class="western"&gt;int gPWMval;  // qualquer função acessa essa variável

void setup()
{
  // ...
}

void loop()
{
  int i;    // "i" é apenas "visível" dentro da função "loop"
  float f;  // "f" é apenas "visível" dentro da função "loop"
  // ...

  for (int j = 0; j &amp;lt;100; j++){
   // variável “j” pode ser apenas 
   // acessada dentro das chaves do laço-for 
  }

}&lt;/pre&gt;&lt;div class="western"&gt;&lt;br /&gt;
&lt;i&gt;Tradução: Renato Aloi&lt;/i&gt;&lt;/div&gt;&lt;div class="western"&gt;&lt;i&gt;Original em Inglês: &lt;a href="http://arduino.cc/en/Reference/VariableDeclaration"&gt;http://arduino.cc/en/Reference/VariableDeclaration&lt;/a&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class="western"&gt;&lt;i&gt;          &lt;a href="http://arduino.cc/en/Reference/scope"&gt;http://arduino.cc/en/Reference/scope&lt;/a&gt;&lt;/i&gt;&lt;/div&gt;&lt;div class="western"&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-4149433282349868219?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/FnYzKO40h9I6RIGjMxjQqLW5X4A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/FnYzKO40h9I6RIGjMxjQqLW5X4A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/FnYzKO40h9I6RIGjMxjQqLW5X4A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/FnYzKO40h9I6RIGjMxjQqLW5X4A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/So-hVOU5pLo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/4149433282349868219/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/11/variaveis-do-arduino.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/4149433282349868219?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/4149433282349868219?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/So-hVOU5pLo/variaveis-do-arduino.html" title="Variáveis do Arduino" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/11/variaveis-do-arduino.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk4BQHk_eCp7ImA9WhRTE0s.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-504209822111224739</id><published>2011-11-03T17:01:00.000-07:00</published><updated>2011-11-03T17:02:31.740-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-11-03T17:02:31.740-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="C" /><category scheme="http://www.blogger.com/atom/ns#" term="IDE" /><category scheme="http://www.blogger.com/atom/ns#" term="funções" /><category scheme="http://www.blogger.com/atom/ns#" term="arduino" /><category scheme="http://www.blogger.com/atom/ns#" term="loop" /><category scheme="http://www.blogger.com/atom/ns#" term="linguagem" /><category scheme="http://www.blogger.com/atom/ns#" term="setup" /><category scheme="http://www.blogger.com/atom/ns#" term="main" /><category scheme="http://www.blogger.com/atom/ns#" term="functions" /><title>Funções do Arduino</title><content type="html">&lt;style type="text/css"&gt;
p { margin-bottom: 0.21cm; }h4 { margin-bottom: 0.21cm; }h4.ctl { font-family: "Lohit Hindi"; }h2 { margin-bottom: 0.21cm; }h2.ctl { font-family: "Lohit Hindi"; }
&lt;/style&gt;  &lt;br /&gt;
&lt;h2 class="western"&gt;&lt;/h2&gt;&lt;div class="western"&gt;Segmentar o código em funções possibilita ao programador criar partes modulares, que desempenham tarefas bem definidas, e então retornam para a área do código a partir de onde foram chamadas. O caso típico de criação de uma função é quando existe a necessidade de executar a mesma tarefa diversas vezes durante um programa.&lt;/div&gt;&lt;div class="western"&gt;Para programadores acostumados ao BASIC, funções do Arduino fornecem (e estendem) a utilidade do uso das subrotinas (GOSUB em BASIC).&lt;/div&gt;&lt;div class="western"&gt;Padronizar fragmentos de código em funções tem várias vantagens:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;div class="western"&gt;Funções ajudam o programador permanecer  organizado, muitas vezes, isso ajuda a montar o conceito do  programa.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western"&gt;Funções codificam a tarefa em um único  lugar, para que a funcionalidade seja pensada e depurada uma única  vez.&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western"&gt;As chances de erros em modificações reduzem  drasticamente, no caso do código precisar ser alterado.   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western"&gt;Funções reduzem o tamanho dos Sketches  (projetos criados na IDE do Arduino, do inglês: rascunhos), pois  seções de código podem ser reutilizadas diversas vezes.   &lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;div class="western"&gt;Elas também tornam mais fácil reutilizar  código, tornando-o mais modular, e com um efeito colateral  benéfico: fica mais agradável de ler o código.&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class="western"&gt;Existem duas funções mandatórias nos Sketches do Arduino: setup() e loop(). Outras funções podem ser criadas fora das chaves ({}) dessas duas funções. Como um exemplo, vamos criar uma função simples para multiplicar dois valores.&lt;/div&gt;&lt;h4 class="western"&gt;Exemplo&lt;/h4&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-m_SaPLOM7PU/TrMqt6pSPeI/AAAAAAAAACI/sdKFuBfLTvg/s1600/anatomia_c.png" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/-m_SaPLOM7PU/TrMqt6pSPeI/AAAAAAAAACI/sdKFuBfLTvg/s400/anatomia_c.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h4 class="western"&gt;&lt;br /&gt;
&lt;/h4&gt;&lt;div class="western"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="western"&gt;&lt;style type="text/css"&gt;
p { margin-bottom: 0.21cm; }pre.cjk { font-family: "DejaVu Sans",monospace; }h4 { margin-bottom: 0.21cm; }h4.ctl { font-family: "Lohit Hindi"; }a:link {  }
&lt;/style&gt;  &lt;/div&gt;&lt;div class="western"&gt;Para “chamar” nossa função simples de multiplicação, nós passamos os parâmetros do tipo de dados que a função está esperando:&lt;/div&gt;&lt;pre class="western"&gt;void loop{
int i = 2;
int j = 3;
int k;

k = myMultiplyFunction(i, j); // k now contains 6
}
&lt;/pre&gt;&lt;div class="western"&gt;Nossa função precisa ser declarada fora de qualquer outra função, então “MinhaFuncaoMultiplicar()” pode ficar tanto acima quanto abaixo da função principal “loop()”.&lt;/div&gt;&lt;div class="western"&gt;O código completo deve ficar parecido com isto:&lt;/div&gt;&lt;pre class="western"&gt;void setup(){
  Serial.begin(9600);
}

void loop() {
  int i = 2;
  int j = 3;
  int k;

  k = myMultiplyFunction(i, j); // k now contains 6
  Serial.println(k);
  delay(500);
}

int myMultiplyFunction(int x, int y){
  int result;
  result = x * y;
  return result;
}&lt;/pre&gt;&lt;h4 class="western"&gt;Outro exemplo  &lt;/h4&gt;&lt;div class="western"&gt;Esta função abaixo fará a leitura de um sensor, cinco vezes, utilizando a função analogRead(); calculando a média das cinco leituras. Ela também converte os dados da leitura para 8 bits (0-255), e a inverte, invertendo assim a saída.&lt;/div&gt;&lt;pre class="western"&gt;int ReadSens_and_Condition(){
  int i;
  int sval = 0;

  for (i = 0; i &amp;lt; 5; i++){
    sval = sval + analogRead(0);    // sensor na porta analógica 0
  }

  sval = sval / 5;    // média
  sval = sval / 4;    // converte para 8 bits (0 - 255)
  sval = 255 - sval;  // inverte a saída
  return sval;
}&lt;/pre&gt;&lt;div class="western"&gt;Para chamar a função, nós apenas fazemos a atribuição para uma variável.  &lt;/div&gt;&lt;pre class="western"&gt;int sens;

sens = ReadSens_and_Condition();
&lt;/pre&gt;&lt;h4 class="western"&gt;Tradução  &lt;/h4&gt;&lt;div class="western"&gt;Por Renato Aloi, do original em inglês, no site: &lt;a href="http://arduino.cc/en/Reference/HomePage"&gt;http://arduino.cc/en/Reference/HomePage&lt;/a&gt; &lt;/div&gt;&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&lt;div class="western"&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-504209822111224739?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/wFblwdZwndSZgiVWHJsFGXaPoVE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wFblwdZwndSZgiVWHJsFGXaPoVE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/wFblwdZwndSZgiVWHJsFGXaPoVE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/wFblwdZwndSZgiVWHJsFGXaPoVE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/29g2zUc1AAk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/504209822111224739/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/11/funcoes-do-arduino.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/504209822111224739?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/504209822111224739?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/29g2zUc1AAk/funcoes-do-arduino.html" title="Funções do Arduino" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-m_SaPLOM7PU/TrMqt6pSPeI/AAAAAAAAACI/sdKFuBfLTvg/s72-c/anatomia_c.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/11/funcoes-do-arduino.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0ADSX8yeip7ImA9WhdaGUo.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-2647159778071329160</id><published>2011-10-30T06:02:00.000-07:00</published><updated>2011-10-30T06:02:58.192-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-30T06:02:58.192-07:00</app:edited><title>Curso Arduino - Aula 3 (Programação Básica) por Renato Aloi</title><content type="html">&lt;iframe width="459" height="344" src="http://www.youtube.com/embed/BomGJ_4g0Ug?fs=1" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-2647159778071329160?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/8xkahsH66lormGUI-1ltuCSfBkw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8xkahsH66lormGUI-1ltuCSfBkw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/8xkahsH66lormGUI-1ltuCSfBkw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8xkahsH66lormGUI-1ltuCSfBkw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/-8QrCqV_04w" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/2647159778071329160/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/10/curso-arduino-aula-3-programacao-basica.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/2647159778071329160?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/2647159778071329160?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/-8QrCqV_04w/curso-arduino-aula-3-programacao-basica.html" title="Curso Arduino - Aula 3 (Programação Básica) por Renato Aloi" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://img.youtube.com/vi/BomGJ_4g0Ug/default.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/10/curso-arduino-aula-3-programacao-basica.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcNSX89eSp7ImA9WhdaEUk.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-5361446629332020214</id><published>2011-10-20T14:53:00.000-07:00</published><updated>2011-10-20T15:01:38.161-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-20T15:01:38.161-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="arduino" /><category scheme="http://www.blogger.com/atom/ns#" term="arduino referência pinMode digitalWrite portas digitais digital pin ATMega" /><category scheme="http://www.blogger.com/atom/ns#" term="duemilanove" /><title>Referência Arduino - pinMode(), digitalWrite() e delay()</title><content type="html">&lt;span style="color: #3d85c6;"&gt;&lt;strong&gt;Função: pinMode()&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Descrição&lt;br /&gt;
Configura a porta especificada para se comportar tanto como entrada ou saída. Veja o post sobre portas digitais para maiores detalhes.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;Sintaxe&lt;/span&gt;&lt;br /&gt;
pinMode(pin, mode)&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;Parâmetros&lt;/span&gt;&lt;br /&gt;
pin: o número da porta que você deseja configurar&lt;br /&gt;
mode: INPUT para entrada e OUTPUT para saída&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;Retorna&lt;/span&gt;&lt;br /&gt;
Nada&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;Nota&lt;/span&gt;&lt;br /&gt;
As portas analógicas podem ser usadas como portas digitais, referindo-as como A0, A1 etc.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: #0b5394;"&gt;&lt;strong&gt;Função: digitalWrite()&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
&lt;span style="color: orange;"&gt;Descrição&lt;/span&gt; &lt;br /&gt;
Altera o estado da porta para alto (HIGH) ou baixo (LOW) de uma porta digital.&lt;br /&gt;
&lt;br /&gt;
Se a porta foi configurada como saída (OUTPUT) pela função pinMode(), sua voltagem será correspondente aos valores de 5V (ou 3.3V nas placas de 3.3V) para alto (HIGH), e 0V (GND) para baixo (LOW).&lt;br /&gt;
&lt;br /&gt;
Se a porta é configurada como entrada (INPUT), escrever um valor alto (HIGH) com o digitalWrite() habilitará o resistor de elevação (pullup) interno de 20K (veja a postagem sobre portas digitais). Escrever um valor baixo (LOW) desabilitará o resistor de elevação. Este resistor de elevação é suficiente para acionar muito fracamente um LED, portanto se o LED funcionar, mas dessa forma fraca, esta é a causa mais provável. A solução é configurar a porta para saída (OUTPUT) através da função pinMode().&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;NOTA:&lt;/strong&gt; A porta digital 13 é mais difícil de se utilizar como uma porta de entrada dentre as outras portas digitais, pois existe um LED ligado a ela, com um resistor em série, soldado na placa, na maioria das placas. Se você habilitar seu resistor de elevação, ela travará em uma tensão aproximada de 1,7V, ao invés dos esperados 5V, por causa do LED embutido na placa, e o resistor em série sempre puxará o nível de tensão para baixo, resultando sempre em um estado baixo (LOW). Se você quiser usar a porta 13 como entrada digital, ligue um resistor de referência (pulldown) externo.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;Sintaxe&lt;/span&gt;&lt;br /&gt;
digitalWrite(pin, value) &lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;Parâmetros&lt;/span&gt;&lt;br /&gt;
pin: o número da porta &lt;br /&gt;
value: HIGH para o estado alto ou LOW para o estado baixo &lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;Retorna&lt;/span&gt;&lt;br /&gt;
nada&lt;br /&gt;
&lt;br /&gt;
Configura a porta 13 para o estado alto (HIGH), pausa por um segundo e depois configura a porta de volta para o estado baixo (LOW). &lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;Nota&lt;/span&gt;&lt;br /&gt;
As portas analógicas podem ser usadas como portas digitais, referindo-as como A0, A1 etc.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: #3d85c6;"&gt;&lt;strong&gt;Função: delay()&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;Descrição&lt;/span&gt;&lt;br /&gt;
Pausa o programa por um período de tempo (em milissegundos) especificado pelo parâmetro. (Existem 1000 milissegundos em um segundo.)&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;Sintaxe&lt;/span&gt;&lt;br /&gt;
delay(ms)&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;Parâmetros&lt;/span&gt;&lt;br /&gt;
ms: quantidade de milissegundos a parar o programa (unsigned long)&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;Retorna&lt;/span&gt;&lt;br /&gt;
nada&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;Advertência&lt;/span&gt;&lt;br /&gt;
Assim como é fácil criar o efeito de piscar um LED com a função delay(), e muitos programas (sketches) utilizam pausas curtas para tarefas como garantir o pressionamento de um botão, o uso da função delay() tem significativos obstáculos. Nenhuma outra ação, como leitura de sensores, cálculos matemáticos, ou manipulação de portas funciona durante a pausa pela função delay(). Dessa forma, esta pausa tem como efeito causar a inoperabilidade de todas as outras atividades. Para abordagens alternativas no controle de tempo, considere o uso da função millis(). Programadores mais experientes evitam utilizar a função delay() para cálculos de tempo maiores que 10 milissegundos, a não ser que o programa seja realmente muito simples. Certas coisas, entretanto, continuam funcionando enquanto a função delay() está controlando o chip do ATMega, porque essa função não desabilita as interrupções. Comunicação serial que chega no pino RX é gravada, valores PWM (analogwrite) e o estado das portas são mantidos, assim como as interrupções funcionam como esperado.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
&lt;span style="color: #3d85c6;"&gt;&lt;strong&gt;Exemplo&lt;/strong&gt;&lt;/span&gt; &lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
int ledPin = 13; // LED conectado na porta 13 &lt;br /&gt;
void setup() &lt;br /&gt;
{ &lt;br /&gt;
pinMode(ledPin, OUTPUT); // configura a porta como saida (OUTPUT) &lt;br /&gt;
} &lt;br /&gt;
void loop() &lt;br /&gt;
{ &lt;br /&gt;
digitalWrite(ledPin, HIGH); // liga (HIGH) o LED &lt;br /&gt;
delay(1000); // espera um segundo &lt;br /&gt;
digitalWrite(ledPin, LOW); // desliga (LOW) o LED &lt;br /&gt;
delay(1000); // espera um segundo &lt;br /&gt;
}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-5361446629332020214?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/PSv5qn_AbtqlUTOUqlBQ8NV8vL8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PSv5qn_AbtqlUTOUqlBQ8NV8vL8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/PSv5qn_AbtqlUTOUqlBQ8NV8vL8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PSv5qn_AbtqlUTOUqlBQ8NV8vL8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/6NEWYhQQVaY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/5361446629332020214/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/10/referencia-arduino-pinmode-digitalwrite.html#comment-form" title="1 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/5361446629332020214?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/5361446629332020214?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/6NEWYhQQVaY/referencia-arduino-pinmode-digitalwrite.html" title="Referência Arduino - pinMode(), digitalWrite() e delay()" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/10/referencia-arduino-pinmode-digitalwrite.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcNSX89fip7ImA9WhdaEUk.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-5617712499973051445</id><published>2011-10-19T18:56:00.000-07:00</published><updated>2011-10-20T15:01:38.166-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-20T15:01:38.166-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="arduino" /><category scheme="http://www.blogger.com/atom/ns#" term="arduino referência pinMode digitalWrite portas digitais digital pin ATMega" /><category scheme="http://www.blogger.com/atom/ns#" term="duemilanove" /><title>Referência Arduino - Portas Digitais</title><content type="html">As portas digitais podem ser configuradas tanto como entrada e saída. Este artigo explica a funcionalidade das portas nesses modos. Enquanto o título deste artigo se refere a portas digitais, é importante lembrar que uma vasta maioria das portas analógicas do Arduino (ATMega) podem ser configuradas, e usadas, da mesma maneira que as portas digitais.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&lt;strong&gt;Propriedades das Portas Configuradas como Entrada (INPUT)&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
Portas do Arduino (ATMega) são por padrão consideradas como entradas, então estas não precisam explicitamente ser declaradas como entrada através da função pinMode(). Portas configuradas como entrada se encontram em um estado conhecido por alta impedância. Uma forma de explicar isso é que portas de entrada demandam muito pouco, ou quase nada, do circuito que estão amostrando, equivalente a um resistor de 100 mega ohms em série com a porta. Isto significa que não é necessária muita corrente para alternar as portas de entrada de um estado para outro, e que estas podem se tornar muito úteis para tarefas como: implementar um &lt;a href="http://www.arduino.cc/playground/Code/CapacitiveSensor"&gt;sensor capacitivo, sensível ao toque&lt;/a&gt;; efetuar a leitura de um &lt;a href="http://www.arduino.cc/playground/Learning/LEDSensor"&gt;LED como se fosse um foto-diodo&lt;/a&gt;; ou ainda fazer a leitura de um sensor analógico com um esquema &lt;a href="http://arduino.cc/en/Tutorial/RCtime"&gt;RCTime&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Isto significa também, entretanto, que as portas de entrada apresentarão sensibilidade aleatória entre estados pelo simples fato de não ter nada conectado a elas, ou mesmo por estarem conectadas a um fio solto, detectando ruído elétrico a partir do ambiente, ou acoplamento capacitivo do estado das portas adjacentes.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&lt;strong&gt;Resistor de Elevação (Pullup)&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
Dessa forma se faz necessário, muitas vezes, nortear uma porta de entrada para um estado conhecido, quando nenhum sinal se faz presente. Isto pode ser feito adicionando na entrada, um resistor de elevação (ligando no 5V), ou um resistor de referência (pulldown - ligado no terra). 10k ohms é um valor comumente utilizado.&lt;br /&gt;
&lt;br /&gt;
Existem também resistores de elevação convenientemente construídos internamente no chip do ATMega, que podem ser acessados via programação. Estes resistores de elevação embutidos podem ser acessados da seguinte maneira:&lt;br /&gt;
&lt;br /&gt;
pinMode(pin, INPUT); // configura a porta como entrada&lt;br /&gt;
digitalWrite(pin, HIGH); // liga o resistor de elevação (pullup)&lt;br /&gt;
&lt;br /&gt;
Note que estes resistores de elevação provêm corrente suficiente para acender de forma bem suave um LED conectado a porta configurada como entrada. Se os LED's de um projeto estiverem acendendo dessa forma bem suave, provavelmente é exatamente isso que está acontecendo e o programador esqueceu de usar a função pinMode() para configurar as portas como saída (OUTPUT).&lt;br /&gt;
&lt;br /&gt;
Repare também que os resistores de elevação são controlados pelos mesmos registradores (endereços internos da memória do chip) que controlam se uma porta está em um estado alto (HIGH) ou baixo (LOW). Consequentemente um pino que é configurado para ter um resistor de elevação ligado quando a porta é uma entrada, manterá o estado alto mesmo quando a porta for alterada para saída, através da função pinMode(). Isso funciona de forma inversa também, e uma porta de saída deixada em estado alto, terá os resistores de elevação automaticamente ligados se for alterada para o modo de entrada pelo pinMode().&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;NOTA:&lt;/strong&gt; A porta digital 13 é mais difícil de se utilizar como uma porta de entrada dentre as outras portas digitais, pois existe um LED ligado a ela, com um resistor em série, soldado na placa, na maioria das placas. Se você habilitar seu resistor de elevação, ela travará em uma tensão aproximada de 1,7V, ao invés dos esperados 5V, por causa do LED embutido na placa, e o resistor em série sempre puxará o nível de tensão para baixo, resultando sempre em um estado baixo (LOW). Se você quiser usar a porta 13 como entrada digital, ligue um resistor de referência (pulldown) externo.&lt;br /&gt;
&lt;br /&gt;
&lt;span style="color: orange;"&gt;&lt;strong&gt;Propriedades das Portas Configuradas como Saída (OUTPUT)&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;
Portas configuradas como saída através do pinMode() encontram-se em um estado de baixa impedância. Isso significa que elas podem fornecer uma quantidade considerável de corrente para outros circuitos. As portas do ATMega podem alimentar (fornecer corrente positiva) ou ancorar (fornecer corrente negativa) até 40mA (miliampéres) de corrente para outros dispositivos/circuitos. Isso é corrente suficiente para acender bem forte um LED (não se esqueça do resistor em série), ou acomodar vários sensores, por exemplo; mas não fornece corrente suficiente para ativar diretamente a maioria dos relês, solenóides, ou motores.&lt;br /&gt;
&lt;br /&gt;
Curto-circuitos nas portas do Arduino, ou tentativas de ativar dispositivos que consomem altas correntes, podem danificar ou até destruir o transistor de saída da porta; ou ainda danificar completamente o chip ATMega. Muitas vezes isso resulta em um pino "morto" no microcontrolador, mas o resto do chip ainda funciona adequadamente. Por essa razão, é uma boa ideia conectar portas de saída aos dispositivos, através de um resistor de 470 ou 1k ohms, a não ser que a máxima corrente consumida das portas seja necessária para alguma aplicação em particular.&lt;br /&gt;
&lt;br /&gt;
Tradução literal do Inglês para Português do original, extraído do site &lt;a href="http://arduino.cc/"&gt;arduino.cc&lt;/a&gt;, conforme link que segue:&lt;br /&gt;
&lt;a href="http://arduino.cc/en/Tutorial/DigitalPins"&gt;http://arduino.cc/en/Tutorial/DigitalPins&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
by&lt;br /&gt;
Renato Aloi&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-5617712499973051445?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/aJ2cCv_-z-p3_1MAJpzXQjvsAmw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aJ2cCv_-z-p3_1MAJpzXQjvsAmw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/aJ2cCv_-z-p3_1MAJpzXQjvsAmw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aJ2cCv_-z-p3_1MAJpzXQjvsAmw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/VQEC41kSKLU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/5617712499973051445/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/10/referencia-arduino-portas-digitais.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/5617712499973051445?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/5617712499973051445?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/VQEC41kSKLU/referencia-arduino-portas-digitais.html" title="Referência Arduino - Portas Digitais" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/10/referencia-arduino-portas-digitais.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcNSX88eSp7ImA9WhdaEUk.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-6733608350748478037</id><published>2011-10-19T07:23:00.000-07:00</published><updated>2011-10-20T15:01:38.171-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-20T15:01:38.171-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="arduino" /><category scheme="http://www.blogger.com/atom/ns#" term="arduino referência pinMode digitalWrite portas digitais digital pin ATMega" /><category scheme="http://www.blogger.com/atom/ns#" term="duemilanove" /><title>Curso Arduino - Aula 2 (Eletrônica Básica)</title><content type="html">&lt;iframe width="459" height="344" src="http://www.youtube.com/embed/vtrmTI2ssUU?fs=1" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-6733608350748478037?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/b2TqUZXlRpqiukZFnuVYaMahzvc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/b2TqUZXlRpqiukZFnuVYaMahzvc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/b2TqUZXlRpqiukZFnuVYaMahzvc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/b2TqUZXlRpqiukZFnuVYaMahzvc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/rrDIMbLsU3Y" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/6733608350748478037/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/10/curso-arduino-aula-2-eletronica-basica.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/6733608350748478037?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/6733608350748478037?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/rrDIMbLsU3Y/curso-arduino-aula-2-eletronica-basica.html" title="Curso Arduino - Aula 2 (Eletrônica Básica)" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://img.youtube.com/vi/vtrmTI2ssUU/default.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/10/curso-arduino-aula-2-eletronica-basica.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcNSX8-fip7ImA9WhdaEUk.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-5216704436625484247</id><published>2011-10-19T07:21:00.000-07:00</published><updated>2011-10-20T15:01:38.156-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-20T15:01:38.156-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="arduino" /><category scheme="http://www.blogger.com/atom/ns#" term="arduino referência pinMode digitalWrite portas digitais digital pin ATMega" /><category scheme="http://www.blogger.com/atom/ns#" term="duemilanove" /><title>Curso Arduino - Aula 1 (Iniciando)</title><content type="html">&lt;iframe width="459" height="344" src="http://www.youtube.com/embed/inYEsklZXNE?fs=1" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-5216704436625484247?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/i_aj1BJ8bSWPEHrO20s5QkogZbI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/i_aj1BJ8bSWPEHrO20s5QkogZbI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/i_aj1BJ8bSWPEHrO20s5QkogZbI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/i_aj1BJ8bSWPEHrO20s5QkogZbI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/SR3ZtjiJ4ro" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/5216704436625484247/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/10/curso-arduino-aula-1-iniciando.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/5216704436625484247?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/5216704436625484247?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/SR3ZtjiJ4ro/curso-arduino-aula-1-iniciando.html" title="Curso Arduino - Aula 1 (Iniciando)" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://img.youtube.com/vi/inYEsklZXNE/default.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/10/curso-arduino-aula-1-iniciando.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcMR3kzfCp7ImA9WhdaEUk.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-833138036462057366</id><published>2011-10-15T17:38:00.000-07:00</published><updated>2011-10-20T15:01:26.784-07:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-10-20T15:01:26.784-07:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="arduino" /><category scheme="http://www.blogger.com/atom/ns#" term="arduino referência pinMode digitalWrite portas digitais digital pin ATMega" /><category scheme="http://www.blogger.com/atom/ns#" term="duemilanove" /><category scheme="http://www.blogger.com/atom/ns#" term="ftdi" /><category scheme="http://www.blogger.com/atom/ns#" term="windows" /><category scheme="http://www.blogger.com/atom/ns#" term="mega" /><category scheme="http://www.blogger.com/atom/ns#" term="instalação" /><category scheme="http://www.blogger.com/atom/ns#" term="linux" /><category scheme="http://www.blogger.com/atom/ns#" term="uno" /><category scheme="http://www.blogger.com/atom/ns#" term="nano" /><category scheme="http://www.blogger.com/atom/ns#" term="mac" /><category scheme="http://www.blogger.com/atom/ns#" term="diecimila" /><category scheme="http://www.blogger.com/atom/ns#" term="driver" /><title>Instalando Arduino - Guia Completo</title><content type="html">Tenho ministrado cursos sobre Arduino e a principal dificuldade de quem começa a desenvolver com essa tecnologia é justamente a instalação do ambiente no computador. Resolvi então escrever esse artigo para ajudar quem está começando nessa nova e maravilhosa plataforma.&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;Vamos ao fatos: o grande problema da instalação do Arduino é a quantidade de Sistemas Operacionais existentes. Temos Windows XP, Vista e 7; Mac OS; e finalmente uma enorme quantidade de distribuições Linux. Além de tudo isso, temos versões 32 e 64 bits. Isso sem falar que existem várias distribuições do Arduino, como UNO, Duemilanove, Decimila, Mega etc. Não se preocupe, vou tentar cobrir todas as possibildades.&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;Para quem não conhece o Arduino, é uma plataforma de desenvolvimento baseada em microcontroladores da Atmel. Com o Arduino somos capazes de criar dispositivos que "sentem" e controlam dispositivos. Por exemplo, podemos utilizar um sensor de luminosidade para "sentir" o cair da noite e acionar o acendimento de uma lâmpada. Mas este é apenas um exemplo. Podemos também acionar motores, relês, além de detectar calor, movimento etc. Tudo depende dos dispositivos ligados ao Arduino.&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;Vamos então partir para a instalação do Arduino no computador. Precisamos de duas coisas:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Instalar o programa de desenvolvimento (conhecido por IDE)&lt;/li&gt;
&lt;li&gt;Instalar o driver USB&lt;/li&gt;
&lt;/ul&gt;O mais fácil é baixar e instalar a IDE (Ambiente Integrado de Desenvolvimento). Para isso, basta acessar o seguinte endereço e fazer o download específico para seu sistema operacional:&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;a href="http://arduino.cc/en/Main/Software"&gt;http://arduino.cc/en/Main/Software&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;Na página do link acima, escolha entre as versões Windows, Mac&amp;nbsp;ou Linux, ou então&amp;nbsp;clicque diretamente nos links da lista abaixo:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href="http://arduino.googlecode.com/files/arduino-0022.zip"&gt;Windows&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://arduino.googlecode.com/files/arduino-0022.dmg"&gt;Mac OS X&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Linux &lt;a href="http://arduino.googlecode.com/files/arduino-0022.tgz"&gt;32 bits&lt;/a&gt; ou &lt;a href="http://arduino.googlecode.com/files/arduino-0022-64-2.tgz"&gt;64 bits&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;Vamos começar pelo Windows. Não importa se&amp;nbsp;é XP, Vista ou 7. Basta baixar a versão denominada apenas "Windows". Não existe instalador, o&amp;nbsp;que você vai&amp;nbsp;baixar é um arquivo compactado, do tipo ZIP. Para abrir este arquivo e&amp;nbsp;descompactar a IDE do Arduino, você precisará de um programa chamado WinRar. Algumas versões de Windows lidam com arquivos ZIP de forma transparente, mas para todos os efeitos, segue o link do programa gratuito WinRar:&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;a href="http://www.baixaki.com.br/download/winrar.htm"&gt;http://www.baixaki.com.br/download/winrar.htm&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;Descompacte esse arquivo chamado "arduino-0022.zip" (é a versão atual enquanto eu escrevo esse artigo) em uma pasta com o mesmo nome, de preferência no drive "C:", para que o caminho&amp;nbsp;fique assim: "C:\arduino-0022". Vou considerar que você seguiu essas orientações&amp;nbsp;para facilitar o entendimento desse artigo. Dentro dessa pasta, você verá que existe um arquivo executável chamado&amp;nbsp;"arduino.exe". Este é o ponto de entrada do programa principal do Arduino, ou seja, a IDE ("C:\arduino-0022\arduino.exe").&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;Outra coisa importante dentro do diretório "arduino-0022" é a pasta "drivers" ("C:\arduino-0022\drivers"). Nesta pasta é onde gastaremos&amp;nbsp;a maior parte do nosso esforço. Isso porque já terminamos a instalação da IDE e vamos partir para a instalação do&amp;nbsp;Driver USB.&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;Agora precisamos verificar algumas coisas, entre elas qual a versão do seu Arduino. Vamos começar conectando o Arduino no computador através do cabo USB. Faça isso agora, mas se você já tentou e não conseguiu, não se preocupe. Vamos aos passos:&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;strong&gt;&lt;u&gt;Para o Arduino UNO ou Mega 2560&amp;nbsp;no Windows XP, Vista ou 7&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&amp;nbsp;Conecte a placa via cabo USB no computador. O assistente de instalação deve aparecer. Clique em "Avançar" até que o Windows diga que &lt;u&gt;não&lt;/u&gt; conseguiu instalar o driver (não se preocupe, é assim mesmo). Clique em "Concluir" para dispensar o&amp;nbsp;assistente.&lt;/li&gt;
&lt;li&gt;Clique então no menu "Iniciar" e selecione a opção "Painel de Controle".&lt;/li&gt;
&lt;li&gt;No painel de controle, clique no ícone "Sistema" (dependendo do Windows, pode estar dentro da categoria "Sistema e Segurança"). Na tela que aparecer, selecione "Hardware" e depois "Gerenciador de Dispositivos" (mais uma vez essa opção pode variar um pouco dependendo da versão do Windows).&lt;/li&gt;
&lt;li&gt;Procure pela opção "Portas (COM &amp;amp; LPT)". Clique no sinal de adição (+) correspondente a essa opção e uma entrada chamada "Arduino UNO (COMxx)" deve aparecer. Pode ser que você não encontre essa&amp;nbsp;entrada na opção "Portas", se for esse o caso, procure por um "Dispositivo Desconhecido" na opção "Outros Dispositivos". Se você tiver mais de um dispositivo desconhecido, ou tiver dúvidas nesse ponto, desligue e religue o cabo do Arduino e preste atenção qual&amp;nbsp;a entrada que some quando você desliga o Arduino e que&amp;nbsp;reaparece quando você o reconecta.&lt;/li&gt;
&lt;li&gt;Clique então na entrada descrita no passo 4 com o &lt;u&gt;botão direito&lt;/u&gt; do mouse&amp;nbsp;para aparecer o menu de contexto. Selecione a opção "Atualizar driver...".&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Na tela que aparecer, selecione a opção "Instalar de uma lista ou local específico (Avançado)" e clique em "Avançar".&lt;/li&gt;
&lt;li&gt;Na próxima tela, verifique que a opção selecionada é a "Procurar melhor driver nestes locais". E nas caixas de seleção logo abaixo essa opção, &lt;u&gt;desmarque a primeira&lt;/u&gt;, denominada "Pesquisar mídia removível (disquete, CD-ROM...)" e &lt;u&gt;marque a segunda&lt;/u&gt; "Incluir este local na pesquisa:". Quando você fizer isso, o campo de pesquisa e o botão "Pesquisar" ficarão disponíveis. &lt;/li&gt;
&lt;li&gt;Clique então&amp;nbsp;no botão "Pesquisar"&amp;nbsp;e localize&amp;nbsp;a&amp;nbsp;pasta "&lt;strong&gt;Drivers&lt;/strong&gt;"&amp;nbsp;que se encontra no local&amp;nbsp;"C:\arduino-0022\drivers\" (se você seguiu os passos de instalação desse tutorial). &lt;strong&gt;Atenção&lt;/strong&gt;:&amp;nbsp;&lt;u&gt;NÃO&lt;/u&gt; escolha a sub-pasta "FTDI USB Drivers". Clique em "OK" para concluir a escolha da pasta.&lt;/li&gt;
&lt;li&gt;Agora clique em "Avançar" até concluir a instalação do driver. Pode ser que o Windows apresente uma tela dizendo que o driver pode não ser confiável. Clique na opção que diz para instalar assim mesmo!&lt;/li&gt;
&lt;li&gt;Clique em "Concluir" para finalizar a instalação.&lt;/li&gt;
&lt;/ol&gt;Em caso de dúvidas, veja um passo-a-passo ilustrado de como fazer as ações acima, clicando no link abaixo:&lt;br /&gt;
&lt;a href="http://arduino.cc/en/Guide/UnoDriversWindowsXP"&gt;http://arduino.cc/en/Guide/UnoDriversWindowsXP&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;strong&gt;&lt;u&gt;Para Arduino Duemilanove, Mega, Nano ou&amp;nbsp;Diecimila no Windows XP, Vista ou 7&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Quando você conectar o Arduino via cabo USB, o instalador do Windows deve aparecer automaticamente.&lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
No Windows Vista, selecione a opção "Instalar automaticamente" (Realmente funciona!) &lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
No Windows 7 64 bits, baixe e utilize o driver do seguinte link: &lt;br /&gt;
&lt;a href="http://www.ftdichip.com/Drivers/CDM/CDM20814_WHQL_Certified.zip"&gt;http://www.ftdichip.com/Drivers/CDM/CDM20814_WHQL_Certified.zip&lt;/a&gt; &lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
No Windows XP, o assistente de instalação de novo hardware aparecerá, siga os passos abaixo: &lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Quando aparecer a tela perguntando "Deseja que o Windows procure automaticamente o driver na internet?", selecione a opção "Não dessa vez" e clique em "Avançar".&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Na tela que aparecer, selecione a opção "Instalar de uma lista ou local específico (Avançado)" e clique em "Avançar".&lt;/li&gt;
&lt;li&gt;Na próxima tela, verifique que a opção selecionada é a "Procurar melhor driver nestes locais". E nas caixas de seleção logo abaixo essa opção, &lt;u&gt;desmarque a primeira&lt;/u&gt;, denominada "Pesquisar mídia removível (disquete, CD-ROM...)" e &lt;u&gt;marque a segunda&lt;/u&gt; "Incluir este local na pesquisa:". Quando você fizer isso, o campo de pesquisa e o botão "Pesquisar" ficarão disponíveis. &lt;/li&gt;
&lt;li&gt;Clique então no botão "Pesquisar" e localize a pasta &lt;strong&gt;"FTDI USB Drivers"&lt;/strong&gt; que se encontra no&amp;nbsp;local "C:\arduino-0022\drivers\FTDI USB Drivers\" (se você seguiu os passos de instalação desse tutorial). Clique em "OK" para concluir a escolha da pasta.&lt;/li&gt;
&lt;li&gt;Agora clique em "Avançar" até concluir a instalação do driver. Pode ser que o Windows apresente uma tela dizendo que o driver pode não ser confiável. Clique na opção que diz para instalar assim mesmo!&lt;/li&gt;
&lt;li&gt;Quando a instalação terminar, o Windows dirá que o "USB Serial Converter" foi instalado. Clique em "Concluir" para finalizar a instalação.&lt;/li&gt;
&lt;li&gt;Nesse momento, outro assistente de instalação de hardware deve aparecer. Siga novamente os passos acima, mas desta vez, ao terminar o Windows dirá que o "USB Serial Port" foi instalado. Clique em "Concluir" para finalizar essa segunda instalação.&lt;/li&gt;
&lt;/ol&gt;Você pode verificar se a instalação ocorreu com sucesso, acessando o Gerenciador de Dispositivos (na aba Hardware do item Sistema, no Painel de Controle). Procure na seção "Portas (COM &amp;amp; LPT)" pela entrada "USB Serial Port".&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;Instalando Arduino no Mac OS X&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Após fazer o download, conforme indicado no início deste tutorial, a imagem de disco (.dmg) deve abrir automaticamente. Caso isso não aconteça, clique duas vezes sobre o arquivo "arduino-0022.dmg".&lt;br /&gt;
&lt;br /&gt;
Para o Arduino UNO e Mega 2560, apenas copie a pasta do Arduino para sua pasta de Aplicações. Não é necessário instalar nenhum driver.&lt;br /&gt;
&lt;br /&gt;
Se você estiver usando uma versão anterior (Duemilanove, Mega, Nano ou&amp;nbsp;Diecimila) não esqueça de instalar o driver do FTDI, clicando duas vezes no arquivo "FTDIUSBSerialDriver_10_4_10_5_10_6.mpkg" e siga as instruções do instalador. Você precisará reiniciar o computador após a instalação do driver.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;Instalando Arduino no Linux&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Acredito que a instalação mais complicada de ser explicada é a do Linux, pois existem muitas distribuições diferentes e muitos detalhes a serem verificados. Vou fazer uma explicação geral aqui, pois entendo que o usuário do Linux é experiente. O próprio site do Arduino tem uma seção exclusivamente para detalhes sobre a instalação nas mais diversas distribuições do Linux, que podem ser encontradas no link abaixo:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.arduino.cc/playground/Learning/Linux"&gt;http://www.arduino.cc/playground/Learning/Linux&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
De uma forma geral, a instalação no Linux depende da instalação dos seguintes programas (o jeito de instalar as opções abaixo depende da sua distribuição):&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;u&gt;openjdk-6-jre&lt;/u&gt; (emmbora o java runtime da Sun deve funcionar também: sun-java6-jre)&lt;/li&gt;
&lt;li&gt;&lt;u&gt;avr-gcc&lt;/u&gt; (conhecido por&amp;nbsp;"gcc-avr"), versão 4.3.2 ou&amp;nbsp;versões&amp;nbsp;4.3.x (Versões 4.4.x&amp;nbsp;e 4.5.x apresentam vários problemas)&lt;/li&gt;
&lt;ul&gt;&lt;li&gt;Versão 4.3.0 tem um&amp;nbsp;problema que afeta multiplicação de inteiros longos. Esta é a versão padrão do Ubuntu Intrepid (8.10). Verifique usando o comando "avr-gcc --version" e atualize-a se necessário.&lt;/li&gt;
&lt;li&gt;Versões&amp;nbsp;ateriores a&amp;nbsp;4.3.0&amp;nbsp; não suportam o ATmega328 (que vem com o&amp;nbsp;Arduino Duemilanove).&lt;/li&gt;
&lt;li&gt;Quem roda versões das distribuições como Hardy Heron (Ubuntu) ou Etch (Debian) e anteriores precisarão atualizar suas versões do avr-gcc.&lt;/li&gt;
&lt;/ul&gt;&lt;li&gt;&lt;u&gt;avr-gcc-c++&lt;/u&gt; (Senão você experimentará o erro: Cannot run program "avr-g++": java.io.IOException:Error=2: No such file or directory)&lt;/li&gt;
&lt;li&gt;&lt;u&gt;avr-libc&lt;/u&gt;&lt;/li&gt;
&lt;/ul&gt;Efetue o download da última versão do Arduino para Linux, conforme indicado no início deste tutorial. Copie/extraia os arquivos baixados para um diretório (ou seu desktop) e rode o script do "arduino". Certifique-se que o diretório extraído não tenha espaços no nome.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;Abrindo a IDE do Arduino&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Lembra do "arduino.exe" que está na pasta "C:\arduino-0022", mostrado no começo do tutorial? Pois é hora de clicar duas vezes nesse arquivo. Isso fará com que o ambiente de desenvolvimento do Arduino inicie.&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;Configurando a IDE do Arduino&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Com o ambiente iniciado, selecione o menu Tools &amp;gt; Boards e escolha a sua versão do Arduino. Se você está usando um Arduino UNO, a IDE já deve estar configurada por padrão. Mas não deixe de verificar essa opção.&lt;br /&gt;
&lt;br /&gt;
&lt;u&gt;No Windows&lt;/u&gt;, uma última coisa a ser verificada é no menu Tools &amp;gt; Serial Port. Selecione a porta COM do seu Arduino. Se você não sabe qual é a porta certa (caso tenha mais de uma), verifique no Gerenciador de Dispositivos (na aba Hardware do item Sistema, no Painel de Controle). &lt;br /&gt;
&lt;br /&gt;
Caso seu Arduino seja o UNO, procure na seção "Portas (COM &amp;amp; LPT)" pela entrada "Arduino UNO (COMxx)", onde "xx" será o número da porta do Arduino.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Caso seu Arduino seja o Duemilanove, Nano ou&amp;nbsp;Diecimila, procure na seção "Portas (COM &amp;amp; LPT)" pela entrada "USB Serial Port (COMxx)", onde "xx" será o número da porta do Arduino.&lt;br /&gt;
&lt;u&gt;No Mac OS X&lt;/u&gt;, caso seu Arduino seja o UNO ou Mega 2560, a porta serial a ser escolhida deve ser a que começa com "/dev/tty.usbmodem", caso seja uma versão anterior do Arduino (Duemilanove, Mega, Nano ou&amp;nbsp;Diecimila), a porta serial deve ter um nome que começa com "/dev/tty.usbserial". &lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;&lt;u&gt;Conclusão&lt;/u&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Bom, espero ter conseguido cobrir as principais maneiras de se instalar o Arduino nos principais sistemas operacionais. Lógico que sempre existe uma situação em particular que não deve estar nesse artigo, mas para quem ainda está experimentando problemas ou tem dúvidas, utilize o campo de comentários para se expressar. Críticas, sugestões e informações adicionais são bem-vindas.&lt;br /&gt;
&lt;br /&gt;
Obrigado!&lt;br /&gt;
Renato Aloi&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-833138036462057366?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/CyhQ9hgxdI4RIr799CTdxePCRTM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/CyhQ9hgxdI4RIr799CTdxePCRTM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/CyhQ9hgxdI4RIr799CTdxePCRTM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/CyhQ9hgxdI4RIr799CTdxePCRTM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/u0TnkE_41E4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/833138036462057366/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2011/10/instalando-arduino-guia-completo.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/833138036462057366?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/833138036462057366?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/u0TnkE_41E4/instalando-arduino-guia-completo.html" title="Instalando Arduino - Guia Completo" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2011/10/instalando-arduino-guia-completo.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkcESXwzfSp7ImA9Wx9TFUQ.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-431258735074732402</id><published>2010-11-24T02:19:00.000-08:00</published><updated>2010-11-24T02:20:08.285-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-11-24T02:20:08.285-08:00</app:edited><title>Universo Paralelo</title><content type="html">Internet de graça, fornecida pelo Governo, pelo ar, pela terra, pelo mar, via conexão discada, via banda larga, internet paga.&lt;br /&gt;&lt;br /&gt;De graça ou paga? Fornecida por empresas ou pelo Governo? Porque a Internet é tão necessária, tão vital?&lt;br /&gt;&lt;br /&gt;A melhor definição sobre o assunto que vi esses dias foi que ninguém quer ficar sem Internet, pois quem está sem Internet, está vivendo em um “Universo Paralelo”.&lt;br /&gt;&lt;br /&gt;Outro depoimento que vi foi o de um capixaba de uma cidade do interior, com no máximo duzentos e cinquenta mil habitantes, sobre a conclusão das pequenas empresas da cidade em se unir e montar um sistema de provimento de Internet via Wireless para a cidade toda! Duvido que ANATEL tenha sequer conhecimento deste fato!&lt;br /&gt;&lt;br /&gt;O capixaba ainda falou que cansaram de esperar pelas grandes empresas...&lt;br /&gt;&lt;br /&gt;Isso me chamou muito a atenção! Como assim cansaram de esperar as grandes empresas? A impressão que tenho que o Brasil ainda não chegou nesses lugares. E que a TV noticia como se fosse um milagre da tecnologia!&lt;br /&gt;&lt;br /&gt;Mas não é! Apenas uma deficiência que vem se arrastando por anos nas políticas públicas sobre fornecimento de serviços básicos garantidos pela Constituição.&lt;br /&gt;&lt;br /&gt;O milagre da tecnologia é outro! Ele finalmente rompe o lacre que sempre garantiu às empresas estrangeiras exclusividade no domínio da técnica, da tecnologia. O Brasil está absorvendo muito bem esses aprendizados e consegue se destacar nas áreas de configuração e programação.&lt;br /&gt;&lt;br /&gt;A área de Hardware sempre foi e “sempre” será dominada pelos países que tem a indústria muito bem desenvolvida, mas o Brasil é um grande produtor de commodities e pode compensar a falta da indústria bem montada por uma rede de serviços de primeira qualidade!&lt;br /&gt;&lt;br /&gt;Se órgãos como a ANATEL dessem abertura para empresas menores de serviços, assim como Submarino e Americanas fizeram com seus serviços de entregas (para não falir, diga-se de passagem!), as empresas de serviço telefônico poderiam cadastrar para prestar manutenção nos postes; em contrapartida, empresas de tecnologias como a minha poderiam criar canais de comunicações privados entre empresas e baixar o custo de comunicação, por exemplo.&lt;br /&gt;&lt;br /&gt;Sinto inveja dos capixabas que construíram sua própria Internet! Como diz o Obama: Yes! We Can! As empresas brasileiras de TI estão mais do que preparadas para lidar com essas tecnologias e prontas para se especializar no que o Governo exigir. &lt;br /&gt;&lt;br /&gt;Ou seja, na minha opinião existe uma alternativa entre o controle total do Governo e a venda da concessão para uma empresa estrangeira por muito dinheiro! Tá legal, eu sei que as vezes o Erário precisa ser recomposto, mas será não está na hora de virar o foco para as empresas e profissionais brasileiros?&lt;br /&gt;&lt;br /&gt;Renato Aloi&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-431258735074732402?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/MTXfU7bmhDbCb2nNIShzqFFkkeA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MTXfU7bmhDbCb2nNIShzqFFkkeA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/MTXfU7bmhDbCb2nNIShzqFFkkeA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/MTXfU7bmhDbCb2nNIShzqFFkkeA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/7DYF4hbDJ2g" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/431258735074732402/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2010/11/universo-paralelo.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/431258735074732402?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/431258735074732402?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/7DYF4hbDJ2g/universo-paralelo.html" title="Universo Paralelo" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2010/11/universo-paralelo.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEICRX0_fCp7ImA9WxBbE0g.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-458503864843371195</id><published>2010-03-11T16:25:00.000-08:00</published><updated>2010-03-11T17:16:04.344-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-11T17:16:04.344-08:00</app:edited><title>Sobre hackers e crackers</title><content type="html">Ontem tive uma discussão acalorada com o Sr. Coriolano sobre hackers e tecnologia.&lt;br /&gt;&lt;br /&gt;Peço desculpas ao amigo Coriolano se o ofendi de alguma forma com meu jeito esquisito de expressar minhas opiniões.&lt;br /&gt;&lt;br /&gt;Mas gostaria de deixar aqui algumas linhas sobre o assunto.&lt;br /&gt;&lt;br /&gt;Realmente o termo "hacker" caiu na boca do povo, principalmente depois do lançamento de um filme que tinha por nome exatamente o assunto em questão, e que mostrava um bando de adolescentes com computadores coloridos, invadindo sistemas e literalmente "tocando o puteiro"!&lt;br /&gt;&lt;br /&gt;Desde então o termo se tornou pejorativo e passa imagem de um sujeito sem nada na cabeça e que quer apenas se divertir assustando e prejudicando os outros.&lt;br /&gt;&lt;br /&gt;Atualmente o hacker foi reconhecido pela sociedade como Analista de Segurança em TI. Perfeito. O grande problema é que o antônimo de analista de segurança foi absorvido como Hacker!&lt;br /&gt;&lt;br /&gt;Mas existe uma grande diferença entre o analista de segurança e o hacker, pois o primeiro estuda para tal, o segundo, nasceu para tal. E este último grupo não fez faculdade, não se mestrou em nada, mas manipula computadores como ninguém.&lt;br /&gt;&lt;br /&gt;Muitos acabam caindo no crime simplesmente, pois não se interessaram por mais nada. Esqueceram de estudar um pouco de administração e negócios. Ou seja, esqueceram que estão com a faca e o queijo nas mãos... Resultado: saem esfaqueando instituições e sonham em "tomar o poder", dada tamanha dependência atual da sociedade nos tais computadores.&lt;br /&gt;&lt;br /&gt;Só que a dependência da sociedade nos computadores não é o único problema, também existe o excesso de informações e a velocidade com que as coisas mudam, nesta área. Precisamos estar prontamente preparados para aceitar mudanças a todo tempo. É a velocidade da internet.&lt;br /&gt;&lt;br /&gt;As distâncias se encurtaram, os concorrentes agora batem na porta da internet! Estão por todos os lados! O mundo globalizou! Agora não existe mais espaço para ofertas de serviços de baixa qualidade! Quem dirá para corrupção e morosidade!&lt;br /&gt;&lt;br /&gt;Antes se a preocupação geral era se o leite iria aumentar, hoje isso é banalidade. Estamos preocupados com os traficantes sexuais do outro lado do mundo! Estamos preocupados com a velocidade com que nossos filhos tem acesso as informações! Temos medo daqueles emails de banco que nem temos conta dizendo que estamos devendo mundos e fundos e nos pedem para clicar em um link!&lt;br /&gt;&lt;br /&gt;Meu Deus! Há dez anos eu nem saberia o que é um link! Muitos devem pensar.&lt;br /&gt;&lt;br /&gt;É natural do ser humano ter medo, mas medo de tudo é paranóia. E o ser humano já atravessou essa fronteira há muito tempo. Precisamos nos adaptar e rápido. Os filhos dos traficantes que estão nos perturbando pelas ruas à noite são os Crackers de amanhã.&lt;br /&gt;&lt;br /&gt;Porque o termo Hacker já ficou velho, perdido lá pelos anos 80.&lt;br /&gt;&lt;br /&gt;Pensem nisso!&lt;br /&gt;&lt;br /&gt;Abraços,&lt;br /&gt;Renato&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-458503864843371195?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_oiffW5RU8gHvXlnVC81ATLrexA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_oiffW5RU8gHvXlnVC81ATLrexA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_oiffW5RU8gHvXlnVC81ATLrexA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_oiffW5RU8gHvXlnVC81ATLrexA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/5qe11EXbUuE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/458503864843371195/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2010/03/sobre-hackers-e-crackers.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/458503864843371195?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/458503864843371195?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/5qe11EXbUuE/sobre-hackers-e-crackers.html" title="Sobre hackers e crackers" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2010/03/sobre-hackers-e-crackers.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0IHRH46fCp7ImA9WxBbEUo.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-347791934956207547</id><published>2010-03-09T14:09:00.000-08:00</published><updated>2010-03-09T14:58:55.014-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-09T14:58:55.014-08:00</app:edited><title>Liberação das Drogas?</title><content type="html">Tenho uma opinião bem formada sobre drogas, apenas não me perguntem como.&lt;br /&gt;&lt;br /&gt;Fernando Henrique Cardoso (FHC) recentemente levantou a questão sobre a liberação das drogas no Brasil.&lt;br /&gt;&lt;br /&gt;Se eu acho certo não importa muito.&lt;br /&gt;&lt;br /&gt;O que me incomoda é que o ser humano ainda não aprendeu a lidar com esse assunto e tenho certeza que o medo que todo mundo tem desse tabu é o fato de nossos filhos se verem envolvidos por essa "maldição".&lt;br /&gt;&lt;br /&gt;Quando começam as metáforas é que a coisa complica, pois o medo fica absurdamente grande. Mas se colocarmos a cabeça a pensar e analisarmos que se não existissem os traficantes, nossos filhos seriam seduzidos por quem?&lt;br /&gt;&lt;br /&gt;Eu vou além: se tratarmos o problema das drogas dentro de casa - assim como aprendemos a fazer com outro tabu: sexo - porque nossos filhos buscariam resolver fora de casa?&lt;br /&gt;&lt;br /&gt;Quando o assunto sexo deixou de ser um tabu para ser conversado na mesa do café da manhã ou tratado na novela das 8, todo mundo passou a viver melhor e com menos medo de nossos filhos saíam por aí fazendo netos.&lt;br /&gt;&lt;br /&gt;Com as drogas, precisamos passar essa fase. Eu mesmo usei drogas por anos e hoje sou uma pessoa ativa na sociedade, trabalhando, criando família, enfim, vivendo.&lt;br /&gt;&lt;br /&gt;O grande problema é a pessoa que se entrega para as drogas como quem se entrega para uma vida de miséria e prostituição, por exemplo. Normalmente a pessoa tem medo de sair dessa vida e não conseguir levar uma vida normal outra vez.&lt;br /&gt;&lt;br /&gt;Mas por que acontece isso? Nesse ponto entra meu conhecimento e esclarecimento sobre drogas.&lt;br /&gt;&lt;br /&gt;Eu, por exemplo usei maconha durante minha adolescência inteira. E nunca escondi de ninguém. Eu comprava minha própria droga e perguntei a minha mãe se ela queria que eu fumasse em casa, ou na rua. Óbvia foi a resposta.&lt;br /&gt;&lt;br /&gt;Passei anos fumando no meu quarto em plena casa de minha mãe. Lógico que eu sempre ouvi muita bobagem e fiz minha irmã me detestar até hoje. Mas foi o preço que eles tiveram que pagar para que eu amadurecesse. Tem coisa pior!&lt;br /&gt;&lt;br /&gt;Mas o que eu sempre me questionei é por que gostava de maconha e não de cocaína? E se todo mundo falava que maconha era uma porta de entrada para as drogas, porque eu nunca passei do sopé? Será porque eu era ajuizado - ao menos um pouco? Será porque meus mais eram presentes e rígidos?&lt;br /&gt;&lt;br /&gt;Atualmente, depois de estabelecido financeiramente, com família para criar e todas as responsabilidades que um ser humano precisa, resolvidas, procurei uma alternativa à maconha para me relaxar a noite.&lt;br /&gt;&lt;br /&gt;Foi quando eu entendi. O problema não são as drogas, mas sim as pessoas.&lt;br /&gt;&lt;br /&gt;Por exemplo, tenho certeza que algumas pessoas ao lerem esse texto, viram a palavra "maconha" quase como um palavrão, uma ofensa. Mas sabia que misturar erva de São João com flor de lótus azul e mais algumas ervas vendidas legalmente em lojas do ramo é possível simular o mesmo efeito?&lt;br /&gt;&lt;br /&gt;Recentemente uma droga chamada Spice Gold foi proibida no Reino Unido. A impressa noticiou como "droga disfarçada". Desse jeito não vamos poder mais tomar chá de erva cidreira, em breve.&lt;br /&gt;&lt;br /&gt;As drogas sempre existiram, os índios usavam. Eu sei que não é desculpa. Mas índio não tinha chefe reclamão, não tinha trânsito pesado, não tinha assalto, tão pouco mortes violentas e sem motivo na tribo. Mesmo assim, eles gostavam de relaxar. Agora imagine como o ser humano atual, sobrevivente de uma cidade grande precisa relaxar. Basta sair na rua e você perceberá isso.&lt;br /&gt;&lt;br /&gt;Todo mundo anda super estressado. Basta alguém buzinar no trânsito para isso se tornar um motivo de explosão e impaciência.&lt;br /&gt;&lt;br /&gt;Tudo está relacionado com o nível de consciência do indivíduo. A pessoa que é avoada e distraída gosta mais das drogas que contém efedrina, normalmente as terminadas em "ína", como a cocaína, remédios para o nariz, enfim.&lt;br /&gt;&lt;br /&gt;Já as pessoas que são estressadas por natureza gostam mais dos barbitúricos, aqueles remédios que tiram a gente de órbita, relaxam e "fazem pensar". O efeito conhecido vulgarmente como "brisa" ou "barato".&lt;br /&gt;&lt;br /&gt;Alucinógenos como o ácido lisérgico (LSD) já são diferentes, pois proporcionam viagens astrais, que envolvem a alma e o etéreo das coisas. São mais utilizadas em cultos religiosos e para alcançar níveis espirituais mais elevados e esclarecidos.&lt;br /&gt;&lt;br /&gt;O crack não é droga, é uma mistura do resto de produtos químicos altamente tóxicos. Mais ou menos como experimentar ácido sulfúrico ou cicuta. São utilizados por pessoas que chegaram no fundo do poço e estão querendo em curto prazo se livrar desse mundo, sonhando com alguma coisa melhor do outro lado. Ledo engano.&lt;br /&gt;&lt;br /&gt;Enquanto não aceitarmos esse tabu não conseguiremos evoluir. Precisamos parar de olhar o assunto "drogas" como um bicho papão no armário e apenas ver que é um bicho de pelúcia que teve sua sombra ampliada pela luminosidade do luar.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-347791934956207547?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/F1Jp2r4eYnQIMrXI9U6Lmn7J_Fg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/F1Jp2r4eYnQIMrXI9U6Lmn7J_Fg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/F1Jp2r4eYnQIMrXI9U6Lmn7J_Fg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/F1Jp2r4eYnQIMrXI9U6Lmn7J_Fg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/Zd6cen8JUdE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/347791934956207547/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2010/03/liberacao-das-drogas.html#comment-form" title="2 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/347791934956207547?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/347791934956207547?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/Zd6cen8JUdE/liberacao-das-drogas.html" title="Liberação das Drogas?" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><thr:total>2</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2010/03/liberacao-das-drogas.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0UBSXs6fip7ImA9WxBWFk0.&quot;"><id>tag:blogger.com,1999:blog-6653025878902014722.post-3855435651787871869</id><published>2010-02-07T20:54:00.000-08:00</published><updated>2010-02-07T21:00:58.516-08:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-07T21:00:58.516-08:00</app:edited><title>O que o FHC escreveu e o que o Lula leu!</title><content type="html">O que o FHC escreveu:&lt;br /&gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;"Lamento que Lula se deixe contaminar por impulsos tão toscos e perigosos. Ele possui méritos de sobra para defender a candidatura que queira. Deu passos adiante no que fora plantado por seus antecessores. Para que, então, baixar o nível da política à dissimulação e à mentira?"&lt;br /&gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;Como o Lula leu:&lt;br /&gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;"Blá blá blá &lt;strong&gt;Lula &lt;/strong&gt;blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá blá &lt;strong&gt;mentira&lt;/strong&gt;"&lt;br /&gt;&lt;br /&gt;...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6653025878902014722-3855435651787871869?l=renatoaloi.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/GF1R6x8scNVwOArq8RrWfhY9Vkk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GF1R6x8scNVwOArq8RrWfhY9Vkk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/GF1R6x8scNVwOArq8RrWfhY9Vkk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GF1R6x8scNVwOArq8RrWfhY9Vkk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/RenatoAloi/~4/3mqegvuxd84" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://renatoaloi.blogspot.com/feeds/3855435651787871869/comments/default" title="Postar comentários" /><link rel="replies" type="text/html" href="http://renatoaloi.blogspot.com/2010/02/o-que-o-fhc-escreveu-e-o-que-o-lula-leu.html#comment-form" title="0 Comentários" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/3855435651787871869?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6653025878902014722/posts/default/3855435651787871869?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/RenatoAloi/~3/3mqegvuxd84/o-que-o-fhc-escreveu-e-o-que-o-lula-leu.html" title="O que o FHC escreveu e o que o Lula leu!" /><author><name>Renato Graccula</name><uri>http://www.blogger.com/profile/18145105903940534638</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="29" height="32" src="http://3.bp.blogspot.com/_cnV16vguUDA/SYIi-N4uhoI/AAAAAAAAAAM/DwfWI5Vf8cw/S220/renato_avatar_150.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://renatoaloi.blogspot.com/2010/02/o-que-o-fhc-escreveu-e-o-que-o-lula-leu.html</feedburner:origLink></entry></feed>

