X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=ao.h;h=1f32ba50f4f0df2ffc3983fd5133d2323cb2070f;hp=12948ed3c55a422f1b48bce8cf536ec33d96a946;hb=3a3bfd471a868d546d83cdc431b53c8f5208edb9;hpb=de7814c738488c2c16c6216c93fa78128895e5d5 diff --git a/ao.h b/ao.h index 12948ed3..1f32ba50 100644 --- a/ao.h +++ b/ao.h @@ -23,6 +23,9 @@ #include #include "cc1111.h" +#define TRUE 1 +#define FALSE 0 + /* Convert a __data pointer into an __xdata pointer */ #define DATA_TO_XDATA(a) ((void __xdata *) ((uint8_t) (a) | 0xff00)) @@ -44,7 +47,7 @@ struct ao_task { extern __xdata struct ao_task *__data ao_cur_task; -#define AO_NUM_TASKS 10 /* maximum number of tasks */ +#define AO_NUM_TASKS 16 /* maximum number of tasks */ #define AO_NO_TASK 0 /* no task id */ /* @@ -467,7 +470,7 @@ struct ao_log_record { uint16_t tick; union { struct { - uint16_t serial; + int16_t ground_accel; uint16_t flight; } flight; struct { @@ -565,6 +568,7 @@ extern __pdata enum ao_flight_state ao_flight_state; extern __pdata uint16_t ao_flight_tick; extern __pdata int16_t ao_flight_accel; extern __pdata int16_t ao_flight_pres; +extern __pdata int32_t ao_flight_vel; extern __pdata int16_t ao_ground_pres; extern __pdata int16_t ao_ground_accel; extern __pdata int16_t ao_min_pres; @@ -720,6 +724,11 @@ ao_gps_report_init(void); struct ao_telemetry { uint8_t addr; uint8_t flight_state; + int16_t flight_accel; + int16_t ground_accel; + int32_t flight_vel; + int16_t flight_pres; + int16_t ground_pres; struct ao_adc adc; struct ao_gps_data gps; char callsign[AO_MAX_CALLSIGN]; @@ -727,15 +736,13 @@ struct ao_telemetry { /* Set delay between telemetry reports (0 to disable) */ +#define AO_TELEMETRY_INTERVAL_PAD AO_MS_TO_TICKS(1000) #define AO_TELEMETRY_INTERVAL_FLIGHT AO_MS_TO_TICKS(50) #define AO_TELEMETRY_INTERVAL_RECOVER AO_MS_TO_TICKS(1000) void ao_telemetry_set_interval(uint16_t interval); -void -ao_rdf_set(uint8_t rdf); - void ao_telemetry_init(void); @@ -755,12 +762,6 @@ struct ao_radio_recv { void ao_radio_recv(__xdata struct ao_radio_recv *recv) __reentrant; -void -ao_radio_rdf(void); - -void -ao_radio_rdf_abort(void); - void ao_radio_init(void); @@ -774,7 +775,10 @@ void ao_monitor(void); void -ao_monitor_init(uint8_t led); +ao_set_monitor(uint8_t monitoring); + +void +ao_monitor_init(uint8_t led, uint8_t monitoring) __reentrant; /* * ao_stdio.c @@ -832,6 +836,16 @@ ao_config_get(void); void ao_config_init(void); +/* + * ao_rssi.c + */ + +void +ao_rssi_set(int rssi_value); + +void +ao_rssi_init(uint8_t rssi_led); + /* * ao_product.c * @@ -841,5 +855,8 @@ ao_config_init(void); extern const uint8_t ao_usb_descriptors []; extern const uint16_t ao_serial_number; +extern const char ao_version[]; +extern const char ao_manufacturer[]; +extern const char ao_product[]; #endif /* _AO_H_ */