1.8.7.1 1.25.6.1 1.26.5.1 1.27.5.1 1.28.6.1 1.36.7.1 1.41.5.1 1.42.3.1 FLEXCOMx_USART_WriteThresholdSet Function
C
/* x = FLEXCOM instance number */
/* Ring buffer mode */
void FLEXCOMx_USART_WriteThresholdSet(uint32_t nBytesThreshold)
Summary
This API allows the application to set a threshold level on the number of free space available in the transmit buffer
Description
This API allows the application to set a threshold level on the number of free space available in the transmit buffer. Once the threshold is reached a notification is given to the application if it is enabled.
Precondition
FLEXCOMx_USART_Initialize must have been called for the associated FLEXCOM_USART instance.
Parameters
Param | Description |
---|---|
nBytesThreshold | Threshold value for free space in the transmit buffer after which a notification must be given |
Returns
None
Example
uint8_t txBuffer[10]; volatile bool txThresholdEventReceived = false; void usartWriteEventHandler(FLEXCOM_USART_EVENT event, uintptr_t context ) { txThresholdEventReceived = true; } //----------------------------------------------------------// // Register a callback for write events FLEXCOM0_USART_WriteCallbackRegister(usartWriteEventHandler, (uintptr_t) NULL); // Set TX threshold - 10 or more bytes of free space in the transmit buffer FLEXCOM0_USART_WriteThresholdSet(10); // Enable notifications. Disable persistent notifications. FLEXCOM0_USART_WriteNotificationEnable(true, false); // First time transmit 5 bytes FLEXCOM0_USART_Write((uint8_t*)txBuffer, 5); if (txThresholdEventReceived == true) { // Transmit buffer has space for 10 or more characters FLEXCOM0_USART_Write((uint8_t*)txBuffer, 10); }
Remarks
None