08 m3中斷系統(tǒng)8 6 stm32_systick_第1頁(yè)
08 m3中斷系統(tǒng)8 6 stm32_systick_第2頁(yè)
08 m3中斷系統(tǒng)8 6 stm32_systick_第3頁(yè)
08 m3中斷系統(tǒng)8 6 stm32_systick_第4頁(yè)
08 m3中斷系統(tǒng)8 6 stm32_systick_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、8.6 STM32_SysTick 江蘇師范大學(xué)物理與電子工程學(xué)院陳斯1什么是Systick定時(shí)器?2Systick 相關(guān)寄存器3STM32的 SysTick 配置步驟4delay文件夾講解 江蘇師范大學(xué)物理與電子工程學(xué)院陳斯什么是 SysTick 定時(shí)器 SysTick SysTick功能描述 定時(shí)器就是系統(tǒng)滴答定時(shí)器,一個(gè)24 位的倒計(jì)數(shù)定時(shí)器,計(jì)到0 時(shí),將從RELOAD 寄存器中自動(dòng)重裝載定時(shí)初值。只要不把它在 SysTick控制及狀態(tài)寄存器中的使能位清除,就永不停息,即使在睡眠模式下也能工作。 SysTick異常 定時(shí)器被捆

2、綁在NVIC中, 用于產(chǎn)生 SysTick 異常(異常號(hào):15)。 江蘇師范大學(xué)物理與電子工程學(xué)院陳斯粗略的延時(shí)函數(shù)/粗延時(shí)函數(shù),微秒void delay_nus(u16 time)u16 i=0;/毫秒級(jí)的延時(shí)while(time-)void delay_nms(u16 time)u16 i=0;while(time-)i=12000;/自己定義while(i-) ;i=10;/自己定義while(i-) ; 江蘇師范大學(xué)物理與電子工程學(xué)院陳斯SysTick相關(guān)寄存器寄存器描述SysTick 控制和狀態(tài)寄存器SysTick 自動(dòng)重裝

3、載除值寄存器SysTick 當(dāng)前值寄存器SysTick 校準(zhǔn)值寄存器CTRLLOAD VAL CALIB 江蘇師范大學(xué)物理與電子工程學(xué)院陳斯數(shù)據(jù)結(jié)構(gòu)typedef struct IO uint32_tCTRL; IO uint32_tLOAD; IO uint32_tVAL; I uint32_tCALIB; SysTick_Type;SysTick相關(guān)寄存器CTRL 寄存器描述 江蘇師范大學(xué)物理與電子工程學(xué)院陳斯SysTick相關(guān)寄存器LOAD寄存器描述VAL寄存器描述 江蘇師范大學(xué)物理與電子工程學(xué)院陳

4、斯SysTick 配置步驟SysTick的時(shí)鐘來(lái)源可以是HCLK的8分頻或就是HCLK具體是哪種可通過(guò)配置“控制和狀態(tài)寄存器(CTRL)”來(lái)選擇。 江蘇師范大學(xué)物理與電子工程學(xué)院陳斯SysTick 配置步驟產(chǎn)生1ms的延時(shí):在編寫的main.c中有:/前面的省略 ; /定義一個(gè)全局變量,用于計(jì)數(shù)計(jì)時(shí)值extern vu32 TimingDelay/中間部分省略void Delay ( u32 nTime )/我們須要的廷時(shí)函數(shù)TimingDelay = nTime ; /把廷時(shí)值賦值給TimingDelay;/等待計(jì)時(shí)時(shí)間到,在SysTick的中斷函數(shù)while(

5、 TimingDelay != 0 );/中每1ms對(duì)TimingDelay減1 江蘇師范大學(xué)物理與電子工程學(xué)院陳斯SysTick 配置步驟int main(void)if (SysTick_Config( SystemCoreClock / 1000) ) ;/配置SysTick,裝入倒數(shù)值,設(shè)系統(tǒng)時(shí)鐘為72MHz,/則要定時(shí)1ms,輸入的倒數(shù)值為72000/如果寫成if (SysTick_Config(SystemCoreClock / 1000000)/那就是定時(shí)1us了。當(dāng)然這里初值的最大值只能到=16777215 while(1)/user codeSy

6、sTick_Config(SystemCoreClock / 10)函數(shù)的形參就是systick重裝定時(shí)器的值。systick計(jì)數(shù)頻率為每秒72000000次,所以7200000次就是1/10秒,也就是100ms。SysTick是1個(gè)24bit遞減計(jì)數(shù)器,通過(guò)對(duì)SysTick控制與狀態(tài)寄存器的設(shè)置,可選擇HCLK時(shí)鐘(72M)或HCLK的8分頻作為SysTick的時(shí)鐘源。/V3.5默認(rèn)為HCLK時(shí)鐘SysTick的重裝寄存器決定了定時(shí)器頻率。若SysTick的時(shí)鐘源是72M,SystemFrequency = 72000000Hz所以 SysTick_Config(SystemCoreClock / 1000); 就是1ms時(shí)基。 江蘇師范大學(xué)物理與電子工程學(xué)院陳斯SysTick 配置步驟在stm32f10x_it.c中:/前面省略 vu32

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論