/* main.c */ extern void reset_hardware(void); extern int main(void); /* ot.c */ extern unsigned ot_override_ch; extern unsigned ot_override_dhw; extern void ot_rx_thm(uint8_t *msg, int error); extern void ot_rx_blr(uint8_t *msg, int error); extern void ot_request_usr(unsigned type, unsigned id, uint8_t *data); extern void ot_tick(void); extern void ot_init(void); /* ot_phy_rx.c */ extern void exti9_5_isr(void); extern void ot_phy_rx_tick(void); extern void ot_phy_rx_init(void); /* ot_phy_tx.c */ extern void ot_phy_tx_tick(void); extern int ot_tx_thm(uint8_t *data); extern int ot_tx_blr(uint8_t *data); extern void ot_phy_tx_init(void); /* led.c */ extern void led_red_set(int i); extern void led_green1_set(int i); extern void led_green2_set(int i); extern void led_blink(void); extern void led_yellow_set(int i); extern void led_tick(void); extern void led_init(void); /* ticker.c */ extern void delay_us(uint32_t d); extern int tick_dispatch; extern void sys_tick_handler(void); extern void delay_ms(uint32_t d); extern void ticker_init(void); /* usart.c */ extern ring_t rx1_ring; extern ring_t tx1_ring; extern ring_t rx3_ring; extern ring_t tx3_ring; extern void usart1_isr(void); extern void usart1_queue(uint8_t d); extern void usart1_drain(void); extern int usart1_write(char *ptr, int len, int blocking); extern void usart3_isr(void); extern void usart3_queue(uint8_t d); extern void usart3_drain(void); extern int usart3_write(char *ptr, int len, int blocking); extern void usart_init(void); /* ring.c */ extern void ring_init(volatile ring_t *r, uint8_t *buf, size_t len); extern int ring_write_byte(volatile ring_t *r, uint8_t c); extern int ring_read_byte(volatile ring_t *r, uint8_t *c); extern int ring_write(volatile ring_t *r, uint8_t *buf, size_t len, int blocking); extern int ring_empty(volatile ring_t *r); /* stdio.c */ extern unsigned block_stdio; extern int _open(const char *name, int flags, int mode); extern int _close(int file); extern int _write(int file, char *buf, int nbytes); extern int _read(int file, char *buf, int nbytes); extern int _lseek(int file, int offset, int whence); extern int isatty(int file); extern void stdio_drain(void); /* util.c */ extern char int_to_hex_char(int a); /* commit.c */ extern char scm_version[]; /* cmd.c */ extern void cmd_usart_dispatch(void); /* pic.c */ extern void pic_passthru(void); extern void pic_init(void); /* 1wire.c */ extern void onewire_tick(void); extern int onewire_reset(void); extern void onewire_write_byte(uint8_t v); extern uint8_t onewire_read_byte(void); extern void onewire_read_bytes(uint8_t *buf, int n); extern void onewire_write_bytes(const uint8_t *buf, int n); extern int onewire_select(const Onewire_addr *a); extern int onewire_reset_and_select(const Onewire_addr *a); extern int onewire_wait_complete(unsigned timeout); extern int onewire_check_crc(uint8_t *buf, int n, uint8_t v); extern int onewire_search(void); extern void onewire_init(void); /* temp.c */ extern void temp_tick(void); extern void temp_dispatch(void); extern uint16_t temp_ch_return(void); extern uint16_t temp_supply_inlet(void); /* ds1820.c */ extern int ds1820_read(const Onewire_addr *a, int *temp); /* pressure.c */ extern uint16_t pressure_ch(void); extern void pressure_tick(void); extern void pressure_init(void); /* adc.c */ extern void adc_dump(void); extern volatile unsigned timeout; extern void adc_tick(void); extern int adc_calibrate(void); extern int adc_convert_start(unsigned channel); extern int adc_convert_done(void); extern unsigned adc_convert_get(void); extern unsigned adc_convert(unsigned channel); extern void adc_init(void);