stm8的tim2、tim3、tim5是16位通用暫存器,他們的操作方法一樣。
主要功能如下
相關暫存器如下:
如果只用到定時功能的話,需要用到的暫存器有自動裝載暫存器arr、預分頻暫存器pscr、事件產生暫存器egr、狀態暫存器sr、控制暫存器cr、中斷使能暫存器ier。
此處用tim2實驗,定時器2初始化**如下:
void timer2_init( void )
首先設定自動重裝載值,此處設定為1000,也就是計數器從0開始計數,當計數到1000時,產生乙個中斷,然後從0開始重新計數。
下來設定分頻係數
系統預設使用的是內部16m晶振,設定分頻值為4,定時器頻率就為16m / ( 2^4 ) = 1mhz,計數值設定為1000,這樣中斷一次就是1ms。
下來使能計數器,開啟更新中斷。這樣定時器初始化工作就設定完成了。
下來編寫中斷函式
#pragma vector = 15 // iar中的中斷號,要在stvd中的中斷號上加2
__interrupt void timer2_handle( void ) //1ms 定時中斷
}
進入中斷函式中首先清除中斷標誌位,下來統計中斷次數,因為中斷1次為1ms,當時間到達1s後,對led燈狀態取反。這樣通過定時器2的定時功能就可以實現led燈1s中閃爍一次。 STM8學習總結三 TIM1定時器使用
本文主要總結關於stm8在庫函式開發時,各條語句的含義。1 tim1初始化配置函式 函式主要作用 對計數器的引數,工作模式進行設定,並使能 void tim1 init void 關於定時器溢位值的計算 定時器溢位值 預定定時時間 us 定時器頻率 2 tim1中斷向量函式 函式主要作用 呼叫中斷執...
Stm32學習筆記三 定時器TIM
輕則失根,躁則失君 stm32f103系列的微控制器一共有11個定時器,其中 2個高階定時器 tim1和tim8 高階定時器不但具有基本,通用定時器的所有的功能,還具有控制交直流電動 機所有的功能,你比如它可以輸出6路互補帶死區的訊號,剎車功能等等 4個通用定時器 tim2 tim5 除了基本的定時...
STM8 定時計數器2
硬體平台 stm8s103 編譯環境 iar for stm8 include include 設定系統時鐘使用內部振盪器為16mhz執行。void initialisesystemclock 定時器2溢位中斷 pragma vector tim2 ovr uif vector interrupt ...