修改delay_ms()函数
void delay_ms(uint16_t nms)
{
// if (delay_osrunning && delay_osintnesting == 0) /* 如果OS已经在跑了,并且不是在中断里面(中断里面不能任务调度) */
// {
// if (nms >= g_fac_ms) /* 延时的时间大于OS的最少时间周期 */
// {
// delay_ostimedly(nms / g_fac_ms); /* OS延时 */
// }
// nms %= g_fac_ms; /* OS已经无法提供这么小的延时了,采用普通方式延时 */
// }
// delay_us((uint32_t)(nms * 1000)); /* 普通方式延时 */
uint32_t i;
for (i=0; i<nms; i++)
{
delay_us(1000);
}
}
|