Files
CHJ/user/MCU/lhl_systick.c

50 lines
1.5 KiB
C
Raw Normal View History

2026-03-20 21:19:53 +08:00
#include "../main/SystemInclude.h"
/**------------------------------------------------------------------------
* @brief <EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>ϵͳ<EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD> (SysTick)
* @note <EFBFBD><EFBFBD><EFBFBD><EFBFBD> SysTick <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳʱ<EFBFBD>ӽ<EFBFBD><EFBFBD>ģ<EFBFBD>ͨ<EFBFBD><EFBFBD>Ϊ 1ms<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD>ú<EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>Ρ<EFBFBD>
* @param <EFBFBD><EFBFBD>
* @example SysTickInit();
**/
void SysTickInit(void)
{
LHL_SysTick_Init(LHL_TICK_PRIO_LOWEST); // <20><><EFBFBD><EFBFBD>Systick<63><6B><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD><EFBFBD>
}
/**------------------------------------------------------------------------
* @brief <EFBFBD><EFBFBD>ȡϵͳ<EFBFBD><EFBFBD><EFBFBD>еĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @return <EFBFBD><EFBFBD>ϵͳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϴθ<EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD>32λ<EFBFBD>޷<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @note <EFBFBD><EFBFBD>ֵ<EFBFBD><EFBFBD> SysTick <EFBFBD>ж<EFBFBD>ÿ 1ms <EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>Σ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>
* @example u32 current_ms = GetSystemMs();
**/
u32 GetSystemMs(void)
{
return LHL_GetTick();
}
/**------------------------------------------------------------------------
* @brief SysTick <EFBFBD>жϷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ 1ms <EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>Σ<EFBFBD>
* @note <EFBFBD>ڲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> LHL_IncTick() <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳʱ<EFBFBD>ӽ<EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD>ü<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><EFBFBD> LHL_Delay()<EFBFBD><EFBFBD>LHL_GetTick() <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ͼ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ܡ<EFBFBD>
* @param <EFBFBD><EFBFBD>
**/
void SysTick_Handler(void)
{
/* <20><><EFBFBD><EFBFBD>Systick<63><6B><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ */
LHL_IncTick();
}
/**------------------------------------------------------------------------
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @param ms: Ҫ<EFBFBD><EFBFBD>ʱ<EFBFBD>ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* @note <EFBFBD>˺<EFBFBD><EFBFBD><EFBFBD>Ϊ LHL_Delay(ms) <EFBFBD>ļ򵥷<EFBFBD>װ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ÿ<EFBFBD>ȡ<EFBFBD><EFBFBD>ע<EFBFBD>͡<EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>ڼ<EFBFBD> CPU <EFBFBD>޷<EFBFBD>ִ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڳ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>
* @example systick_delay_ms(1000); // <20><>ʱ 1 <20><>
**/
//void systick_delay_ms(u32 ms)
//{
// LHL_Delay(ms);
//}