Offline
Newbie
Karma: 0
Posts: 8
|
 |
« Reply #2 on: February 04, 2011, 05:02:14 pm » |
ok, so would my code look something like this:
int reading;
void setup() { Serial.begin(9600); pinMode(0,INPUT); pinMode(1,INPUT); pinMode(2,INPUT); pinMode(3,INPUT); pinMode(4,INPUT); pinMode(5,INPUT); pinMode(6,INPUT); pinMode(7,OUTPUT); } void loop() { digitalWrite(7,HIGH); bitWrite(reading,0,digitalRead(0)); if (bitRead(reading,0) == 0) { Serial.println("up"); delay(1000); } bitWrite(reading,1,digitalRead(1)); if (bitRead(reading,1) == 0) { Serial.println("down"); delay(1000); } bitWrite(reading,2,digitalRead(2)); if (bitRead(reading,2) == 0) { Serial.println("left"); delay(1000); } bitWrite(reading,3,digitalRead(3)); if (bitRead(reading,3) == 0) { Serial.println("right"); delay(1000); } bitWrite(reading,4,digitalRead(4)); if (bitRead(reading,4) == 0) { Serial.println("a"); delay(1000); } bitWrite(reading,5,digitalRead(5)); if (bitRead(reading,5) == 0) { Serial.println("start"); delay(1000); } digitalWrite(7,LOW); bitWrite(reading,0,digitalRead(0)); if (bitRead(reading,0) == 0) { Serial.println("up"); delay(1000); } bitWrite(reading,1,digitalRead(1)); if (bitRead(reading,1) == 0) { Serial.println("down"); delay(1000); } bitWrite(reading,2,digitalRead(2)); if (bitRead(reading,2) == 0) { Serial.println("left"); delay(1000); } bitWrite(reading,3,digitalRead(3)); if (bitRead(reading,3) == 0) { Serial.println("right"); delay(1000); } bitWrite(reading,4,digitalRead(4)); if (bitRead(reading,4) == 0) { Serial.println("b"); delay(1000); } bitWrite(reading,5,digitalRead(5)); if (bitRead(reading,5) == 0) { Serial.println("c"); delay(1000); } }
still, when i press nothing it read right and left and then when i press other buttons it never reads the right thing or just doesn't read at all. i will recheck my wiring but i think it is right. this probably has something to do with that switching pin, even though i thought i had accounted for that in the code, maybe not. thanks for your help.
|