Пример #1
0
/*******************************************************************************
* 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) */
}
Пример #2
0
    /*******************************************************************************
    * 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
    }
Пример #3
0
    /*******************************************************************************
    * 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
    }