Menu

Robo Infravermelho

/*

Conforme o controle os códigos mudam, teste antes.

Exemplo:
Repetição FFFFFFFF
Liga/Desliga 1FE48B7
A 1FE807F
B 1FE40BF
C 1FEC03F
D 1FE20DF
E 1FE609F
Seta_para_Cima 1FEA05F
Seta_paraEsquerda 1FEE01F
Seta_paraDireita 1FE906F
Seta_para_Baixo 1FED827
OK 1FE10EF
Voltar 1FE50AF
Volume+ 1FEF807
Volume- 1FE708F
Tocar/pausa 1FE30CF
SemSom 1FEB04F

 

NEC

Para frente FF18E7

Para trás FF4AB5

Para direita FF5AA5

Para esquerda FF10EF

OK FF38C7

*/

#include “U8glib.h”
#include <BittyBuggy.h>
#include <IRremote.h>

U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE);

#define robo_width 128
#define robo_height 64
SoftwareSerial conexao(2, 3);
BittyBuggy carro(&conexao);
int pinoSensor = 6;
IRrecv infraVermelho(pinoSensor);
decode_results resultado;

static unsigned char robo_bits[] U8G_PROGMEM = {

0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x4A, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x00, 0x90, 0x3F, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x04, 0x00,
0xFA, 0x7F, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xB8, 0xFE, 0xFF, 0x1F, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDA, 0x2F, 0x43, 0xE6, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xA2,
0xA0, 0x54, 0x92, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x08, 0x00, 0x44, 0x00, 0x20, 0x75, 0x65, 0x1E, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x04, 0x40, 0x00, 0x00, 0x00, 0x80, 0xAE, 0x35,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x06, 0x00, 0x00,
0x01, 0x02, 0x78, 0x79, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x81, 0x24, 0x45, 0x69, 0xD9, 0xE3, 0xFF, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x81, 0x10, 0x00, 0x00, 0x00, 0x00, 0x9E, 0xFF,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x41, 0x08, 0x00, 0x00,
0x00, 0x00, 0x70, 0xF7, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E,
0x61, 0x42, 0x00, 0x00, 0x00, 0x42, 0xE5, 0xFF, 0x60, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x05, 0x63, 0x02, 0x14, 0x00, 0x40, 0xA8, 0xE0, 0x7F,
0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8F, 0x33, 0x01, 0x1E, 0x00,
0x90, 0xD9, 0xE8, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5F,
0x63, 0x03, 0xC0, 0x80, 0x00, 0x58, 0xE5, 0xFF, 0xF5, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xAF, 0x6E, 0x05, 0x01, 0x08, 0x22, 0xAA, 0xF8, 0xFF,
0xFD, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDE, 0xDF, 0x2A, 0x00, 0x00,
0x00, 0x00, 0xFE, 0xFF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8,
0xEF, 0xAB, 0x03, 0x29, 0x52, 0xF4, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xE0, 0x3F, 0xFF, 0xFD, 0xEF, 0xFF, 0xFF, 0xFF, 0xFF,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xBE, 0xEE, 0xF7,
0xFF, 0xFF, 0xFF, 0x13, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xFB, 0x7F, 0xFF, 0xEF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xDF, 0xFF,
0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0xFC, 0xFF, 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD8, 0x1F, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9A,
0x3F, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x20, 0x02, 0xF8, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x40, 0x50, 0x00, 0x80, 0x47, 0xFD, 0x0F, 0x02,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x18, 0xA0, 0x6A,
0xFB, 0x7F, 0x8F, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xE0, 0x95, 0x06, 0xA4, 0xFD, 0xFF, 0xDF, 0x0E, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xF0, 0x9F, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x17, 0xF4, 0xFF,
0xFF, 0xFF, 0xEF, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
0xFF, 0x21, 0x00, 0xE4, 0xFF, 0xFF, 0x07, 0xFF, 0x01, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0xE0, 0x3F, 0x40, 0x04, 0x12, 0xF6, 0xFF, 0x03, 0xFC,
0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x0F, 0x00, 0xD8, 0xFF,
0xFF, 0x5F, 0x01, 0xF8, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xFC,
0x01, 0x00, 0x00, 0xE2, 0x7F, 0x00, 0x00, 0xC0, 0x5F, 0x04, 0x00, 0x00,
0x00, 0x00, 0x20, 0xFA, 0x03, 0x00, 0x00, 0xD2, 0x7F, 0x00, 0x00, 0x80,
0x3B, 0x04, 0x00, 0x00, 0x00, 0x00, 0x30, 0xF5, 0x01, 0x00, 0x00, 0xE2,
0xFF, 0x01, 0x00, 0xC0, 0x5F, 0x05, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00,
0x1A, 0x00, 0x00, 0xDE, 0xFF, 0x07, 0x00, 0x18, 0x01, 0x40, 0x00, 0x00,
0x00, 0x00, 0x80, 0x8E, 0x35, 0x00, 0x10, 0xE0, 0xFF, 0x0F, 0x00, 0x2C,
0x91, 0x80, 0x00, 0x00, 0x00, 0x00, 0x41, 0x38, 0x31, 0x00, 0x10, 0x96,
0xFF, 0x0F, 0x00, 0x9C, 0x3C, 0x02, 0x00, 0x00, 0x00, 0x00, 0x21, 0x3C,
0x74, 0x00, 0x34, 0x21, 0xFF, 0x9F, 0x02, 0x9E, 0x2E, 0x86, 0x00, 0x00,
0x00, 0x00, 0x21, 0xF6, 0x7F, 0x90, 0x7F, 0xD5, 0xFF, 0x7F, 0x01, 0x7E,
0x5E, 0x84, 0x00, 0x00, 0x00, 0x00, 0x31, 0xF8, 0x7A, 0xC0, 0x7C, 0x68,
0x66, 0x7E, 0x09, 0xDE, 0x3F, 0xCC, 0x00, 0x00, 0x00, 0x00, 0x15, 0xFD,
0x7F, 0x50, 0x7E, 0x00, 0x00, 0x3E, 0x09, 0xFE, 0x9F, 0x84, 0x00, 0x00,
0x00, 0x00, 0x33, 0xFD, 0x7F, 0x90, 0x7E, 0x00, 0x00, 0x7E, 0x01, 0xFC,
0x5F, 0x88, 0x00, 0x00, 0x00, 0x00, 0x9E, 0xFE, 0x7F, 0x90, 0x7C, 0x00,
0x00, 0x3F, 0x09, 0xFE, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x40, 0x6E, 0x7A,
0xD3, 0x80, 0xFC, 0x00, 0x00, 0x7F, 0x09, 0xDF, 0x1F, 0x66, 0x02, 0x00,
0x00, 0x20, 0x63, 0x1C, 0xE2, 0x90, 0xFE, 0x00, 0x00, 0x3E, 0x01, 0x07,
0x78, 0xE6, 0x04, 0x00, 0x00, 0xC0, 0x73, 0x36, 0xF4, 0xD0, 0xFF, 0x00,
0x00, 0xFF, 0x09, 0x17, 0x3E, 0xCE, 0x03, 0x00, 0x00, 0x00, 0xFF, 0x7F,
0x00, 0xF0, 0xF1, 0x00, 0x00, 0x8F, 0x0F, 0x00, 0xFE, 0xFF, 0x00, 0x00,
0x00, 0x00, 0x20, 0x3C, 0x00, 0x70, 0xD0, 0x00, 0x00, 0x07, 0x0F, 0x00,
0x5C, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x7F, 0x00,
0x00, 0xFE, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xC0, 0x5B, 0x00, 0x00, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x03, 0xC0, 0x03, 0x10, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x5A, 0x07,
0xE0, 0x1A, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x01, 0xA0, 0x0F, 0xF0, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0xFA, 0x1F, 0xF0, 0x5F, 0x9C, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xA5, 0xFE, 0x0F,
0xF8, 0xFF, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x40, 0x04, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, };

