[技术问答]

【M2354】timer运行时修改CMPDAT的值,导致定时时间比需要的时间长。

[复制链接]
293|10
手机看帖
扫描二维码
随时随地手机跟帖
麻花油条|  楼主 | 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 | 显示全部楼层
那就开连续模式?但连续模式好像也不是适合所有场景的,那咋办呢?

使用特权

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

本版积分规则

262

主题

1384

帖子

2

粉丝