void main(void) { struct puzzleStruct puzzle; struct buttonStruct buttons; bool result = true; //init code here setup_int(); init_puzzle(&puzzle); init_buttons(&buttons); init_inputs(); //Enter main loop for(;;) { //Draw GUI build_gui(&puzzle); //Handle USB update_puzzle(&puzzle,&buttons); //Set output set_output(&puzzle); //Check inputs update_buttons(&buttons); //Read result result = check_result(&puzzle); } }
int main(void) { init_other_hw(); /* Must call this first */ init_timer(); init_audio(); init_turnled(); init_inputs(); enable_task(TURNLED_TASK); enable_task(AUDIO_TASK); enable_task(INPUTS_TASK); enable_task(COUNTDOWN_TASK); /* initialize display, cursor off */ lcd_init(LCD_DISP_ON); init_clock(); /* Enable interrupts */ sei(); for (;;) { /* loop forever */ poll_inputs(); poll_clock(); sleep_until_interrupt(); } /* end loop forever */ }