你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

关于stm32g431串口与FDCAN数据不同同时处理问题

[复制链接]
spongboe 提问时间:2024-4-17 19:45 / 已解决

本人使用的是stm32g431cbu6的芯片,主频设置160Mhz,串口700000波特率,CAN仲裁域1M,数据域2M。串口配置DMA接收,fdcan为普通中断。二者的中断优先级相同,为什么当数据同时到达的时候,会优先处理串口的数据,即便我降低串口中断的优先级也不行;唯一可行的是降低串口的波特率,但是这样不符合我的需求,请问大佬们有遇到过这种情况吗~感谢解惑!!!

收藏 评论1 发布时间:2024-4-17 19:45

举报

1个回答
xmshao 最优答案 回答时间:2024-4-18 08:30:16
关于中断响应问题:


如果抢占优先级不相同时,不同中断间可以发生抢占;


如果抢占优先级一样,两个中断请求同时出现时,子优先级高的优先响应;


如果抢占优先级和子优先级一样,两个中断请求同时出现时,在中断矢量表里对应的中断编号小的优先响应。


具体到你这里,如果UART和CAN中断的抢占和子优先级都一样,如果同时出现时会优先响应UART中断,


因为STM32手册里的中断矢量表VECTOR TABLE里可以看到UART的中断矢量编号要小于FDCAN中断的。

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版