1、直接用软晌贺件延时用下DELAY()延时子程序要延时5ms,直接调兆谨拍用DELAY(5)好了种纯软件延时
//======延时(n)ms4MHz晶振下
void
DELAY(uint
n)
{
uint
j
uchar
k
for
(j=0j<nj++)
for
(k=246k>0k--)
NOP()
}
2、用定时器延时要通过计算延时时间来确定延时常数(分频比和定时器初值)
我做过30分钟延时的程序,最好用定时器中断来做,但每次进中断的时候总会消耗掉一些时间,散粗时间长了以后,累积的误差就会增加,与理论值就会有一定的差距,因此要减少进中断的绝侍次数,我在做的时候使用预分频器进行256分频后冲宏镇的时钟作为定时器的时钟源,这样误差就很小了!软件仿真的数据仅仅具备一些参考性,最好还是烧到芯片里去试试。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)