數(shù)電課程設(shè)計(jì)基于AT89S51單片機(jī)的 多功能數(shù)字鐘的設(shè)計(jì)
《數(shù)電課程設(shè)計(jì)基于AT89S51單片機(jī)的 多功能數(shù)字鐘的設(shè)計(jì)》由會(huì)員分享,可在線閱讀,更多相關(guān)《數(shù)電課程設(shè)計(jì)基于AT89S51單片機(jī)的 多功能數(shù)字鐘的設(shè)計(jì)(19頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、課程設(shè)計(jì)任務(wù)書(shū) 學(xué)生姓名: ** 專(zhuān)業(yè)班級(jí):電子科學(xué)與技術(shù)0803班 指導(dǎo)教師: **** 工作單位: 信息工程學(xué)院 題 目: 多功能數(shù)字鐘的設(shè)計(jì) 初始條件: 本設(shè)計(jì)既可以使用集成譯碼器、計(jì)數(shù)器、定時(shí)器、脈沖發(fā)生器和必要的門(mén)電路等。本設(shè)計(jì)也可以使用單片機(jī)系統(tǒng)構(gòu)建多功能數(shù)字鐘。用數(shù)碼管顯示時(shí)間計(jì)數(shù)值。 要求完成的主要任務(wù): (包括課程設(shè)計(jì)工作量及技術(shù)要求,以及說(shuō)明書(shū)撰寫(xiě)等具體要求) 1、課程設(shè)計(jì)工作量:1周。 2、技術(shù)要求: ① 設(shè)計(jì)一個(gè)數(shù)字鐘。要求用六位數(shù)
2、碼管顯示時(shí)間,格式為00:00:00。 ②具有60進(jìn)制和24進(jìn)制(或12進(jìn)制)計(jì)數(shù)功能,秒、分為60進(jìn)制計(jì)數(shù),時(shí)為24進(jìn)制(或12進(jìn)制)計(jì)數(shù)。 ③有譯碼、七段數(shù)碼顯示功能,能顯示時(shí)、分、秒計(jì)時(shí)的結(jié)果。 ④設(shè)計(jì)提供連續(xù)觸發(fā)脈沖的脈沖信號(hào)發(fā)生器, ⑤具有校時(shí)單元、鬧鐘單元和整點(diǎn)報(bào)時(shí)單元。 ⑥確定設(shè)計(jì)方案,按功能模塊的劃分選擇元、器件和中小規(guī)模集成電路,設(shè)計(jì)分電路,畫(huà)出總體電路原理圖,闡述基本原理。 3、查閱至少5篇參考文獻(xiàn)。按《武漢理工大學(xué)課程設(shè)計(jì)工作規(guī)范》要求撰寫(xiě)設(shè)計(jì)報(bào)告書(shū)。全文用A4紙打印,圖紙應(yīng)符合繪圖規(guī)范。 時(shí)間安排: 1、 2010 年 6 月 28 日集中,作課設(shè)具
3、體實(shí)施計(jì)劃與課程設(shè)計(jì)報(bào)告格式的要求說(shuō)明。 2、 2010 年 6 月 29 日,查閱相關(guān)資料,學(xué)習(xí)電路的工作原理。 2、 2010 年 6 月 30 日 至 2010 年 7 月 1 日,方案選擇和電路設(shè)計(jì)。 2、 2010 年 6 月 30 日 至 2010 年 7 月 1 日,電路調(diào)試和設(shè)計(jì)說(shuō)明書(shū)撰寫(xiě)。 3、 2010 年 7 月 2 日上交課程設(shè)計(jì)成果及報(bào)告,同時(shí)進(jìn)行答辯。 課設(shè)答疑地點(diǎn):鑒主13樓電子科學(xué)與技術(shù)實(shí)驗(yàn)室。 指導(dǎo)教師簽名: 年 月 日 系主任(或責(zé)任教師)簽名:
4、 年 月 日 摘要 數(shù)字鐘是一種用數(shù)字電路技術(shù)實(shí)現(xiàn)時(shí)、分、秒計(jì)時(shí)的裝置,與機(jī)械式時(shí)鐘相比具有更高的準(zhǔn)確性和直觀性,且無(wú)機(jī)械裝置,具有更更長(zhǎng)的使用壽命,因此得到了廣泛的使用。 本文基于單片機(jī)技術(shù)原理,以單片機(jī)AT89S51作為核心控制器,通過(guò)硬件電路的制作以及軟件程序的編制,設(shè)計(jì)制作出一個(gè)數(shù)字時(shí)鐘系統(tǒng)。 本文設(shè)計(jì)的系統(tǒng)要求可以對(duì)時(shí)、分、秒進(jìn)行動(dòng)態(tài)掃描顯示計(jì)時(shí),還具有整點(diǎn)提醒和鬧鈴功能。該電路系
5、統(tǒng)采用AT89S51單片機(jī)作為核心,功耗小,能在3V的低壓工作,電壓可選用3~5V電壓供電。 本文從硬件電路到單片機(jī)控制器再到微處理器程序進(jìn)行了一系列的設(shè)計(jì),最終將各模塊整合到Proteus中進(jìn)行仿真,最終在Proteus中仿真的結(jié)果令人滿(mǎn)意。 關(guān)鍵字:AT89S51,動(dòng)態(tài)掃描 Abstract Digital Clock is a digital circuit technology with the hours, minutes, seconds, timing devices, a
6、nd mechanical clock higher than the accuracy and intuitive, and no mechanical devices, with more longer life, so be widespread use. Based on principles of SCM technology to MCU AT89S51 as the core controller, through hardware design and software programming for the design to produce a digital cloc
7、k system. System requirements for this design can be hours, minutes, seconds, and dynamic scanning display timing, and also has alarm function to remind the whole point. The circuit system uses AT89S51 microcontroller as a core, low power, low-voltage work in 3V, the voltage can choose 3 ~ 5V supp
8、ly voltage. This single chip controller from the hardware circuit to process and then to a series of microprocessor design, the module will eventually be integrated into the Proteus in the simulation, the final in the Proteus in the simulation results are satisfactory. Keywords: AT89S51, dyna
9、mic scanning 1.設(shè)計(jì)目的 設(shè)計(jì)一個(gè)數(shù)字電子鐘,使它滿(mǎn)足以下要求: ① 設(shè)計(jì)一個(gè)數(shù)字鐘。要求用六位數(shù)碼管顯示時(shí)間,格式為00:00:00。 ②具有60進(jìn)制和24進(jìn)制(或12進(jìn)制)計(jì)數(shù)功能,秒、分為60進(jìn)制計(jì)數(shù),時(shí)為24進(jìn)制(或12進(jìn)制)計(jì)數(shù)。 ③有譯碼、七段數(shù)碼顯示功能,能顯示時(shí)、分、秒計(jì)時(shí)的結(jié)果。 ④設(shè)計(jì)提供連續(xù)觸發(fā)脈沖的脈沖信號(hào)發(fā)生器, ⑤具有校時(shí)單元、鬧鐘單元和整點(diǎn)報(bào)時(shí)單元。 2.方案設(shè)計(jì)與論證 2.1設(shè)計(jì)方向選擇 本數(shù)字鐘的設(shè)計(jì)可以采用門(mén)電路結(jié)合其他芯片來(lái)組建數(shù)字鐘,但考慮到在使用門(mén)電路的過(guò)程中使用的器件和芯片會(huì)很多,接法比較復(fù)雜,而且對(duì)
10、于有些要求如整點(diǎn)報(bào)時(shí)和鬧鈴實(shí)現(xiàn)會(huì)有點(diǎn)困難。所以選擇門(mén)電路來(lái)設(shè)計(jì)多功能時(shí)鐘會(huì)比較復(fù)雜和繁瑣。 本次設(shè)計(jì)還可以使用單片機(jī)來(lái)設(shè)計(jì)電路,相對(duì)于門(mén)電路來(lái)說(shuō)單片機(jī)的設(shè)計(jì)比較簡(jiǎn)單,而且功能比較全面,但、編寫(xiě)程序會(huì)是單片機(jī)的一個(gè)難點(diǎn)。 2.2時(shí)鐘芯片的選擇方案和論證 直接采用單片機(jī)定時(shí)計(jì)數(shù)器提供秒的信號(hào),使用程序?qū)崿F(xiàn)年、月、日、星期、時(shí)、分、秒計(jì)數(shù)。采用此種方案雖然存在時(shí)間誤差,但是可以減少芯片的使用,節(jié)約成本,所以采用此方案。 2.3電路設(shè)計(jì)最終方案決定 綜上各方案所述,對(duì)此次作品的方案選定:采用AT89S52作為主控制系統(tǒng);使用內(nèi)部時(shí)鐘電路外接晶振提供時(shí)鐘震蕩電路;顯示方法采用 LED數(shù)碼管動(dòng)態(tài)
11、掃描方法。圖(1)為本次設(shè)計(jì)的總電路圖: 圖(1) 設(shè)計(jì)總電路圖 3.部分電路的設(shè)計(jì) 3.1.LED數(shù)碼管電路設(shè)計(jì) 本次設(shè)計(jì)中我們采用了8個(gè)共陽(yáng)LED7段數(shù)碼管構(gòu)成了數(shù)碼顯示電路,其中位選接在單片機(jī)的P0口,而在實(shí)際之中我們會(huì)在之間接一個(gè)鎖存器,實(shí)現(xiàn)電流的放大,不然LED數(shù)碼管會(huì)很暗,影響我們的觀察。本設(shè)計(jì)中鎖存器使用的是74HC573,其引腳圖和功能表如圖(2)所示。數(shù)碼管的段選接在單片機(jī)的P1口。電路圖如圖(3)所示:
12、 圖(2)74HC573引腳圖和功能表 圖(3)LED數(shù)碼管顯示電路 3.2蜂鳴器報(bào)時(shí)系統(tǒng)設(shè)計(jì) 本設(shè)計(jì)用報(bào)時(shí)和鬧鈴采用的是蜂鳴器組成的發(fā)聲電路,蜂鳴器接在單片機(jī)的P3^7口,在之間接一個(gè)三極管實(shí)現(xiàn)電流的放大,這樣才可以正常的發(fā)出聲音。其部分電路圖如圖(4)所示: 圖(4)蜂鳴器電路圖 在這個(gè)電路中我們選擇的三極管是PNP三極管8550,可以有效地完成我們所需要的功能。 4.程序設(shè)計(jì) 4.1.程序流程圖 我們采用的是C語(yǔ)言編的,其流程圖如圖(5)所示: 開(kāi)始 初始化 整點(diǎn)報(bào)時(shí)? 蜂鳴器響 鬧
13、鈴?
調(diào)用顯示函數(shù)
按鍵功能調(diào)節(jié)
圖(5)程序流程圖
4.2.C語(yǔ)言源程序
#include
14、r select,oneminute; bit bdata modeselect; void delay(); void display(unsigned char temp,unsigned char mode); void sound() { while(num<2000) { P3_0=0; } P3_0=1; } void initial() { P0=0; TMOD=0x22; IE=0xCF; IT0=1; IT1=1; T2CON=0; RCAP2L=0xf0; RCAP2H=0x1f;
15、 TH2=0x1c; TL2=0xf0; IP=0X06; TH0=0x48; TL0=0x48; TH1=0X48; TR0=1; PCON=0x01; hour=12; minute=0; second=0; num=0; select=0; clockhour=12; clockminute=0; modeselect=0; } void interrupt0()interrupt 0 using 3 { TR1=1; select++; if(select==7) select=0; if(select==1
16、) ET2=1; oneminute=second-1; } void timer0()interrupt 1 using 3 { num++; if(num==5000) { num=0; second++; } if(second==60) { minute++; second=0; } if(minute==60) { hour++; minute=0; } if(hour==24) hour=0; } void interrupt1()interrupt 2 u
17、sing 3 { oneminute=second-1; modeselect=0; ET2=!ET2; switch(select) { case 4:{ hour++; if(hour==24) hour=0; break; } case 5:{ minute++; if(minute==60) minute=0; break; } case 6:{ second++; if(sec
18、ond==60) second=0; break; } case 2:{ clockhour++; if(clockhour==24) clockhour=0; break; } case 3:{ clockminute++; if(clockminute==60) clockminute=0; break; } default:break; } } void timer1()interrupt
19、3 using 3 { if(select) { if(second==oneminute) { select=0; TR1=0; } } } void timer2()interrupt 5 using 3 { sound(); TF2=0; if(minute!=clockminute&&hour==clockhour) TR2=0; } void delay() { unsigned char i=255; while(--i) { ; } } void display
20、(unsigned char temp,unsigned char mode) { if(temp==4||temp==2) P0=0; else P0=1; if(mode) P1=displayCode[hour/10]; else P1=displayCode[clockhour/10]; delay(); if(temp==4||temp==2) P0=0; else P0=2; if(mode) P1=displayCode[hour%10]; else P1=displayCode[clockhou
21、r%10]; delay(); if(temp==1||temp==2||temp==3) P0=0; else P0=4; P1=0xbf; delay(); if(temp==5||temp==3) P0=0; else P0=8; if(mode) P1=displayCode[minute/10]; else P1=displayCode[clockminute/10]; delay(); if(temp==5||temp==3) P0=0; else P0=16; if(mode) P
22、1=displayCode[minute%10]; else P1=displayCode[clockminute%10]; delay(); if(temp==1||temp==2||temp==3) P0=0; else P0=32; P1=0xbf; delay(); if(temp==6) P0=0; else P0=64; if(mode) P1=displayCode[second/10]; else P1=displayCode[0]; delay(); if(temp==6) P0=0;
23、 else P0=128; if(mode) { if(ET2) P1=displayCode[second%10]+128; else P1=displayCode[second%10]; } else P1=displayCode[0]; delay(); } void main() { initial(); sound(); while(1) { switch(select) { case 0:{ display(0,1);
24、 break; } case 1:{ if(num<=2500) { display(1,0); } else { display(0,0); } break; } case 2:{ if(num<=2500) { display(2,0); } else { display(0,0)
25、; } break; } case 3:{ if(num<=2500) { display(3,0); } else { display(0,0); } break; } case 4:{ if(num<=2500) { display(4,1); } else {
26、 display(0,1); } break; } case 5:{ if(num<=2500) { display(5,1); } else { display(0,1); } break; } case 6:{ if(num<=2500) { display(6,1); } else
27、 { display(0,1); } break; } default:break; } if(second==0) { if(minute==0||minute==30) sound(); } if(minute==clockminute&&hour==clockhour) { TR2=1; modeselect=1; } if(modeselect==1&&hour==clockhour&&!((mi
28、nute-clockminute)%5)) TR2=1; } } 5.電路的設(shè)計(jì)與仿真 我們使用的仿真軟件是protues,系統(tǒng)的仿真圖如圖(6)所示: 圖(6)系統(tǒng)仿真圖 6.心得與體會(huì) 在此次的數(shù)字鐘設(shè)計(jì)過(guò)程中,更進(jìn)一步地熟悉了芯片的結(jié)構(gòu)及掌握了各芯片的工作原理和其具體的使用方法。每次課程設(shè)計(jì)是一次難得的鍛煉機(jī)會(huì),讓我們能夠充分利用所學(xué)過(guò)的理論知識(shí)還有自己的想象的能力,另外還讓我們學(xué)習(xí)查找資料的方法,以及自己處理分析電路,設(shè)計(jì)電路的能力。我相信是對(duì)我的一個(gè)很好的提高。平時(shí)在學(xué)習(xí)理論知識(shí)的時(shí)候,我們應(yīng)該更注重實(shí)踐,應(yīng)付
29、考試有考試的方法。這次的課程設(shè)計(jì)讓我懂得了它們?cè)趯?shí)際中的用途,還有我們身邊的很多數(shù)字鐘電路,這些都是我們自己可以實(shí)現(xiàn)的,以前那些神秘的東西在不斷的學(xué)習(xí)過(guò)程中變得不再那么神秘,我相信,以后還有更多的謎底被揭開(kāi)。通過(guò)這次課程設(shè)計(jì),我還更加深了理論知識(shí)的學(xué)習(xí)。這次的設(shè)計(jì)電路我用到了單片機(jī)的不少功能,通過(guò)自己分析和設(shè)計(jì)更好地運(yùn)用了它們,而且還學(xué)會(huì)了它們更多的功能,發(fā)現(xiàn)它們的功能遠(yuǎn)比書(shū)上說(shuō)的多很多,可以利用不同的接法設(shè)計(jì)出各種各樣不同的電路出來(lái)。模電課程設(shè)計(jì)學(xué)到得方法在這里可以繼續(xù)使用,比如MULTISIM等學(xué)習(xí)軟件,給設(shè)計(jì)提供了很大的便利。課程設(shè)計(jì)機(jī)會(huì)不多,這學(xué)期很好,有足夠的時(shí)間,上學(xué)期因?yàn)槟k娬n程
30、設(shè)計(jì)臨近期末才給出來(lái),做得很匆忙,覺(jué)得不是敷衍老師,而是敷衍自己。雖然自己很努力的做了,但覺(jué)得做得不夠好,難免有點(diǎn)遺憾。這學(xué)期本來(lái)課不多,課程設(shè)計(jì)又給得比較早,自己認(rèn)真做了,覺(jué)得還是小有收獲。 碰到的問(wèn)題越讓人絕望,解決問(wèn)題之后的喜悅程度就越高。作為工科類(lèi)的學(xué)生,以后工作了難免要碰到許許多多的問(wèn)題,不要絕望,堅(jiān)持,直到看到勝利的曙光。 參考文獻(xiàn) [1] 伍時(shí)和,吳友宇,凌玲。數(shù)字電子技術(shù)基礎(chǔ),2009 [2] 王法能. 單片機(jī)原理及應(yīng)用[M]. 科學(xué)出版社,2004 [3] 陳 寧. 單片機(jī)技術(shù)應(yīng)用基礎(chǔ)[M]. 南京:南京信息職業(yè)技術(shù)學(xué)院, 2005 [4] 劉 勇. 數(shù)字電路 [M]. 電子工業(yè)出版社, 2005
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 空前嚴(yán)重的資本主義世界經(jīng)濟(jì)危機(jī)講義
- 丹田降脂丸推廣策劃OTC0427教學(xué)課件
- 專(zhuān)業(yè)代理公司組織架構(gòu)及崗位職責(zé)
- 宮頸癌術(shù)后輔助放射治療通用PPT課件
- 家庭常用醫(yī)療器械的使用課件
- 給圖形做標(biāo)記
- 高三政治人教版一輪復(fù)習(xí)課件:課時(shí)11經(jīng)濟(jì)全球化與對(duì)外開(kāi)放共44張
- 五年級(jí)下冊(cè)英語(yǔ)Recycle1人教版課件
- 五年級(jí)上冊(cè)科學(xué)《母雞生蛋了》粵教版課件
- 二年級(jí)上冊(cè)道德與法治大家排好隊(duì)課件
- 復(fù)習(xí)課件工業(yè)革命
- 第六章組織文化
- 勤助上崗培訓(xùn)課件
- 南川中學(xué) 剪紙課件 第2課
- 華師大版九年級(jí)上冊(cè)課件:2312平行線分線段成比例