Erklärung & Funktionen umbenannt

This commit is contained in:
Peter 2019-10-02 12:04:54 +02:00
parent 242af86936
commit 96dae72d04
Signed by: pludi
GPG key ID: FB1A00FEE77E2C36
2 changed files with 16 additions and 4 deletions

View file

@ -10,11 +10,11 @@ unsigned char offset = 0;
void (*viz[VIZUALIZATIONS])(unsigned char); void (*viz[VIZUALIZATIONS])(unsigned char);
volatile unsigned char currentViz = 0; volatile unsigned char currentViz = 0;
void viz1(unsigned char offset) { void sineRed(unsigned char offset) {
for (unsigned char i = 0; i < NUM_LEDS; i++) for (unsigned char i = 0; i < NUM_LEDS; i++)
pixels[(i + offset) % NUM_LEDS] = CRGB(128 + floor(127 * sin(2 * 3.1415926 * i / NUM_LEDS)), 0, 0); pixels[(i + offset) % NUM_LEDS] = CRGB(128 + floor(127 * sin(2 * 3.1415926 * i / NUM_LEDS)), 0, 0);
} }
void viz2(unsigned char offset) { void falloffRed(unsigned char offset) {
for (unsigned char i = 0; i < NUM_LEDS; i++) for (unsigned char i = 0; i < NUM_LEDS; i++)
pixels[i] = 0; pixels[i] = 0;
pixels[offset % NUM_LEDS] = CRGB(0x0F, 0xF, 0xF); pixels[offset % NUM_LEDS] = CRGB(0x0F, 0xF, 0xF);
@ -45,8 +45,8 @@ void setup() {
for (int i = 0; i < NUM_LEDS; i++) for (int i = 0; i < NUM_LEDS; i++)
pixels[i] = CRGB(0, 0, 0); pixels[i] = CRGB(0, 0, 0);
FastLED.show(); FastLED.show();
viz[0] = &viz1; viz[0] = &sineRed;
viz[1] = &viz2; viz[1] = &falloffRed;
pinMode(INTR_PIN, INPUT_PULLUP); pinMode(INTR_PIN, INPUT_PULLUP);
attachInterrupt(digitalPinToInterrupt(INTR_PIN), changeViz, FALLING); attachInterrupt(digitalPinToInterrupt(INTR_PIN), changeViz, FALLING);
} }

View file

@ -27,3 +27,15 @@ erhöht wird und im Bereich 0-255 liegt.
In der Funktion selbst müssen die Farbwerte für jedes Pixel in das Array In der Funktion selbst müssen die Farbwerte für jedes Pixel in das Array
`pixels` geschrieben werden, welches automatisch beim nächsten Refresh `pixels` geschrieben werden, welches automatisch beim nächsten Refresh
ausgegeben wird. ausgegeben wird.
Existierende Visualisationen
----------------------------
### `sineRed`
Eine einfache Sinus-Funktion über eine Periode in Rot.
### `falloffRed`
Ein rotes Pixel läuft herum und wird dabei immer lichtschwächer &
blasser.