| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5454 人关注过本帖
标题:求助:if语句执行过程中条件改变如何才能继续执行后面的语句?
取消只看楼主 加入收藏
yang7403
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-4-27
结帖率:0
收藏
已结贴  问题点数:20 回复次数:6 
求助:if语句执行过程中条件改变如何才能继续执行后面的语句?
例:
void main()  
{
while(1)
{
if(P0_0==1) //如果P0.0为高电平
{
LED=0; //点亮一个LED灯
delayms(5000); //如果在这个延时的5秒内,P0.0转为了低电平,程序则不会继续执行后面的语句,我需要继续执行,该如何处理?
......
}
}
}

以上请大位大虾指点,谢谢。在线等 ,急!!!
搜索更多相关主题的帖子: 条件 void LED灯 高电平 在线 
2012-04-27 13:27
yang7403
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-4-27
收藏
得分:0 
跳出循环还会执行后面的语句吗?
2012-04-27 13:48
yang7403
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-4-27
收藏
得分:0 
我的实例程序如下,请帮忙直接修改一下:
void int0(void) interrupt 0 using 0
{
delay1ms(20);
if(k3==0)
{

delay1ms(1000);
if(P1==0xff)  //如果P1口全为高电平
{
delay1ms(300);    //延时0.3秒
if(P1==0xff)  //如果P1还是全为高电平
{
 LED1=0;
 JDQ=0; //在这里继电器吸合后,P1立即改变不再为OXFF了,此程序就不再往下执行,请改一下,可以继续执行下面的语句。
if(P1!=0xff)
break; //用这样的话编绎会出错
delay1ms(3000);
 
 if(k1==1 & k2==1)
 {
 LED=0;
 OKBeep();
 LED=1;
 LED1=1;
 JDQ=1;
 //delay1ms(2000);

 }
}

}
}
}
2012-04-27 13:59
yang7403
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-4-27
收藏
得分:0 
对时间精度要求不高。
JDQ=0后,P1的状态会马上发生改变,此时如果不处理程序就不会继续往下执行,我要的结果是P1状态改变后继续执行后面的延时3秒和后面的语句。谢谢
2012-04-27 14:18
yang7403
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-4-27
收藏
得分:0 
程序就2个功能
2012-04-27 14:39
yang7403
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-4-27
收藏
得分:0 
程序就2个功能:首先判断P1口的状态,P1口接了2个电流表,电流表通电的时候P1口全为高电平,再吸合继电器导通另一个电流表(同时原来的2个电流表断电了,P1口不再全为高电平)。第2步:继电器吸合后等3秒,根据后面接通的电流表状态选择声音报警或不报警。 问题就出在了吸合继电器后,P1口状态一改变就不去检测后面电流表的状态了。
2012-04-27 14:44
yang7403
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2012-4-27
收藏
得分:0 
我擦,好象是外围电路出了点问题,在此感谢各位的帮助。
2012-04-27 15:45
快速回复:求助:if语句执行过程中条件改变如何才能继续执行后面的语句?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026221 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved