打印

GD32F103ZE定时器对齐输出会触发比较中断

[复制链接]
1649|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
gfiygi|  楼主 | 2024-6-11 17:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题,我使用的是GD32F103ZE,然后我写了个定时器的程序,Timer0的ch0设置为对齐模式输出互补PWM,并打开了通道0比较中断,,然后我将比较值设置的非常大(大于周期值),但是程序运行起来会不断进入比较中断,然后我又打开了事件中断,观察发现上溢出的事件中断后会进入比较中断,我想问下坛友们这个是正常现象还是我哪里设置错误了?
附件是Keil工程,没有添加事件中断的版本。

GD_Timer.zip

400.6 KB

使用特权

评论回复
沙发
lamanius| | 2024-6-27 10:15 | 只看该作者
Timer0的ch0设置为对齐模式输出互补PWM,并打开了通道0比较中断,将比较值设置为非常大,但程序运行时不断进入比较中断,这可能是由于你的设置导致的

使用特权

评论回复
板凳
cen9ce| | 2024-6-27 11:24 | 只看该作者
当你将比较值设置为非常大时,可能会导致比较中断频繁触发。因为比较值大于周期值,导致每次计数器溢出后都会触发比较中断。这可能是你遇到的问题之一

使用特权

评论回复
地板
y1n9an| | 2024-6-27 12:33 | 只看该作者
你提到打开了事件中断后观察到上溢出的事件中断后会进入比较中断。这可能是因为在定时器上溢出时,也会触发比较中断

使用特权

评论回复
5
d1ng2x| | 2024-6-27 13:46 | 只看该作者
这是定时器的正常工作机制,当定时器溢出时会触发上溢出事件中断,然后在下一个比较匹配时会触发比较中断。

使用特权

评论回复
6
w2nme1ai7| | 2024-6-27 15:04 | 只看该作者
建议你检查一下比较值和周期值的设置,确保比较值小于周期值,以避免不必要的比较中断触发

使用特权

评论回复
7
p0gon9y| | 2024-6-27 16:10 | 只看该作者
你也可以检查一下定时器的配置和中断优先级设置,确保没有其他问题导致中断频繁触发

使用特权

评论回复
8
q1d0mnx| | 2024-6-28 07:16 | 只看该作者
你用官方的例程跑一下试试呢

使用特权

评论回复
9
b5z1giu| | 2024-6-28 09:12 | 只看该作者
一般来说,你要是配置比较数值不对的话,会容易出现不断进入中断

使用特权

评论回复
10
lix1yr| | 2024-6-28 09:35 | 只看该作者
有可能是你中断优先级没设置对吧

使用特权

评论回复
11
liu96jp| | 2024-6-28 11:20 | 只看该作者
看看你的中断是不是有溢出之类的呢?

使用特权

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

本版积分规则

2

主题

3

帖子

0

粉丝