/* The analog sensor is connected between pin A0 and pin 4 */ int row0 = A0; //first row pin int row1 = A1; //first row pin int row2 = A2; //first row pin int col0 = 4; //first column pin int col1 = 5; //first column pin int col2 = 6; //first column pin int incomingValue0 = 0; //variable to save the sensor reading int incomingValue1 = 0; //variable to save the sensor reading int incomingValue2 = 0; //variable to save the sensor reading int incomingValue3 = 0; //variable to save the sensor reading int incomingValue4 = 0; //variable to save the sensor reading int incomingValue5 = 0; //variable to save the sensor reading int incomingValue6 = 0; //variable to save the sensor reading int incomingValue7 = 0; //variable to save the sensor reading int incomingValue8 = 0; //variable to save the sensor reading void setup() { // set all rows to INPUT (high impedance): pinMode(row0, INPUT_PULLUP); pinMode(row1, INPUT_PULLUP); pinMode(row2, INPUT_PULLUP); //set the firt column as output pinMode(col0, OUTPUT); pinMode(col1, OUTPUT); pinMode(col2, OUTPUT); //open serial communication Serial.begin(9600); } void loop() { //set the col0 to low (GND) digitalWrite(col0, LOW); digitalWrite(col1, HIGH); digitalWrite(col2, HIGH); //read the three rows pins incomingValue0 = analogRead(row0); incomingValue1 = analogRead(row1); incomingValue2 = analogRead(row2); //set the col0 to low (GND) digitalWrite(col0, HIGH); digitalWrite(col1, LOW); digitalWrite(col2, HIGH); incomingValue3 = analogRead(row0); incomingValue4 = analogRead(row1); incomingValue5 = analogRead(row2); //set the col0 to low (GND) digitalWrite(col0, HIGH); digitalWrite(col1, HIGH); digitalWrite(col2, LOW); incomingValue6 = analogRead(row0); incomingValue7 = analogRead(row1); incomingValue8 = analogRead(row2); // Print the incoming values of the grid: Serial.print(incomingValue0); Serial.print("\t"); Serial.print(incomingValue1); Serial.print("\t"); Serial.print(incomingValue2); Serial.print("\t"); Serial.print(incomingValue3); Serial.print("\t"); Serial.print(incomingValue4); Serial.print("\t"); Serial.print(incomingValue5); Serial.print("\t"); Serial.print(incomingValue6); Serial.print("\t"); Serial.print(incomingValue7); Serial.print("\t"); Serial.println(incomingValue8); delay(10); //wait millisecond }