Led clock WS2812B software

Hallokes

Ik heb mijn ledstrip WS2812B Werkend gekregen. Nu programmeer ik liever in basic dan in C++. Dus das nog een beetje leren.
Ik kan met parameter 'i' een led bepalen om aan te doen. Nu is het mijn bedoelen een zeer grote klok te maken. Dus als ik bvb een '7' in mijn programma heb moet er ook een 7 verschijnen door diverse leds.
Ik dacht aan een 'switch-case' oplossing
Maar ik heb hulp nodig.
De bijna 300 leds worden dan via een for lus 1 voor 1 snel aangestuurd.
En dan de moeilijkheid, sommige moeten aangaan, sommige niet (volgens tabel)

for (int i=0; i<NUM_LEDS; i++)
{
LEDs = CRGB::Blue;
FastLED.show();
delay(10);
}

groeten microman

niet storen aub, ben al gestoord genoeg !

for (int i=0; i<NUM_LEDS; i++)
{
LEDs = CRGB::Blue;
FastLED.show();
delay(10);
}

zat foutje in..

niet storen aub, ben al gestoord genoeg !
buckfast_beekeeper

Golden Member

Hoe is je ledscherm opgebouwd? WS2813 was al een betere keuze geweest. De datasnelheid is 2kHz ipv 400Hz.

Dit voorbeeld al bekeken?

Van Lambiek wordt goede geuze gemaakt.

Wat je in jouw voorbeeld doet is door alle leds heen loopen, (ik denk) alle leds op blauw zetten, en met FastLED.show() de leds aansturen.

Om niet alle leds aan te sturen kun je via je "i" bepalen welke leds aan of uit moeten (of welke kleur bv).

Je hoeft de FastLED.show() ook eigenlijk niet in je for loop te zetten maar erbuiten kan ook.

Voorbeeld:

c code:



for(int i = 0; i < NUM_LEDS; i++) {
    if(i == 3 || i == 4 || i == 7) {
        leds[i] = CRGB::Blue;
    }
    else {
        leds[i] = CRGB::Black;
    }
}

FastLED.show();

Dit is een heel "slordig" voorbeeldje maar (niet getest), als het goed is gaan alleen led 3, 4 en 7 aan.
In jouw voorbeeld wordt elke led op blauw gezet (beginnend bij 0, eindigend bij led 300) met telkens een pauze van 10mS. Als dit is wat je wil kun je alsnog de delay en FastLED.show() in je for loop zetten

Hey

Het is al grotendeels werkend. Ik heb wat gesleuteld aan een op internet gevonden programma. In bijlage.

grts

niet storen aub, ben al gestoord genoeg !