




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
單片機(jī)原理及系統(tǒng)課程設(shè)計報告-7-附錄1源程序#include<reg51.h>#defineucharunsignedchar#defineuintunsignedint//***************************//sbitmo_r=P3^2; //電機(jī)右控制線sbitmo_l=P3^3; //電機(jī)左控制線//****************************//sbitkey_menu=P3^4;//菜單按鍵sbitkey_on=P3^5; //開始按鍵sbitkey_off=P3^6;//結(jié)束按鍵sbitkey_se=P3^7; //菜單選擇按鍵//***************************//sbitled_in=P0^0; // 進(jìn)水指示燈sbitled_xi=P0^1; //洗衣指示燈sbitled_pao=P0^2; // 泡洗指示燈sbitled_xx=P0^3; //脫水指示燈sbitled_out=P0^4;//出水指示燈sbitled_over=P0^5;//洗衣結(jié)束指示燈sbitled_work=P0^6;//電機(jī)工作指示燈sbitled_wring=P0^7; // 報警指示燈sbitother=P3^1; // 脫水電源控制開關(guān)sbitanther=P3^0; // 洗衣電源控制開關(guān)//******************************//ucharcodenum[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//*****************************//charsec=0; //時間秒charmin=0; //時間分ucharcount=0; //中斷計數(shù)ucharflag0=0; //洗衣機(jī)工作狀態(tài)標(biāo)志ucharflag1=0; //進(jìn)水次數(shù)標(biāo)志ucharflag2=0; //出水次數(shù)標(biāo)志ucharflag3=0; //泡洗次數(shù)標(biāo)志ucharerr=0; //報警標(biāo)志ucharquan=0;//正反轉(zhuǎn)計數(shù)//**********************************//voiddelay();//延時函數(shù)voidin(); //進(jìn)水子程序voidout(); //出水子程序voidover();//結(jié)束子程序voidxi(); //洗衣子程序voidpao(); //泡衣子程序voidxx();//脫水子程序voidon();//工作on處理子程序voidse();//顯示菜單選擇voidSEG_display(); //顯示時間子程序voidkey_scan();//按鍵掃描子程序voiddelay(uinti){ uintx,y; for(x=i;x>0;x--) for(y=120;y>0;y--);}//*********工作on處理子程序**********//voidon(){ TMOD=0x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; TR0=1;P0=0xff; if(flag0==0) in(); if(flag0==1) xi(); if(flag0==2) pao(); if(flag0==3) xx(); if(flag0==4) out();}//********結(jié)束子程序*********//voidover(){ other=0; anther=0; P0=0xff; mo_r=0; mo_l=0; led_over=0; EA=0;}//**********進(jìn)水子程序**********//voidin(){ anther=0; other=0; P0=0xff; led_in=0; flag1++; mo_r=0; mo_l=0; min=0; sec=8;}//**********洗衣子程序**********//voidxi(){ anther=1; other=0;P0=0xff; led_work=0; led_xi=0; mo_r=1; mo_l=0; min=1; sec=36; quan=0;}// //********泡衣子程序********//voidpao(){ anther=1; other=0; P0=0xff; led_pao=0; led_work=0; flag3++; mo_r=1; mo_l=0; min=1; sec=35; quan=0;}//*********脫水子程序********//voidxx(){ other=1; anther=0; P0=0xff; led_xx=0; mo_r=0; mo_l=1; min=0; sec=50;} //********出水子程序********//voidout(){ anther=0; other=0; P0=0xff; led_out=0; flag2++; mo_r=0; mo_l=0; min=0; sec=5;} //**********顯示菜單選擇********//voidse(){ P0=0xff; if(flag0>=5) flag0=0; if(flag0==0) { led_in=0; } if(flag0==1) { led_xi=0; } if(flag0==2) { led_pao=0; } if(flag0==3) { led_xx=0; } if(flag0==4) { led_out=0; }}//*********菜單處理子程序**********//voidmenu(){ min=0; sec=0; mo_r=0; mo_l=0; SEG_display(); while(1) { if(key_on==0) { delay(5); if(key_on==0) { while(!key_on); on(); break; } }//**************************// if(key_off==0) { delay(5); if(key_off==0) { while(!key_off); over(); break; } }//****************************// if(key_se==0) { delay(5); if(key_se==0) { while(!key_se); flag0++; se(); } } }}//*********按鍵掃描子程序*********//voidkey_scan(){ if(key_menu==0) { delay(5); if(key_menu==0) { while(!key_menu); menu(); } }//********************************// if(key_on==0) { delay(5); if(key_on==0) { while(!key_on); on(); } }//*********************************// if(key_off==0) { delay(5); if(key_off==0) { while(!key_off); over(); } }}//*********顯示子程序**********//voidSEG_display(){ P1=0x01; P2=num[min/10]; delay(10); P1=0x02; P2=num[min%10]; delay(10); P1=0x04; P2=num[sec/10]; delay(10); P1=0x08; P2=num[sec%10]; delay(10);}//*********主函數(shù)**********//voidmain(){ led_in=0; anther=0; other=0; while(1) { SEG_display(); key_scan(); }}//*****定時器0中斷處理程序*****//voidtimer0()interrupt1{ TH0=(65536-50000)/256; TL0=(65536-50000)%256; count++;if(count==20) { count=0; sec--; if((flag0==1)||(flag0==2)) { quan++; switch(quan) { case1:mo_r=1;mo_l=0;break; case10:mo_r=0;mo_l=0;break; case15:mo_r=0;mo_l=1;break; case25:mo_r=0;mo_l=0;break; default:; } if(quan==30) { quan=0; } } //**********************************// if((sec==0)&&(min!=0)) { min--; sec=59; } //**********************************// if((sec<0)&&(min==0)&&(flag0==0)) //進(jìn)水結(jié)束 { switch(flag1) { case1:flag0=1;xi();break; case2:flag0=2;pao();break; case3:flag0=2;pao();break; case4:flag0=2;pao();break; default:err=1;led_wring=0; } } //**********************************// if((sec<0)&&(min==0)&&(flag0==1))//洗衣結(jié)束 { flag0=4; out(); } //**********************************// if((sec<0)&&(min==0)&&(flag0==2))//泡衣結(jié)束 { switch(flag3) { case1:flag0=4;out();break; case2:flag0=4;out();break; case3:flag0=4;out();break; default:err=1;led_wring=0; } } //**********************************// if((sec<0)&&(min==0)&&(flag0==4)) //出水結(jié)束 { switch(flag2) {
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 水池搭建活動方案
- 毛巾促銷活動方案
- 水果過年活動方案
- 每周五工會活動方案
- 四年級語文下冊期末??佳侯}作文《假如我是-》
- 2025農(nóng)業(yè)用水定額
- 西南天然氣“氣大慶”的戰(zhàn)略地位與發(fā)展路徑研究
- 海水污染對蝦類生物體內(nèi)毒性的分子機(jī)制研究
- 創(chuàng)新產(chǎn)品全生命周期項(xiàng)目管理優(yōu)化模型研究
- 熱流泄漏率影響因素的響應(yīng)面分析及優(yōu)化方案
- 醫(yī)院戰(zhàn)略管理如何制定醫(yī)院戰(zhàn)略規(guī)劃講座
- 部編版語文二年級下冊第4單元童心童趣大單元整體作業(yè)設(shè)計
- SYB創(chuàng)業(yè)培訓(xùn)游戲模塊2課件
- TOEFL閱讀100篇附答案
- 娛樂場所文明服務(wù)責(zé)任書
- 獸醫(yī)傳染病學(xué)(山東聯(lián)盟)智慧樹知到答案章節(jié)測試2023年青島農(nóng)業(yè)大學(xué)
- 鋼結(jié)構(gòu)防腐油漆施工方案
- 第五講社會建設(shè)
- GB/T 35273-2020信息安全技術(shù)個人信息安全規(guī)范
- GB/T 20303.1-2006起重機(jī)司機(jī)室第1部分:總則
- GB 18068-2000水泥廠衛(wèi)生防護(hù)距離標(biāo)準(zhǔn)
評論
0/150
提交評論