Visualizza messaggio singolo
Vecchio 10 novembre 10, 18:31   #67 (permalink)  Top
illez
User
 
L'avatar di illez
 
Data registr.: 06-08-2007
Residenza: Empoli
Messaggi: 1.813
Citazione:
Originalmente inviato da elicottero78 Visualizza messaggio
grazie x la risposta,ma
Cosa non è chiaro?
Invece di:

char txt;

devi scrivere:

char txt[7];


La funzione trasforma un numero in una stringa di caratteri. Come faccio a traformare un numero, ad esempio 12, ed inserirlo in una variabile di tipo char come hai scritto tu? Un char è UN carattere, il numero 12 evidentemente ne ha 2; in realtà una volta trasformato in stringa ne ha 3: il carattere 1, il carattere 2 e il valore 0 che indica la fine della stringa.
Se scrivi char txt[7] crei una stringa di 7 caratteri: 6 cifre numeriche terminata con uno zero.

Il display tu lo aggiorni (si fa per dire ) fuori dal while,
while(1);
{
delay_ms(1000);
evento=evento+1;
} // fine del while(1)
intToStr(evento, txt);
// <-- QUI NON CI ARRIVA MAI!!!
LCD_Out(1,1,"CONTEGGIO=");
Lcd_Out(1,12, txt);


La condizione while(1) è sempre vera e non arriverai mai ad eseguire l'aggiornamento del display. E' chiaro ora? le righe le porti dentro, così:

while(1);
{
delay_ms(1000);
evento=evento+1; // qui puoi anche scrivere: evento++;

intToStr(evento, txt);
LCD_Out(1,1,"CONTEGGIO=");
Lcd_Out(1,12, txt);
}
__________________
.......
illez non è collegato   Rispondi citando