From 9d87c925a9eaa4fc256be3173c14a20d1469472d Mon Sep 17 00:00:00 2001 From: fishsoupisgood Date: Wed, 9 Sep 2020 11:53:37 +0100 Subject: everything, mostly, working --- radiator-plc/stm32/app/prototypes.h | 80 +++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 radiator-plc/stm32/app/prototypes.h (limited to 'radiator-plc/stm32/app/prototypes.h') diff --git a/radiator-plc/stm32/app/prototypes.h b/radiator-plc/stm32/app/prototypes.h new file mode 100644 index 0000000..2347f01 --- /dev/null +++ b/radiator-plc/stm32/app/prototypes.h @@ -0,0 +1,80 @@ +/* hexdump.c */ +extern void hexdump(void *_d, int len); +/* main.c */ +extern volatile int request_search; +extern int main(void); +/* ring.c */ +extern void ring_init(ring_t *r, uint8_t *buf, size_t len); +extern int ring_write_byte(ring_t *r, uint8_t c); +extern int ring_read_byte(ring_t *r, uint8_t *c); +extern int ring_write(ring_t *r, uint8_t *buf, size_t len); +extern int ring_empty(ring_t *r); +/* ticker.c */ +extern volatile uint32_t ticks; +extern uint32_t clock_scale; +extern void delay_us(uint32_t d); +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 unsigned locked; +extern void usart_ticker(void); +extern void usart1_isr(void); +extern int _write(int file, char *ptr, int len); +extern void usart1_queue(uint8_t d); +extern void usart1_queue_buf(void *buf, size_t len); +extern void usart1_drain(void); +extern void usart_init(void); +/* watchdog.c */ +extern void watchdog_init(void); +extern void sausages(void); +/* led.c */ +extern void led_init(void); +extern void led1_set(void); +extern void led1_clear(void); +extern void led_tick(void); +/* 1wire.c */ +extern int onewire_reset(void); +extern void onewire_one(void); +extern void onewire_zero(void); +extern int onewire_read(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); +/* inputs.c */ +extern int input_get(unsigned r); +extern void inputs_init(void); +/* outputs.c */ +extern void output_set(unsigned r); +extern void output_clear(unsigned r); +extern void outputs_set(unsigned v); +extern void output_write(unsigned r, unsigned v); +extern void outputs_init(void); +/* logic.c */ +extern volatile int temp[8]; +extern int low_limit[8]; +extern int high_limit[8]; +extern int valve_state[8]; +extern void mqtt_dispatch(char *type, char *who, char *what, char *msg); +extern void logic_tick(void); +extern void logic_slow_tick(void); +extern void logic_dispatch(void); +/* ds18b20.c */ +extern unsigned extract_leu16(uint8_t *d); +extern int extract_les16(uint8_t *d); +extern int ds18b20_read_sp(const Onewire_addr *a, uint8_t *buf, unsigned len); +extern int ds18b20_write_sp(const Onewire_addr *a, uint8_t *buf, unsigned len); +extern int ds18b20_convert(const Onewire_addr *a, unsigned timeout); +extern int ds18b20_set_12(const Onewire_addr *a); +extern int ds18b20_read(const Onewire_addr *a, int *temp); +extern int ds18b20_set_12_convert(const Onewire_addr *a); +extern int ds18b20_set_12_convert_and_read(const Onewire_addr *a, int *temp); -- cgit v1.2.3