/******************************************************************************* * Function Name: UART_2_ScbModeEnableIntr ******************************************************************************** * * Summary: * Enables an interrupt for a specific mode. * * Parameters: * None * * Return: * None * *******************************************************************************/ static void UART_2_ScbEnableIntr(void) { #if(UART_2_SCB_IRQ_INTERNAL) #if(UART_2_SCB_MODE_UNCONFIG_CONST_CFG) /* Enable interrupt in NVIC */ if(0u != UART_2_scbEnableIntr) { UART_2_EnableInt(); } #else UART_2_EnableInt(); #endif /* (UART_2_SCB_MODE_UNCONFIG_CONST_CFG) */ #endif /* (UART_2_SCB_IRQ_INTERNAL) */ }
/******************************************************************************* * Function Name: UART_2_SpiUartClearRxBuffer ******************************************************************************** * * Summary: * Clears the receive buffer and RX FIFO. * * Parameters: * None * * Return: * None * *******************************************************************************/ void UART_2_SpiUartClearRxBuffer(void) { #if (UART_2_CHECK_RX_SW_BUFFER) { /* Lock from component interruption */ UART_2_DisableInt(); /* Flush RX software buffer */ UART_2_rxBufferHead = UART_2_rxBufferTail; UART_2_rxBufferOverflow = 0u; UART_2_CLEAR_RX_FIFO; UART_2_ClearRxInterruptSource(UART_2_INTR_RX_ALL); #if (UART_2_CHECK_UART_RTS_CONTROL_FLOW) { /* Enable RX Not Empty interrupt source to continue receiving * data into software buffer. */ UART_2_INTR_RX_MASK_REG |= UART_2_INTR_RX_NOT_EMPTY; } #endif /* Release lock */ UART_2_EnableInt(); } #else { UART_2_CLEAR_RX_FIFO; } #endif }
/******************************************************************************* * Function Name: UART_2_SpiUartClearTxBuffer ******************************************************************************** * * Summary: * Clears the transmit buffer and TX FIFO. * * Parameters: * None * * Return: * None * *******************************************************************************/ void UART_2_SpiUartClearTxBuffer(void) { #if (UART_2_CHECK_TX_SW_BUFFER) { /* Lock from component interruption */ UART_2_DisableInt(); /* Flush TX software buffer */ UART_2_txBufferHead = UART_2_txBufferTail; UART_2_INTR_TX_MASK_REG &= (uint32) ~UART_2_INTR_TX_NOT_FULL; UART_2_CLEAR_TX_FIFO; UART_2_ClearTxInterruptSource(UART_2_INTR_TX_ALL); /* Release lock */ UART_2_EnableInt(); } #else { UART_2_CLEAR_TX_FIFO; } #endif }