X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fstm%2Fao_arch.h;h=ce3a22e262e6ce8c7a7c330c3aa66b732b9b4620;hb=059f09dbca4703c25b42389b54c6510331c39485;hp=c4b98c7a4ef9ec0808d7b30d3c1d16b4c2f7bbd9;hpb=faf2bea4fdb3dca7fbed35423a4fe4459ee92ceb;p=fw%2Faltos diff --git a/src/stm/ao_arch.h b/src/stm/ao_arch.h index c4b98c7a..ce3a22e2 100644 --- a/src/stm/ao_arch.h +++ b/src/stm/ao_arch.h @@ -27,6 +27,8 @@ #define AO_STACK_SIZE 1024 +#define AO_LED_TYPE uint16_t + /* Various definitions to make GCC look more like SDCC */ #define ao_arch_naked_declare __attribute__((naked)) @@ -143,17 +145,59 @@ extern const uint16_t ao_serial_number; #define ao_arch_critical(b) do { cli(); do { b } while (0); sei(); } while (0) -#define AO_ARM_NUM_ADC 12 - -struct ao_adc { - uint16_t tick; /* tick when the sample was read */ - uint16_t adc[AO_ARM_NUM_ADC]; /* samples */ -}; - /* * For now, we're running at a weird frequency */ #define STM_APB1 (16000000 * 6 / 4) +void ao_lcd_stm_init(void); + +void ao_lcd_font_init(void); + +void ao_lcd_font_string(char *s); + +#define USE_SERIAL_STDIN (USE_SERIAL_1_STDIN + USE_SERIAL_2_STDIN + USE_SERIAL_3_STDIN) + +char +ao_serial1_getchar(void); + +void +ao_serial1_putchar(char c); + +char +ao_serial1_pollchar(void); + +void +ao_serial1_set_speed(uint8_t speed); + +char +ao_serial2_getchar(void); + +void +ao_serial2_putchar(char c); + +char +ao_serial2_pollchar(void); + +void +ao_serial2_set_speed(uint8_t speed); + +char +ao_serial3_getchar(void); + +void +ao_serial3_putchar(char c); + +char +ao_serial3_pollchar(void); + +void +ao_serial3_set_speed(uint8_t speed); + +extern uint32_t ao_radio_cal; + +void +ao_adc_init(); + #endif /* _AO_ARCH_H_ */