Ik heb hulp nodig bij AVR

S

soldier467

Guest
Ik moet weten hoe kan ik nummers uit (o ---- 9) in de vorm van (00 - 01 --- 02 ----- 09) op LCD-scherm met behulp van een code visie ...bijvoorbeeld:

Ik verklaarde een variabele (x) met een initiële waarde (0) Vervolgens bleek dat ik op het LCD-scherm als volgt:

unsigned long int x = 0;
char str [2];
ltoa (x, str);
lcd_puts (str);
Het resultaat was slechts 0 en niet 00 op de LCD

- en dit is na inclusief de gerelateerde bibliotheken.

Noot: Dit is voor de klok weergegeven op het LCD-[/ quote]

 
een niet zo elegante manier om dit te doen, zonder wezenlijk verandert uw code op te zetten met een'0 'als x kleiner is dan 10.

 
Als ik een'0 'als x kleiner is dan 10 ...dit zal ok.

maar zoals ik al eerder gezegd, ik ben het bouwen van een klok code ....en het gebruik van x als de seconden van de klok.

Het probleem is dat wanneer x bereikt (59) in seconden en Opnieuw terug naar de (0),
als bij een digitale klok, de LCD moet tonen (00), maar wat ik zag is dat na (59) seconden, toont het LCD-scherm (09) ...
) is composed of the digit (9)
at it's right side and this is due to the last number before it (5 9
) ...this digit ( 9
) remains on the LCD for the first new 9 seconds after the reset of seconds (ie 0 9
1 9
2 9
3 9
4 9
---9 9
then 10 11 12--5 9
) and when the seconds reaches (10) this digit (9) turns (0) (which will be the right side of the second (10) ( the instant which seconds appears correctly) and all seconds till (59) again).. and the other component of (09) mentioned above
is the digit (0) at it's left side which is the main place of x that counts from the beginning of the reset 0 1 2 ---etc every second

Dit nummer (0 9) is samengesteld uit de cijfers (9)
op het juiste zijde en dit te wijten is aan het laatste nummer voordat hij (5 9)
... deze cijfers (9)
blijft op het LCD-scherm voor de eerste nieuwe 9 seconden na het resetten van seconden (dus 0 9
1 9
2 9
3 9
4 9
--- 9
9 dan 10 11 12 - 5 9)
en wanneer de seconden bereikt (10) Deze cijfers (9) zet (0) (waarvan wordt de rechterkant van de tweede (10) (het moment waarop seconde lijkt correct) en alle seconde tot (59) opnieuw) .. en de andere component van (09) hierboven vermeld
is het cijfer (0) op het linker zijde dat is de belangrijkste plaats van x dat telt vanaf het begin van de reset-0 1 2 --- etc elke seconde

als gevolg van deze Ik dacht dat mijn probleem is om aan te tonen x vanaf het begin op het LCD-scherm in de vorm van 2 cijfers, en niet alleen 1 cijfer (00 01 02 ----> 58 59) te vermijden
mijn probleem en ik vraag hoe dit te doen?

Als een enkel ding te lossen help ........ dank

 

Welcome to EDABoard.com

Sponsor

Back
Top