輕則失根,躁則失君
stm32f103系列的微控制器一共有11個定時器,其中:
2個高階定時器(tim1和tim8):高階定時器不但具有基本,通用定時器的所有的功能,還具有控制交直流電動
機所有的功能,你比如它可以輸出6路互補帶死區的訊號,剎車功能等等;
4個通用定時器(tim2-tim5):除了基本的定時器的功能外,還具有測量輸入訊號的脈衝長度( 輸入捕獲) 或者
產生輸出波形( 輸出比較和pwm);
2個基本定時器(tim6和tim7):只有最基本的定時功能,。基本定時器tim6和tim7各包含乙個16位自動裝載
計數器,由各自的可程式設計預分頻器驅動;
2個看門狗定時器
1個系統嘀嗒定時器
除去看門狗定時器和系統滴答定時器的八個定時器又可以分成3個組;
tim1和tim8是高階定時器
tim2-tim5是通用定時器
tim6和tim7是基本的定時器
這8個定時器都是16位的,它們的計數器的型別除了基本定時器tim6和tim7都支援向上,向下,向上/向下這3種計數模式
向上計數模式:從0開始,計到arr預設值,產生溢位事件,返回重新計時;
向下計數模式:從arr預設值開始,計到0,產生溢位事件,返回重新計時;
**對齊模式:從0開始向上計數,計到arr產生溢位事件,然後向下計數,計數到1以後,又產生溢位,然後再
從0開始向上計數。(此種技術方法也可叫向上/向下計數)
通用定時器的時鐘**
a:內部時鐘(ck_int)
b:外部時鐘模式1:外部輸入腳(tix)
c:外部時鐘模式2:外部觸發輸入(etr)
d:內部觸發輸入(itrx):使用乙個定時器作為另乙個定時器的預分頻器
死區時間(目前還沒有做深入研究)
h橋電路為避免由於關斷延遲效應造成上下橋臂直通,有必要設定死區時間
死區時間可有效地避免延遲效應所造成的乙個橋臂未完全關斷,而另一橋臂又處於導通狀態,避免直通炸開關管。
死區時間越大,電路的工作也就越可靠,但會帶來輸出波形的失真以及降低輸出效率。
死區時間小,輸出波形要好一些,但是會降低系統的可靠性,一般這個死區時間設定為us級
元器件死區時間是不可以改變的,它主要是取決於元器件的製作工藝和材料!
原則上死區時間當然越小越好。設定死區時間的目的,其實說白了就是為了電路的安全。最佳的設定方法是:在
保證安全的前提下,設定的死區時間越小越好。以不炸功率管、輸出不短路為目的。
選中:cmsis>core;device>startup;>stdperiph drivers>exti;>framework;>gpio;>rcc;>tim;等
void tim2_init(u32 period, u32 prescaler)
void tim2_delay_ms(uint16_t ms)
定時用到的暫存器 :
1.arr暫存器
2.psc暫存器
3.模式暫存器 (向上,向下,先向上然後向下,先向下然後向上)
arr
∗psc
/72000000
=arr*psc/72000000 =
arr∗ps
c/72
0000
00=定時時間
stm32關定時器 STM32定時器TIM3程式
include led.h include delay.h include key.h include sys.h include usart.h include timer.h stm32開發板實驗8 定時器中斷實驗 int main void delay init 延時函式初始化 nvic co...
STM32學習筆記 SysTick定時器
q 什麼是systick定時器?systick 是乙個24 位的倒計數定時器,當計到0 時,將從reload 暫存器中自動重裝載定時初值。只要不把它在systick 控制及狀態暫存器中的使能位清除,就永不停息。q 為什麼要設定systick定時器?1 產生作業系統的時鐘節拍 systick 定時器被...
STM32 定時器中斷學習筆記
在stm32中,定時器相關的庫函式主要集中在韌體庫檔案 stm32f10x tim.h 和 stm32f10x tim.c 檔案中,所以在進行定時器方面的處理時,需要載入這兩個檔案進來。在進行定時器操作時,一般按如下步驟來進行 1 開啟相關外設的時鐘。以定時器tim3為例,由stm32的時鐘樹可以看...