//******************************************************************************************************************* // Setup //******************************************************************************************************************* void setup() { // Rows Digital pin 0 to 7 // pinMode(0, OUTPUT); // Not used // pinMode(1, OUTPUT); // Not used // User interface Button Pins /* digitalWrite(2, HIGH); // Write a high to pin, acts as weak pull-up digitalWrite(3, HIGH); pinMode(2, INPUT); pinMode(3, INPUT); */ #if ARDUINO >= 101 pinMode(2, INPUT_PULLUP); pinMode(3, INPUT_PULLUP); digitalWrite(2, HIGH); // Write a high to pin, acts as weak pull-up digitalWrite(3, HIGH); #else digitalWrite(2, HIGH); // Write a high to pin, acts as weak pull-up digitalWrite(3, HIGH); pinMode(2, INPUT); pinMode(3, INPUT); #endif // Column address bits 4 to 16 decode pinMode(4, OUTPUT); // DeMux A pinMode(5, OUTPUT); // DeMux B pinMode(6, OUTPUT); // DeMux C pinMode(7, OUTPUT); // DeMux D /* // pinMode(8, OUTPUT); // ROW 1 pinMode(9, OUTPUT); // ROW 2 pinMode(10, OUTPUT); // ROW 3 pinMode(11, OUTPUT); // ROW 4 pinMode(12, OUTPUT); // ROW 5 pinMode(13, OUTPUT); // ROW 6 // Make these pins outputs (Was the crystal Pins) B6 = Row 7, B7 = demux select DDRB = (1<