lzhpsky
工控小菜鳥
級別: 論壇先鋒
精華主題: 0
發(fā)帖數量: 1045 個
工控威望: 1151 點
下載積分: 2796 分
在線時間: 767(小時)
注冊時間: 2009-08-02
最后登錄: 2024-10-16
查看lzhpsky的 主題 / 回貼
樓主  發(fā)表于: 2011-05-27 13:59



1.我用HSC0的10模式,來計數AB相脈沖,我用狀態(tài)表監(jiān)控HSC0的數值不斷變化,可是SMD38當前計數值怎么沒變化?

2.當前的計數值在哪個寄存器里?怎么取出來?

3.設定值是6000,計數值到6000后產生中斷,這個沒問題,但是編碼器轉動時,HSC0還會計數。怎么寫程序就可以實現計數到6000后,在中斷里HSC0里面的當前值馬上清零,旋轉編碼器旋轉時,還不會計數。等再啟動時才開始計數,就是說到6000后怎么清掉HSC0的值。
woaqqdfq
級別: 略有小成
精華主題: 0
發(fā)帖數量: 54 個
工控威望: 208 點
下載積分: 490 分
在線時間: 18(小時)
注冊時間: 2009-09-08
最后登錄: 2016-04-15
查看woaqqdfq的 主題 / 回貼
1樓  發(fā)表于: 2011-05-27 21:07
1.不能直接監(jiān)視SMD38的值;
2.想要讀取HSC0的當前值可以在程序里直接雙字尋址HC0,也可以用MOV_DW指令傳送到一個雙字寄存器地址;
3.可能是在中端程序里設置的HSC0參數不正確,或者設置玩參數并將當前值清零后沒有再次調用HSC指令啟用高速計數器,請樓主查查看!