hal库串口中断回调怎能延时

如题所述

使用空闲中断。HAL库中,从中断到回调函数运行了不少的程序,频繁的中断或会造成数据溢出,为了避免这个问题,使用指定接收一定长度的数据,再调用回调函数,这可以接收大数据,但是这种情况则造成了,要求每次的包是固定长度,为了解决以上一些问题,网上最常用的办法是使用空闲中断,即在串口空闲的时候,触发一次中断,通知内核,本次运输完成了。串口空闲中断的判定是:当串口开始接收数据后,检测到1字节数据的时间内没有数据发送,则认为串口空闲了。由于内核在串口接收数据到空闲这段时间,是不受理串口数据的,所以还需要使用DMA来协助把数据传送到指定的地方,当数据传输完成后,通知内核去处理。
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网