hello
i’ve got problem with my program
im using arduino mega. when i use bit voicer and irremote the ir led is blink so slow that tv cannot get right signal to turn off. when i use only irremote everything is ok. So i thinking that bitvoicer is slowing down irremote or maybe my program is wrong. i tried different timer in irremote library but it isn’t work.
can enyone help me in this??
CODE
#include <IRremote.h>
#include <IRremoteInt.h>
IRsend irsend;
#include <BitVoicer11.h>
//właczanie bita
BitVoicerSerial bvSerial = BitVoicerSerial();
byte dataType = 4;
int OutPutPins = {10,12,11,8};
int pinCount = 4;
int wl = 0 ;
void setup() {
Serial.begin(115200);
for(int activePin =0; activePin <pinCount; activePin++){
pinMode(OutPutPins[activePin],OUTPUT);
}
pinMode(7, OUTPUT);
pinMode(9, OUTPUT);
digitalWrite(7,HIGH);// put your setup code here, to run once:
pinMode(5,INPUT_PULLUP);
}
void loop() {
}
}
void serialEvent()
{
dataType = bvSerial.getData();
//Changes the value of sampleTest if the received data was
//the start/stop sampling command
if (dataType == BV_COMMAND)
//Signals BitVoicer’s Speech Recognition Engine to start
//listening to audio streams after the engineRunning status
//was received
if (dataType == BV_STATUS && bvSerial.engineRunning == true)
bvSerial.startStopListening();
if (dataType == BV_INT)
{
int pinNumber = bvSerial.intData;
digitalWrite(pinNumber, !digitalRead(pinNumber));
delay(50);
}
// tutaj wartości string czyli pisane
if(dataType == BV_STR)
{
if (bvSerial.strData == “okej”)
digitalWrite(7,LOW);
delay(500);
digitalWrite(7,HIGH);
if (bvSerial.strData == “klas”)
digitalWrite(9,HIGH);
delay(1);
if (bvSerial.strData == “klass”)
digitalWrite(9,LOW);
if (bvSerial.strData == “komplet”)
irsend.sendNEC(0x5EA100FE, 32);
delay(400);
digitalWrite(7,LOW);
delay(500);
digitalWrite(7,HIGH);
irsend.sendNEC(0x20DF10EF, 32);
if (bvSerial.strData == “wiez”)
irsend.sendNEC(0x7E8154AB, 32);
if (bvSerial.strData == “tv”)
irsend.sendNEC(0x20DF10EF, 32);
if (bvSerial.strData == “klim”);
irsend.sendNEC(0x8F758A7, 32);
if (bvSerial.strData == “h1”)
irsend.sendNEC(0x5EA1E21C,32);
if (bvSerial.strData == “h2”)
irsend.sendNEC(0x5EA152AC, 32);
if (bvSerial.strData == “h3”)
irsend.sendNEC(0x5EA1B24C,32);
if (bvSerial.strData == “h4”)
irsend.sendNEC(0x5EA10AF4,32);
if (bvSerial.strData == “mut”)
irsend.sendNEC(0x5EA138C7,32);
if (bvSerial.strData == “rad”)
irsend.sendNEC(0x5EA1609,32);
if (bvSerial.strData == “en”)
irsend.sendNEC(0x5EA1C03E,32);
if (bvSerial.strData == “pc”)
irsend.sendNEC(0x5EA100FE,32);
if (bvSerial.strData == “opt”)
irsend.sendNEC(0x5EA1D628,32);
delay(400);
irsend.sendNEC(0x5EA1B946,32);
delay(400);
irsend.sendNEC(0x5EA17B84,32);
delay(400);
irsend.sendNEC(0x5EA17986,32);
delay(400);
irsend.sendNEC(0x5EA155AA,32);
delay(400);
irsend.sendNEC(0x5EA155AA,32);
if (bvSerial.strData == “hd”)
irsend.sendNEC(0x5EA1D628,32);
delay(400);
irsend.sendNEC(0x5EA1B946,32);
delay(400);
irsend.sendNEC(0x5EA17B84,32);
delay(400);
irsend.sendNEC(0x5EA1F906,32);
delay(400);
irsend.sendNEC(0x5EA17B84,32);
delay(400);
irsend.sendNEC(0x5EA17B84,32);
if (bvSerial.strData == “opc”)
irsend.sendNEC(0x5EA1D628,32);
if (bvSerial.strData == “cof”)
irsend.sendNEC(0x5EA155AA,32);
delay(200);
irsend.sendNEC(0x20DF14EB,32);
if (bvSerial.strData == “wyj”)
irsend.sendNEC(0x20DFDA25,32);
if (bvSerial.strData == “set”)
irsend.sendNEC(0x5EA121DE,32);
if (bvSerial.strData == “ok”)
irsend.sendNEC(0x5EA17B84,32);
delay(100);
irsend.sendNEC(0x20DF22DD,32);
if (bvSerial.strData == “dir”)
irsend.sendNEC(0x5EA1BB44,32);
if (bvSerial.strData == “pros”)
irsend.sendNEC(0x5EA16A95,32);
if (bvSerial.strData == “cis”)
irsend.sendNEC(0x5EA1D827,32);
if (bvSerial.strData == “dol”)
irsend.sendNEC(0x5EA139C6,32);
delay(100);
irsend.sendNEC(0x20DF827D,32);
if (bvSerial.strData == “gora”)
irsend.sendNEC(0x5EA1B946,32);
delay(100);
irsend.sendNEC(0x20DF02FD,32);
if (bvSerial.strData == “pr”)
irsend.sendNEC(0x5EA17986,32);
delay(100);
irsend.sendNEC(0x20DF609F,32);
if (bvSerial.strData == “lew”)
irsend.sendNEC(0x5EA1F906,32);
delay(100);
irsend.sendNEC(0x20DFE01F,32);
if (bvSerial.strData == “inp”)
irsend.sendNEC(0x20DFD02F,32);
if (bvSerial.strData == “tel”)
irsend.sendNEC(0x20DFD02F,32);
delay(100);
irsend.sendNEC(0x20DFD02F,32);
if (bvSerial.strData == “jeden”)
irsend.sendNEC(0x20DFD02F,32);
delay(100);
irsend.sendNEC(0x20DF22DD,32);
if (bvSerial.strData == “dwujka”)
irsend.sendNEC(0x20DF48B7,32);
delay(100);
irsend.sendNEC(0x20DF22DD,32);
if (bvSerial.strData == “trujka”)
irsend.sendNEC(0x20DFC837,32);
delay(100);
irsend.sendNEC(0x20DF22DD,32);
if (bvSerial.strData == “polsat”)
irsend.sendNEC(0x20DF28D7,32);
delay(100);
irsend.sendNEC(0x20DF22DD,32);
if (bvSerial.strData == “tvn”)
irsend.sendNEC(0x20DFA85,32);
delay(100);
irsend.sendNEC(0x20DF22DD,32);
if (bvSerial.strData == “next”)
irsend.sendNEC(0x20DF00FF,32);
if (bvSerial.strData == “prev”)
irsend.sendNEC(0x20DF807F,32);
}
}