STM32H750XB_RT-THREAD/18-SysTick—系统定时器/User/systick/bsp_SysTick.c

68 lines
1.5 KiB
C
Raw Normal View History

2025-07-21 06:34:29 +00:00
/**
******************************************************************************
* @file bsp_SysTick.c
* @author fire
* @version V1.0
* @date 2016-xx-xx
* @brief SysTick ϵͳ<EFBFBD>δ<EFBFBD>ʱ<EFBFBD><EFBFBD>10us<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> 1us 10us 1ms <EFBFBD>жϡ<EFBFBD>
******************************************************************************
* @attention
*
* ʵ<EFBFBD><EFBFBD>ƽ̨:Ұ<EFBFBD><EFBFBD> STM32 H750 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD>̳ :http://www.firebbs.cn
* <EFBFBD>Ա<EFBFBD> :http://firestm32.taobao.com
*
******************************************************************************
*/
#include "./systick/bsp_SysTick.h"
static __IO u32 TimingDelay;
/**
* @brief <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD> SysTick
* @param <EFBFBD><EFBFBD>
* @retval <EFBFBD><EFBFBD>
*/
void SysTick_Init(void)
{
/* SystemFrequency / 1000 1ms<6D>ж<EFBFBD>һ<EFBFBD><D2BB>
* SystemFrequency / 100000 10us<EFBFBD>ж<EFBFBD>һ<EFBFBD><EFBFBD>
* SystemFrequency / 1000000 1us<EFBFBD>ж<EFBFBD>һ<EFBFBD><EFBFBD>
*/
if (HAL_SYSTICK_Config(SystemCoreClock / 100000))
{
/* Capture error */
while (1);
}
}
/**
* @brief us<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,10uһ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ
* @param
* @arg nTime: Delay_us( 1 ) <EFBFBD><EFBFBD>ʵ<EFBFBD>ֵ<EFBFBD><EFBFBD><EFBFBD>ʱΪ 1 * 10us = 10us
* @retval <EFBFBD><EFBFBD>
*/
void Delay_us(__IO u32 nTime)
{
TimingDelay = nTime;
while(TimingDelay != 0);
}
/**
* @brief <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><EFBFBD><EFBFBD>
* @param <EFBFBD><EFBFBD>
* @retval <EFBFBD><EFBFBD>
* @attention <EFBFBD><EFBFBD> SysTick <EFBFBD>жϺ<EFBFBD><EFBFBD><EFBFBD> SysTick_Handler()<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*/
void TimingDelay_Decrement(void)
{
if (TimingDelay != 0x00)
{
TimingDelay--;
}
}
/*********************************************END OF FILE**********************/