您的位置 首页 动态

根据51单片机的气泵控制程序

用stc89c52单片机来控制气泵,带有2种工作模式,端口可自行修改includereg52h>sbita=P1^5;闪烁灯sbitb=P1^4;气泵sbitc=P3^7;

stc89c52单片机来操控气泵,带有2种作业形式,端口可自行修正

#includesbit a=P1^5;//闪耀灯sbit b=P1^4;//气泵sbit c=P3^7;//状况指示灯sbit ss1=P3^2;//一分钟作业形式sbit ss4=P3^3;//四分钟作业形式unsigned int q,w,e,r,y,u,i,n,m,l,h;csh();//初始化子程序声明ys();//延时子程序ys2();//延时子程序2声明void main(){csh();//初始化while(1)  //死循环 一号 {if(ss1==0){n=1;}  //断定一分钟作业形式接通发动二号循环if(ss1==1){n=0;b=1;}  //断定一分钟作业形式为发动断二号循环if(ss4==0){m=1;}  //断定四分钟作业形式接通发动*号循环if(ss4==1){m=0;b=1;}  //断定四分钟作业形式未启用断*号循环/*...........以下为一分钟作业形式...分割线......................*/while(n)    //二号循环 一分钟作业形式n被赋值1 开端进入循环体{if(ss1==0) //断定一分钟作业形式敞开 履行句子{for(l;l>0;l--); //延时断定if(ss4==0){n=0;}//断定四分钟形式启用断开二号循环体 退出履行for(q;q>0;q--); //延时断定 qif(ss4==1)      //断定四分钟形式未敞开 向下履行{if(q==0) //断定q减到0{b=1;   //断开气泵w=1;   //循环体2 w为1e=1;   //循环体1 e赋值为1}while(e)  //三号循环体{if(P3==0x7b)    //断定指示灯和一分钟发动履行下面{while(w)          //四号循环体 w为1 初值 {ys(); //半秒延时 如同禁绝自己改a=0;  //闪耀灯点亮r++;//秒数自加1if(ss1==1)  //断定一分钟作业形式断开时{ys2(); //延时断定if(ss1==1)     //一分钟作业形式的确断开{n=0;e=0;w=0;r=0;b=1;}//断定建立退出一切}ys(); //半秒延时 如同禁绝自己改a=1; //闪耀灯灭if(r==60) // 等候秒数加到60履行{  w=0;   //断开循环体2r=60;  //坚持秒数等于60b=0;   //发动水泵h=1;   //五号循环体()while(h)   //五号循环体if(ss1==1)  //断定一分钟退出向下履行{    ys2(); //延时断定if(ss1==1)  //通过延时的确断定一分钟作业形式断开{b=1;    //断开气泵n=0;    //退出二号循环体e=0;    //退出四号循环体r=0;    //一分钟时刻归零while(1){if(m==0);{h=0;break;}    //退出五号循环体 本身}}} } }  }  }  }/*断定*/ }/*二号循环体*/ }/*一号循环体*//*..................以下为四分钟作业形式.......我是分割线...........*/本程序下载地址:http://www.51hei.com/ziliao/file/qibang.rarwhile(m)    //二号循环 一分钟作业形式n被赋值1 开端进入循环体{if(ss4==0) //断定四分钟作业形式敞开 履行句子{for(l;l>0;l--); //延时断定if(ss1==0){m=0;}//断定一分钟形式启用断开二号循环体 退出履行for(q;q>0;q--); //延时断定 qif(ss1==1)      //断定一分钟形式未敞开 向下履行{if(q==0) //断定q减到0{b=1;   //断开气泵w=1;   //循环体2 w为1e=1;   //循环体1 e赋值为1}while(e)  //三号循环体{if(P3==0x77)    //断定指示灯和四分钟发动履行下面{while(w)          //四号循环体 w为1 初值 {ys(); //半秒延时 如同禁绝自己改a=0;  //闪耀灯点亮r++;//秒数自加1if(ss4==1)  //断定四分钟作业形式断开时{ys2(); //延时断定if(ss4==1)     //四分钟作业形式的确断开{m=0;e=0;w=0;r=0;b=1;}//断定建立退出一切}ys(); //半秒延时 如同禁绝自己改a=1; //闪耀灯灭if(r==240) // 等候秒数加到240履行{  w=0;   //断开循环体2r=240;  //坚持秒数等于240b=0;   //发动水泵h=1;   //五号循环体()while(h)   //五号循环体if(ss4==1)  //断定四分钟退出向下履行{    ys2(); //延时断定if(ss4==1)  //通过延时的确断定四分钟作业形式断开{b=1;    //断开气泵n=0;    //退出二号循环体e=0;    //退出四号循环体r=0;    //四分钟时刻归零q=60000;while(1){if(n==0);{h=0; //退出五号循环体 break; //退出本身循环}    }} }  }  }  }/*断定*/ }/*二号循环体*/ }/*一号循环体*/}}}} /*.......................初始化子程序........................................*/csh()//初始化子程序{a=1;  //闪耀灯不闪耀b=1;  //气泵不敞开c=0;  //状况指示灯点亮ss1=1;//一分钟作业形式未发动ss4=1;//四分钟作业形式未发动r=0;  //一分钟60秒数e=0;  //循环体 e赋值为1q=60000; //榜首延时断定q初始值l=60000; //延时用h=0;  //五号循环体}ys(){for(y=23;y>0;y--)for(u=152;u>0;u--)for(i=70;i>0;i--); //半秒延时 如同禁绝自己改}ys2(){for(y=167;y>0;y--) for(u=171;u>0;u--) for(i=16 ;i>0;i--);}

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/dongtai/319357.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部