VL (23.07.2015 14:54, просмотров: 1) ответил Скрипач на Вот и я о том же. Регистры UART это явно не то, что нужно абстрагировать.
Почему это нельзя проабстрагировать регистры UART ? что такого уникального они делают? десяток макросов! // UART
#define READ_RX_TO(x) x=u0rb
#define UART_SEND(x) u0tb=x
#define TRANSMIT_RUNNING (ti_u0c1 == 0)
#define RECEIVE_RUNNING (ri_u0c1 == 0)
#define TRANSMIT_OVER (txept_u0c0 ==1)
#define UART_RECEIVE_VECTOR UART0_RX
#define UART_TRANSMIT_VECTOR UART0_TX
#define GET_UART_RX() (u0rb)
#define ENABLE_UART_RX() re_u0c1=1
#define DISABLE_UART_RX() re_u0c1=0
#define DISABLE_UART_TX() te_u0c1=0
#define ENABLE_UART_TX() te_u0c1=1
#define UART_TX_ENABLED() (te_u0c1==1)