void serialAppInitTransport()
{
halUARTCfg_t uartConfig;
// configure UART
uartConfig.configured = TRUE;
uartConfig.baudRate = SBP_UART_BR;//波特率
uartConfig.flowControl = SBP_UART_FC;//流控制
uartConfig.flowControlThreshold = SBP_UART_FC_THRESHOLD;//流控制阈值,当开启flowControl时,该设置有效
uartConfig.rx.maxBufSize = SBP_UART_RX_BUF_SIZE;//uart接收缓冲区大小
uartConfig.tx.maxBufSize = SBP_UART_TX_BUF_SIZE;//uart发送缓冲区大小
uartConfig.idleTimeout = SBP_UART_IDLE_TIMEOUT;
uartConfig.intEnable = SBP_UART_INT_ENABLE;//是否开启中断
uartConfig.callBackFunc = sbpSerialAppCallback;//uart接收回调函数,在该函数中读取可用uart数据
// start UART
// Note: Assumes no issue opening UART port.
(void)HalUARTOpen(SBP_UART_PORT, &uartConfig);
return;
}
上面是别人的例程,我看了一下HAL源码,uartConfig.idleTimeout这个变量根本是没有用到,我之前一直以为这是一个超时回调时间,但无论怎么设置都好像不对,如果这个变量没有和,为什么还放着误导人呢?
da qin zheng sheng:
使用硬件流控制模式,这个应该在低功耗方式工作的。
TI中文支持网


