當前位置:
首頁 >
STM32----SysTick实现监控开机时长
發布時間:2025/3/15
41
豆豆
生活随笔
收集整理的這篇文章主要介紹了
STM32----SysTick实现监控开机时长
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
SysTick實現監控開機時長
systick系統定時器,又叫滴答定時器。在我看來比TIM使用起來要簡單。
在實現監控開機時長的例子中:配置定時器以相同的時間間隔進入中斷,在中斷不斷累加計數變量,然后利用計數變量和時間間隔計算出相應的時長。
首先是對SysTick的配置,主要配置其進入中斷的時長,一般來說SysTick使用的AHB時鐘,計數計數器加一的時間為1/72000000s.在SysTick_Config()函數中參數為進入中斷的計數。配置好后,計數器中的數值即為配置的數,每一個時鐘周期計數器中的數減一,當計數器中的數為0時觸發中斷,進入中斷服務函數。
SystemCoreclock的值為系統時鐘的值72MHz。對于配置函數SysTick_Config(),配置成功返回0,配置失敗返回1.
SysTick->CTRL表示SysTick的使能位。
在這里SysTick_Config()函數的參數為SystemCoreclock/1000,經過計算可以知道進入中斷一次的時間為1ms。
t = (1/72000000) * (SystemCoreclock/1000)
設置變量在中斷中統計進入中斷的次數,從而得到時間。
變量Delay_Times用來統計進入中斷的次數,變量count_1s和flag控制串口每隔1秒鐘向上位機打印一次。
主函數:
總結
以上是生活随笔為你收集整理的STM32----SysTick实现监控开机时长的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: malloc 不能返回动态内存
- 下一篇: ps如何修改图片大小尺寸_PS常用操作