STM32之SysTick原理
一、STM32的SysTick簡介
?
SysTick是一個24位的系統(tǒng)節(jié)拍定時器system tick timer,SysTick,具有自動重載和溢出中斷功能,所有基于Cortex_M3處理器的微控制器都可以由這個定時器獲得一定的時間間隔。
systick的作用:
在單任務(wù)引用程序中,因為其架構(gòu)就決定了它執(zhí)行任務(wù)的串行性,這就引出一個問題:當某個任務(wù)出現(xiàn)問題時,就會牽連到后續(xù)的任務(wù),進而導(dǎo)致整個系統(tǒng)崩潰。要解決這個問題,可以使用實時操作系統(tǒng)(RTOS).
因為RTOS以并行的架構(gòu)處理任務(wù),單一任務(wù)的崩潰并不會牽連到整個系統(tǒng)。這樣用戶出于可靠性的考慮可能就會基于RTOS來設(shè)計自己的應(yīng)用程序。這樣SYSTICK存在的意義就是提供必要的時鐘節(jié)拍,為RTOS的任務(wù)調(diào)度提供一個有節(jié)奏的“心跳”。
微控制器的定時器資源一般比較豐富,比如STM32存在8個定時器,為啥還要再提供一個SYSTICK?原因就是所有基于ARM Cortex_M3內(nèi)核的控制器都帶有SysTick定時器,這樣就方便了程序在不同的器件之間的移植。而使用RTOS的第一項工作往往就是將其移植到開發(fā)人員的硬件平臺上,由于SYSTICK的存在無疑降低了移植的難度。
?? SysTick定時器除了能服務(wù)于操作系統(tǒng)之外,還能用于其它目的:如作為一個鬧鈴,用于測量時間等。要注意的是,當處理器在調(diào)試期間被喊停(halt)時,則SysTick定時器亦將暫停運作。
systick的時鐘選擇:
二、SYSTICK的寄存器
總結(jié)
以上是生活随笔為你收集整理的STM32之SysTick原理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华为鸿蒙osbeta,久等了!华为鸿蒙O
- 下一篇: S5PV210裸机之SD卡