#define AO_SERIAL_SPEED_9600 1
#define AO_SERIAL_SPEED_19200 2
#define AO_SERIAL_SPEED_57600 3
+#define AO_SERIAL_SPEED_115200 4
#if HAS_SERIAL_0
extern volatile __xdata struct ao_fifo ao_serial0_rx_fifo;
char
ao_serial0_getchar(void);
+int
+_ao_serial0_pollchar(void);
+
void
ao_serial0_putchar(char c);
char
ao_serial1_getchar(void);
-char
-ao_serial1_pollchar(void);
+int
+_ao_serial1_pollchar(void);
void
ao_serial1_putchar(char c);
char
ao_serial2_getchar(void);
-char
-ao_serial2_pollchar(void);
+int
+_ao_serial2_pollchar(void);
void
ao_serial2_putchar(char c);
ao_serial2_set_speed(uint8_t speed);
#endif
+#if HAS_SERIAL_3
+extern volatile __xdata struct ao_fifo ao_serial3_rx_fifo;
+extern volatile __xdata struct ao_fifo ao_serial3_tx_fifo;
+
+char
+ao_serial3_getchar(void);
+
+int
+_ao_serial3_pollchar(void);
+
+void
+ao_serial3_putchar(char c);
+
+void
+ao_serial3_drain(void);
+
+void
+ao_serial3_set_speed(uint8_t speed);
+#endif
+
void
ao_serial_init(void);