void ao_launch_init(void) { AO_IGNITER_DROGUE = 0; AO_IGNITER_MAIN = 0; AO_IGNITER_DIR |= AO_IGNITER_DROGUE_BIT | AO_IGNITER_MAIN_BIT; ao_cmd_register(&ao_launch_cmds[0]); ao_add_task(&ao_launch_task, ao_launch, "launch listener"); ao_add_task(&ao_launch_ignite_task, ao_launch_run, "launch igniter"); ao_add_task(&ao_launch_status_task, ao_launch_status, "launch status"); }
void ao_rssi_init(uint8_t rssi_led) { ao_rssi_led = rssi_led; ao_rssi_delay = 0; ao_add_task(&ao_rssi_task, ao_rssi, "rssi"); }
void ao_log_init(void) { ao_log_running = 0; /* For now, just log the flight starting at the begining of eeprom */ ao_log_state = ao_flight_invalid; ao_cmd_register(&ao_log_cmds[0]); /* Create a task to log events to eeprom */ ao_add_task(&ao_log_task, ao_log, "log"); }
void main(void) { ao_clock_init(); // ao_add_task(&blink_0_task, blink_0); // ao_add_task(&blink_1_task, blink_1); // ao_add_task(&wakeup_task, wakeup); // ao_add_task(&beep_task, beep); ao_add_task(&echo_task, echo); ao_timer_init(); ao_adc_init(); ao_beep_init(); ao_led_init(); ao_usb_init(); ao_start_scheduler(); }
void ao_gps_report_init(void) { ao_add_task(&ao_gps_report_task, ao_gps_report, "gps_report"); ao_add_task(&ao_gps_tracking_report_task, ao_gps_tracking_report, "gps_tracking_report"); }
void ao_flight_init(void) { ao_flight_state = ao_flight_startup; ao_add_task(&flight_task, ao_flight, "flight"); }
void ao_report_init(void) { ao_add_task(&ao_report_task, ao_report, "report"); }