void setup() {
u8g.setColorIndex(1);
Serial.begin(57600);
carro.begin();
infraVermelho.enableIRIn();
}

void loop() {
u8g.firstPage();
do {
u8g.drawXBMP( 0, 0, robo_width, robo_height, robo_bits);
if (infraVermelho.decode(&resultado)) {
switch (resultado.value){
case 0xFF18E7:
Serial.println(“Tecla Seta para cima”);
carro.setSpeed(0, 0);
delay(100);
carro.setSpeed(50, 50);
break;
case 0xFF10EF:
Serial.println(“Tecla Seta para esquerda”);
carro.setSpeed(0, 0);
delay(100);
carro.setSpeed(50, 100);
break;
case 0xFF5AA5:
Serial.println(“Tecla Seta para direita”);
carro.setSpeed(0, 0);
delay(100);
carro.setSpeed(100, 50);
break;
case 0xFF4AB5:
Serial.println(“Tecla Seta para baixo”);
carro.setSpeed(0, 0);
delay(100);
carro.setSpeed(-50, -50);
break;
case 0xFF38C7:
Serial.println(“Tecla OK”);
carro.setSpeed(0, 0);
break;

}
infraVermelho.resume();
}
}
while(u8g.nextPage());
}

Universidade Federal do Paraná
TI Aplicada – pesquisa e extensão

Av Pref Lothário Meissner, 632
80210-170 | Curitiba |
simao@ufpr.br
(41) 3360-4420
Universidade Federal do Paraná
TI Aplicada – pesquisa e extensão

Av Pref Lothário Meissner, 632
80210-170 | Curitiba |
simao@ufpr.br
(41) 3360-4420

UFPR nas Redes Sociais


UFPR nas Redes Sociais