版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、目錄 TOC o 1-6 h z u HYPERLINK l _Toc311201577 第一章設(shè)計(jì)內(nèi)容要求 PAGEREF _Toc311201577 h 2 HYPERLINK l _Toc311201578 第一章、軟件設(shè)計(jì)要求 PAGEREF _Toc311201578 h 2 HYPERLINK l _Toc311201579 第三章、設(shè)計(jì)內(nèi)容 PAGEREF _Toc311201579 h 2 HYPERLINK l _Toc311201580 (一)、硬件設(shè)計(jì) PAGEREF _Toc311201580 h 3 HYPERLINK l _Toc311201581 3.1.1.晶振
2、電路及XTAL1,XTAL2的連接 PAGEREF _Toc311201581 h 3 HYPERLINK l _Toc311201582 、復(fù)位電路及復(fù)位引腳RST的連接 PAGEREF _Toc311201582 h 3 HYPERLINK l _Toc311201583 、數(shù)碼管顯示電路 PAGEREF _Toc311201583 h 3 HYPERLINK l _Toc311201584 、蜂鳴器模塊 PAGEREF _Toc311201584 h 5 HYPERLINK l _Toc311201585 、鍵盤設(shè)計(jì)模塊 PAGEREF _Toc311201585 h 6 HYPERLI
3、NK l _Toc311201586 、電路總圖見附錄一 PAGEREF _Toc311201586 h 7 HYPERLINK l _Toc311201587 (二)軟件設(shè)計(jì) PAGEREF _Toc311201587 h 7 HYPERLINK l _Toc311201588 、操作使用說明 PAGEREF _Toc311201588 h 7 HYPERLINK l _Toc311201589 3.2.2、時鐘主要程序設(shè)計(jì) PAGEREF _Toc311201589 h 7 HYPERLINK l _Toc311201590 、鍵盤程序設(shè)計(jì) PAGEREF _Toc311201590 h
4、7 HYPERLINK l _Toc311201591 、中斷程序 PAGEREF _Toc311201591 h 8 HYPERLINK l _Toc311201592 、總程序清單見附錄二 PAGEREF _Toc311201592 h 10 HYPERLINK l _Toc311201593 第四章、調(diào)試過程與結(jié)果分析 PAGEREF _Toc311201593 h 10 HYPERLINK l _Toc311201594 第五章、總結(jié)與體會 PAGEREF _Toc311201594 h 11 HYPERLINK l _Toc311201595 第六章、附錄 PAGEREF _Toc3
5、11201595 h 12 HYPERLINK l _Toc311201596 附錄一 電路原理總圖 PAGEREF _Toc311201596 h 12 HYPERLINK l _Toc311201597 附錄二 程序 PAGEREF _Toc311201597 h 12第一章設(shè)計(jì)內(nèi)容要求1.電子鐘 顯示時、分、秒。2.具有定時報警功能;每天可設(shè)置4個報警時間(時、分)。3.能借助鍵盤,設(shè)置時鐘及報警時間。4.報警時,蜂鳴器鳴響1秒,然后停止。5.具有秒表功能,可以儲存五個數(shù)據(jù),并且讀出數(shù)據(jù)。第一章、軟件設(shè)計(jì)要求1.簡單的用戶使用說明書。2.根據(jù)項(xiàng)目要求,設(shè)計(jì)軟件整體規(guī)劃,人機(jī)對話,各模塊的
6、關(guān)聯(lián),底層驅(qū)動模塊。3.程序在必要的地方進(jìn)行注釋。4.每個函數(shù)的出入口要有輸入輸出參數(shù)的說明。5.程序必須具有良好的可讀性,可重用,容易調(diào)試和維護(hù)。6.使用C語言進(jìn)行編程,允許中間加插匯編。第三章、設(shè)計(jì)內(nèi)容(一)、硬件設(shè)計(jì)3.1.1.晶振電路及XTAL1,XTAL2的連接 如右圖1圖1晶振電路模塊X1,X2分別是系統(tǒng)時鐘信號Fosc的輸入、輸出端。一般的晶振的負(fù)載電容為15p或12.5p ,如果再考慮元件引腳的等效輸入電容,則兩個22p的電容構(gòu)成晶振的振蕩電路就是比較好的選擇。本課程設(shè)計(jì)使用的開發(fā)板是電子科技協(xié)會制作8051C單片機(jī)開發(fā)系統(tǒng),該開發(fā)板的使用的是石英晶體振蕩器,晶振頻率為fo=1
7、2MHz,而振蕩電容C1、C2的典型值取值范圍為2033pF,所以這里取22pF的瓷介電容。注意:為減少寄生電容對振蕩頻率的影響,在印制板上的電容C1和C2應(yīng)盡可能靠近CPU芯片的X1和X2引腳。3、復(fù)位電路及復(fù)位引腳RST的連接如作圖2所示,開發(fā)板采用的是RC分立元件構(gòu)成的外部復(fù)位電路。掉電復(fù)位。當(dāng)正常工作時,二極管D801反偏,圖2 復(fù)位電路斷電后,VCC下降,當(dāng)VCC=0時,VCC與地GND等電位,電容C801通過D801放電,保證再上電時,RST引腳為高電平,CPU可靠復(fù)位。D801的作用是給電容C801提供放電通路。按鍵復(fù)位。但按下按鈕PB801時,電容C801通過R802放電,當(dāng)電
8、容C801放電結(jié)束后,RET引腳電位由R802和R803分壓比決定,由于R8020.7V,PN結(jié)導(dǎo)通,三極管飽和導(dǎo)通,從而驅(qū)動數(shù)碼管DB0。圖3 數(shù)碼管顯示電路設(shè)計(jì)數(shù)碼管中各段發(fā)光二極管的伏安特性和普通二極管類似,只是正向壓較大,正向電阻也大,在一定范圍內(nèi),其正向電流也發(fā)光亮度成正比。由于常規(guī)的數(shù)碼管起輝電流只有1-2mA,最大極限電流也只有10-30mA,最大不超過50mA,所以它的輸入端在5V電源的電路信號相接時,一定要串加限流電阻,以免損壞元件。void sfmbj() s1=s/10; s2=s%10; display(7,s1); display(6,s2); display(2,1
9、7); f1=f/10; f2=f%10; display(4,f1); display(3,f2); display(5,17); m1=m/10; m2=m%10; display(1,m1); display(0,m2);void sfmpb() ps1=ps/10; ps2=ps%10; display(7,ps1); display(6,ps2); display(2,17); pf1=pf/10; pf2=pf%10; display(4,pf1); display(3,pf2); display(5,17); display(1,pm); display(0,17);void s
10、fm() shi1=shi/10; shi2=shi%10; display(7,shi1); display(6,shi2); display(2,17); fen1=fen/10; fen2=fen%10; display(4,fen1); display(3,fen2); display(5,17); miao1=miao/10; miao2=miao%10; display(1,miao1); display(0,miao2); 3、蜂鳴器模塊圖4 蜂鳴器模塊電路如圖所示,三極管的基極接單片機(jī)的P3.2口,當(dāng)P3.2口輸出低電平時,三極管導(dǎo)通,蜂鳴器可以發(fā)出聲音。其基極的限流電阻R14
11、01=10K,當(dāng)VCC=5V時,Ib=(VCC-0.7)/10K0.43mA,PNP三極管 8550的放大系數(shù)約為100,則最大集電極電流Ic大約43mA,足以驅(qū)動蜂鳴器工作。此時集極的限流電阻Rc的經(jīng)典值為10。 if(12=shi&0=fen&0=miao) beep=0; if(12=shi&0=fen&5=miao) beep=1; if(kai=1) if(s=shi&f=fen&m=miao) beep=0; if(s=shi&f=fen&m+1=miao) beep=1;f=f+1; 3.1.5、鍵盤設(shè)計(jì)模塊本設(shè)計(jì)使用的開發(fā)板,原來的設(shè)計(jì)4x4矩陣鍵盤,如圖5所示。2C占據(jù)了,從
12、而導(dǎo)致P2.5,P2.6列鍵無法使用。因此只能使用P2.4列鍵,即只有四個按鍵可以使用,其等效電路圖如圖5右圖所示。 3.1.6、電路總圖見附錄一(二)軟件設(shè)計(jì)3.2.1、操作使用說明 打開開關(guān),啟動時鐘,單片機(jī)將從I2C中讀取數(shù)據(jù),時鐘開始工作。8位數(shù)碼管分別顯示“時-分-秒”,在設(shè)計(jì)鬧鐘狀態(tài)下時,顯示“時-分-秒”。當(dāng)按一下KEY3鍵,時鐘進(jìn)入調(diào)時狀態(tài);按key6鍵,時+;按key2鍵,時-;按key4鍵,分+;按key5鍵,分-;按key7置0;按key1,換回計(jì)數(shù)。此時數(shù)碼管顯示用戶設(shè)置的時間。設(shè)置結(jié)束,按下KEY4鍵作為確認(rèn),系統(tǒng)將把該數(shù)據(jù)儲存到I2C,以掉電保護(hù),并以設(shè)置好的時間進(jìn)
13、行計(jì)時,判斷鬧鐘時間。當(dāng)時間與某個鬧鐘相同時,蜂鳴器將會鳴叫一秒鐘。3.2.2、時鐘主要程序設(shè)計(jì) 本課程設(shè)計(jì)利用單片機(jī)芯片的定時器來固定時間,但該方法做出來的時鐘不是十分精確,不做長期保留,僅供學(xué)習(xí)研究。 選用T1計(jì)時器,產(chǎn)生一個50ms中斷,循環(huán)20次,即為一秒。則1min為60個周期,1h為3600個周期。該開發(fā)板采用12MHz晶體振蕩器,初值:TH1=(65536-50000/(12/12)/256=76=0 x4CTL1=(65536-50000/(12/12)%256=03.2.3、鍵盤程序設(shè)計(jì)按鍵功能:KEY6,2(0 xe7):調(diào)時;KEY4,5(0 xeb):調(diào)分;KEY3(0
14、 xed):進(jìn)入設(shè)置時時間,設(shè)置鬧鐘狀態(tài);9 按鍵定義KEY1(0 xee):設(shè)置結(jié)束,確認(rèn)圖k=keyscan();if(k=3) ajc=1;if(ajc=1) if(k=8)pb=1; if(pb=0) kai=1; switch(k) case 6:s-;if(s=-1) s=23;break; case 2:s+;if(s=24) s=0;break; case 4:f+;if(f=60)f=0;break; case 5:f-; if(f=-1) f=59;break; case 7:s=0;f=0;m=0;break; case 1:ajc=0;break; sfmbj(); e
15、lse switch(k) case 4:TR0=TR0;flag=1;break; case 1:pb=0;break; sfmpb(); if(k=2) shu0a0+=ps; shu1a1+=pf; shu2a2+=pm; if(a2=6) a0=0;a1=0;a2=0; else switch(k) case 6:shi-;if(shi=-1) shi=23;break; case 2:shi+;if(shi=24) shi=0;break; case 4:fen+;if(fen=60)fen=0;break; case 5:fen-; if(fen=-1) fen=59;break;
16、 case 7:shi=0;fen=0;miao=0;break; case 8:TR0=TR0;flag=1;break; case 1:beep=1;kai=0;break; 3.2.4、中斷程序void t0_int() interrupt 1 TH0=(65536-500)/256; TL0=(65536-500)%256; num+; if(pb=1) pm1+; if(pm1=2) pm+; pm1=0; if(pm=10) pf+; pm=0; if(pf=60) pf=0; ps+; if(ps=60) ps=0; if(num=20) miao+; if(miao=60) m
17、iao=0; fen+; if(fen=60) fen=0; shi+; if(shi=24) shi=0; k=keyscan();if(k=3) ajc=1;if(ajc=1) if(k=8)pb=1; if(pb=0) kai=1; switch(k) case 6:s-;if(s=-1) s=23;break; case 2:s+;if(s=24) s=0;break; case 4:f+;if(f=60)f=0;break; case 5:f-; if(f=-1) f=59;break; case 7:s=0;f=0;m=0;break; case 1:ajc=0;break; sf
18、mbj(); else switch(k) case 4:TR0=TR0;flag=1;break; case 1:pb=0;break; sfmpb(); if(k=2) shu0a0+=ps; shu1a1+=pf; shu2a2+=pm; if(a2=6) a0=0;a1=0;a2=0; else switch(k) case 6:shi-;if(shi=-1) shi=23;break; case 2:shi+;if(shi=24) shi=0;break; case 4:fen+;if(fen=60)fen=0;break; case 5:fen-; if(fen=-1) fen=5
19、9;break; case 7:shi=0;fen=0;miao=0;break; case 8:TR0=TR0;flag=1;break; case 1:beep=1;kai=0;break; sfm(); if(12=shi&0=fen&0=miao) beep=0; if(12=shi&0=fen&5=miao) beep=1; if(kai=1) if(s=shi&f=fen&m=miao) beep=0; if(s=shi&f=fen&m+1=miao) beep=1;f=f+1; 3.2.5、總程序清單見附錄二第四章、調(diào)試過程與結(jié)果分析秒表功能時鐘分-返回計(jì)數(shù)界面鬧鐘設(shè)置暫停在本次
20、課程設(shè)計(jì)中,我用萬利 軟件和STC89C52單片機(jī)開發(fā)系統(tǒng)調(diào)試程序,經(jīng)過多次調(diào)試,了解了如何進(jìn)行編譯、連接,還讀懂了單片機(jī)的相關(guān)電路原理圖,但是在下載程序運(yùn)行后并沒有顯示理想的效果。在檢查了多次之后,還是沒有找出錯誤。接近一星期的日子里,不斷對程序進(jìn)行分析,拆合,修改,調(diào)試。經(jīng)過努力,雖然編寫的程序比較簡單,單片機(jī)試驗(yàn)的功能不是出眾,但基本把老師布置的內(nèi)容,按時完成。下圖為調(diào)試過程返回計(jì)數(shù)界面設(shè)置鬧鐘暫停置0時鐘分-時鐘分+秒表調(diào)試第五章、總結(jié)與體會接近一個星期的單片機(jī)課程設(shè)計(jì),使我學(xué)到了很多很多,不僅鞏固了以前所學(xué)過的模電,數(shù)電,單片機(jī)及C語言知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的知識,
21、如,萬利的軟件使用等。通過這次課程設(shè)計(jì),我懂得了理論與實(shí)際相結(jié)合的重要性,只有把所學(xué)的理論知識與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),從而提高自己的實(shí)際動手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過程中遇到問題會很多,同時在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己還有許多不足之處,所學(xué)到的知識還遠(yuǎn)遠(yuǎn)不夠, 對以前所學(xué)過的知識理解得也不夠深刻,掌握得不夠牢固,以至于還有一些功能要求難以完成,對單片機(jī)的結(jié)構(gòu)還有些模糊不清,特別對中斷。總之,這次課程設(shè)計(jì)不但增加和鞏固了我的單片機(jī)方面的知識,包括軟、硬件方面。第六章、附錄附錄一 電路原理總圖附錄二 程序#include#define uint unsigned
22、int#define uchar unsigned charsbit CLK=P34;sbit DIN=P23;sbit key=P10;sbit beep=P12;void sfm();uchar code table=0 x03,0 x9F,0 x25,0 x0D,0 x99,0 x49,0 x41,0 x1F,0 x01,0 x09,0 x11,0 xC1,0 x63,0 x85,0 x61,0 x71,0 xFE ,0 xFD ;/0到F以及小數(shù)點(diǎn)。的代碼uchar num,num1,k,flag,ajc,kai;char shi;miao,miao1,miao2,fen,fen1,f
23、en2,shi1,shi2,s,f,m,s1,s2,f1,f2,m1,m2;char ps,pf,pm,pm1,pb,ps1,ps2,pf1,pf2,pu;uchar a0,a1,a2,b0,b1,b2;uchar shu06,shu16 ,shu26;void delay(int t)/延時函數(shù)int i,j;for(i=t;i0;i-)for(j=50;j0;j-);void clear164()/將164輸出所以清零char k;for(k=0;k8;k+)DIN=1;CLK=0;CLK=1;uchar keyscan()char i,j;j=0;P0=0 xff; /清除沒有用到的位顯
24、示DIN=0;for(i=0;i0;n-)/去掉沒有顯示的位數(shù)CLK=0;CLK=1;DIN=1;CLK=0;CLK=1;P0=tableshu1; /顯示號碼的位數(shù)delay(1); P0=0XFF;for(m=8-wei1;m0;m-)/去掉剩下的位數(shù)DIN=1;CLK=0;CLK=1;void sfmbj() s1=s/10; s2=s%10; display(7,s1); display(6,s2); display(2,17); f1=f/10; f2=f%10; display(4,f1); display(3,f2); display(5,17); m1=m/10; m2=m%1
25、0; display(1,m1); display(0,m2);void sfmpb() ps1=ps/10; ps2=ps%10; display(7,ps1); display(6,ps2); display(2,17); pf1=pf/10; pf2=pf%10; display(4,pf1); display(3,pf2); display(5,17); display(1,pm); display(0,17);void sfm() shi1=shi/10; shi2=shi%10; display(7,shi1); display(6,shi2); display(2,17); fe
26、n1=fen/10; fen2=fen%10; display(4,fen1); display(3,fen2); display(5,17); miao1=miao/10; miao2=miao%10; display(1,miao1); display(0,miao2);void int_() TMOD=0 x01; TH0=(65536-500)/256; TL0=(65536-500)%256; ET0=1; EA=1; TR0=1; void t0_int() interrupt 1 TH0=(65536-500)/256; TL0=(65536-500)%256; num+; if(pb=1) pm1+; if(pm1=2) pm+; pm1=0; if(pm=10) pf+; pm=0; if(pf=60) pf=0; ps+; if(ps=60) ps=0; if(num=20) miao+; if(miao=60) miao=0; fen+; if(fen=60) fen=0; shi+; if(shi=24) shi=0; k=keyscan();if(k=3) ajc=1;if(ajc=1) if(k=8)pb=1; if(pb=0) kai=1; switch(k) case 6:s-;if(s=-1) s=23;break; case
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 年度環(huán)保設(shè)備采購及運(yùn)營維護(hù)合同2篇
- 二零二五年度出納崗位培訓(xùn)聘用合同范本3篇
- 二零二五年度高端定制家具設(shè)計(jì)與制造合同協(xié)議范本3篇
- 二零二五年度出租車行業(yè)車輛維修承包合同3篇
- 個人與個人之間特許經(jīng)營權(quán)轉(zhuǎn)讓合同(2024版)3篇
- 2025年度人工智能技術(shù)應(yīng)用合作合同2篇
- 二零二五年度苗木育種技術(shù)合作開發(fā)合同3篇
- 二零二五年度建筑工程棄土清運(yùn)及環(huán)保處理服務(wù)合同
- 2025年圍墻安裝與智慧城市基礎(chǔ)設(shè)施連接合同3篇
- 室內(nèi)設(shè)計(jì)公司2025年度合作框架合同3篇
- 習(xí)近平法治思想概論教學(xué)課件緒論
- 寵物會展策劃設(shè)計(jì)方案
- 孤殘兒童護(hù)理員(四級)試題
- 梁湘潤《子平基礎(chǔ)概要》簡體版
- 醫(yī)院急診醫(yī)學(xué)小講課課件:急診呼吸衰竭的處理
- 腸梗阻導(dǎo)管在臨床中的使用及護(hù)理課件
- 調(diào)料廠工作管理制度
- 小學(xué)英語單詞匯總大全打印
- 衛(wèi)生健康系統(tǒng)安全生產(chǎn)隱患全面排查
- GB/T 15114-2023鋁合金壓鑄件
- 貨物驗(yàn)收單表格模板
評論
0/150
提交評論