void com_putu(unsigned u) { char buf[1024]; if (u < 10) com_putc(UTOC(u)); else { char *bp; bp = buf + 1024 - 1; *bp-- = '\0'; while (u && bp >= buf) { *bp-- = UTOC(u % 10); u /= 10; } com_puts(++bp); } }
/** * Try to connect a device */ void connect_device() { const char * ANIM_CHARS = "-\\|/"; const char PASSWORD[6] = {'P', 'e', 'd', 'a', 0xff, 0}; int state = 0; int in = 0; printf("Waiting for device... Press CTRL+C to exit. "); while(1) { printf("\b%c", ANIM_CHARS[state]); fflush(stdout); com_puts(PASSWORD); in = com_getc(0); if(in == CONNECT) { sendcommand(COMMAND); // Empty buffer while(1) { switch(com_getc(TIMEOUT)) { case SUCCESS: printf("\n...Connected!\n"); gettimeofday(&t_start, NULL); return; case -1: printf("\n...Connection timeout!\n\n"); exit (0); } } } state++; state = state % 4; usleep(10000);//wait 10ms } }//void connect_device()