STM32中的tic與toc,用SysTick統(tǒng)計(jì)代碼段執(zhí)行時(shí)間
SysTick_CTRL,0xE000E010--控制寄存器
SysTICK_LOAD,0xE000E014--重載寄存器
SysTick_VAL,0xE000E018--當(dāng)前值寄存器
SysTick_CALRB,0xE000E01C--校準(zhǔn)值寄存器
首先看SysTick->CTRL控制寄存器:寄存器內(nèi)有4個(gè)位具有意義
第0位:ENABLE,Systick使能位(0:關(guān)閉Systick功能;1:開(kāi)啟Systick功能)
第1位:TICKINT,Systick中斷使能位(0:關(guān)閉Systick中斷;1:開(kāi)啟Systick中斷)
第2位:CLKSOURCE,Systick時(shí)鐘源選擇(0:使用HCLK/8作為Systick時(shí)鐘;1:使用HCLK作為Systick時(shí)鐘)
第16位:COUNTFLAG,Systick計(jì)數(shù)比較標(biāo)志,如果在上次讀取本寄存器后,SysTick已經(jīng)數(shù)到了0,則該位為1。如果讀取該位,該位將自動(dòng)清零
SysTick_LOAD重載寄存器:
SysTick_VAL當(dāng)前值寄存器:
也是個(gè)24位的寄存器,讀取時(shí)返回當(dāng)前倒計(jì)數(shù)的值;寫它則使之清零,同時(shí)還會(huì)清除在SysTick控制及狀態(tài)寄存器中的COUNTFLAG標(biāo)志。
評(píng)論