Beispiel #1
0
/*
*------------------------------------------------------------------------------
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;
}
Beispiel #2
0
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;
}