Something must be wrong..


ok wrote bit of code , serial output either c or g when move pins high , low. if give me idea of need fix appreciated.
code: [select]

int buttonone = 3;
int buttontwo = 4;
int buttonthree = 5;
int buttonfour = 6;
int ledone = 7;
int ledtwo = 8;
int ledthree = 9;
// setup initializes serial , button pin

void setup()
{
 serial.begin(9600);      // opens serial port, sets data rate 9600 bps
 pinmode(ledone, output);
 pinmode(ledtwo, output);
 pinmode(ledthree, output);
 pinmode(buttonone, input);
 pinmode(buttontwo, input);
 pinmode(buttonthree, input);
}

// loop checks button pin each time,
// , send serial if pressed
void loop()
{
 if (digitalread(buttonone) == low, digitalread(buttontwo) == low, digitalread(buttonthree) == low, digitalread(buttonfour) == low)
   serial.print("c"); // c
 else if (digitalread(buttonone) == high, digitalread(buttontwo) == high, digitalread(buttonthree) == high, digitalread(buttonfour) == low)
   serial.print("c#"); // c#  
 else if (digitalread(buttonone) == high, digitalread(buttontwo) == low, digitalread(buttonthree) == high, digitalread(buttonfour) == low)
    serial.print("d"); // d
 else if (digitalread(buttonone) == low, digitalread(buttontwo) == high, digitalread(buttonthree) == high, digitalread(buttonfour) == low)
    serial.print("d#"); // d#  
 else if (digitalread(buttonone) == high, digitalread(buttontwo) == high, digitalread(buttonthree) == low, digitalread(buttonfour) == low)
   serial.print("e"); // e  
 else if (digitalread(buttonone) == high, digitalread(buttontwo) == low, digitalread(buttonthree) == low, digitalread(buttonfour) == low)
    serial.print("f"); // f
 else if (digitalread(buttonone) == low, digitalread(buttontwo) == high, digitalread(buttonthree) == low, digitalread(buttonfour) == low)
    serial.print("f#"); // f#  
 else if (digitalread(buttonone) == high, digitalread(buttontwo) == low, digitalread(buttonthree) == high, digitalread(buttonfour) == high)
    serial.print("g"); // g
 else if (digitalread(buttonone) == low, digitalread(buttontwo) == high, digitalread(buttonthree) == high, digitalread(buttonfour) == high)
    serial.print("g#"); // g#
 else if (digitalread(buttonone) == high, digitalread(buttontwo) == high, digitalread(buttonthree) == low, digitalread(buttonfour) == high)
    serial.print("a"); // a
 else if (digitalread(buttonone) == high, digitalread(buttontwo) == low, digitalread(buttonthree) == low, digitalread(buttonfour) == high)
    serial.print("a#"); // a#  
 else if (digitalread(buttonone) == low, digitalread(buttontwo) == high, digitalread(buttonthree) == low, digitalread(buttonfour) == high)
    serial.print("b"); // b
 else if (digitalread(buttonone) == low, digitalread(buttontwo) == low, digitalread(buttonthree) == low, digitalread(buttonfour) == high)
   serial.print("chigh"); // c
 else if (digitalread(buttonone) == high, digitalread(buttontwo) == high, digitalread(buttonthree) == high, digitalread(buttonfour) == high)
   serial.print("c#ghigh"); // c#  

 delay(1000);
}

good evening (morning?) z,

your problem in expressions like

if (digitalread(buttonone) == high, digitalread(buttontwo) == high, digitalread(buttonthree) == high, digitalread(buttonfour) == low)

which should instead read

if (digitalread(buttonone) == high && digitalread(buttontwo) == high && digitalread(buttonthree) == high && digitalread(buttonfour) == low)

(your expression unfortunately legal use of c/c++ "comma" operator.  the value of "a,b" "b".)

mikal


Arduino Forum > Forum 2005-2010 (read only) > Software > Syntax & Programs > Something must be wrong..


arduino

Comments

Popular posts from this blog

CAN'T INSTALL MAMBELFISH 1.5 FROM DIRECTORY - Joomla! Forum - community, help and support

error: expected initializer before 'void'

CPU load monitoring using GPIO and leds - Raspberry Pi Forums