您的位置: proteus仿真社区 >> 论坛 >> 新手入门 >> 查看帖子
字体: 小 中 大 | 打印 发表于: 2008-9-09 02:07 作者: chen88 来源: proteus仿真社区
最新回复
lzl520f4 (2008-9-09 08:52:18)
chen88 (2008-9-09 10:27:24)
{
m=fabs(get-set);
n=(get-set);
if(n>0)
{
P1_3=0;
P1_4=1;
get--;
display(get);
delay(20);
}
if(n<0)
{
P1_3=0;
P1_4=0;
get++;
display(get);
delay(20);
}
if(n==0&&m==0)
{
P1_3=0;
P1_4=1;
P1_5=1;
P1_6=1;
P1_7=0;
}
if(m>20)
{
P1_5=0;
P1_6=1;
P1_7=1;
}
if((0<m)&&(m<10))
{
P1_7=0;
P1_6=1;
P1_5=1;
}
if((m>=10)&&(m<=20))
{
P1_6=0;
P1_7=1;
P1_5=1;
}
}
void init()
{
TMOD=0x10;
TH1=(65536-50000)/256; //定时器初始化
TL1=(65536-50000)%256;
EA=1;
ET1=1;
TR1=1;
}
void timer0() interrupt 3
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
t0++;
if(t0==2400)
{
t0=0;
TR1=0;
P1_3=1;
}
}
void main()
{
adc0808();
get=gt*10;
set=240;
m=fabs(get-set);
n=(get-set);
while(1)
{
if(m==n)
init();
display(get);
bj();
if(P1_0==0||P1_1==0||P1_2==0)
{
delay(5);
if(P1_0==0||P1_1==0||P1_2==0)
{
key=1;
while(key)
setplay();
bj();
}
}
}
} (部分子函数程序省略)
问题是当m==n的时候,timer0没有工作的
要实现的功能是 当m==n超过2分钟的时候,P1_3=1;
[ 本帖最后由 chen88 于 2008-9-9 10:47 编辑 ]