/* * Charlieplexing code for this board: * http://archive.fabacademy.org/2018/labs/fablabamsterdam/students/klein-xavier/pages/week11/file/ledboard.zip * WTFPL Xavier Klein */ const int LED_1 = 0; //LED row 1 const int LED_2 = 1; //LED row 2 const int LED_3 = 2; //LED row 3 void setup() { } void loop() { //turn on LED 1 pinMode(LED_1, OUTPUT); //row 1 digitalWrite(LED_1, LOW); pinMode(LED_2, OUTPUT); //row 2 digitalWrite(LED_2, HIGH); pinMode(LED_3, INPUT); //row 3 digitalWrite(LED_3, LOW); delay(100); //turn on LED L2 pinMode(LED_1, INPUT); //row 1 digitalWrite(LED_1, LOW); pinMode(LED_2, OUTPUT); //row 2 digitalWrite(LED_2, LOW); pinMode(LED_3, OUTPUT); //row 3 digitalWrite(LED_3, HIGH); delay(100); //turn on LED L3 pinMode(LED_1, OUTPUT); //row 1 digitalWrite(LED_1, HIGH); pinMode(LED_2, OUTPUT); //row 2 digitalWrite(LED_2, LOW); pinMode(LED_3, INPUT); //row 3 digitalWrite(LED_3, LOW); delay(100); //turn on LED L4 pinMode(LED_1, INPUT); //row 1 digitalWrite(LED_1, LOW); pinMode(LED_2, OUTPUT); //row 2 digitalWrite(LED_2, HIGH); pinMode(LED_3, OUTPUT); //row 3 digitalWrite(LED_3, LOW); delay(100); //turn on LED L5 pinMode(LED_1, OUTPUT); //row 1 digitalWrite(LED_1, LOW); pinMode(LED_2, INPUT); //row 2 digitalWrite(LED_2, LOW); pinMode(LED_3, OUTPUT); //row3 digitalWrite(LED_3, HIGH); delay(100); //turn on LED L6 pinMode(LED_1, OUTPUT); digitalWrite(LED_1, HIGH); pinMode(LED_2, INPUT); digitalWrite(LED_2, LOW); pinMode(LED_3, OUTPUT); digitalWrite(LED_3, LOW); delay(100); //turn on LED L5 pinMode(LED_1, OUTPUT); //row 1 digitalWrite(LED_1, LOW); pinMode(LED_2, INPUT); //row 2 digitalWrite(LED_2, LOW); pinMode(LED_3, OUTPUT); //row3 digitalWrite(LED_3, HIGH); delay(100); //turn on LED L4 pinMode(LED_1, INPUT); //row 1 digitalWrite(LED_1, LOW); pinMode(LED_2, OUTPUT); //row 2 digitalWrite(LED_2, HIGH); pinMode(LED_3, OUTPUT); //row 3 digitalWrite(LED_3, LOW); delay(100); //turn on LED L3 pinMode(LED_1, OUTPUT); //row 1 digitalWrite(LED_1, HIGH); pinMode(LED_2, OUTPUT); //row 2 digitalWrite(LED_2, LOW); pinMode(LED_3, INPUT); //row 3 digitalWrite(LED_3, LOW); delay(100); //turn on LED L2 pinMode(LED_1, INPUT); //row 1 digitalWrite(LED_1, LOW); pinMode(LED_2, OUTPUT); //row 2 digitalWrite(LED_2, LOW); pinMode(LED_3, OUTPUT); //row 3 digitalWrite(LED_3, HIGH); delay(100); }