8 x 7 segment LED display met Max7219
8 berichten
• Pagina 1 van 1
8 x 7 segment LED display met Max7219
Ik heb veel info gevonden over de LedControl library om een 7 segment LED display met Max9217 aan te sturen.
Het wordt goed uitgelegd hoe je een waarde naar één digit kan sturen maar ik vind nergens info om een lang getal naar het display te sturen.
Vb: int frequentie = 12345678 hoe krijg ik het volledige getal op het display ?
Ik zou dit graag gebruiken voor een frequency counter projectje.
mvg
RuRu
Het wordt goed uitgelegd hoe je een waarde naar één digit kan sturen maar ik vind nergens info om een lang getal naar het display te sturen.
Vb: int frequentie = 12345678 hoe krijg ik het volledige getal op het display ?
Ik zou dit graag gebruiken voor een frequency counter projectje.
mvg
RuRu
Advertisement
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: 8 x 7 segment LED display met Max7219
Bedankt voor de info.
Ik zal het wel moeten uitbreiden naar 8 digits maar het is het proberen waard.
Ik vraag me af of er geen soort FOR loop zou kunnen gebruikt worden om de zaak te verkorten??
Mvg
RuRu
Ik zal het wel moeten uitbreiden naar 8 digits maar het is het proberen waard.
Ik vraag me af of er geen soort FOR loop zou kunnen gebruikt worden om de zaak te verkorten??
Mvg
RuRu
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: 8 x 7 segment LED display met Max7219
Waarschijnlijk wel maar dan moet je eerst met de code komen Anders wordt het een Remy project
Re: 8 x 7 segment LED display met Max7219
Dit is het FOR loopje geworden. Long is nodig om de 8 cijfers te kunnen weergeven.
Het display is nogal storingsgevoelig vandaar dat er hier of daar een delay kan tussengevoegd worden.
Nu moet ik nog iets vinden om de leading zero's weg te laten als het getal < 8 digits is. Iemand een goed ideetje ?
Ik zou iets kunnen doen met de lengte( aantal digits) van het getal maar hoe kom ik daar aan?
void printGetal(long v)
{
long Digit;
for (int i = 0; i<=7; i++)
{
Digit=v%10;
//delay(20);
lc.setDigit(0,i,(byte)Digit,false);
//Serial.println(Digit);
//delay(20);
v=v/10;
}
}
Mvg
RuRu
Het display is nogal storingsgevoelig vandaar dat er hier of daar een delay kan tussengevoegd worden.
Nu moet ik nog iets vinden om de leading zero's weg te laten als het getal < 8 digits is. Iemand een goed ideetje ?
Ik zou iets kunnen doen met de lengte( aantal digits) van het getal maar hoe kom ik daar aan?
void printGetal(long v)
{
long Digit;
for (int i = 0; i<=7; i++)
{
Digit=v%10;
//delay(20);
lc.setDigit(0,i,(byte)Digit,false);
//Serial.println(Digit);
//delay(20);
v=v/10;
}
}
Mvg
RuRu
- nicoverduin
- Berichten: 5043
- Geregistreerd: 13 Mei 2013, 20:57
- Woonplaats: Heemskerk
Re: 8 x 7 segment LED display met Max7219
Probeer dit 's:
- Code: Alles selecteren
void printGetal(long v) {
char result[9]; // resultaat is als geformatteerde char string
sprintf(result, "%8lu", v); // omzetten getal in string (de 8 maakt het 8 tekens lang met voorloop spaties)
Serial.println(result); // ff op de serial
for (int i = 0; i < 8; i++) { // als de cijfers omgedraaid moeten worden dan de loop van 7-0 laten lopen
if (result[i] != 0x20) { // het is geen spatie dus display
lc.setDigit(0, i, (byte) (result[i] & 0x0F), false);
}
}
}
Re: 8 x 7 segment LED display met Max7219
Bedankt nicoverduin,
Daar was ik zelf nooit achter gekomen - voor gevorderden!
Ik probeer het uit en laat nog iets weten.
Mvg
RuRu
Daar was ik zelf nooit achter gekomen - voor gevorderden!
Ik probeer het uit en laat nog iets weten.
Mvg
RuRu
Re: 8 x 7 segment LED display met Max7219
Werkt perfect voor mijn frequency counter.
Ik kan er echter geen analoge meetwaarden ( bvb: -0.123 ) mee zichtbaar maken.
Ik probeer tot een soort universele uitlezing te komen voor meetapparaten.
Bedankt nicoverduin.
Ik kan er echter geen analoge meetwaarden ( bvb: -0.123 ) mee zichtbaar maken.
Ik probeer tot een soort universele uitlezing te komen voor meetapparaten.
Bedankt nicoverduin.
8 berichten
• Pagina 1 van 1
Wie is er online?
Gebruikers in dit forum: Geen geregistreerde gebruikers en 30 gasten