summaryrefslogtreecommitdiffstats
path: root/app/prototypes.h
blob: 9fec5857643cfbfac692be4ae925bcf76ee641aa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
/* dfu.c */
extern const struct usb_dfu_descriptor dfu_function;
extern const struct usb_interface_descriptor dfu_iface;
extern int dfu_control_request (usbd_device * usbd_dev,
                                struct usb_setup_data *req, uint8_t ** buf,
                                uint16_t * len,
                                int (**complete) (usbd_device * usbd_dev,
                                                  struct usb_setup_data *
                                                  req));
/* main.c */
extern int main (void);
/* usb.c */
extern const struct usb_device_descriptor dev;
extern const struct usb_interface ifaces[];
extern const struct usb_config_descriptor config;
extern usbd_device *usbd_dev;
extern int usb_is_suspended;
extern int usb_running;
extern void usb_tick (void);
extern int usb_wakeup_host (void);
extern int class_control_request (usbd_device * usbd_dev,
                                  struct usb_setup_data *req, uint8_t ** buf,
                                  uint16_t * len,
                                  int (**complete) (usbd_device * usbd_dev,
                                                    struct usb_setup_data *
                                                    req));
extern void usb_set_config (usbd_device * usbd_dev, uint16_t wValue);
extern uint8_t usbd_control_buffer[128];
extern void usb_init (void);
extern void usb_run (void);
/* led.c */
extern void led_init (void);
extern void led_tick (void);
/* ticker.c */
extern volatile uint32_t ticks;
extern void delay_us (uint32_t d);
extern void sys_tick_handler (void);
extern void delay_ms (uint32_t d);
extern int timed_out (uint32_t then, unsigned int ms);
extern void ticker_init (void);
/* i2c.c */
/* lcd.c */
/* cdcacm.c */
extern const struct usb_interface_descriptor comm_iface[];
extern const struct usb_interface_descriptor data_iface[];
extern int cdcacm_control_request (usbd_device * usbd_dev,
                                   struct usb_setup_data *req, uint8_t ** buf,
                                   uint16_t * len,
                                   int (**complete) (usbd_device * usbd_dev,
                                                     struct usb_setup_data *
                                                     req));
extern void cdcacm_data_tx (void *buf, size_t len);
extern void cdcacm_data_rx_cb (usbd_device * usbd_dev, uint8_t ep);
/* usart.c */
extern ring_t rx1_ring;
extern ring_t tx1_ring;
extern ring_t rx2_ring;
extern ring_t tx2_ring;
extern void usart1_isr (void);
extern void usart2_isr (void);
extern int _write (int file, char *ptr, int len);
extern int usart1_tx (void *ptr, int len);
extern int usart2_tx (void *buf, size_t len);
extern void usart1_queue (uint8_t d);
extern void usart2_queue (uint8_t d);
extern void usart2_drain (void);
extern void usart1_drain (void);
extern void usart_init (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);
/* serial.c */
extern void serial_poll (void);
/* gpio.c */
extern int hook;
extern void exti9_5_isr (void);
extern void exti15_10_isr (void);
extern void toggle_fake_hook (void);
extern void gpio_tick (void);
extern void gpio_init (void);
/* console.c */
extern int console_tx (void *buf, size_t len);
/* buzzer.c */
extern int ringing;
extern void buzzer_on (void);
extern void buzzer_off (void);
extern void buzzer_set_freq (int hz);
extern void buzzer_init (void);
extern void ring_tick (void);
extern void ring_off (void);
extern void ring (int l);
/* modem.c */
extern void modem_send (char *buf);
extern void modem_line (void);
extern void modem_byte (uint8_t b);
extern void answer_call (void);
extern void terminate_call (void);
extern void modem_tick (void);
extern void modem_init (void);
/* dialstr.c */
extern void dialstr_clear (void);
extern void dialstr_digit (int digit);
extern void dialstr_dial (void);
extern void dialstr_tick (void);