頻率測量
測頻法(計頻法)
對一段標準時間內的被測信號的上升沿數(shù)量進行計數(shù)。
測頻法誤差
計數(shù)器只能進行整數(shù)計數(shù),而在標準信號周期時間窗口內,卻不一定剛好有整數(shù)個被測信號周期。因此測頻法造成的最大測量誤差為±1個被測信號。建議用于被測信號頻率較高的情況。
測周法(計時法)
在被測信號的兩個上升沿間標準時間的計數(shù)。
測周法誤差
計數(shù)器只能進行整數(shù)計數(shù),而在標準時間窗口內,卻不一定剛好有整數(shù)個標準信號周期。建議用于被測信號頻率較低的情況。
由于SPIN0280可以很便捷的捕獲LSI和HSE的128分頻,所以使用測周法。
由一個16位可實時編程預分頻器和一個32位計數(shù)方向可調的自動裝載計數(shù)器組成,可以為用戶提供便捷的計數(shù)定時功能,計數(shù)器時鐘由預分頻器分頻得到。
TIM2具有多種用途:輸入功能(測量輸入信號的脈沖寬度、頻率,PWM輸入等),輸出功能(PWM輸出、單脈沖模式輸出等)。
本次主要介紹TIM2的輸入捕獲功能:
輸入捕獲部分包括數(shù)字濾波器、多路復用、預分頻器等,結構如下:
輸入捕獲模式下,當檢測到信號ICx上的有效邊沿后,計數(shù)器的當前值被鎖存到對應的影子寄存器上,再復制到對應的捕獲比較寄存器中。當開啟了中斷或DMA使能,發(fā)生捕獲事件時,將產生相應的中斷或DMA請求。發(fā)生捕獲事件時,會將狀態(tài)寄存器(TIM2_SR)中的捕獲標志位 CCxIF 置 1,通過配置 CCxIF=0或讀取TIM2_CCRx中的數(shù)據,清除CCxIF標志位。當CCxIF未被清零時,發(fā)生輸入捕獲事件,重復捕獲標志位CCxOF將會被置1,通過配置CCxOF=0,可以清除CCxOF標志位。
SPIN0280的通用定時器TIM2有輸入選項寄存器(TIM2_OR),可以很便捷的復用通道四,配置輸入為CH4 GPIO 或比較器輸入或LSI或HSE的128分頻
SPIN0280內部時鐘捕獲外部HSE時鐘具體步驟
1開啟HSI時鐘(8M)并倍頻(最高96MHz)
2TIM2掛載在APB1上,使能TIM2時鐘
3配置TIM2,計數(shù)器清空,由低向高計數(shù),上升沿觸發(fā),時鐘不分頻
4配置TIM2的通道4作為輸入捕獲,上升沿觸發(fā),輸入信號8分頻
5開啟TIM2通道4的時鐘中斷,并配置NVIC和編寫中斷函數(shù)
6開啟HSE時鐘,等待穩(wěn)定
7配置TIM2通道4輸入信號為HSE的128分頻
示例代碼如下:
示例輸出結果:
審核編輯:湯梓紅
-
信號
+關注
關注
11文章
2791瀏覽量
76764 -
時鐘
+關注
關注
10文章
1733瀏覽量
131480 -
定時器
+關注
關注
23文章
3248瀏覽量
114800 -
頻率測量
+關注
關注
1文章
35瀏覽量
12467 -
TIM2
+關注
關注
0文章
6瀏覽量
3656
原文標題:靈動微課堂 (第255講)|MM32SPIN0280內部時鐘捕獲外部HSE時鐘
文章出處:【微信號:MindMotion-MMCU,微信公眾號:靈動MM32MCU】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論