Essa idéia desse post surgiu no último ET (encontro técnico) do grupo ArduInRio. Eu levei o Program-Me para mostrar pro pessoal, e para não perder muito tempo eu separei alguns exemplos de código que eu já tinha testado. Aí eu reparei que muitos dos exemplos só usavam o Program-Me. Alguns exemplos usavam a placa com um potenciômetro, ou um servo, etc.. Mas na maioria dos exemplos simples que eu mostrei nem precisei de protoboard.
Então vou demonstrar com alguns exemplos do site oficial do arduino podem ser feitos usando o Program-Me, e mais nada (só alterando alguma configuração, se necessário).
Então vamos a eles.
Digital I/O
- Blink (http://arduino.cc/en/Tutorial/Blink)
Nada a fazer. Basta fazer o upload e executar.
- Blink without Delay (http://www.arduino.cc/en/Tutorial/BlinkWithoutDelay)
Nada a fazer. Upload e Run.
- Button (http://www.arduino.cc/en/Tutorial/Button)
Basta alterar a linha abaixo, de:
const int buttonPin = 2; // the number of the pushbutton pin
para:
const int buttonPin = 0; // the number of the pushbutton pin
Obs: O Program-Me já possui um botão extra. Ele está na porta digital 0.
- Button State Change Detection (http://arduino.cc/en/Tutorial/ButtonStateChange)
Mesma alteração do exemplo Button.
- Debounce (http://www.arduino.cc/en/Tutorial/Debounce)
Mesma alteração do exemplo Button.
- Tone (http://arduino.cc/en/Tutorial/Tone)
Alterar a linha abaixo de:
tone(8, melody[thisNote],noteDuration);
para:
tone(12, melody[thisNote],noteDuration);
Obs: O Program-Me possui um speaker na porta digital 12.
- Pitch follower (http://arduino.cc/en/Tutorial/Tone2)
Alterar a linha abaixo, de:
tone(8, thisPitch, 10);
para:
tone(12, thisPitch, 10);
Analog I/O
- Calibration (http://arduino.cc/en/Tutorial/Calibration)
Alterar as linhas abaixo, de:
const int sensorPin = 2; // pin that the sensor is attached to const int ledPin = 9; // pin that the LED is attached to
para:
const int sensorPin = 5; // pin that the sensor is attached to const int ledPin = 6;
- Fading (http://arduino.cc/en/Tutorial/Fading)
Alterar a linha abaixo, de:
int ledPin = 9;
para:
int ledPin = 6;
Control Structures
- For Loop (http://arduino.cc/en/Tutorial/ForLoop)
Nada a fazer. Upload e Run.
Obs: Na verdade o Program-Me já possúi 9 LEDs, mas não na ordem exata usada no exemplo. A ordem dos LEDs é: [14, 1, 2, 3, 4, 5, 8, 6, 13]. Mas dá pra ter uma idéia do que o exemplo quer demosntrar
- Arrays (http://arduino.cc/en/Tutorial/Array)
Nada a fazer. Upload e Run.
- While Loop (http://arduino.cc/en/Tutorial/WhileLoop)
Alterar as linhas abaixo, de:
const int sensorPin = 2; const int ledPin = 9; const int indicatorLedPin = 13; const int buttonPin = 2;
para:
const int sensorPin = 5; const int ledPin = 3; const int indicatorLedPin = 13; const int buttonPin = 0;
- Switch Case (http://arduino.cc/en/Tutorial/SwitchCase)
Alterar a linha abaixo, de:
int sensorReading = analogRead(0);
para:
int sensorReading = analogRead(5);
- Switch Case 2 (http://arduino.cc/en/Tutorial/SwitchCase2)
Nada a fazer. Upload e Run.
Conclusão
Bom estes são exemplos básicos, mas mostram bem o que pode ser feito com essa “plaquinha”. Existem outras coisas que podem ser feitas, como por exemplo aumentar ou diminuir o número de LEDs acesos de a cordo com a quantidade de luz captada, etc.. Aí vai da imaginação de cada um.
Alguns projetos simples também podem ser feitos até mesmo sem uma protoboard. Por exemplo ligar um potenciômetro e um servo. Mas isso fica para outro post.
Abs.

