2016-05-17 66 views
0

問題:我使用的微控制器僅支持返回16位編碼器值,但對於我的應用程序,我需要32位。 問題:無論如何,要實現/使用我自己的32位計數器來基於返回的16位計數器值重新計算滴答?如何基於16位FTM計數器實現32位計數器?

回答

1

大多數計數器有一個翻轉模式我們的計數爲零或計數到所有1和重新加載。每次翻轉/重新加載都有一個變量計數。

假設你要計數到8000000 = 0x7A1200。你可以讓計時器計數到256,然後計算當你計算到800萬時0x7A12翻轉的次數。

你必須這樣做,你不要錯過任何翻車/重新加載。例如,您可以計算每個重新加載/滾動0x7A12,然後在256次滾動後,您已經計數到800萬。讓您的代碼有更長的時間來查看是否有重新加載/滾動。