stm32f432位計數器計數

2021-07-09 11:23:10 字數 560 閱讀 1689

這是第一次發帖,就之前在專案上遇到的一點小挫折寫點感受。

大家都知道stm32f4片內資源豐富,外中外設功能強大,擁有兩個32位計數器,這對很多需要對脈衝計數的專案來說很是很好的,不僅省掉了外部計數器的擴充套件,節約pcb空間,程式設計也簡單很多的。由於本人也是剛接觸f4系列的微控制器,只是覺得很強大,在32位計數器脈衝計數上也遇到了問題,在網上也搜尋了很多資料,但是都沒有具體的例程供參考,本人對暫存器了解不是很深刻,喜歡庫函式,最後經過幾天的苦思冥想和多次實踐,最終終於成功了,貼出配置檔案如下:

void tim2_int_init(u32 arr,u16 psc)

下面是定時器4定時1秒來讀取計數值並通過串列埠列印的函式:

void tim4_irqhandler(void)

tim_clearitpendingbit(tim4,tim_it_update);  //

}但是最後在實測時發現這個計數器計數不準確,頻率越大偏差越大,100khz時列印出的值大概是99k左右,1khz時列印出九百九十五左右,但是計數值可以超過750khz的(實測過的),這個和定時器初始化時的自動重裝載值和預分頻有關。希望能幫到大家。

STM8 定時計數器2

硬體平台 stm8s103 編譯環境 iar for stm8 include include 設定系統時鐘使用內部振盪器為16mhz執行。void initialisesystemclock 定時器2溢位中斷 pragma vector tim2 ovr uif vector interrupt ...

二位四進製計數器 實驗一 定時器 計數器功能實驗

一 實驗目的 1 熟悉plc實驗裝置以及三菱程式設計軟體gxdeveloper8.86。2 掌握定時器 計數器的程式設計方法,並學會定時器和計數器的擴充套件方法。二 實驗裝置 1 三菱可程式設計序控制器fx3u 48mr 2 電腦及三菱程式設計軟體gxdeveloper8.86程式設計軟體 3 電腦...

STM32 使用定時器計數 暫存器版本

學過51微控制器的同學,都知道51微控制器只提供了2個定時器 2個外部中斷 c52 還有定時器2 在編寫乙個比較大的工程的時候,有時候會發現定時器完全不夠用,而32完全可以克服這一困難 stm32f103系列可使用的定時器8個,其中通用定時器有tmi1 tim7 高階定時器tim0 tim8 而在這...