SysTick有一下四個寄存器
CTRL 控制狀態寄存器 LOAD 重裝載寄存器 VAL 當前值寄存器 CALIB 校準值寄存器 首先來看 SysTick->CTRL 這個寄存器的第2位 用來選擇時鐘 為0是表示選擇系統時鐘/8(HCLK/8);為1時表示選擇系統時鐘為時鐘源(HCLK); 第二位是中斷使能位 為1時表示開啟SysTick中斷 為0表示不開啟 第一位是SysTick的使能位 1表示使能 0則失能. 接著看SysTick->LOAD 這是24位的寄存器 給這個寄存器一個值 開啟定時器后每經過一個時鐘周期將減一 知道為0 然后觸發中斷(當然要保證中斷使能) VAL表示寄存器 當前狀態下的值; 如果要使用SysTick 直接使用 函數 SysTick_Config() 這個函數的參數是LOAD的重裝載值 這個函數定義使用的是系統的時鐘 優先級最低;
|