问题:我使用的微控制器仅支持返回16位编码器值,但对于我的应用,我需要32位。 问:无论如何实现/拥有我自己的32位计数器来根据返回的16位计数器值重新计算滴答数?
答案 0 :(得分:1)
大多数计数器都具有翻转模式,我们的计数为零或计为所有计数并重新加载。每次翻转/重新加载都有一个变量计数。
假设你要数到8000000 = 0x7A1200。您可以将计时器计数为256,然后计算当您达到0x7A12翻转时已经计数到800万的翻转次数。
你必须这样做,你不要错过任何翻转/重新加载。例如,每次重新加载/翻转可以计算0x7A12,然后在256次翻转后计算到800万次。为您的代码提供更长的时间段,以便查看重新加载/翻转。