This shows you the differences between two versions of the page.
|
pm:prj2023:vstoica:ambilight [2023/05/29 00:26] stelian.chioveanu [Software Design] |
pm:prj2023:vstoica:ambilight [2023/05/29 00:31] (current) stelian.chioveanu [Download] |
||
|---|---|---|---|
| Line 52: | Line 52: | ||
| S-a utilizat o intrerupere pe pinul 2, care la apasarea butonului va incrementa variabila "mode" care reprezinta modul de functionare(bluetooth, ambilight, spectrum). Am utilizat un debouncer. | S-a utilizat o intrerupere pe pinul 2, care la apasarea butonului va incrementa variabila "mode" care reprezinta modul de functionare(bluetooth, ambilight, spectrum). Am utilizat un debouncer. | ||
| + | <code> | ||
| ISR(INT0_vect) { | ISR(INT0_vect) { | ||
| if((long)(micros() - lastDebounceTime) >= debounceDelay) { | if((long)(micros() - lastDebounceTime) >= debounceDelay) { | ||
| Line 58: | Line 59: | ||
| } | } | ||
| } | } | ||
| + | </code> | ||
| In functie de variabila "mode" modul de functionare va fi altul: | In functie de variabila "mode" modul de functionare va fi altul: | ||
| + | <code> | ||
| void loop() { | void loop() { | ||
| if(mode % 3 == 0){ | if(mode % 3 == 0){ | ||
| Line 74: | Line 77: | ||
| } | } | ||
| } | } | ||
| + | </code> | ||
| Am utilizat un timer pentru o functie delay custom. Acest timer incrementeaza o valoare, asteptand modificarea valorii intr-un while acolo unde aveam nevoie de delay. | Am utilizat un timer pentru o functie delay custom. Acest timer incrementeaza o valoare, asteptand modificarea valorii intr-un while acolo unde aveam nevoie de delay. | ||
| + | <code> | ||
| ISR(TIMER1_COMPA_vect) { | ISR(TIMER1_COMPA_vect) { | ||
| if (counter_time > 20000) { | if (counter_time > 20000) { | ||
| Line 83: | Line 88: | ||
| counter_time++; | counter_time++; | ||
| } | } | ||
| + | </code> | ||
| Functia "Light_RGB_LED" parseaza culorile primite prin bluetooth: | Functia "Light_RGB_LED" parseaza culorile primite prin bluetooth: | ||
| + | <code> | ||
| void Light_RGB_LED(){ | void Light_RGB_LED(){ | ||
| int SP1 = RGB_string.indexOf('.'); | int SP1 = RGB_string.indexOf('.'); | ||
| Line 95: | Line 102: | ||
| LEDS.showColor(CRGB(R.toInt(), G.toInt(), B.toInt())); | LEDS.showColor(CRGB(R.toInt(), G.toInt(), B.toInt())); | ||
| } | } | ||
| + | </code> | ||
| Functia "spectrum" cicleaza prin diferite culori(de la turcoaz la albastru si mov). | Functia "spectrum" cicleaza prin diferite culori(de la turcoaz la albastru si mov). | ||
| Line 121: | Line 129: | ||
| <note> | <note> | ||
| - | {{pm:prj2023:vstoica:stelian_chioveanu.zip| Sursa si diagrame}} | + | {{pm:prj2023:vstoica:stelian_chioveanu_final.zip| Sursa si diagrame}} |
| </note> | </note> | ||