打印
[技术问答]

新唐MCU的中断反应慢,是通病吗?

[复制链接]
1911|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
芯路例程|  楼主 | 2025-2-23 16:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 芯路例程 于 2025-2-23 16:35 编辑

用新唐M051做电机控制,开了个外部中断检测信号,结果发现中断响应延迟明显,比STM32慢一截!调了优先级、优化代码,还是感觉“卡卡的”,手册里也没写清楚中断响应时间。

使用特权

评论回复
沙发
a_ziliu| | 2025-2-27 14:06 | 只看该作者
M0进中断响应是16个CLOCK, 出中断是16个CLOK.
ARM的官方手册有。

使用特权

评论回复
板凳
clyu| | 2025-2-28 14:26 | 只看该作者
IO中断有debounce功能的,你看看你是不是打开了
该功能会filter几个clock才会触发中断
时钟源可以选,如果选了内部慢速时钟,那就很慢了

使用特权

评论回复
地板
hhdhy| | 2025-4-8 12:55 | 只看该作者
新唐M051单片机在外部中断响应上比STM32慢,可能是由于硬件架构、时钟配置、中断处理机制等多方面的原因。

使用特权

评论回复
5
gongqijuns| | 2025-4-8 14:16 | 只看该作者
M051内核:基于ARM Cortex-M0,主频通常为50MHz左右,性能较低。STM32内核:通常为Cortex-M3/M4,主频更高(如72MHz或更高),性能更强。

使用特权

评论回复
6
清芯芯清| | 2025-4-8 16:14 | 只看该作者
一般来说,M051的中断控制器可能不支持嵌套中断或优先级分组功能,导致中断响应延迟。STM32的中断控制器支持嵌套中断和优先级分组,响应更快。

使用特权

评论回复
7
ewyu| | 2025-4-8 16:21 | 只看该作者
系统时钟频率M051默认时钟可能未配置为最高频率(如50MHz),导致中断响应慢。解决方法:检查系统时钟配置,确保使用外部晶振并设置为最高频率

使用特权

评论回复
8
canfeil| | 2025-4-8 17:23 | 只看该作者
外部中断时钟分频,如果外部中断的时钟分频过大,可能导致检测信号延迟。

使用特权

评论回复
9
星星点点didi| | 2025-4-8 18:30 | 只看该作者
优先级分组不合理,比如说如果多个中断优先级相同,可能导致中断响应延迟。建议啊合理配置中断优先级,确保电机控制相关中断为最高优先级。

使用特权

评论回复
10
hight1light| | 2025-4-8 21:26 | 只看该作者
如果中断服务程序执行时间过长,可能导致中断响应延迟。优化ISR代码,尽量减少复杂操作(如浮点运算、函数调用等),只处理关键任务。

使用特权

评论回复
11
gra22ce| | 2025-4-9 09:16 | 只看该作者
M051不支持中断嵌套,如果低优先级中断正在执行,高优先级中断需要等待。

使用特权

评论回复
12
twinkhahale| | 2025-4-9 11:27 | 只看该作者
其实如果外部中断信号抖动较大,可能导致频繁触发中断。在硬件或软件中加入滤波处理,减少误触发。

使用特权

评论回复
13
瞌睡虫本虫| | 2025-4-9 13:51 | 只看该作者
但这也取决于具体的应用场景和配置。你可以尝试调整中断触发模式,比如从电平触发改为边沿触发,可能会有所改善。

使用特权

评论回复
14
yuliangren| | 2025-4-9 19:27 | 只看该作者
一般来说,如果电机控制需要频繁处理数据,可以使用DMA或硬件外设(如PWM、定时器)来分担CPU任务。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

43

主题

1937

帖子

1

粉丝