A. 怎麼用msp430F149定時器A或定時器B的比較捕獲模式測試一個方波的頻率
1.一開始讓430的內部定時器跑起來,你要做的就是設置定時器的時鍾,是否分頻,是否中斷,計數模式這些。要是用到捕獲模式測頻率就要選擇成捕獲模式,還有上升沿或者下降沿捕獲這些。
2.之後的過程是這樣的,當單片機的特殊引腳檢測到你設定的觸發信號之後就會立刻把當前時刻的TAR(定時器的16位計數器)中的數據記錄到CCR中(也是一個16位計數器)。然後就跳進一個中斷,如果你要測頻的話就記錄下此刻的CCR值,挑出中斷,隨後在下一個觸發信號到來時再記錄一次CCR的值,兩次數據之差就是再除以定時器時鍾頻率就得到了被測信號一個方波的時間了。
3.關於特殊引腳,就是一個復用的腳,可以作為一般IO口,也可以作為捕獲信號入口,就像msp430F449中P2.0還可以作為定時器A,CCR2的信號捕獲口。
4.如果你要測的信號頻率太低還需要一個溢出中斷,溢出的話就是一個62256,最後溢出了幾個就加上幾個62256即可。
B. 用msp430單片機如何檢測輸入方波頻率 望哪位大神給個程序 講解一下 類型是149的,不勝感激!
430單片機的定時器模塊有一個捕獲比寄存器,通過設置相關的寄存器,讓其工作在捕獲模塊,捕獲的方式可選擇,分別為上升沿捕獲,下降沿捕獲和上升下降都捕獲。測方波頻率的話,選第一個吧。捕獲模塊的工作原理是:當外部事件發生時,也就是你的方波的上升沿到來時,單片機的捕獲埠就會捕獲到一個脈沖,然後定時器的16位計數器就會計數,最後計數器的值就是你測得的脈沖個數。測頻率一般有兩種方法,一個是測周法,一個是測頻法,網路一下這兩個方法,了解一下原理。我們採用最簡單的方法,那就是測一秒內捕獲的脈沖個數,那個值就是頻率。至於相關寄存器的設置,自己多看看430的常用模塊介紹,了解一下定時器的那些寄存器的功能和設置方法。程序網上很多,我這兒也有,想要的話,看我ID,然後發郵件給我,我給你發過去。
多查查資料,只要願意去學,一定會懂的,祝成功!