




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、家用定時供電插座的設計一、 設計要求本次設計要求實現(xiàn)一個具有定時、按鍵設置及控制、定時時間顯示等功能的定時開關插座,具體要求及指標如下: (2)具有定時時間顯示和時鐘顯示。 (3)可以利用按鍵調(diào)整顯示時間和定時時間。 (3)定時時間到繼電器上電,蜂鳴器響。二、設計說明本次設計時鐘電路,使用了AT89C52單片機芯片控制電路,單片機控制電路簡單且省去了很多復雜的線路,使得電路簡明易懂,使用鍵盤鍵上的按鍵來調(diào)整時鐘的分、秒,用蜂鳴器來進行定時提醒,同時使用C語言程序來控制整個時鐘顯示,使得編程變得更容易,這樣通過五個模塊:繼電器、鍵盤、芯片、蜂鳴器、LCD液晶顯示即可滿足設計要求。1 主電路主電路
2、主要就是芯片的運行,加載程序后,在外部時鐘的作用下,將按照程序運行,從而可以實現(xiàn)設計的要求,進行時鐘時間和定時時間的調(diào)整,并且能夠在到達定時時間后控制蜂鳴器發(fā)出聲響。 主電路2、顯示電路顯示電路即可以讓我們看到時間的調(diào)整和定時時間的調(diào)整,顯示調(diào)整后的時間。利用1602液晶顯示屏顯示時間,利用程序把1602芯片上對應的端口與單片機對應的I/O口進行連接,以便使時間能夠正確的在液晶屏上顯示。 1602芯片原理圖3、按鍵電路本設計中利用按鍵S9、S13、S17行時間的調(diào)整。其中S9為設定時間的按鍵,S13和S17為設定時間加和減的按鍵。蜂鳴器主要是到定時時間進行響鈴提請。 鍵盤電路原理圖蜂鳴器電路原
3、理圖4、繼電器電路 當電子時鐘走到和定時時間相同時,蜂鳴器響的同時繼電器也會吸合,以便使插座上電。 繼電器電路原理圖三、整體原理圖(見附圖)四、設計體會通過這次課程設計不僅使我鞏固了本課程所學的基本知識,還使我具有了撰寫科研報告的初步訓練能力,我相信這些能力在我以后的工作或者是再學習中一定會起到不小的作用,一切的辛苦和艱難都是值得的。在設計前應該對所要實現(xiàn)的功能有一定的了解,定下有大概的流程圖,把設計模塊化,寫程序時也應該一個模塊一個模塊的寫,這樣方便理解,也方便以后的檢查。在仿真和實物的過程中要了解所使用芯片的功能及引腳的排列方式,這樣焊接時比較方便。五、C語言程序#include<r
4、eg52.h>#define uchar unsigned char#define uint unsigned intuchar code table1="00:00:00"sbit dula=P26;sbit wela=P27;sbit lcden=P34 ;/位定義sbit lcdrw=P36;sbit lcdrs=P35;sbit s1=P30;sbit s2=P31;sbit s3=P32;sbit rd=P37;sbit beep=P23;/定義蜂鳴器 sbit replay=P06;定義繼電器uchar num,count,s1num;/顯示的位數(shù);響應中
5、斷數(shù);按鍵次數(shù);uint i;char shi,fen,miao,shi1,fen1,miao1;void delay(uint z)/延時程序 uint x,y; for(x=z;x>0;x-) for(y=110;y>0;y-);void write_com(uchar com)/控制指令 lcdrs=0; /低電平時選擇指令寄存器 lcdrw=0;/ 低電平時進行寫操作 delay(5); lcden=1; /E端為使能端,當E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令 P0=com; delay(5); lcden=0;void write_data(uchar date)
6、/數(shù)據(jù)指令 lcdrs=1; lcden=1; /均為高時是讀出數(shù)據(jù)的內(nèi)容 delay(5); P0=date; delay(5); lcden=0;void init()/初始化 dula=0; wela=0; lcdrw=0; lcden=0; delay(15); write_com(0x38);/設置為4位總線,單行顯示 delay(5); write_com(0x38); delay(5); write_com(0x38); write_com(0x38);/重復多次以確定可以正確設置 write_com(0x08);/無光標正常顯示 write_com(0x01);/清顯示 wri
7、te_com(0x06);/向右顯示 write_com(0x0c);/ 顯示開關控制。 write_com(0x80+1);/d7為高時,顯示數(shù)據(jù)存儲地址TMOD=0x11;/工作方式3 TH0=(65536-50000)/256;/定時時間為50ms TL0=(65536-50000)%256; EA=1;/開總中斷 ET0=1;/打開定時器 TR0=1;/啟動定時器 write_com(0x80+4);/秒的設定 for(num=0;num<8;num+) write_data(table1num); delay(20); write_com(0x80+0x40+4); for(n
8、um=0;num<8;num+) write_data(table1num); delay(20); void write_sfm(uchar add,uchar date)/調(diào)整時間 uchar shi,ge; shi=date/10; ge=date%10; write_com(0x80+0x40+add);/控制指令,0x40:字符發(fā)生器RAM地址設置進行加 write_data(0x30+shi);/數(shù)據(jù)指令write_data(0x30+ge);void write_shedingsfm(uchar add1,uchar date1)/設定定時時間 uchar shi1,ge1
9、; shi1=date1/10; ge1=date1%10; write_com(0x80+add1);/控制指令 write_data(0x30+shi1); write_data(0x30+ge1);void keyscan() rd=0; if(s1=0) delay(5); if(s1=0) s1num+; while(!s1);/s1按下 if(s1num=1)/按下次數(shù) TR0=0;/停止定時器工作 write_com(0x80+0x40+11);/調(diào)整時間設置,控制秒設定 write_com(0x0f); /光標顯示 if(s1num=2) write_com(0x80+0x40
10、+8);/控制分鐘設定 write_com(0x0f);/控制光標閃爍 if(s1num=3) write_com(0x80+0x40+5);/控制時設定 write_com(0x0f); if(s1num=4) TR0=1;/啟動定時器,定時時間的設定 write_com(0x80+11);/控制秒的設定 write_com(0x0f);/光標顯示 if(s1num=5) write_com(0x80+8);/定時分鐘的設定 write_com(0x0f); if(s1num=6) write_com(0x80+5);/定時時的顯示 write_com(0x0f); if(s1num=7)
11、s1num=0; / 按鍵次數(shù)清零 write_com(0x0c);/顯示此時為無光標狀態(tài) if(s1num!=0)/有按鍵時 if(s2=0) delay(5); if(s2=0) while (!s2); if(s1num=1) miao+; if(miao=60) miao=0; write_sfm(10,miao);/第10位進行秒的設定 write_com(0x80+0x40+11);/控制秒的設定 if(s1num=2) fen+; if(fen=60) fen=0; write_sfm(7,fen); write_com(0x80+0x40+8); if(s1num=3) shi
12、+; if(shi=24) shi=0; write_sfm(4,shi); write_com(0x80+0x40+5); if(s1num=4) TR0=1;/定時器啟動 miao1+; if(miao1=60) miao1=0; write_shedingsfm(10,miao1); write_com(0x80+11); if(s1num=5) fen1+; if(fen1=60) fen1=0; write_shedingsfm(7,fen1); write_com(0x80+8); if(s1num=6) shi1+; if(shi1=24) shi1=0; write_shedi
13、ngsfm(4,shi1); write_com(0x80+5); if(s3=0) delay(5); if(s3=0) while (!s3); if(s1num=1) miao-; if(miao=-1) miao=59; write_sfm(10,miao); write_com(0x80+0x40+11); if(s1num=2) fen-; if(fen=-1) fen=59; write_sfm(7,fen); write_com(0x80+0x40+8); if(s1num=3) shi-; if(shi=-1) shi=23; write_sfm(4,shi); write_
14、com(0x80+0x40+5); if(s1num=4) TR0=1; miao1-; if(miao1=-1) miao1=59; write_shedingsfm(10,miao1); write_com(0x80+11); if(s1num=5) fen1-; if(fen1=-1) fen1=59; write_shedingsfm(7,fen1); write_com(0x80+8); if(s1num=6) shi1-; if(shi1=-1) shi1=23; write_shedingsfm(4,shi1); write_com(0x80+5); void main()/主函數(shù) init();/初始化函數(shù) while(1) keyscan();/鍵盤掃描 if(count=20)/響應中斷20次,時間1s count=0;/清零 miao+;/秒加1 if(miao=60)/60秒時分加1 miao=0; fen+; if(fen=60)/60分時時加1 fen=0; shi+; if(shi=24)/24時時時全為0,從00:00:00開始計時 shi=0; write_sfm(4,shi);/修改時 write_sfm(7,fen);/修改分 write_sfm(10,m
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 產(chǎn)品租借合同范例
- 出租司機聘用合同范本
- 農(nóng)莊水產(chǎn)養(yǎng)殖合同范例
- 低價出售水洗設備合同范例
- 泰州吊裝施工方案公司
- 創(chuàng)作靈感合同范例范例
- 碳內(nèi)部審計問題研究
- 山地吊裝施工方案范本
- 養(yǎng)殖設備出售轉(zhuǎn)讓合同范例
- 會展物流服務合同范例
- 2025年孝感貨運從業(yè)資格考試
- 2025年湖南鐵道職業(yè)技術學院單招職業(yè)技能測試題庫1套
- 江蘇省中小學生金鑰匙科技競賽(高中組)考試題及答案
- 中國建筑史PPT(東南大學)完整全套教學課件
- 人防門吊環(huán)后補方案
- 好書推薦-沈石溪《黑天鵝紫水晶》
- 《建筑識圖》匯總題庫(學生用)
- 印刷制品QC工程圖
- 單軌吊軌道的吊掛形式及安裝標準
- 王羲之蘭亭序書法大字字帖
- GB_T 12519-2021 分析儀器通用技術條件(高清-現(xiàn)行)
評論
0/150
提交評論