Citazione:
Originalmente inviato da elicottero78 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);
}