MCU串口接收不定长度数据时,无法判断接收数据大小和什么时候接收完成,导致数据不好判断处理。以上问题可用空闲中断做解决,但串口没收数据接收时,空闲中断触发。新唐科技的NUC130的串口超时中断与这一机制刚好匹配,啥也不啰嗦上原理和代码配置。
新唐科技MCU130/140寄存器手册可上网查找下载。
新塘科技NUC130的串口超时中断通过看MCU寄存器手册,要配以下几个地方
第一个是打开超时中断的使能开关
第二个看串口超时中断标志的判断位是第几位
第三个查看超时中断寄存器的描述,初始处还要定义超时时长,MCU寄存器手册说TimeOut时长要在41-255区间
代码部分:
超市中断的TOIC在代码中怎么配置,先在编辑器全局搜索TOIC关键字,发现TOIC的寄存器是通过sParam->u8TimeOut定义的,我们只要在初花定义sParam->u8TimeOut即可
串口接收中断和超时中断的代码
这样超时中断就搞定,剩下的数据处理看大家定义
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/h201206/article/details/136438067
|