Arduino
Arduino é uma ferramenta que torna os computadores capazes de detectar e controlar elementos do mundo
físico. É uma plataforma open-source de computação física baseada em um microcontrolador a bordo de
uma placa simples, além de um ambiente de desenvolvimento para escrever softwares para a placa.




O Arduino pode ser utilizado para desenvolver objetos autônomos ou iterativos (como um sistema de
controle que necessita de acesso aos objetos do mundo físico), tomando as entradas a partir de uma
variedade de sensores ou switches e controlando atuadores como LEDs, servo-motores, relés ou outros tipos
de saída. Os projetos podem ser autônomos baseados na rotina escrita para o microcontrolador ou podem se
comunicar com um software em execução no computador.

A plataforma Arduino simplifica o processo de trabalhar com microcontroladores, alocando os detalhes
confusos e complexos de programação desses componentes em um pacote easy-to-use (fácil de utilizar),
oferecendo grande vantagem a professores, estudantes e amadores interessados em sistemas físicos.

Placas Arduino são relativamente baratas em comparação com outras plataformas de microcontroladores. A
versão mais barata do módulo Arduino pode ser montada à mão, e até mesmo os módulos pré-montados
Arduino podem ser encontrados à venda no Brasil.

O ambiente de programação Arduino é fácil de usar para iniciantes, mas suficientemente flexível para
usuários avançados tirarem máximo proveito. Para os professores, é convenientemente com base no
ambiente de programação Processing, por isso os alunos ao aprenderem a programar nesse ambiente vão
estar familiarizados com a aparência e o sistema do Arduino.

Códigos-fonte abertos e extensíveis do ambiente Arduino são publicados, disponíveis para aperfeiçoamento
por programadores experientes. A linguagem pode ser expandida através de bibliotecas C++, e pessoas que
querem entender os detalhes técnicos podem fazer a mudança do Arduino para a linguagem de programação
AVR-C em que ele se baseia. Da mesma forma, você pode adicionar o código AVR-C diretamente no
Arduino seus programas se desejar.

Open source e hardware extensível, o Arduino é baseado nos microcontroladores Atmel ATMEGA8 e
ATMEGA168. Os projetos dos módulos são publicados sob a licença Creative Commons, desenvolvedores
de circuito experientes podem fazer sua própria versão do módulo, estendendo-o e melhorando. Mesmo
utilizadores mais inexperientes podem construir a versão da placa base do módulo, a fim de compreender
como ela funciona e economizar dinheiro.


                                    Ambiente de Programação
Linguagem de referência



Estrutura                     Variáveis                               Funções

setup()                       Con stan ts                             Digital I/O
loop()
                              HIGH | LOW                              pinMode()
Con trol S tru ctu res        INPUT | OUTPUT|INPUT_PULLUP             digitalWrite()
                              true | false                            digitalRead()
if                            integer constants
if...else                     floating point constants                Analog I/O
for
switch case                   Data T yp es                            analogReference()
while                                                                 analogRead()
do... while                   void                                    analogWrite() - PWM
break                         boolean
                              char                                    Advanced I/O
continue
return                        unsigned char
                                                                      tone()
goto                          byte
                                                                      noTone()
                              int
                                                                      shiftOut()
Fu rth e r S yn tax           unsigned int
                                                                      shiftIn()
                              word
; (semicolon)                                                         pulseIn()
                              long
{} (curly braces)             unsigned long
                                                                      Time
// (single line comment)      float
/* */ (multi-line comment)    double                                  millis()
#define                       string - char array                     micros()
#include                      String - object                         delay()
                              array                                   delayMicroseconds()
Ari th meti c O p e rat ors
                              Con versi on                            Math
= (assignment operator)
+ (addition)                  char()                                  min()
- (subtraction)               byte()                                  max()
* (multiplication)            int()                                   abs()
/ (division)                  word()                                  constrain()
% (modulo)                    long()                                  map()
                              float()                                 pow()
Co mp ari s on O p erators
                                                                      sqrt()
                              Vari ab l e S cop e & Q u al if i ers
== (equal to)
                                                                      Trigonometry
!= (not equal to)             variable scope
< (less than)                 static                                  sin()
> (greater than)              volatile                                cos()
<= (less than or equal to)      const           tan()
>= (greater than or equal to)
                                Uti l i ti es   Random Numbers
B ool ean O p erators
                                sizeof()        randomSeed()
&& (and)                                        random()
|| (or)
! (not)                                         Bits and Bytes

Poi n te r Ac ces s                             lowByte()
O p erators                                     highByte()
                                                bitRead()
* dereference operator                          bitWrite()
& reference operator                            bitSet()
                                                bitClear()
B i tw i s e O p erators                        bit()

& (bitwise and)                                 External Interrupts
| (bitwise or)
^ (bitwise xor)                                 attachInterrupt()
~ (bitwise not)                                 detachInterrupt()
<< (bitshift left)
>> (bitshift right)                             Interrupts

