int main (void) { int ticks = 0; int count = 0; usb_cdc_t usb_cdc; usb_cdc = usb_cdc_init (); sys_redirect_stdin ((void *)usb_cdc_read, usb_cdc); sys_redirect_stdout ((void *)usb_cdc_write, usb_cdc); sys_redirect_stderr ((void *)usb_cdc_write, usb_cdc); /* Wait until USB configured. */ while (! usb_cdc_update ()) continue; pacer_init (PACER_RATE); while (1) { pacer_wait (); ticks++; if (ticks > PACER_RATE / SPAM_RATE) { ticks = 0; printf ("Hello world %u!\n\r", count++); } } }
int main (void) { led_t leds[LEDS_NUM]; usb_cdc_t usb_cdc; int i; /* Initialise LEDs. */ for (i = 0; i < LEDS_NUM; i++) leds[i] = led_init (&leds_cfg[i]); led_set (leds[0], 0); led_set (leds[1], 0); led_set (leds[2], 0); usb_cdc = usb_cdc_init (); sys_redirect_stdin ((void *)usb_cdc_read, usb_cdc); sys_redirect_stdout ((void *)usb_cdc_write, usb_cdc); sys_redirect_stderr ((void *)usb_cdc_write, usb_cdc); tcm8230_init (&cfg); /* Wait until USB configured. */ while (! usb_cdc_update ()) continue; led_set (leds[0], 1); while (1) { int32_t ret; led_set (leds[1], 1); while ( tcm8230_frame_ready_p ()) continue; led_set (leds[1], 0); while (! tcm8230_frame_ready_p ()) continue; led_set (leds[1], 1); ret = tcm8230_capture (image, sizeof(image), 200); if (usb_cdc_update ()) { led_set (leds[0], 1); led_set (leds[2], 1); if (ret < 0) fprintf (stderr, "TCM8230 error: %d\r\n", (int)ret); else image_dump(image, SQCIF_HEIGHT, SQCIF_WIDTH); led_set (leds[2], 0); } else { /* USB disconnected. */ led_set (leds[0], 0); } } }