久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

STM32中的tic與toc,用SysTick統計代碼段執行時間

作者:劉蕊飛   來源:本站原創   點擊數:  更新時間:2014年03月02日   【字體:

STM32中的systick一共有4個寄存器,名稱和地址分別是:

SysTick_CTRL,        0xE000E010  --  
控制寄存器
SysTICK_LOAD,     0xE000E014  --  
重載寄存器
SysTick_VAL,        0xE000E018  --  
當前值寄存器
SysTick_CALRB,   0xE000E01C  --   
校準值寄存器

首先看SysTick->CTRL控制寄存器:寄存器內有4個位具有意義




0位:ENABLE,Systick 使能位  0:關閉Systick功能;1:開啟Systick功能)
1位:TICKINT,Systick 中斷使能位    0:關閉Systick中斷;1:開啟Systick中斷)
2位:CLKSOURCESystick時鐘源選擇  0:使用HCLK/8 作為Systick時鐘;1:使用HCLK作為Systick時鐘)
16位:COUNTFLAG,Systick計數比較標志,如果在上次讀取本寄存器后,SysTick 已經數到了0,則該位為1。如果讀取該位,該位將自動清零

SysTick_LOAD  
重載寄存器: 




 

SysTick_VAL
當前值寄存器: 


也是個24位的寄存器,讀取時返回當前倒計數的值;寫它則使之清零,同時還會清除在SysTick 控制及狀態寄存器中的COUNTFLAG 標志。


SysTick_CALRB  
校準值寄存器: 


這個寄存器好像目前的水平我還用不到,大體意思明白點,把英文說明放這吧:
31 NOREF 1=沒有外部參考時鐘(STCLK 不可用)0=外部參考時鐘可用
30 SKEW1=校準值不是準確的1ms 0=校準值是準確的1ms
[23:0] Calibration value
Indicates the calibration value when the SysTick counter runs on HCLK max/8 as external clock. The value is product dependent, please refer to the Product Reference Manual, SysTick Calibration Value section. When HCLK is programmed at the maximum frequency, the SysTick period is 1ms. If calibration information is not known, calculate the calibration value required from the frequency of the processor clock or external clock.

類似matlab里的tic與toc函數,用來統計程序代碼執行需要的時間:
uint16_t OverFlowTimes=0;

void tic(void)                            //程序開始計時
{
SysTick->CTRL |= (1<<2);   //時鐘選擇,HCLK
SysTick->CTRL |= (1<<1);   //中斷使能
SysTick->VAL=0X00;            //當前數值寄存器清零,并清除溢出標志位
SysTick->LOAD=0XFFFFFF;     //計數器賦初值
SysTick->CTRL |= (1<<0);     //開啟計數器
}

void toc(void)                            //結束計時
{
float ElaspTime;
uint32_t ClkNum;
SysTick->CTRL &= ~(1<<0); //關閉計數器
ClkNum=SysTick->VAL; //讀取計數器的值
ElaspTime=(OverFlowTimes*((float)0xffffff/SystemCoreClock)+(float)(0xffffff-ClkNum)/SystemCoreClock); //計算時間
OverFlowTimes=0;
printf("\r\nEscaple time is %f\r\n",ElaspTime);

}
/*溢出的次數*/
void SysTick_Handler(void)
{
OverFlowTimes++;
}


 

關閉窗口

相關文章

主站蜘蛛池模板: 黄色片免费网站 | 精品国产一区二区三区四区 | 欧美一级淫片免费视频魅影视频 | 可以免费看的毛片 | 四虎最新地址 | 欧美激情小视频 | 伊人国产在线 | 黄色国产视频 | 高清一级片 | 亚洲成年人在线观看 | 中国一级黄色 | 久久久久久久久久一区二区三区 | 欧美a一级| 久久合 | 日韩av在线免费播放 | 93久久精品日日躁夜夜躁欧美 | 成人a毛片| 亚洲国产欧美在线 | 日韩精品视频在线 | 欧美一区二区 | 天堂一区二区三区 | 久久久久久国产精品 | 亚洲自拍偷拍视频 | 久久综合99 | 九九在线 | 亚洲国产精品久久久久久久 | 一区二区三区四区视频在线观看 | 亚洲国产一区二区三区 | 成人免费视频网址 | 国产精品成人免费精品自在线观看 | 成人在线视频免费 | www国产视频 | av免费播放| 91成人小视频 | 亚洲欧美日韩国产 | 国产天堂在线观看 | 免费看片黄色 | 中文字幕在线观看网址 | 长河落日连续剧48集免费观看 | 香蕉视频在线播放 | 国产色站|