今天写一个系统延时,写一个函数通过数据库的次函数static __INLINE uint32_t SysTick_Config(uint32_t ticks)写一个毫秒的延时函数
void ms_delay_2(uint32_t ms)
{
uint32_t s = 0;
SysTick_Config(72000);//设定频率
for(s=0;s<ms;s++)
{
while( !(SysTick->CTRL)&(1<<16) );//和计数器的开关进行相与
}
SysTick->CTRL&=~SysTick_CTRL_CLKSOURCE_Msk;//判断是否 计数 结束~
}
将频率修改一下就成了微秒的了
void ms_delay_2(uint32_t ms)
{
uint32_t s = 0;
SysTick_Config(72);//设定频率
for(s=0;s<ms;s++)
{
while( !(SysTick->CTRL)&(1<<16) );//和计数器的开关进行相与
}
SysTick->CTRL&=~SysTick_CTRL_CLKSOURCE_Msk;//判断是否 计数 结束~
}