今天講解STM32F103定時(shí)器定時(shí)-中斷功能,在昨天定時(shí)器延時(shí)的軟件工程上添加TIM3定時(shí)的功能,你們也可以試著將昨天的工程添加修改得到。
今天的軟件工程下載地址(360云盤):
https://yunpan.cn/cPnJ9KYcXbPsP 訪問密碼 acd8
工程現(xiàn)象:間隔(定時(shí)器定時(shí))500ms LED變化一次, 并且串口打印
STM32F103ZE有8個(gè)定時(shí)器(TIM1 – TIM8), 改工程以TIM3定時(shí)為例。
STM32F10x的資料可以在我360云盤下載:
https://yunpan.cn/crBUdUGdYKam2 訪問密碼 ca90
關(guān)于TIM延時(shí),我把重要的幾點(diǎn)在下面分別講述,工程中沒有在這里講述的都是之前就有的,重點(diǎn)講述的是主題相關(guān)的內(nèi)容。若不明白,請關(guān)注微信公眾號(hào)“EmbeddDeveloper”查閱或留言。
現(xiàn)將重點(diǎn)講述關(guān)于TIM定時(shí)的幾點(diǎn)內(nèi)容。
一、定時(shí)器時(shí)鐘
這里的“時(shí)鐘配置”函數(shù)在bsp.c文件下面;
使能時(shí)鐘:RCC_APB1Periph_TIM3。
二、定時(shí)器配置
函數(shù)在timer.c文件下面;
詳見每一句后面都有注釋。
三、定時(shí)函數(shù)
函數(shù)在timer.c文件下面;
主要是定時(shí)ON 和OFF函數(shù),至于為什么是定時(shí)ms,這里請參考昨天的講解。
大致意思:TIM每秒計(jì)數(shù)1M次(系統(tǒng)時(shí)鐘72M, 72分頻),計(jì)數(shù)滿1000次一個(gè)周期,也就是1usX 1000 = 1ms
見timer.h里面的宏定義:TIM3_COUNTER_CLOCK、TIM3_PRESCALER_VALUE、TIM3_PERIOD_TIMING
由這幾個(gè)宏定義決定延時(shí)時(shí)間。
四、NVIC配置
函數(shù)在bsp.c文件下面;
今天的軟件工程使用了中斷,因此添加NVIC配置.
五、TIM3中斷函數(shù)
函數(shù)在stm32f10x_it.c文件下面;
主要是處理TIM3定時(shí)器中斷。
六、主函數(shù)應(yīng)用
函數(shù)在main.c文件下面;
(定時(shí)器)定時(shí)500ms跳變LED、打印(發(fā)送)字符串。
上面“gTIMTiming_Nms_FlagOver”標(biāo)志在第五點(diǎn)。
-
STM32
+關(guān)注
關(guān)注
2293文章
11032瀏覽量
365022 -
Tim
+關(guān)注
關(guān)注
0文章
84瀏覽量
18358 -
STM32F103
+關(guān)注
關(guān)注
33文章
483瀏覽量
65542
發(fā)布評論請先 登錄
第二十二章 TIM——高級(jí)定時(shí)器

第二十一章 TIM——通用定時(shí)器

第二十章 TIM——基本定時(shí)器

評論