|
再使用MODBUS模板时,在发送完所有字节后
/* 数据bit位全部发送完毕的中断 */
else if (USART_GetITStatus(_pUart->uart, USART_IT_TC) != RESET)
{
//if (_pUart->usTxRead == _pUart->usTxWrite)
if (_pUart->usTxCount == 0)
{
/* 如果发送FIFO的数据全部发送完毕,禁止数据发送完毕中断 */
USART_ITConfig(_pUart->uart, USART_IT_TC, DISABLE);
/* 回调函数, 一般用来处理RS485通信,将RS485芯片设置为接收模式,避免抢占总线 */
if (_pUart->SendOver)
{
_pUart->SendOver();
}
}
使用回调函数_pUart->SendOver();来将控制端置为接收模式。
请问这个控制前需要加入一定时间的延时吗?以保证在硬件上,所有字节已经完整发送完毕。对于不同的485芯片需要进行相应的时间调整吗? |
|