打印
[疑难问答]

时间编程

[复制链接]
1437|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
麻辣鸭脖子|  楼主 | 2010-4-10 22:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
怎么编写时间延时程序如一个小时 十个小时  一天甚至更长谢谢啦!
沙发
strang| | 2010-4-11 07:35 | 只看该作者
用定时器编写就能实现。

使用特权

评论回复
板凳
David_ming| | 2010-4-11 10:55 | 只看该作者
本帖最后由 David_ming 于 2010-4-13 14:09 编辑

中断里边定义个变量

ulong Counter = 0,DelayTime;
sbit TimeFlag = 0;
void Timer0(void) interrupt 1
{         
         Counter++;
         if(Counter == DelayTime)TimeFlag = 1;
}

delay(ulong i)
{
        EA = 0;
        TimeFlag = 0;
        DelayTime = Counter+i+1;
        EA = 1;
}

void main(void)
{
       delay(10);
       while(1)
       {
              ..............
              ..............
              if(TimeFlag)break;
       }
}

使用特权

评论回复
地板
xiaomifan| | 2010-4-12 20:54 | 只看该作者
2# strang
定时器能延时这么长吗?举个例子让菜鸟开开眼

使用特权

评论回复
5
易达口香糖| | 2010-4-12 21:02 | 只看该作者
楼主真有想象力

使用特权

评论回复
6
lpydidi| | 2010-4-12 21:53 | 只看该作者
要延时那么久,干什么用的啊

使用特权

评论回复
7
littleapple| | 2010-4-13 16:03 | 只看该作者
楼主想做闹钟程序吗?

使用特权

评论回复
8
love_life| | 2010-4-13 19:11 | 只看该作者
这个比较简单,就是在计时器中断里定义几个全局变量,每次中断加一,一直到你想要的时间就跳出来

使用特权

评论回复
9
ershisi| | 2010-4-13 21:15 | 只看该作者
这个比较简单,就是在计时器中断里定义几个全局变量,每次中断加一,一直到你想要的时间就跳出来
love_life 发表于 2010-4-13 19:11

这个是不是三楼的程序想要表达的意思吗

使用特权

评论回复
10
xiaomifan| | 2010-4-14 22:32 | 只看该作者
9# ershisi
我觉得差不多是一个意思

使用特权

评论回复
11
麻辣鸭脖子|  楼主 | 2010-5-6 19:50 | 只看该作者
6# lpydidi
用的地方多着呢

使用特权

评论回复
12
麻辣鸭脖子|  楼主 | 2010-5-6 19:50 | 只看该作者
谢谢David_ming

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

454

帖子

1

粉丝