From 61f4cce79a89af13e0d93c7166f8d2ee6202bd40 Mon Sep 17 00:00:00 2001 From: lonkaars Date: Fri, 26 Nov 2021 22:24:14 +0100 Subject: whoopsie in readme and moved shit into tests/ folder --- 16x16/16x16.ino | 54 ----------------------------- 64test/64test.ino | 32 ----------------- example/example.ino | 88 ----------------------------------------------- readme.md | 2 +- tests/16x16/16x16.ino | 54 +++++++++++++++++++++++++++++ tests/64test/64test.ino | 32 +++++++++++++++++ tests/example/example.ino | 88 +++++++++++++++++++++++++++++++++++++++++++++++ 7 files changed, 175 insertions(+), 175 deletions(-) delete mode 100644 16x16/16x16.ino delete mode 100644 64test/64test.ino delete mode 100644 example/example.ino create mode 100644 tests/16x16/16x16.ino create mode 100644 tests/64test/64test.ino create mode 100644 tests/example/example.ino diff --git a/16x16/16x16.ino b/16x16/16x16.ino deleted file mode 100644 index 226e4db..0000000 --- a/16x16/16x16.ino +++ /dev/null @@ -1,54 +0,0 @@ -#define PINOUT_SER 2 -#define PINOUT_SCK 3 -#define PINOUT_LCK 4 - -bool leds[16]; - -void animate() { - unsigned long t_offset = millis() % (unsigned long)15e3; - if(0e3 < t_offset && t_offset < 4e3) { - bool flip_state = (t_offset % 1000) > 500; - for(int i = 0; i < 16; i++) leds[i] = (i % 2 == flip_state) ^ (i / 4 % 2 == 0) > 0; - } - else if(4e3 < t_offset && t_offset < 7e3) { - bool flip_state = (t_offset % 1000) < 500; - for(int i = 0; i < 16; i++) leds[i] = flip_state; - } - else if(7e3 < t_offset && t_offset < 11e3) { - int index = (t_offset - 7e3) / 250; - int volgorde[16] = {0, 1, 2, 3, 7, 6, 5, 4, 8, 9, 10, 11, 15, 14, 13, 12}; - leds[volgorde[(index - 1) % 16]] = 0; - leds[volgorde[index % 16]] = 1; - } - else if(11e3 < t_offset && t_offset < 15e3) { - int index = (t_offset - 11e3) / 250; - int volgorde[16] = {0, 1, 2, 3, 7, 6, 5, 4, 8, 9, 10, 11, 15, 14, 13, 12}; - memset(&leds, 0, sizeof(int) * 16); - leds[volgorde[index % 16]] = 1; - leds[volgorde[15 - index]] = 1; - } -} - -void setup() { - pinMode(PINOUT_LCK, OUTPUT); - pinMode(PINOUT_SCK, OUTPUT); - pinMode(PINOUT_SER, OUTPUT); - Serial.begin(115200); -} - -void loop() { - animate(); - for (int row = 0; row < 4; row++) { - unsigned char serdata = 0xff ^ (1 << (row + 4)); - - serdata = (serdata & 0b11110000) | - leds[row * 4 + 0] << 3 | - leds[row * 4 + 1] << 2 | - leds[row * 4 + 2] << 1 | - leds[row * 4 + 3] << 0; - - digitalWrite(PINOUT_LCK, LOW); - shiftOut(PINOUT_SER, PINOUT_SCK, LSBFIRST, serdata); - digitalWrite(PINOUT_LCK, HIGH); - } -} diff --git a/64test/64test.ino b/64test/64test.ino deleted file mode 100644 index ed0db9b..0000000 --- a/64test/64test.ino +++ /dev/null @@ -1,32 +0,0 @@ -#define SERIAL_DELAY 3 - -#define SERIAL_CLK 4 -#define SERIAL_INP 2 -#define LATCH_CLK 3 - -void shift(unsigned char gert, unsigned char gert2) { - digitalWrite(LATCH_CLK, LOW); - shiftOut(SERIAL_INP, SERIAL_CLK, LSBFIRST, gert); - shiftOut(SERIAL_INP, SERIAL_CLK, LSBFIRST, gert2); - digitalWrite(LATCH_CLK, HIGH); -} - -void setup() { - pinMode(SERIAL_CLK, OUTPUT); - pinMode(SERIAL_INP, OUTPUT); - pinMode(LATCH_CLK, OUTPUT); - - shift(0, 0); -} - -unsigned int i = 0; - -void loop() { - i = ( i + 1 ) % 64; - unsigned char sr1 = 0x00 ^ (1 << (i / 8)); - unsigned char sr2 = 0xff ^ (1 << (i % 8)); - - shift(sr1, sr2); - - delay(10); -} diff --git a/example/example.ino b/example/example.ino deleted file mode 100644 index a4af127..0000000 --- a/example/example.ino +++ /dev/null @@ -1,88 +0,0 @@ -#define SERIAL_DELAY 3 - -#define SERIAL_CLK 3 -#define SERIAL_INP 2 -#define LATCH_CLK 4 - -void setup() { - pinMode(SERIAL_CLK, OUTPUT); - pinMode(SERIAL_INP, OUTPUT); - pinMode(LATCH_CLK, OUTPUT); - Serial.begin(9600); -} - -void shift(unsigned char gert) { - digitalWrite(LATCH_CLK, LOW); - delay(SERIAL_DELAY); - shiftOut(SERIAL_INP, SERIAL_CLK, LSBFIRST, gert); - digitalWrite(LATCH_CLK, HIGH); - delay(SERIAL_DELAY); - Serial.println(gert, BIN); -} - -void ani1() { - for(int i = 0; i < 8; i++) { - delay(200); - shift(0b01010101 << (i % 2 == 0)); - } -} - -void ani2() { - for(int j = 0; j < 2; j++) { - for(int i = 0; i < 8; i++) { - delay(100); - shift(1 << i); - } - for(int i = 6; i > 0; i--) { - delay(100); - shift(1 << i); - } - } -} - -void ani3() { - for(int j = 0; j < 2; j++) { - for(int i = 1; i < 8; i++) { - delay(100); - shift(1 << i | 1 << (i-1)); - } - for(int i = 6; i > 1; i--) { - delay(100); - shift(1 << i | 1 << (i-1)); - } - } -} - -void ani4() { - for(int j = 0; j < 2; j++) { - for(int i = 0; i < 8; i++) { - delay(100); - unsigned char state = 1 << i | 1 << (7 - i); - shift(state); - } - for(int i = 6; i > 0; i--) { - delay(100); - unsigned char state = 1 << i | 1 << (7 - i); - shift(state); - } - } -} - -void loop() { - - /*digitalWrite(LATCH_CLK, HIGH); - shift(0b00000000); - digitalWrite(LATCH_CLK, LOW); - delay(SERIAL_DELAY); - delay(1e3); - - digitalWrite(LATCH_CLK, HIGH); - shift(0b11111111); - digitalWrite(LATCH_CLK, LOW); - delay(SERIAL_DELAY); - delay(1e3);*/ - ani1(); - ani2(); - ani3(); - ani4(); -} diff --git a/readme.md b/readme.md index d8be34f..a8366b0 100644 --- a/readme.md +++ b/readme.md @@ -4,5 +4,5 @@ ben lui dus ga niet nog een readme schrijven -[software/readme.md](dit) beschrijft 't zooitje wel goed, maar staat gelijk in +[dit](software/readme.md) beschrijft 't zooitje wel goed, maar staat gelijk in een map waar ik het makkelijk kan inleveren diff --git a/tests/16x16/16x16.ino b/tests/16x16/16x16.ino new file mode 100644 index 0000000..226e4db --- /dev/null +++ b/tests/16x16/16x16.ino @@ -0,0 +1,54 @@ +#define PINOUT_SER 2 +#define PINOUT_SCK 3 +#define PINOUT_LCK 4 + +bool leds[16]; + +void animate() { + unsigned long t_offset = millis() % (unsigned long)15e3; + if(0e3 < t_offset && t_offset < 4e3) { + bool flip_state = (t_offset % 1000) > 500; + for(int i = 0; i < 16; i++) leds[i] = (i % 2 == flip_state) ^ (i / 4 % 2 == 0) > 0; + } + else if(4e3 < t_offset && t_offset < 7e3) { + bool flip_state = (t_offset % 1000) < 500; + for(int i = 0; i < 16; i++) leds[i] = flip_state; + } + else if(7e3 < t_offset && t_offset < 11e3) { + int index = (t_offset - 7e3) / 250; + int volgorde[16] = {0, 1, 2, 3, 7, 6, 5, 4, 8, 9, 10, 11, 15, 14, 13, 12}; + leds[volgorde[(index - 1) % 16]] = 0; + leds[volgorde[index % 16]] = 1; + } + else if(11e3 < t_offset && t_offset < 15e3) { + int index = (t_offset - 11e3) / 250; + int volgorde[16] = {0, 1, 2, 3, 7, 6, 5, 4, 8, 9, 10, 11, 15, 14, 13, 12}; + memset(&leds, 0, sizeof(int) * 16); + leds[volgorde[index % 16]] = 1; + leds[volgorde[15 - index]] = 1; + } +} + +void setup() { + pinMode(PINOUT_LCK, OUTPUT); + pinMode(PINOUT_SCK, OUTPUT); + pinMode(PINOUT_SER, OUTPUT); + Serial.begin(115200); +} + +void loop() { + animate(); + for (int row = 0; row < 4; row++) { + unsigned char serdata = 0xff ^ (1 << (row + 4)); + + serdata = (serdata & 0b11110000) | + leds[row * 4 + 0] << 3 | + leds[row * 4 + 1] << 2 | + leds[row * 4 + 2] << 1 | + leds[row * 4 + 3] << 0; + + digitalWrite(PINOUT_LCK, LOW); + shiftOut(PINOUT_SER, PINOUT_SCK, LSBFIRST, serdata); + digitalWrite(PINOUT_LCK, HIGH); + } +} diff --git a/tests/64test/64test.ino b/tests/64test/64test.ino new file mode 100644 index 0000000..ed0db9b --- /dev/null +++ b/tests/64test/64test.ino @@ -0,0 +1,32 @@ +#define SERIAL_DELAY 3 + +#define SERIAL_CLK 4 +#define SERIAL_INP 2 +#define LATCH_CLK 3 + +void shift(unsigned char gert, unsigned char gert2) { + digitalWrite(LATCH_CLK, LOW); + shiftOut(SERIAL_INP, SERIAL_CLK, LSBFIRST, gert); + shiftOut(SERIAL_INP, SERIAL_CLK, LSBFIRST, gert2); + digitalWrite(LATCH_CLK, HIGH); +} + +void setup() { + pinMode(SERIAL_CLK, OUTPUT); + pinMode(SERIAL_INP, OUTPUT); + pinMode(LATCH_CLK, OUTPUT); + + shift(0, 0); +} + +unsigned int i = 0; + +void loop() { + i = ( i + 1 ) % 64; + unsigned char sr1 = 0x00 ^ (1 << (i / 8)); + unsigned char sr2 = 0xff ^ (1 << (i % 8)); + + shift(sr1, sr2); + + delay(10); +} diff --git a/tests/example/example.ino b/tests/example/example.ino new file mode 100644 index 0000000..a4af127 --- /dev/null +++ b/tests/example/example.ino @@ -0,0 +1,88 @@ +#define SERIAL_DELAY 3 + +#define SERIAL_CLK 3 +#define SERIAL_INP 2 +#define LATCH_CLK 4 + +void setup() { + pinMode(SERIAL_CLK, OUTPUT); + pinMode(SERIAL_INP, OUTPUT); + pinMode(LATCH_CLK, OUTPUT); + Serial.begin(9600); +} + +void shift(unsigned char gert) { + digitalWrite(LATCH_CLK, LOW); + delay(SERIAL_DELAY); + shiftOut(SERIAL_INP, SERIAL_CLK, LSBFIRST, gert); + digitalWrite(LATCH_CLK, HIGH); + delay(SERIAL_DELAY); + Serial.println(gert, BIN); +} + +void ani1() { + for(int i = 0; i < 8; i++) { + delay(200); + shift(0b01010101 << (i % 2 == 0)); + } +} + +void ani2() { + for(int j = 0; j < 2; j++) { + for(int i = 0; i < 8; i++) { + delay(100); + shift(1 << i); + } + for(int i = 6; i > 0; i--) { + delay(100); + shift(1 << i); + } + } +} + +void ani3() { + for(int j = 0; j < 2; j++) { + for(int i = 1; i < 8; i++) { + delay(100); + shift(1 << i | 1 << (i-1)); + } + for(int i = 6; i > 1; i--) { + delay(100); + shift(1 << i | 1 << (i-1)); + } + } +} + +void ani4() { + for(int j = 0; j < 2; j++) { + for(int i = 0; i < 8; i++) { + delay(100); + unsigned char state = 1 << i | 1 << (7 - i); + shift(state); + } + for(int i = 6; i > 0; i--) { + delay(100); + unsigned char state = 1 << i | 1 << (7 - i); + shift(state); + } + } +} + +void loop() { + + /*digitalWrite(LATCH_CLK, HIGH); + shift(0b00000000); + digitalWrite(LATCH_CLK, LOW); + delay(SERIAL_DELAY); + delay(1e3); + + digitalWrite(LATCH_CLK, HIGH); + shift(0b11111111); + digitalWrite(LATCH_CLK, LOW); + delay(SERIAL_DELAY); + delay(1e3);*/ + ani1(); + ani2(); + ani3(); + ani4(); +} -- cgit v1.2.3