int main(void) { uint32_t init_time, current_time; uint32_t grab_period; char filename[16]; FILE *f; grab_period = INIT_PHASE_GRAB_PERIOD; // At first grab every second cc3_uart_init (0, CC3_UART_RATE_115200, CC3_UART_MODE_8N1, CC3_UART_BINMODE_TEXT); cc3_camera_init (); // use MMC cc3_filesystem_init(); cc3_camera_set_resolution(CC3_CAMERA_RESOLUTION_HIGH); cc3_pixbuf_frame_set_subsample (CC3_SUBSAMPLE_NEAREST, 2, 2); init_time = cc3_timer_get_current_ms(); uint32_t i = 0; while(true) { i++; printf("%d\n", i); current_time = cc3_timer_get_current_ms() - init_time; snprintf(filename, 16, "c:/%.5d.ppm", current_time); f = fopen(filename, "w"); capture_ppm(f); fclose(f); if (current_time > INIT_PHASE_DURATION) grab_period = NORMAL_PHASE_GRAB_PERIOD; cc3_timer_wait_ms(grab_period); } return 0; }
int main(void) { int i; int result; FILE *f; bool light_on = true; cc3_uart_init (0, CC3_UART_RATE_115200, CC3_UART_MODE_8N1, CC3_UART_BINMODE_TEXT); cc3_camera_init (); // use MMC cc3_filesystem_init(); cc3_camera_set_resolution(CC3_CAMERA_RESOLUTION_HIGH); cc3_timer_wait_ms(1000); // init cc3_led_set_state(0, false); i = 0; while(!cc3_button_get_state()); while(true) { char filename[16]; // Check if files exist, if they do then skip over them do { snprintf(filename, 16, "c:/img%.5d.ppm", i); //snprintf(filename, 16, "img%.5d.ppm", i); f = fopen(filename, "r"); if (f != NULL) { printf( "%s already exists...\n",filename ); i++; result = fclose(f); if (result) { perror("first fclose failed"); } } } while(f != NULL); // print file that you are going to write to stderr fprintf(stderr,"%s ", filename); fflush(stderr); f = fopen(filename, "w"); if (f == NULL || i > 512) { if (f == NULL) { perror("crap"); } else { fprintf(stderr, "full\n"); } while (true) { cc3_led_set_state(0, true); cc3_led_set_state(2, true); cc3_timer_wait_ms(500); cc3_led_set_state(0, false); cc3_led_set_state(2, false); cc3_timer_wait_ms(500); } } if (light_on) { cc3_led_set_state (2, true); } else { cc3_led_set_state (2, false); } light_on = !light_on; capture_ppm(f); result = fclose(f); if (result) { perror("second fclose failed"); } fprintf(stderr, "\r\n"); i++; } return 0; }