利用循环处理的方式实现的延时,并不精确。1、当中断发生时,CPU被打断先执行中断服务。导致执行时间变长。2、使用高级语言时,编译的结果受优化等级等多方面因素干扰,难以计算。3、在有MMU和Cache的MCU中,指令的执行速度还会受到缓存的影响。利用定时器延时:1、因为定时器累加与CPU无关,即使中断,仍然会保持计数。不受上述问题影响2、缺点需要占用定时器资源。3、功耗也会高一些