本帖最后由 口天土立口 于 2025-9-7 18:33 编辑
每个Cortex-M处理器内部均为SysTick计时器,为24bit倒计时计数器。
可用于计时和延时。
本次代码基于开发板:APM32E030R Micro-EVB
- /* 微秒系统滴答数 */
- volatile static uint32_t systick_per_us = 0;
- /* 上电系统毫秒数 */
- volatile uint32_t system_ms_from_poweron = 0;
- /*
- * @brief SysTick初始化
- *
- * @param priority: 中断优先级
- *
- * @retval None
- *
- */
- void bsp_systick_init(uint8_t priority)
- {
- systick_per_us = RCM_ReadHCLKFreq() / 1000;
- SysTick_Config(systick_per_us);
- NVIC_SetPriority (SysTick_IRQn, priority);
- systick_per_us /= 1000;
- }
|