projets:fuz:ac_giant_led_matrix
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | Next revisionBoth sides next revision | ||
projets:fuz:ac_giant_led_matrix [2019-02-22 14:06] – barzi | projets:fuz:ac_giant_led_matrix [2019-02-22 20:22] – barzi | ||
---|---|---|---|
Line 12: | Line 12: | ||
* [[https:// | * [[https:// | ||
* [[https:// | * [[https:// | ||
+ | |||
+ | ===== Dev ===== | ||
+ | |||
+ | ++++ Code arduino 240V led matrix test simple | ||
+ | <code c> | ||
+ | #define COL_NB 2 | ||
+ | #define LIN_NB 7 | ||
+ | |||
+ | int pin_col[COL_NB] = {2, 3}; | ||
+ | int pin_lin[LIN_NB] = {4, 5, 6, 7, 8, 9, 10}; | ||
+ | |||
+ | |||
+ | |||
+ | void setup() { | ||
+ | for (int i = 0; i < COL_NB; i++) { | ||
+ | pinMode(pin_col[i], | ||
+ | } | ||
+ | |||
+ | for (int i = 0; i < LIN_NB; i++) { | ||
+ | pinMode(pin_lin[i], | ||
+ | } | ||
+ | |||
+ | Serial.begin(114200); | ||
+ | Serial.println(" | ||
+ | } | ||
+ | |||
+ | void loop() { | ||
+ | |||
+ | for (int i = 0; i < 2; i++) { | ||
+ | int a = random(2) + 2; | ||
+ | //int a=pin_col[i]; | ||
+ | |||
+ | digitalWrite(a, | ||
+ | Serial.print(" | ||
+ | Serial.println(a); | ||
+ | |||
+ | for (int j = 0; j < LIN_NB; j++) { | ||
+ | int b = random(7) + 4; | ||
+ | //int a=pin_lin[j]; | ||
+ | |||
+ | digitalWrite(b, | ||
+ | Serial.print(" | ||
+ | Serial.println(pin_lin[j]); | ||
+ | delay(50); | ||
+ | | ||
+ | random(5)==0? | ||
+ | } | ||
+ | |||
+ | digitalWrite(a, | ||
+ | |||
+ | /* | ||
+ | for (int j = 0; j < LIN_NB; j++) { | ||
+ | // | ||
+ | Serial.print(" | ||
+ | Serial.println(pin_lin[j]); | ||
+ | delay(10); | ||
+ | digitalWrite(pin_lin[j], | ||
+ | } | ||
+ | |||
+ | digitalWrite(pin_col[i], | ||
+ | */ | ||
+ | } | ||
+ | |||
+ | } | ||
+ | </ | ||
+ | ++++ | ||
+ | |||
+ | ++++ Code arduino 240V led matrix with AC sensing and FastIO | | ||
+ | <code c> | ||
+ | #include < | ||
+ | |||
+ | |||
+ | #define COL_NB 2 | ||
+ | #define LIN_NB 7 | ||
+ | |||
+ | int pin_col[COL_NB] = {2, 3}; | ||
+ | int pin_lin[LIN_NB] = {4, 5, 6, 7, 8, 9, 10}; | ||
+ | |||
+ | //AC | ||
+ | # | ||
+ | int last_AC_detect = LOW; | ||
+ | |||
+ | void setup() { | ||
+ | //AC | ||
+ | pinMode2(pinACsense, | ||
+ | pinMode2(LED_BUILTIN, | ||
+ | |||
+ | for (int i = 0; i < COL_NB; i++) { | ||
+ | pinMode2(pin_col[i], | ||
+ | } | ||
+ | |||
+ | for (int i = 0; i < LIN_NB; i++) { | ||
+ | pinMode2(pin_lin[i], | ||
+ | } | ||
+ | |||
+ | // | ||
+ | // | ||
+ | } | ||
+ | |||
+ | int intensity_time = 0; | ||
+ | int step = 40; | ||
+ | // bool back_from_last_scan = false; | ||
+ | | ||
+ | void loop() { | ||
+ | | ||
+ | // LIGNES < 7 | ||
+ | for (int i = 0; i < 4; i++) { | ||
+ | |||
+ | /* | ||
+ | int AC_detect = LOW; | ||
+ | // Wait for AC sync... | ||
+ | while ( AC_detect != HIGH || back_from_last_scan) { | ||
+ | AC_detect = digitalRead(pinACsense); | ||
+ | } | ||
+ | */ | ||
+ | int a = pin_lin[i]; | ||
+ | |||
+ | digitalWrite2(a, | ||
+ | |||
+ | // COLONNES < 2 | ||
+ | for (int j = 0; j < 2; j++) { | ||
+ | |||
+ | int b = pin_col[j]; | ||
+ | digitalWrite2(b, | ||
+ | |||
+ | } | ||
+ | |||
+ | int AC_detect = LOW; | ||
+ | // Wait for AC sync... | ||
+ | while ( AC_detect != HIGH) { | ||
+ | AC_detect = digitalRead2(pinACsense); | ||
+ | } | ||
+ | | ||
+ | // | ||
+ | /* | ||
+ | delayMicroseconds(intensity_time); | ||
+ | intensity_time += step; | ||
+ | if(abs(intensity_time) > 9000) step=-step; | ||
+ | */ | ||
+ | // ligne down | ||
+ | digitalWrite2(a, | ||
+ | |||
+ | // cols down | ||
+ | for (int j = 0; j < 2; j++) { | ||
+ | int b = pin_col[j]; | ||
+ | digitalWrite2(b, | ||
+ | } | ||
+ | |||
+ | // back_from_last_scan = true; | ||
+ | |||
+ | } | ||
+ | |||
+ | } | ||
+ | </ | ||
+ | ++++ | ||
+ | |||
===== Roadmap ===== | ===== Roadmap ===== |
projets/fuz/ac_giant_led_matrix.txt · Last modified: 2023-02-02 22:06 by 127.0.0.1