Hi,
following is the Piece of Code:
char incomingByte = 0;
int psett[16]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
int stat_p[16]={1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1};
int chars[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
int ardpins[16]={35,37,39,41,43,45,47,49,34,36,38,40,42,44,46,48};
int sett[16];
int i=0;
int d=0;
void setup()
{
// put your setup code here, to run once:
Serial.begin(9600);
for(i=2;i<=12;i++)
{
analogWrite(i,0);
}
for(i=34;i<=49;i++)
{
analogWrite(i,255);
}
}
void loop()
{
delay(100);
if (Serial.available() > 0)
{
incomingByte = Serial.read();
//Serial.println(incomingByte);
switch(incomingByte)
{
case 'O':
analogWrite(7,255);
analogWrite(5,255);
delay(100);
analogWrite(7,0);
analogWrite(5,0);
break;
case 'X':
analogWrite(6,255);
analogWrite(4,255);
delay(100);
analogWrite(6,0);
analogWrite(4,0);
break;
case 'K':
analogWrite(9,255);
delay(100);
analogWrite(9,0);
break;
case 'k':
analogWrite(8,255);
delay(100);
analogWrite(8,0);
break;
case 'L':
analogWrite(3,255);
delay(100);
analogWrite(3,0);
break;
case 'l':
analogWrite(2,255);
delay(100);
analogWrite(2,0);
break;
case 'M':
analogWrite(7,255);
delay(100);
analogWrite(7,0);
break;
case 'm':
analogWrite(6,255);
delay(100);
analogWrite(6,0);
break;
case 'N':
analogWrite(5,255);
delay(100);
analogWrite(5,0);
break;
case 'n':
analogWrite(4,255);
delay(100);
analogWrite(4,0);
break;
case 'c':
Serial.println("Arduino Communicating");
break;
case 'v':
st=""
for(i=0;i<=sizeof(chars);i++)
{
}
break;
}
for(i=0;i<=sizeof(chars);i++)
{
if(incomingByte==chars[i])
{
if(psett[i]==0)
{
analogWrite(ardpins[i],0);
sett[i]=1;
}
if(psett[i]==1)
{
analogWrite(ardpins[i],255);
sett[i]=0;
}
break;
}
}
for(i=0;i<=sizeof(psett);i++)
{
psett[i] = sett[i];
}
}
}
After flashing this in serial terminal, when i enter "v", I am not getting the output and I had to enter is twice. Also if I uncomment "Serial.println(incomingByte);" line Code is executing weirdly.
Board: Arduino Mega
Version of Arduino Software: 1.8.5
Please help
Thank you