/* Put one character to the USB output queue */
void
-ao_usb_putchar(uint8_t c);
+ao_usb_putchar(char c);
/* Get one character from the USB input queue */
-uint8_t
+char
ao_usb_getchar(void);
/* Flush the USB output queue */
};
extern __xdata uint16_t ao_cmd_lex_i;
-extern __xdata uint8_t ao_cmd_lex_c;
+extern __xdata char ao_cmd_lex_c;
extern __xdata enum ao_cmd_status ao_cmd_status;
void
ao_cmd_decimal(void);
struct ao_cmds {
- uint8_t cmd;
+ char cmd;
void (*func)(void);
const char *help;
};
#define AO_LOG_POS_NONE (~0UL)
struct ao_log_record {
- uint8_t type;
+ char type;
uint8_t csum;
uint16_t tick;
union {
struct {
- uint16_t serial;
+ int16_t ground_accel;
uint16_t flight;
} flight;
struct {
ao_serial_tx1_isr(void) interrupt 14;
#endif
-uint8_t
+char
ao_serial_getchar(void) __critical;
void
-ao_serial_putchar(uint8_t c) __critical;
+ao_serial_putchar(char c) __critical;
void
ao_serial_init(void);
/* 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)
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_ */