2019-07-21 06:40发布
bucker 发表于 2018-12-16 00:30 你的表达比较模糊,不知你是需要获得捕捉脉冲边沿的时间还是记录脉冲的个数。我按照我的理解来解释下捕捉的 ...
2686626192 发表于 2018-12-16 08:19 我想写一个编码器的程序,需要记录边沿次数。捕捉寄存器的值是时间而不是次数?
最多设置5个标签!
例如:
设变量A为定时器溢出计数器,A在每次发生定时器溢出时加1,发生第一次捕捉时A的值为A1,捕捉寄存器值为B1,发生第二次捕捉时A的值为A2,捕捉寄存器值为B2
则:总时间间隔=(A2-A1)×65536+(B2-B1)
如果你需要记录脉冲次数,则需要将定时器设为外部时钟方式,如果计数值可能很大,也同样需要溢出中断来解决计数溢出的问题。假如你既需要测量捕捉间隔,有需要计数的话,就必须同时使用2个定时器来完成了。
我想写一个编码器的程序,需要记录边沿次数。捕捉寄存器的值是时间而不是次数?
捕获的是定时器的计数值,需要自己通过计数周期来计算时间
定时器有编码器功能的,不需要用到捕捉。再说捕捉寄存器,记录的是脉冲发生时定时器的值。
一周热门 更多>