当前位置:首页 > 基于单片机AT89C51的模拟洗衣机控制系统设计
}
四川信息职业技术学院毕业设计说明书(论文)
jinshui=0; //打开进水 delay(4); //延时 jinshui=1; //关掉进水 piaoxi=0; //打开漂洗 TR1=1; PXshanshuo=1; //打开定时器1 delay(20); //延时 piaoxi=1; //关掉漂洗 TR1=0; PXshanshuo=0; //关掉定时器1 zz=0; //正转 fz=0;//反转
paishui=0; //打开排水 delay(2); //延时 paishui=1; //关掉排水 tuoshui=0; TSshanshuo=1; //打开脱水 delay(2); //延时 tuoshui=1; TSshanshuo=0; //关掉脱水 jingji=1; //关闭进水
******************************单独运行方式************************ void dandufangshi() //单独方式 {
jinshui=0; //打开进水
delay(4); //延时 jinshui=1; //关掉进水 xidi=0;
XDshanshuo=1; //打开洗涤
TR1=1; //打开定时器1 delay(30); //延时 xidi=1; //关掉洗涤
XDshanshuo=0; //关掉定时器1
第 33 页 共 39 页
TR1=0;
}
四川信息职业技术学院毕业设计说明书(论文)
zz=0; //正转 fz=0; //反转 dandu=1;
*******************************排水运行方式************************ void paishuifangshi() //排水方式 {
paishui=0; //打开排水 delay(2); //延时 paishui=1; //关掉排水 tuoshui=0; TSshanshuo=1; //打开脱水
delay(2); //延时
tuoshui=1; TSshanshuo=1; //打开脱水
paishuiled=1; }
*******************************强弱切换程序************************ void QiangRuoQieHuan(); //强弱切换子程序
switch(qr)
//强洗 //弱洗
case 1:{qiangxi=0;ruoxi=1;}break; case 2:{qiangxi=1;ruoxi=0;}break;
case 3:{qr=1;}break; //强弱 }
*******************************主函数************************ void main()
EA=1 //打开中断总允许位 EX0=1; //打开外部中断0允许位 IT0=1; //设置外部中断为下降沿触发方式 EX1=1; //外部中断1中断
IT1=1; //设置边沿触发方式
第 34 页 共 39 页
}delayms(1);
四川信息职业技术学院毕业设计说明书(论文)
TMOD=0x11; //工作在方式三 TH0=(65536-50000)/256; //设定初值 TL0=(65536-50000)%6; //设定初值 ET0=1; //T0中断允许位 TR0=1; //启动定时器 TH1=(65536-50000)/256; //设定初值 TL0=(65536-50000)%6; //设定初值
ET0=1; //T0中断允许位
TR0=1; //启动定时器 TH1=(65536-50000)/256; //设定初值 TL0=(65536-50000)%6; //设定初值 ET1=1; //T1中断允许位 T2CON=0x01; //定时器2工作方式1 num=1;
qr=1; //关闭强弱 qidong=0; //打开启动 while(1) {
QiangRuoQieHuan(); //强弱切换子程序 switch(num) //程序LED指示
{
case 1:{biaozhun=0;jingji=1;dandu=1;paishuiled=1;}break; //标准
case 2:{biaozhun=1;jingji=0;dandu=1;paishuiled=1;}break; //经济
case 3:{biaozhun=1;jingji=1;dandu=0;paishuiled=1;}break; //单独 case 4:{biaozhun=1;jingji=1;dandu=1;paishuiled=0;}break; //排水
}delayms(1); if(qidong==1) {
while(1) {
第 35 页 共 39 页
}
}
}
}
{
四川信息职业技术学院毕业设计说明书(论文)
switch(num) //程序方式切换
case 1:{biaozhunfangshi();}break; //标准方式 case 2:{jingjifangshi();}break; //经济方式 case 3:{dandufangshi();}break; // 单独方式 case 4:{paishuifangshi();}break; //排水方式
}delayms(1); return;
*******************************中断 *********************************
void int0() interrupt 0 { }
void int0() interrupt 2 //盖开关
qidong++; //启动
if(qidong==2) //如果启动打开 {qidong=0;TR1=0;zz=0;fz=0;} //启动打开
//运行/暂停
EA=0; //关闭中断总允许位 TR0=0; //关闭定时器0 TR0=1; //启动定时器1 zz=0; //打开正转 fz=0; //打开反转 TR2=0; //关闭定时器2 TF2=0; //定时时间到,将定时器溢出标志位TF2清零 void time0() interrupt 1 //定时器中断0中断类型号1 {
TH0=(65536-50000)/256; //设定初值
第 36 页 共 39 页
共分享92篇相关文档