PIC单片机如何设计延时
PIC单片机的延时基本有三种,第一种是自己设计的delay()函数,第二种是直接调用库自带的delay()函数,最后一种就是利用其自带的Time定时器。当然不管是自己设计的delay()函数还是库自带的delay()函数的精度都低于Time0定时器的精度,Time定时器是单片机内部的硬件寄存器模块,而delay()函数是利用自加自减来实现延时,代码进行顺序执行,每走一步其实都会产生时间上的误差。
当在时间精度要求不高的场合可以使用delay()函数,而对于时间精度要求相对较高应该使用Time定时器。具体设计方法及使用方法如下。
自己设计一个delay()函数
自己写的delay()函数主要是利用fo循环的自加自减来完成的,今天这里我们就用for循环的自减来实现一个1s的延时,然后用1s做LED流水灯的延时让LED流水灯亮起来。
下面展示一些 内联代码片
。
// A code block
var foo = 'bar';
void delay(uint time)
{
uint a,b;
for(a=time;a>0;a–)
for(b=110;b>0;b–);
}
// An highlighted block
var foo = 'bar'<