請益量測外部輸入1KHz方波的方法

作者 wei0510 於 2016年11月08日 12:07:44
如果我想要使用PIC18F65J50量測外部輸入方波,並推測該輸入與1KHz誤差多少。PIC18F65J50以12MHz為系統頻率,並以精準度為優先考量,我想了兩個方案:

1.關閉所有interrupt,用assembly寫一個subroutine偵測input兩次上升緣之間的指令數,並配合指令週期計算出經過時間。

2.只留下CCP的interrupt,並設定CCP為capture mode每次下降緣產生interrupt,每次interrupt都先儲存CCPR的值在清除TMR的值,這樣第二次interrupt後只要每兩次的CCPR相減就知道間隔時間多久。

方案2可以不用到assembly,但相對步驟較為複雜。請問大家會比較推薦哪種作法?或是除此之外還有其他建議的方法嗎?

來自: http://www.microchip.com.tw/newbb/viewtopic.php?forum=1&topic_id=19830&post_id=73457