版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
基于單片機的微波爐控制系統(tǒng)LGGROUPsystemofficeroom【LGA16H-LGYY-LGUA8Q8-LGA162】目設(shè)計方案項目負(fù)責(zé)人:曾光輝專業(yè):電子信息工程所在學(xué)院:通信與電子學(xué)院指導(dǎo)教師:占華林2012年5月20日西科技師范大學(xué)教務(wù)處、做飯?zhí)嵝?、模擬定時加熱功能。主控部分是由單片機和獨立電機構(gòu)成。實現(xiàn)了秒表和數(shù)字電子時鐘的功能。工作過程中有2.基于單片機的數(shù)字電子鐘系統(tǒng)硬件設(shè)計ATC51單片機通過編程去控制LCD1602實現(xiàn)的。通過2個開關(guān)控制來進行時間的調(diào)節(jié)以及秒表功能,(key1)口控制按鍵,當(dāng)系統(tǒng)處于正常時,可以進入秒表功能和時間功能的切換,此鍵還可以作為時間和選中鍵,當(dāng)系統(tǒng)處于時間顯示模式時,按此鍵可以選中相應(yīng)的需LCD1602顯示電路模塊要調(diào)整的位。當(dāng)系統(tǒng)處于時間顯示模式時,(key2)口控制按鍵,按此鍵對相應(yīng)的選中LCDC時間3.秒表顯示以及啟動和暫停以及清零。LCD處于正常顯示時間模式下時按下key1模式,前3次按下key2的功能依次為啟動停止清零,每按3次key2為理圖,在AT89C51芯片內(nèi)部有一個高增益反相放大器,其輸出端為引穩(wěn)定的自激振蕩電路,電路產(chǎn)生的振蕩脈沖經(jīng)過觸發(fā)器進行十二分圖2-1時鐘電路原理圖圖,在單片機的實際應(yīng)用系統(tǒng)中,除單片機本身需復(fù)位以外,外部IO需要一個復(fù)位,因此需要一個系統(tǒng)的同步復(fù)位信號,即單片機的條件是:必須使RST/VPD或RST引腳加上持續(xù)兩個機器周期(即24個振蕩周期)的高電平。電路為上電復(fù)位電路圖2-2復(fù)位電路原理圖LCD路原理圖塊電路原理圖,根據(jù)此電子時鐘功能要求,需要設(shè)置以下兩個功能鍵key,模式輔助鍵(key2)。按照鍵盤與CPU的連接方式可分為獨立鍵盤鍵盤是各個按鍵相互獨立,每個按鍵占用一個I/O口,外加上拉電IO鍵不會影響到其他I/O口的按鍵工作狀態(tài)。獨立式鍵盤電路配置靈。圖,鬧鈴模式時,設(shè)定好鬧鈴時間,鬧鈴時間有時和分,當(dāng)設(shè),一分鐘后報警聲停止,如果這一分鐘內(nèi)有按鍵按下則報警圖,當(dāng)系統(tǒng)設(shè)定好加熱的時長之后啟動加熱責(zé)電機轉(zhuǎn)動,剩余ATC環(huán)境KeilKeil細(xì)使用手冊,關(guān)于Keil的詳細(xì)說明文檔請瀏覽Keil個新工程文件名框中輸入工程名字,保存類型選擇.uv2,點擊添加文件或新建程序文件GroupSourceGroup文件夾,將文件名改為微波爐控制.c后保存到微波爐控制.c添加到當(dāng)前工程里。完成的結(jié)果如下圖HEX件ProtuesATC現(xiàn)下面的對話框,找到HEX文件路徑選中文件之后點擊O點整和下午6點整,默認(rèn)時間為12點整按下工作模式鍵(key1)后顯示要加熱的時間長短,可以通過模式輔助鍵(key2)來調(diào)分鐘通過按模式輔助鍵(key2)后調(diào)整為1分鐘加熱時間當(dāng)前剩余的加熱時間,此時并未倒計時,也沒有啟動加熱熱,電機轉(zhuǎn)動,開始到計時,若在加熱過程中按下模式輔助將每一部分代碼與相關(guān)實現(xiàn)的硬件聯(lián)合到一起進行調(diào)試,對部分。這樣保證在綜合調(diào)試的時候,順利查找錯誤,找5.系統(tǒng)性能測試試圖**************************************************項目:描述:制系統(tǒng)============================================MHzSTCC核心外接lcd1602顯示和兩個獨立按鍵做飯時間設(shè)置(上午11點和下午6點,鬧鈴的響keykey歷以及鬧鈴設(shè)置進行調(diào)整以及秒表的啟動暫停以及清的模式下前6每次按下key2依次會選中(光標(biāo)閃爍)pm_alarm_minutepmalarmhour,ammalarmminuteammalarmhourhourminute閃爍的時候每次按下kekey間的模式下,前60次按下key2加1,60次之微波爐加key的時間,再按下key2則啟動加熱作者:曾光輝*************************************************/edatabus#defineWDATA1#defineWCMD0P/lcd數(shù)據(jù)總線sWDATAsWCMDeKEYefinekeyshaketimeP/按鍵端口lcd,高data低cmdlcd讀低寫lcd降沿有效按下按下ededededednedflagflagflagchangeflag量和鍵盤消痘時間計時變量unsignedcharstart_t1;{unsignedunsignedunsignedunsignedunsignedunsignedunsignedcharam_alarm_hour;charam_alarm_minute;charpm_alarm_hour;charpm_alarm_minute;nsignedcharsetupcookingtimensignedcharcookingtimeminutensignedcharcookingtimesecond和鬧鐘以及秒表{***************************s時計數(shù)變量分秒=================i**************************/voiddelay_us(unsignedchari){while(--i);}***************************=================lcd602內(nèi)的內(nèi)容*****************************/unsignedcharreadlcd(void){unsignedcharreadvaluex0;valuedatabusrnreadvalue****************************=====================lcd數(shù)據(jù)或者指令***************************/voidwrite_lcd(unsignedcharvalue,bitdata_cmd){databusxff;//置為輸出rsdatacmd//數(shù)據(jù)指令選擇rw//寫使能}*********************************************====================MCU到有按鍵按下后TIMER1延時key_shake_time*10ms再次檢測是否按鍵還是取鍵值,判斷按鍵是否釋放,若釋放則對鍵值處理,返回的返回0********************************************/unsignedcharkeyscanvoid){harvaluehardokeygnedcharkeyscanstep識{keyvalue=0;{{}}iftkeyshaketimeKEYxx03)){valueKEYx03;eykey_scan_step=1;}}ifkeyscanstepKEYxx03)){keyscanstep=0;{casexvalue;break;casexvaluebreakcasexvaluebreakdefaultvalue0;break;}rnvalue}urn}*********************************====================系統(tǒng)的要求對返回的鍵值做處理********************************/eyprocessvoid{yvalue{aluechangeflag{imechangeflag{{0;}write_lcd(0xCE,WCMD);write_lcd10+'0',WDATA);write_lcd(0xCF,WCMD);write_lcd%10+'0',WDATA);write_lcd(0xCF,WCMD);write_lcd(0x0F,WCMD);}eflag{{0;}write_lcd(0xCB,WCMD);write_lcd10+'0',WDATA);write_lcd(0xCC,WCMD);write_lcd%10+'0',WDATA);write_lcd(0xCC,WCMD);write_lcd(0x0F,WCMD);}geflag{{0;}write_lcd(0xC6,WCMD);write_lcd10+'0',WDATA);write_lcd(0xC7,WCMD);write_lcd%10+'0',WDATA);write_lcd(0xC7,WCMD);write_lcd(0x0F,WCMD);}flag{{0;}write_lcd(0xC3,WCMD);write_lcd10+'0',WDATA);write_lcd(0xC4,WCMD);write_lcd%10+'0',WDATA);write_lcd(0xC4,WCMD);write_lcd(0x0F,WCMD);}geflag{{0;}write_lcd(0x85,WCMD);write_lcd10+'0',WDATA);write_lcd(0x86,WCMD);write_lcd%10+'0',WDATA);write_lcd(0x86,WCMD);write_lcd(0x0F,WCMD);}eflag{{0;}write_lcd(0x88,WCMD);write_lcd10+'0',WDATA);write_lcd(0x89,WCMD);write_lcd%10+'0',WDATA);write_lcd(0x89,WCMD);write_lcd(0x0F,WCMD);}}eflag{lflag{}{0;model_flag=0;echangeflagwritelcd(0x01,WCMD);//清屏}}}{alue{TR=0;echangeflagimechangeflag{write_lcd(0xCF,WCMD);write_lcd(0x0F,WCMD);}eflag{write_lcd(0xCC,WCMD);write_lcd(0x0F,WCMD);}geflag{write_lcd(0xC7,WCMD);write_lcd(0x0F,WCMD);}lag{write_lcd(0xC4,WCMD);write_lcd(0x0F,WCMD);}geflag{write_lcd(0x86,WCMD);write_lcd(0x0F,WCMD);}eflag{write_lcd(0x89,WCMD);write_lcd(0x0F,WCMD);}flag{TR0=1;write_lcd(0x0C,WCMD);echangeflag}}delflag{echangeflag{0;}write_lcd(0xC7,WCMD);write_lcd%100/10+'0',WDATA);write_lcd(0xC8,WCMD);write_lcd%10+'0',WDATA);}{echangeflag++start_flag;ag{motor=0;}{motor=1;0;0;0;}{motor=1;}}}**********************************==========================TIMER到的系統(tǒng)時鐘進行處理*********************************/dupdatetimevoid{{{{{}{write_lcd(0x85,WCMD);write_lcd10+'0',WDATA);write_lcd(0x86,WCMD);write_lcd%10+'0',WDATA);}}{write_lcd(0x88,WCMD);write_lcd10+'0',WDATA);write_lcd(0x89,WCMD);write_lcd%10+'0',WDATA);}}{write_lcd(0x8B,WCMD);write_lcd10+'0',WDATA);write_lcd(0x8C,WCMD);write_lcd%10+'0',WDATA);}}}*******************************========================TIMER到的秒表計數(shù)進行處理******************************/updatestopwatchvoid{/*if(model_flag==1){write_lcd(0xC7,WCMD);write_lcd%100/10+'0',WDATA);write_lcd(0xC8,WCMD);write_lcd%10+'0',WDATA);ifstarttstartflagmodelflag2&&!=0){motor=0;;{;{write_lcd(0xC6,WCMD);write_lcd%100/10+'0',WDATA);write_lcd(0xC7,WCMD);write_lcd%10+'0',WDATA);}}f{0;motor=1;}{write_lcd(0xC9,WCMD);write_lcd10+'0',WDATA);write_lcd(0xCA,WCMD);write_lcd%10+'0',WDATA);}}}*********************************===================間顯示和秒表顯示之間進行切換********************************/shiftdisplayvoid{ifmodelflagtimechangeflagshiftflag0){hiftflag{writelcd(0x01,WCMD);//清屏write_lcd(0x8B,WCMD);write_lcd10+'0',WDATA);write_lcd(0x8B,WCMD);write_lcd10+'0',WDATA);write_lcd(0x8C,WCMD);write_lcd%10+'0',WDATA);write_lcd(0x8A,WCMD);write_lcd(':',WDATA);write_lcd(0x88,WCMD);write_lcd10+'0',WDATA);write_lcd(0x89,WCMD);write_lcd%10+'0',WDATA);write_lcd(0x87,WCMD);write_lcd(':',WDATA);write_lcd(0x85,WCMD);write_lcd10+'0',WDATA);write_lcd(0x86,WCMD);write_lcd%10+'0',WDATA);write_lcd(0xCF,WCMD);write_lcd%10+'0',WDATA);write_lcd(0xCE,WCMD);write_lcd10+'0',WDATA);write_lcd(0xCD,WCMD);write_lcd(':',WDATA);write_lcd(0xCC,WCMD);write_lcd%10+'0',WDATA);write_lcd(0xCB,WCMD);write_lcd10+'0',WDATA);write_lcd(0xC9,WCMD);write_lcd('&',WDATA);write_lcd(0xC7,WCMD);write_lcd%10+'0',WDATA);write_lcd(0xC6,WCMD);write_lcd+'0',WDATA);write_lcd(0xC5,WCMD);write_lcd(':',WDATA);write_lcd(0xC4,WCMD);write_lcd%10+'0',WDATA);write_lcd(0xC3,WCMD);write_lcd10+'0',WDATA);write_lcd(0xC1,WCMD);write_lcd('T',WDATA);write_lcd(0xC0,WCMD);write_lcd('C',WDATA);}ifmodelflagshiftflag){{writelcd(0x01,WCMD);//清屏write_lcd(0x8C,WCMD);write_lcd('P',WDATA);write_lcd(0x8C,WCMD);write_lcd('P',WDATA);write_lcd(0x8B,WCMD);write_lcd('U',WDATA);write_lcd(0x8A,WCMD);write_lcd('T',WDATA);write_lcd(0x89,WCMD);write_lcd('E',WDATA);write_lcd(0x88,WCMD);write_lcd('S',WDATA);write_lcd(0x86,WCMD);write_lcd('E',WDATA);write_lcd(0x85,WCMD);write_lcd('M',WDATA);write_lcd(0x84,WCMD);write_lcd('I',WDATA);write_lcd(0x83,WCMD);write_lcd('T',WDATA);write_lcd(0xC7,WCMD);write_lcd%100/10+'0',WDATA);write_lcd(0xC8,WCMD);write_lcd%10+'0',WDATA);}odelflagshiftflag{{writelcd(0x01,WCMD);//清屏write_lcd(0x8D,WCMD);write_lcd('N',WDATA);write_lcd(0x8D,WCMD);write_lcd('N',WDATA);write_lcd(0x8C,WCMD);write_lcd('I',WDATA);write_lcd(0x8B,WCMD);write_lcd('A',WDATA);write_lcd(0x8A,WCMD);write_lcd('M',WDATA);write_lcd(0x89,WCMD);write_lcd('E',WDATA);write_lcd(0x88,WCMD);write_lcd('R',WDATA);write_lcd(0x86,WCMD);write_lcd('E',WDATA);write_lcd(0x85,WCMD);write_lcd('M',WDATA);write_lcd(0x84,WCMD);write_lcd('I',WDATA);write_lcd(0x83,WCMD);write_lcd('T',WDATA);write_lcd(0xC6,WCMD);write_lcd10+'0',WDATA);write_lcd(0xC7,WCMD);write_lcd%10+'0',WDATA);write_lcd(0xC8,WCMD);write_lcd(':',WDATA);write_lcd(0xC9,WCMD);write_lcd10+'0',WDATA);write_lcd(0xCA,WCMD);write_lcd%10+'0',WDATA);}
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 標(biāo)準(zhǔn)施工合同附件格式
- 北京市朝陽區(qū)農(nóng)村集體資產(chǎn)租賃合同書
- 經(jīng)營管理優(yōu)化
- 浙江省初中名校發(fā)展共同體期中聯(lián)考2024-2025學(xué)年七年級上學(xué)期11月期中數(shù)學(xué)試題(含答案)
- 內(nèi)蒙古赤峰市名校2024-2025學(xué)年高一上學(xué)期期中聯(lián)考?xì)v史試題(含答案)
- 廣東省惠州市惠東縣2024-2025學(xué)年九年級上學(xué)期期中物理試卷(含答案)
- 安徽省合肥市新站高新技術(shù)產(chǎn)業(yè)開發(fā)區(qū)2024-2025學(xué)年七年級上學(xué)期期中英語試題(含答案)
- 廣東省廣州市番禺區(qū)2024-2025學(xué)年三年級上冊期中語文試卷(含答案)
- 系列自動遙測氣象站相關(guān)行業(yè)投資方案
- 非鐵分選提純設(shè)備行業(yè)相關(guān)投資計劃提議范本
- 【初中道法】增強安全意識 課件-2024-2025學(xué)年統(tǒng)編版道德與法治七年級上冊
- 2024-2030年中國非物質(zhì)文化遺產(chǎn)保護行業(yè)開發(fā)模式分析規(guī)劃研究報告
- 【初中化學(xué)】二氧化碳的實驗室制取課件-2024-2025學(xué)年九年級化學(xué)人教版上冊
- 綠化設(shè)計合作協(xié)議
- 學(xué)校提高《規(guī)范書寫水平、傳承漢字文化》活動方案3篇
- 2024年湖北省公務(wù)員考試《行測》真題及答案解析
- 2024-2030年中國動漫產(chǎn)業(yè)園行業(yè)發(fā)展現(xiàn)狀及投資前景規(guī)劃展望報告
- 第4章《一元一次方程》-2024-2025學(xué)年七年級數(shù)學(xué)上冊單元測試卷(蘇科版2024新教材)
- 小學(xué)校園防欺凌班會課件
- 2023烏魯木齊法院書記員真題
- 金屬切削原理與刀具夏云才課后參考答案
評論
0/150
提交評論