[技术问答] 【M2354】timer运行时修改CMPDAT的值,导致定时时间比需要的时间长。

[复制链接]
 楼主| 麻花油条 发表于 2023-1-20 11:26 | 显示全部楼层 |阅读模式
只有连续模式,当timer运行时修改CMPDAT值,计数器会继续计数;其他模式,当timer运行时修改CMPDAT,都会导致计数器清零重新开始计数。
B1lanche 发表于 2023-5-19 14:12 | 显示全部楼层
在连续模式下,修改CMPDAT会使计数器的值加1
Annie556 发表于 2023-5-19 15:16 | 显示全部楼层
可以用这个代码试试timer.After(duration); CMPDAT = CMPDAT + 1
Carmen7 发表于 2023-5-19 16:22 | 显示全部楼层
连续模式用这个timer.After(duration);  CMPDAT = CMPDAT
Belle1257 发表于 2023-5-19 17:28 | 显示全部楼层
在递减CMPDAT的地方使用计数器变量来计算计数器递减后的值,然后将其设置回CMPDAT
Allison8859 发表于 2023-5-19 20:38 | 显示全部楼层
这是这个寄存器的基本功能吧?
Emily999 发表于 2023-5-19 21:45 | 显示全部楼层
你可以把他弄个静态的?是不是会好点
Betty996 发表于 2023-5-20 07:03 | 显示全部楼层
没研究过,你可以自己定一个变量,然后判断这个变量就好了,不用CMPDAT
Carina卡 发表于 2023-5-20 08:16 | 显示全部楼层
是的,定时时间会比需要的时间长很多
alxd 发表于 2023-5-20 10:34 | 显示全部楼层
你这就相当于重装了,但不是溢出重装
Betty1299 发表于 2023-5-20 14:01 | 显示全部楼层
那就开连续模式?但连续模式好像也不是适合所有场景的,那咋办呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

297

主题

1591

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部

297

主题

1591

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部