之前在网上找了个stm32的modbus文件,和标准库匹配的,挺方便的。 现在做新工程都想该用HAL了,可原来的文件就不合适了。 原来是,串口每接收或发送一个数据后,就开启定时器,大概3毫秒,就是9600波特率对应的3.5个数据的时间。如果在定时器未触发前,又接收到数据后,就重置这个定时器。如果时间到了,则认为一帧结束,转到数据处理。 现在串口发送和接收都不知道该用哪个函数合适了... 感觉HAL库太不灵活了。
或者楼主重构HAL库的串口中断
评分
查看全部评分
听说HAL LL又出来了
后来就是用空闲中断解决的,参考论坛和群里朋友提供的方法。
后来又看了硬石的freemodbus的HAL库版本,发现串口中断这里最后也是用类似标准库那样重写的。
what???
太考验人了,老了、学不动了
小弟万分感谢啊啊啊啊
HAL库,如何写个串口接收或发送后的超时判断?
有源码吗,我第一次接触HAL之前都是学的标准库
硬石有HAL库版本的freemodbus的例程,可供参考。