come posso debaggare!?
Alberto Mainoni
mainoni a tin.it
Gio 2 Gen 2003 17:37:44 UTC
Ciao,
ho scritto questa roba che legge la USB
int main()
{
int fd,res;
unsigned int conta;
int max;
unsigned char mychar[1000];
fd = open("/dev/ttyUSB0", O_RDONLY);
if (fd <0) {perror("/dev/ttyUSB0"); exit(-1); }
conta = 0;
max = 0;
while (1) {
res = read(fd,mychar,255);
printf("\nconta=%d,res=%d\n",conta,res);
conta = 0;
printf("conta=%d,res=%d\n",conta,res);
while (conta < res)
{
printf("l_");
if (!conta) printf("%d %x ",max,mychar[conta]);
conta++;
max++;
}
}
close(fd);
return(0);
}
quasto e' il risultato dei print-debug inseriti!
........
........
conta=0,res=62
l_23188 e0
l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_
conta=62,res=62
conta=0,res=62
l_23250 fc
l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_l_
conta=62,res=62
conta=0,res=62
qui il software si ferma.
in poche parole si ferma prima di entrare nel secondo while
dopo un numero di cicli puramente casuali nonostante conta e' minore di
res, ma sempre prima del secondo while con conta < res!!!!!!!!
Grazie 1000
Buon anno
Maggiori informazioni sulla lista
Lug
|