/* *------------------------------------------------------------------------------ UINT8 UART_read(void) * * Summary : return the data from the rxBuff * Input : None * * Output : the data from the rxBuff at index = rxDataIndex * *------------------------------------------------------------------------------ */ UINT8 UART1_read(void) { UINT8 data; #if (defined __18F8722_H )|| (defined __18F46K22_H) DISABLE_UART1_RX_INTERRUPT(); data = uart[0].rxBuff[uart[0].rxDataIndex++]; if( uart[0].rxDataIndex >= RX_PACKET_SIZE) { uart[0].rxDataIndex = 0; } if( uart[0].rxDataCount > 0 ) --uart[0].rxDataCount; ENABLE_UART1_RX_INTERRUPT(); #else DISABLE_UART_RX_INTERRUPT(); data = uart.rxBuff[uart.rxDataIndex++]; if( uart.rxDataIndex >= RX_PACKET_SIZE) { uart.rxDataIndex = 0; } if( uart.rxDataCount > 0 ) --uart.rxDataCount; ENABLE_UART_RX_INTERRUPT(); #endif return data; }
BOOL UART1_hasData(void) { BOOL result = FALSE; #ifdef __18F8722_H DISABLE_UART1_RX_INTERRUPT(); if(uart[0].rxDataCount > 0) result = TRUE; ENABLE_UART1_RX_INTERRUPT(); #else DISABLE_UART_RX_INTERRUPT(); if(uart.rxDataCount > 0) result = TRUE; ENABLE_UART_RX_INTERRUPT(); #endif return result; }