Ardubox, criada pelo prof. César Bastos, é uma caixa com componentes eletrônicos para estudo de códigos e projetos de Robótica.
Códigos testados na Ardubox
Alarme com medidor de distância
/* Código para a Ardubox
* Medidor de distância com sensor Ultrassom
*
*/
#include "Ultrasonic.h"
Ultrasonic ultrasonic(13,12); // ultrassom nas portas 13 e 12
const int led_RGB_RED = 16;
const int led_RGB_GREEN = 17;
const int buzzer = 8;
long microsec = 0;
float distanciaCM = 0;
void setup() {
Serial.begin(9600);
pinMode(led_RGB_GREEN,OUTPUT);
pinMode(led_RGB_RED,OUTPUT);
pinMode(buzzer,OUTPUT);
}
void loop() {
//Lendo o sensor
microsec = ultrasonic.timing();
//Convertendo a distância em CM
distanciaCM = ultrasonic.convert(microsec, Ultrasonic::CM);
ledDistancia();
Serial.print(distanciaCM);
Serial.println(" cm");
delay(250);
}
void ledDistancia() {
digitalWrite(led_RGB_GREEN,LOW);
digitalWrite(led_RGB_RED,LOW);
noTone(buzzer);
if (distanciaCM > 30) {
digitalWrite(led_RGB_GREEN,HIGH);
digitalWrite(led_RGB_RED,LOW);
noTone(buzzer);
}
if (distanciaCM < 30) {
digitalWrite(led_RGB_RED,HIGH);
digitalWrite(led_RGB_GREEN,LOW);
tone(buzzer,1300);
}
}
Display de 7 segmentos
/* Código para a Ardubox
* Display de 7 segmentos
*
*/
int roxo = 33;
int branco_e_vermelho = 35;
int branco = 37;
int laranja = 39;
int branco_e_azul = 41;
int verde = 43;
int azul = 45;
void setup() {
pinMode(roxo, OUTPUT);
pinMode(branco_e_vermelho, OUTPUT);
pinMode(branco, OUTPUT);
pinMode(laranja, OUTPUT);
pinMode(branco_e_azul, OUTPUT);
pinMode(verde, OUTPUT);
pinMode(azul, OUTPUT);
}
void loop() {
/////////////////////// DESLIGA TUDO
digitalWrite(roxo, LOW);
digitalWrite(branco_e_vermelho, LOW);
digitalWrite(branco, LOW);
digitalWrite(laranja, LOW);
digitalWrite(branco_e_azul, LOW);
digitalWrite(verde, LOW);
digitalWrite(azul, LOW);
delay(1000);
/////////////////////// NÚMERO 9
digitalWrite(roxo, HIGH);
digitalWrite(branco_e_vermelho, HIGH);
digitalWrite(branco, HIGH);
digitalWrite(laranja, HIGH);
digitalWrite(verde, HIGH);
digitalWrite(azul, HIGH);
delay(1000);
digitalWrite(roxo, LOW);
digitalWrite(branco_e_vermelho, LOW);
digitalWrite(branco, LOW);
digitalWrite(laranja, LOW);
digitalWrite(verde, LOW);
digitalWrite(azul, LOW);
/////////////////////// NÚMERO 8
digitalWrite(roxo, HIGH);
digitalWrite(branco_e_vermelho, HIGH);
digitalWrite(branco, HIGH);
digitalWrite(laranja, HIGH);
digitalWrite(branco_e_azul, HIGH);
digitalWrite(verde, HIGH);
digitalWrite(azul, HIGH);
delay(1000);
digitalWrite(roxo, LOW);
digitalWrite(branco_e_vermelho, LOW);
digitalWrite(branco, LOW);
digitalWrite(laranja, LOW);
digitalWrite(branco_e_azul, LOW);
digitalWrite(verde, LOW);
digitalWrite(azul, LOW);
/////////////////////// NÚMERO 7
digitalWrite(branco, HIGH);
digitalWrite(laranja, HIGH);
digitalWrite(azul, HIGH);
delay(1000);
digitalWrite(laranja, LOW);
digitalWrite(azul, LOW);
digitalWrite(branco, LOW);
/////////////////////// NÚMERO 6
digitalWrite(roxo, HIGH);
digitalWrite(branco, HIGH);
digitalWrite(branco_e_vermelho, HIGH);
digitalWrite(branco_e_azul, HIGH);
digitalWrite(verde, HIGH);
digitalWrite(azul, HIGH);
delay(1000);
digitalWrite(roxo, LOW);
digitalWrite(branco, LOW);
digitalWrite(branco_e_vermelho, LOW);
digitalWrite(branco_e_azul, LOW);
digitalWrite(verde, LOW);
digitalWrite(azul, LOW);
/////////////////////// NÚMERO 5
digitalWrite(branco_e_vermelho, HIGH);
digitalWrite(roxo, HIGH);
digitalWrite(branco, HIGH);
digitalWrite(verde, HIGH);
digitalWrite(azul, HIGH);
delay(1000);
digitalWrite(branco_e_vermelho, LOW);
digitalWrite(roxo, LOW);
digitalWrite(branco, LOW);
digitalWrite(verde, LOW);
digitalWrite(azul, LOW);
////////////////////// NÚMERO 4
digitalWrite(branco_e_vermelho, HIGH);
digitalWrite(roxo, HIGH);
digitalWrite(laranja, HIGH);
digitalWrite(azul, HIGH);
delay(1000);
digitalWrite(branco_e_vermelho, LOW);
digitalWrite(roxo, LOW);
digitalWrite(laranja, LOW);
digitalWrite(azul, LOW);
////////////////////// NÚMERO 3
digitalWrite(branco, HIGH);
digitalWrite(laranja, HIGH);
digitalWrite(roxo, HIGH);
digitalWrite(verde, HIGH);
digitalWrite(azul, HIGH);
delay(1000);
digitalWrite(branco, LOW);
digitalWrite(laranja, LOW);
digitalWrite(roxo, LOW);
digitalWrite(verde, LOW);
digitalWrite(azul, LOW);
////////////////////// NÚMERO 2
digitalWrite(branco, HIGH);
digitalWrite(laranja, HIGH);
digitalWrite(roxo, HIGH);
digitalWrite(branco_e_azul, HIGH);
digitalWrite(verde, HIGH);
delay(1000);
digitalWrite(branco, LOW);
digitalWrite(laranja, LOW);
digitalWrite(roxo, LOW);
digitalWrite(branco_e_azul, LOW);
digitalWrite(verde, LOW);
///////////////// NÚMERO 1
digitalWrite(laranja, HIGH);
digitalWrite(azul, HIGH);
delay(1000);
digitalWrite(laranja, LOW);
digitalWrite(azul, LOW);
/////////// NÚMERO 0
digitalWrite(branco_e_vermelho, HIGH);
digitalWrite(branco, HIGH);
digitalWrite(laranja, HIGH);
digitalWrite(branco_e_azul, HIGH);
digitalWrite(verde, HIGH);
digitalWrite(azul, HIGH);
delay(1000);
digitalWrite(branco_e_vermelho, LOW);
digitalWrite(branco, LOW);
digitalWrite(laranja, LOW);
digitalWrite(branco_e_azul, LOW);
digitalWrite(verde, LOW);
digitalWrite(azul, LOW);
}