looplicht clock
5 berichten
• Pagina 1 van 1
looplicht clock
Hallo,
Heeft iemand het volgende al eens gemaakt?
Looplicht van 24 ledjes die op een clock werkt waarbij elk uur het volgende ledje aangaat en het vorige weer uit.
De overgang van de ledjes moeten met een fade overgaan naar elkaar.
De clock moet real kunnen lopen en we willen hem aanpassen zodat hij sneller gaat en we dus ook in een sneller tempo de tijdzones kunnen laten zien.
Ik ben nu met 74hc595 (3x) al wel begonnen;
cpp code
Heeft iemand het volgende al eens gemaakt?
Looplicht van 24 ledjes die op een clock werkt waarbij elk uur het volgende ledje aangaat en het vorige weer uit.
De overgang van de ledjes moeten met een fade overgaan naar elkaar.
De clock moet real kunnen lopen en we willen hem aanpassen zodat hij sneller gaat en we dus ook in een sneller tempo de tijdzones kunnen laten zien.
Ik ben nu met 74hc595 (3x) al wel begonnen;
cpp code
// Digital pins for two independent shift registers.
const int dataPin = 7;
const int latchPin = 6;
const int clockPin = 5;
int sequence[]{
B10000000,
B01000000,
B00100000,
B00010000,
B00001000,
B00000100,
B00000010,
B00000001,
B00000000,
B00000000,
B00000000,
B00000000,
B00000000,
B00000000,
B00000000,
B00000000
};
int sequencetest[]{
B00000000,
B00000000,
B00000000,
B00000000,
B00000000,
B00000000,
B00000000,
B00000000,
B10000000,
B01000000,
B00100000,
B00010000,
B00001000,
B00000100,
B00000010,
B00000001,
};
void setup() {
//set pins to output because they are addressed in the main loop
pinMode(latchPin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(dataPin, OUTPUT);
digitalWrite(latchPin, LOW);
}
void loop() {
for(int i = 0; i < 16; i++){
digitalWrite(latchPin, LOW);
shiftOut(dataPin, clockPin, MSBFIRST, sequence[i]);
shiftOut(dataPin, clockPin, MSBFIRST, sequencetest[i]);
//return the latch pin high to signal chip that it
//no longer needs to listen for information
digitalWrite(latchPin, HIGH);
delay(250);
}
}
Advertisement
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: looplicht clock
Om te faden heb je een PWM nodig. En om dat zelf te simuleren met Aan/Uit zetten van de digitale IO maakt het wel erg complex. Alternatief is een ledstrip nemen of losse WS2812b RGB leds.
Re: looplicht clock
je bedenksel is wel aardig maar gaat erg snel.
dus stap af van die for loop en maak een functie die een led aanzet op een bepaalde tijd.
dus setledsequence[uur].
omdat je met een 595 werkt ontkom je niet aan het feit dat je zelf een pwm moet maken. pak bijvoorbeeld 12 stappen. dus je sequence wordt dan niet met 0 en 1 maar met een INT.
teller erbij en programnmeren.
opdracht maak een blinkende minuten wijzer. (met blink without delay.
en welke clock wil je gebruiken (ik zou aanraden om een RTC te pakken.
dus stap af van die for loop en maak een functie die een led aanzet op een bepaalde tijd.
dus setledsequence[uur].
omdat je met een 595 werkt ontkom je niet aan het feit dat je zelf een pwm moet maken. pak bijvoorbeeld 12 stappen. dus je sequence wordt dan niet met 0 en 1 maar met een INT.
teller erbij en programnmeren.
opdracht maak een blinkende minuten wijzer. (met blink without delay.
en welke clock wil je gebruiken (ik zou aanraden om een RTC te pakken.
paul deelen
shooter@home.nl
shooter@home.nl
5 berichten
• Pagina 1 van 1
Wie is er online?
Gebruikers in dit forum: Geen geregistreerde gebruikers en 8 gasten