51單片機(jī)洗衣機(jī)控制板及C語(yǔ)言程序
掃描二維碼
隨時(shí)隨地手機(jī)看文章
51單片機(jī)洗衣機(jī)控制板及C語(yǔ)言程序,該控制板單片機(jī)采用AT89C51單片機(jī),所設(shè)計(jì)全自動(dòng)洗衣機(jī)功能有:標(biāo)準(zhǔn)洗衣、經(jīng)濟(jì)洗衣、單獨(dú)洗衣以及排水四種洗衣等四種方式,有強(qiáng)洗、弱洗及運(yùn)行/暫停、顯示及報(bào)警功能,程序利用利用Protues仿真軟件觀察洗衣機(jī)的運(yùn)行狀態(tài)和過(guò)程。整個(gè)設(shè)計(jì)能達(dá)到預(yù)想的設(shè)計(jì)效果。
#include 'reg51.h'
#define uchar unsigned char
#define uint unsigned int
#define Enable(); EA=1;
#define Disable(); EA=0;
#define BIAOZHUN 0
#define JINGJI 1
#define DANDU 2
#define PAISHUI 3
#define QIANGXI 0
#define RUOXI 1
#define T_JinShui 240 //4min*60s
#define T_PaiShui 60 //1min*60s
#define T_XiDi 360 //6min*60s
#define T_PiaoXi_1 240 //4min*60s
#define T_PiaoXi_2 120 //2min*60s
#define T_TuoShui 120 //2min*60s
#define ZHENGZHUAN 0
#define STOP 1
#define FANZHUAN 2
#define ZhengZhuan(); PIN_Motor_A = 0; PIN_Motor_B = 1;
#define Stop(); PIN_Motor_A = 1; PIN_Motor_B = 1;
#define FanZhuan(); PIN_Motor_A = 1; PIN_Motor_B = 0;
#define ZanTing(); ET0 = 0; ET1 = 0; Stop();
#define JiXu(); ET0 = 1; ET1 = 1;
#define flag_Ok (flag_JinShui||flag_PaiShui||flag_XiDi||flag_PiaoXi||flag_TuoShui)
sbit LED_BiaoZhun = P1^0; //標(biāo)準(zhǔn)程序顯示燈
sbit LED_JingJi = P1^1; //經(jīng)濟(jì)程序顯示燈
sbit LED_DanDu = P1^2; //單獨(dú)程序顯示燈
sbit LED_PaiShui = P1^3; //排水程序顯示燈
sbit LED_QiangXi = P1^4; //強(qiáng)洗狀態(tài)燈
sbit LED_RuoXi = P1^5; //弱洗狀態(tài)燈
sbit LED_XiDi = P1^6; //洗滌狀態(tài)燈
sbit LED_PiaoXi = P1^7; //漂洗狀態(tài)燈
sbit LED_TuoShui = P2^0; //脫水狀態(tài)燈
sbit PIN_BaoJing = P2^1; //報(bào)警喇叭
sbit PIN_JinShui = P2^2; //進(jìn)水控制
sbit PIN_PaiShui = P2^3; //排誰(shuí)控制
sbit PIN_Motor_A = P2^4; //電機(jī)腳A
sbit PIN_Motor_B = P2^5; //電機(jī)腳B