arduino控制数码管显示数值受初始值影响十位与初始值一致原因
时间: 2023-09-30 09:11:33 浏览: 74
【esp32基于arduino ide】一位/四位数码管的使用方法
在使用 millis() 函数来进行定时控制时,我们通常会记录一个初始时间值(比如 millis() 的返回值),然后通过计算当前时间与初始时间之间的时间差来确定是否需要执行某个操作。但是,如果我们在计算时间差时没有考虑到初始值对计算结果的影响,就可能会出现问题。
在你的情况下,可能是因为你在计算当前时间与初始时间之间的时间差时,没有考虑到十位数值与初始值一致的情况。比如,如果初始时间为 5000 毫秒,当前时间为 5010 毫秒,那么计算出来的时间差是 10 毫秒,而如果你的初始值为 5010,那么计算出来的时间差就是 0 毫秒,这就会导致你的数码管没有更新显示。
为了解决这个问题,你可以在计算时间差时,先将当前时间减去初始时间,然后再将得到的时间差除以你需要的时间间隔(比如每隔 1 秒更新一次数码管),这样就可以避免初始值对计算结果的影响了。
阅读全文