本帖最后由 momoto 于 2023-9-7 00:06 编辑
版主以及各位大佬好,我是小白菜鸟。最近iceasy白**的MM32G0001板子到了,测试学习过程中有个疑问,就是微秒级延时函数的问题。在标准库中的例程中只有毫秒延时函数,学习中需要使用到US级,我就尝试修改。
修改如下:
初始化延时
void PLATFORM_InitDelay(void)
{
if (SysTick_Config(RCC_GetHCLKFreq() / 1000000))
{
while (1)
{
}
}
NVIC_SetPriority(SysTick_IRQn, 0x0);
}
微秒延时函数
void PLATFORM_DelayUS(uint32_t n)
{
PLATFORM_DelayTick = n;
while (0 != PLATFORM_DelayTick)
{
}
}
毫秒延时函数void PLATFORM_DelayMS(uint32_t n)
{
uint32_t i;
for(i=0;i<n;i++)
{
PLATFORM_DelayUS(1000);
}
}
结果怎么测试都无法通过,毫秒延时函数也不能使用。刚学这方面没多久,还是新手小白,望各位大佬指点一二,感谢感谢
|