Co mp ou n d Op erato rs                        interrupts()
                                                noInterrupts()
++ (increment)
-- (decrement)                                  Communication
+= (compound addition)
                                                Serial
-= (compound subtraction)
                                                Stream
*= (compound multiplication)
/= (compound division)
                                                Leonardo Specific
&= (compound bitwise and)
|= (compound bitwise or)                        Keyboard
                                                Mouse

Arduino

  • 1.
    Arduino Arduino é umaferramenta que torna os computadores capazes de detectar e controlar elementos do mundo físico. É uma plataforma open-source de computação física baseada em um microcontrolador a bordo de uma placa simples, além de um ambiente de desenvolvimento para escrever softwares para a placa. O Arduino pode ser utilizado para desenvolver objetos autônomos ou iterativos (como um sistema de controle que necessita de acesso aos objetos do mundo físico), tomando as entradas a partir de uma variedade de sensores ou switches e controlando atuadores como LEDs, servo-motores, relés ou outros tipos de saída. Os projetos podem ser autônomos baseados na rotina escrita para o microcontrolador ou podem se comunicar com um software em execução no computador. A plataforma Arduino simplifica o processo de trabalhar com microcontroladores, alocando os detalhes confusos e complexos de programação desses componentes em um pacote easy-to-use (fácil de utilizar), oferecendo grande vantagem a professores, estudantes e amadores interessados em sistemas físicos. Placas Arduino são relativamente baratas em comparação com outras plataformas de microcontroladores. A versão mais barata do módulo Arduino pode ser montada à mão, e até mesmo os módulos pré-montados Arduino podem ser encontrados à venda no Brasil. O ambiente de programação Arduino é fácil de usar para iniciantes, mas suficientemente flexível para usuários avançados tirarem máximo proveito. Para os professores, é convenientemente com base no ambiente de programação Processing, por isso os alunos ao aprenderem a programar nesse ambiente vão estar familiarizados com a aparência e o sistema do Arduino. Códigos-fonte abertos e extensíveis do ambiente Arduino são publicados, disponíveis para aperfeiçoamento por programadores experientes. A linguagem pode ser expandida através de bibliotecas C++, e pessoas que querem entender os detalhes técnicos podem fazer a mudança do Arduino para a linguagem de programação AVR-C em que ele se baseia. Da mesma forma, você pode adicionar o código AVR-C diretamente no Arduino seus programas se desejar. Open source e hardware extensível, o Arduino é baseado nos microcontroladores Atmel ATMEGA8 e ATMEGA168. Os projetos dos módulos são publicados sob a licença Creative Commons, desenvolvedores
  • 2.
    de circuito experientespodem fazer sua própria versão do módulo, estendendo-o e melhorando. Mesmo utilizadores mais inexperientes podem construir a versão da placa base do módulo, a fim de compreender como ela funciona e economizar dinheiro. Ambiente de Programação
  • 3.
    Linguagem de referência Estrutura Variáveis Funções setup() Con stan ts Digital I/O loop() HIGH | LOW pinMode() Con trol S tru ctu res INPUT | OUTPUT|INPUT_PULLUP digitalWrite() true | false digitalRead() if integer constants if...else floating point constants Analog I/O for switch case Data T yp es analogReference() while analogRead() do... while void analogWrite() - PWM break boolean char Advanced I/O continue return unsigned char tone() goto byte noTone() int shiftOut() Fu rth e r S yn tax unsigned int shiftIn() word ; (semicolon) pulseIn() long {} (curly braces) unsigned long Time // (single line comment) float /* */ (multi-line comment) double millis() #define string - char array micros() #include String - object delay() array delayMicroseconds() Ari th meti c O p e rat ors Con versi on Math = (assignment operator) + (addition) char() min() - (subtraction) byte() max() * (multiplication) int() abs() / (division) word() constrain() % (modulo) long() map() float() pow() Co mp ari s on O p erators sqrt() Vari ab l e S cop e & Q u al if i ers == (equal to) Trigonometry != (not equal to) variable scope < (less than) static sin() > (greater than) volatile cos()
  • 4.
    <= (less thanor equal to) const tan() >= (greater than or equal to) Uti l i ti es Random Numbers B ool ean O p erators sizeof() randomSeed() && (and) random() || (or) ! (not) Bits and Bytes Poi n te r Ac ces s lowByte() O p erators highByte() bitRead() * dereference operator bitWrite() & reference operator bitSet() bitClear() B i tw i s e O p erators bit() & (bitwise and) External Interrupts | (bitwise or) ^ (bitwise xor) attachInterrupt() ~ (bitwise not) detachInterrupt() << (bitshift left) >> (bitshift right) Interrupts Co mp ou n d Op erato rs interrupts() noInterrupts() ++ (increment) -- (decrement) Communication += (compound addition) Serial -= (compound subtraction) Stream *= (compound multiplication) /= (compound division) Leonardo Specific &= (compound bitwise and) |= (compound bitwise or) Keyboard Mouse