下面两种延时,那一种好呢?

[复制链接]
3027|13
 楼主| HARD_WORK 发表于 2009-4-3 11:46 | 显示全部楼层 |阅读模式
1,void Timer0Int(void) interrupt 1
{
 Timer0_1sFlag=1;

}
....
while(!Timer0_1sFlag);
 LcdDisp(abc);
.....


.....
   Delay1S();
   LcdDisp(abc);
.....
jiyiche 发表于 2009-4-3 12:01 | 显示全部楼层

第一种精确

第一种精确
songbangyan 发表于 2009-4-3 16:58 | 显示全部楼层

建议第一种

中断延时可以让单片机干其他的事。但是程序延时单片机是当机状态。
mtm2000 发表于 2009-4-3 17:05 | 显示全部楼层

恩的

对哦   程序延时 哪个延时的时间可以执行多少条别的语句和干别的事哦 
ayb_ice 发表于 2009-4-3 21:31 | 显示全部楼层

都不好

NE5532 发表于 2009-4-3 21:50 | 显示全部楼层

你这两个程序有什么区别?

看上去用了中断,单片机还是在那里死等。
在没有其他中断的前提下,两者精度一样,有其他中断,定时器精确一点。
常来21ic 发表于 2009-4-3 23:15 | 显示全部楼层

同意LS两个都一摸一样

 楼主| HARD_WORK 发表于 2009-4-21 14:52 | 显示全部楼层

看上去用了中断,单片机还是在那里死等。

xie xie...
快乐的水手 发表于 2009-4-21 15:06 | 显示全部楼层

这样就不会死等了

if(Timer0_1sFlag)
{
    Timer0_1sFlag=0;
    LcdDisp(abc);
}
 楼主| HARD_WORK 发表于 2009-4-21 15:37 | 显示全部楼层

我需要它过一秒后再显示LcdDisp(abc);

谢谢。。。
bjc125 发表于 2009-4-21 17:05 | 显示全部楼层

中断多的话用第一种优势明显显些吧

machunshui 发表于 2009-4-21 17:25 | 显示全部楼层

还是OS方便

ucosII,


OSTimeDly(OS_TICKS_PER_SEC /2);
 LcdDisp(abc);


执行OSTimeDly(OS_TICKS_PER_SEC /2);
OS调度执行别的任务,时间到再回来执行
LcdDisp(abc);
red1986 发表于 2009-4-21 20:52 | 显示全部楼层
常来21ic 发表于 2009-4-21 21:22 | 显示全部楼层

呵呵 os确实方便,准备加入os阵营!

您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

8

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部