Change barometer conversion code to shrink conversion table
[fw/altos] / src / ao.h
index d8e1b92ac70a6fe7cd2d0247164f3fa2937de40d..d6be2223a33251fd6eb27291555c3c3e0a6ba119 100644 (file)
--- a/src/ao.h
+++ b/src/ao.h
@@ -108,6 +108,7 @@ ao_start_scheduler(void);
 #define AO_PANIC_CMD           6       /* Too many command sets registered */
 #define AO_PANIC_STDIO         7       /* Too many stdio handlers registered */
 #define AO_PANIC_REBOOT                8       /* Reboot failed */
+#define AO_PANIC_FLASH         9       /* Invalid flash part (or wrong blocksize) */
 
 /* Stop the operating system, beeping and blinking the reason */
 void
@@ -617,6 +618,7 @@ extern __pdata int16_t                      ao_ground_pres;
 extern __pdata int16_t                 ao_ground_accel;
 extern __pdata int16_t                 ao_min_pres;
 extern __pdata uint16_t                        ao_launch_time;
+extern __xdata uint8_t                 ao_flight_force_idle;
 
 /* Flight thread */
 void
@@ -729,6 +731,8 @@ ao_serial_init(void);
 #define AO_GPS_RUNNING         (1 << 5)
 #define AO_GPS_DATE_VALID      (1 << 6)
 
+extern __xdata uint16_t ao_gps_tick;
+
 struct ao_gps_data {
        uint8_t                 year;
        uint8_t                 month;
@@ -835,6 +839,11 @@ extern __xdata uint8_t ao_radio_mutex;
 void
 ao_radio_general_isr(void) interrupt 16;
 
+void
+ao_radio_get(void);
+
+#define ao_radio_put() ao_mutex_put(&ao_radio_mutex)
+
 void
 ao_radio_set_telemetry(void);
 
@@ -949,7 +958,7 @@ struct ao_config {
        char            callsign[AO_MAX_CALLSIGN + 1];
        uint8_t         apogee_delay;           /* minor version 1 */
        int16_t         accel_minus_g;          /* minor version 2 */
-       uint32_t        radio_frequency;        /* minor version 3 */
+       uint32_t        radio_cal;              /* minor version 3 */
 };
 
 extern __xdata struct ao_config ao_config;