Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
我使用uart设置发送中断过程中接收,偶发会出现不在进入中断的问题,由于我使用的是中断中开接收,所以后面不再进入中断,这是什么原因呢?有一个简单的触发条件就是在此处打断点,进入一次后再运行,后续便不会再进入了。配置及实际uart的接收情况如图
应该会进两次回调,判断下事件,当真正传输完成后,再去重新接收,即 END TRANSFER
Diga
按您的意思,在中断中添加对event判断为结束传输才再次开启接收,然后在开启接收这里打断点,但是仍会出现相同问题,此处打断点也不在进入,应该不是因为这个问题。
感觉看起来像是某次启动8字节接收失败,由于这次启动失败,所以后面不在进入中断,进而不会设置下次接收。请问对此处启动接收您这边有什么可能出问题的排查建议吗?
Diga 如图,uart整体中断在出现这个bug后,在蓝色处打断点可以到达,红色处无法到达,直接原因是判断为没有使能中断所以不再进入后续,所以问题点应该就是在开启失败这里,是否有什么好一些的方式对开启进行保护,或者纠正开启失败呢
尽量别在接收期间在中断内打断点,断点只是让程序停止,但是硬件还是在接收数据,由于程序被断点,所以MCU 没法及时读取硬件内的数据,会产生溢出错误,即硬件接收已满,但没有被及时读出。 你这个看起来应该是发生什么错误了,可以注册个错误 call back 回调,看看错误原因是什么
快速上手云途开发生态
发帖前请查看
帮助改进和优化YT CONFIG TOOL,有机会抽取YTM32B1ME0 EVB哦...