你的程序給的不全還不能完全判斷對否。不過可以給你個思路。方案1:編碼器要用高速計數(shù)器不帶外部清零的用程序每500ms讀出高速計數(shù)器數(shù)值做計算解算出速度。然后高速計數(shù)器清零復(fù)位。方案2:編碼器是AB相帶Z相的,用帶外部復(fù)位的AB相高速計數(shù),這個程序處理比較麻煩速度解算周期要小于機器運行的最小周期。然后定時讀出高速計數(shù)的值與上次讀出值做比較(這個比較相當(dāng)麻煩要考慮跨零位具體辦法自己想,想不出來在問我。)然后在解算速度。