2017-01-03 19:39:48 +00:00
|
|
|
#define CTRL_ADDR 0xA000
|
|
|
|
#define DATA_ADDR 0xA001
|
|
|
|
|
|
|
|
struct UartStatusBits{
|
2017-01-07 21:12:27 +00:00
|
|
|
unsigned char RDRF:1; // bit 0
|
|
|
|
unsigned char TDRE:1;
|
|
|
|
unsigned char DCD:1;
|
|
|
|
unsigned char CTS:1;
|
|
|
|
unsigned char FE:1;
|
|
|
|
unsigned char OVRN:1;
|
|
|
|
unsigned char PE:1;
|
|
|
|
unsigned char IRQ:1; // bit 7
|
2017-01-03 19:39:48 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
union UartStatusReg {
|
|
|
|
struct UartStatusBits bits;
|
|
|
|
uint8_t byte;
|
|
|
|
};
|
|
|
|
|
|
|
|
union UartStatusReg uart_SR;
|
|
|
|
|
2017-01-03 20:18:36 +00:00
|
|
|
uint8_t incoming_char;
|
2017-01-03 19:39:48 +00:00
|
|
|
|
|
|
|
void init_uart();
|
|
|
|
|
|
|
|
void step_uart();
|