用滴答定时让灯隔1s闪烁,ms级可以实现 但是试了下us级 就没有现象了
定在us级后 主函数里先运行Systick_Init()再运行LED初始化(默认灯开)灯也不亮了 定在ms级别灯是可以亮的,也可是延时闪烁,百思不得其解啊。。。
初始化函数里,SystemCoreClock/1000可以定在ms级 但是改成SystemCoreClock/1000000就无法实现,请教一下是硬件原因达不到么?还是软件还要设置什么?最多可以实现SystemCoreClock/500000
void Systick_Init(void)
{
if(SysTick_Config(SystemCoreClock/1000))
{
while(1);
}
}
static __IO uint32_t TimingDelay;
void Delay(__IO uint32_t nTime)
{
TimingDelay = nTime;
while(TimingDelay != 0);
}
void TimingDelay_Decrement(void)
{
if(TimingDelay!=0x00)
{
TimingDelay--;
}
} |