永发信息网

stm32串口中断接收数据被持续的外部中断会导致接收数据异常么

答案:2  悬赏:80  手机版
解决时间 2021-04-05 03:19
  • 提问者网友:孤凫
  • 2021-04-04 17:49
stm32串口中断接收数据被持续的外部中断会导致接收数据异常么
最佳答案
  • 五星知识达人网友:一叶十三刺
  • 2021-04-04 17:59
首先你要知道,UART不是与ARM体系有关,而是与具体的ARM体系CPU有关。就是说不同的CPU的UART控制器是不一样的这个程序只能给你一个思路了有些CPU这些发送,接收中断是可以在寄存器直接设置一个阀值的比如你的发送缓存为8个字节,接收也是8个字节你可以设置,当发送缓存里的数据少于1的时候就产生中断当接收缓存里数据大于4时,就产生中断目前很多CPU都可以直接设置内部的UART寄存器来完成这个配置如果没有UART控制器来完成。就是说你的UART发送和接收都是自己控制的你可以在自己的发送,接收的中断处理程序里面模拟一个缓存,来实现这些功能。我想这个应该不成问题吧就是2个全局变量记录缓存的用量分别记录接收和发送还有2个全局数组,比如8个字节,用来缓存接收发送的数据你的UART中断程序如果判断到是接收,首先把数据放到缓存,然后接收缓存计数+1,判断是否超过某一个阀值,如果是的话,就做一些自定义的事情发送是同样的道理
全部回答
  • 1楼网友:空山清雨
  • 2021-04-04 18:52
在中断函数里加入清除中断标志位的语句,就不会发生持续的中断了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