整點(diǎn)報(bào)時(shí)數(shù)字鐘_第1頁
整點(diǎn)報(bào)時(shí)數(shù)字鐘_第2頁
整點(diǎn)報(bào)時(shí)數(shù)字鐘_第3頁
整點(diǎn)報(bào)時(shí)數(shù)字鐘_第4頁
整點(diǎn)報(bào)時(shí)數(shù)字鐘_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、數(shù)字鐘一、設(shè)計(jì)任務(wù)本任務(wù)為:數(shù)字鐘。設(shè)計(jì)任務(wù)具體內(nèi)容如下:1.1 基本設(shè)計(jì)任務(wù)依據(jù)命題題意,本設(shè)計(jì)采用89C51進(jìn)行24小時(shí)計(jì)時(shí)并顯示。要求其顯示時(shí)間范圍是00:00:0023:59:59,具備有時(shí)分秒校準(zhǔn)功能。數(shù)字鐘上面要帶有鬧鐘,鬧鐘與時(shí)鐘之間能隨時(shí)切換,鬧鐘具備時(shí)分秒設(shè)置功能。1.2 控制設(shè)計(jì)任務(wù)由于本設(shè)計(jì)采用手動(dòng)校準(zhǔn)時(shí)鐘與手動(dòng)設(shè)置鬧鐘方案,所以要求用較少的按鍵來達(dá)到切換鬧鐘與時(shí)鐘、時(shí)鐘時(shí)分秒校準(zhǔn)、鬧鐘時(shí)分秒設(shè)置等功能。1.3 軟件設(shè)計(jì)任務(wù)數(shù)字鐘的所有計(jì)時(shí)都要由軟件控制實(shí)現(xiàn)。用軟件對(duì)幾個(gè)按鍵所得信號(hào)進(jìn)行相應(yīng)改變,以控制時(shí)鐘與鬧鐘的顯示。通過軟件對(duì)鬧鐘與時(shí)鐘進(jìn)行比較,當(dāng)時(shí)鐘所顯示時(shí)間與鬧鐘

2、一樣時(shí),要啟動(dòng)報(bào)時(shí)模塊。三、總體設(shè)計(jì)經(jīng)過對(duì)各個(gè)方案分析比較,最終確定總方案如圖3-1所示。該系統(tǒng)所有模塊都由主單片機(jī)控制。其中,設(shè)計(jì)各個(gè)模塊,包括單片機(jī)、顯示模塊、電機(jī)驅(qū)動(dòng)、光電探測(cè)由四節(jié)AA電池供電。電機(jī)驅(qū)動(dòng)采用L298驅(qū)動(dòng)芯片控制。用光電傳感器對(duì)邊線的探測(cè)來控制距離。通過單片機(jī)的機(jī)器周期計(jì)算時(shí)間計(jì)數(shù)周期,以達(dá)到計(jì)時(shí)目的。圖3-1 系統(tǒng)方案圖3.1 系統(tǒng)硬件電路設(shè)計(jì)3.1.1 顯示及控制模塊圖3-4 語音報(bào)時(shí)模塊3.2 系統(tǒng)軟件設(shè)計(jì)3.2.1 軟件計(jì)時(shí)的分析與計(jì)算單片機(jī)內(nèi)部定時(shí)器有4種工作模式,方式0是13位計(jì)數(shù)器,由于計(jì)時(shí)時(shí)間過短,中斷頻率高,所以不選用此模式;方式2是自動(dòng)重裝式計(jì)數(shù)器,是

3、8位計(jì)數(shù)器,同樣中斷頻率過高;方式3也是8位計(jì)數(shù)器;方式1是16位計(jì)數(shù)器,綜合考慮,選用方式1做精確計(jì)時(shí)。由于51單片機(jī)是12分頻,因此機(jī)器周期=晶振頻率/12。在該設(shè)計(jì)中,選用頻率為12MHz的晶振,因此機(jī)器周期=1s。定時(shí)1s需要1000000個(gè)機(jī)器周期,因此通過20次定時(shí)器中斷完成1s的定時(shí),每次完成50000個(gè)周期的定時(shí),因此每次給定時(shí)器的初值應(yīng)該是TH0=B0H,TL0=3CH。3.2.2 系統(tǒng)軟件設(shè)計(jì)設(shè)計(jì)兩套存儲(chǔ)方案,一套存儲(chǔ)時(shí)鐘,一套存儲(chǔ)鬧鐘,兩者互不干涉,只有當(dāng)兩者相等時(shí)才會(huì)調(diào)用鬧鐘播放子程序,而當(dāng)每次整點(diǎn)時(shí)則會(huì)調(diào)用整點(diǎn)報(bào)時(shí)子程序。本設(shè)計(jì)有調(diào)用T0中斷,并有以下子程序:void

4、 delay(void) /延時(shí)子程序void delay2(void) /1420專用延時(shí)子程序void play(unsigned char temp) /1420播放子程序void display(void) /顯示子程序void rdisplay(void) /鬧鐘顯示子程序void ring(void) /鬧鐘控制子程序void examring(void) /鬧鐘播放子程序void zhengdian(void) /整點(diǎn)報(bào)時(shí)子程序、測(cè)試結(jié)果及結(jié)果分析4.1 測(cè)試儀器及工具測(cè)試儀器及工具:電源一個(gè)。4.2 測(cè)試步驟、接上電源。、設(shè)定鬧鐘為00:01:00,并試聽鬧鐘是否準(zhǔn)確。、試聽每

5、次整點(diǎn)報(bào)時(shí)是否準(zhǔn)確。、試驗(yàn)各按鍵功能是否正常。4.3 測(cè)試結(jié)果如下鬧鐘與整點(diǎn)報(bào)時(shí)功能均正確無誤,各按鍵功能均正常。4.4 測(cè)試結(jié)果分析通過對(duì)測(cè)試數(shù)據(jù)的分析,可以看出,數(shù)字鐘能實(shí)現(xiàn)時(shí)鐘計(jì)時(shí),并帶有鬧鐘與整點(diǎn)報(bào)時(shí)功能,即數(shù)字鐘已經(jīng)實(shí)現(xiàn)了題目所給出的所有要求。參考文獻(xiàn):1、胡漢才.單片機(jī)原理及其接口技術(shù).北京:清華大學(xué)出版社,2005 2、閻石.數(shù)字電子技術(shù)基礎(chǔ).北京:高等教育出版社,20013、童詩白 華成英.模擬電子技術(shù)基礎(chǔ).北京:高等教育出版社,2001 4、郁有文等.傳感器原理及工程應(yīng)用.西安:西安電子科技大學(xué)出版社,2008附件一:參考程序如下:#include unsigned char

6、codetable=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; unsigned char code tab=0xfd,0xfb,0xf7,0xef,0xdf,0xbf;unsigned charcodets=0x00,0x08,0x10,0x18,0x20,0x28,0x30,0x38,0x40,0x48,0x50;unsigned char wei=0,1,2,3,4,5;unsigned char sec,min,hou,rsec,rmin,rhou,tcont; unsigned char a0,a1,a2; unsigned

7、char smh;void delay(void) /延時(shí)子程序 unsigned char i,j; for (i=10;i0;i-) for(j=248;j0;j-);void delay2(void) /1420專用延時(shí)子程序 unsigned char i,j,k; for (i=200;i0;i-) for(j=248;j0;j-) for(k=20;k0;k-); void play(unsigned char temp) /1420播放子程序 P1=0;P3_0=1;P3_1=1;P1=temp; P3_1=0;delay2(); P1=0; P3_1=1; void displ

8、ay(void) /顯示子程序 for(a2=0;a26;a2+) wei0=hou/10;wei1=hou%10;wei2=min/10; wei3=min%10; wei4=sec/10; wei5=sec%10; P2=taba2; P0=tableweia2; delay();void rdisplay(void) /鬧鐘顯示子程序 for(a2=0;a20;i-) display(); P1=0;P3_1=1;P1=0;P3_0=1;P3_1=1;P1=0x70;P3_1=0; for (i=150;i0;i-) display();P1=0; 6P3_1=0;for (i=150;

9、i0;i-) display(); P1=0; P3_1=1;P3_1=1;if(dian!=0)play(0x60);play(0x68);play(0x10);play(0x50);dian=hou%10;dian=tsdian;play(dian);play(0x58); void main(void) /主程序 P1=0;P3_0=1;P3_1=1;P1=0x70; P1=0;P3_0=1;P3_1=1;P1=0x70;P3_1=0; for (i=150;i0;i-) display(); P1=0; P3_1=1; void zhengdian(void) /整點(diǎn)報(bào)時(shí)子 程序 un

10、signed char dian; if(sec=0) if(min=0) dian=hou/10;if(dian=0)play(0x60);play(0x68);dian=hou%10;dian=tsdi an;play(dian);play(0x58);if(dian=1)dian=hou%10;if(dian=0)play(0x60);play(0x68);play(0x50);pla y(0x58);if(dian!=0)play(0x60);play(0x68);play(0x50);dia n=hou%10;dian=tsdian;play(dian);play(0x58);if(

11、dian=2)dian=hou%10;if(dian=0)play(0x60);play(0x68);play(0x10);pla y(0x50);play(0x58);unsigned char i; TMOD=1;TH0=(65536-50000)/256; TL0=(65536-50000)%256; TR0=1; ET0=1; EA=1; tcont=0; sec=0; min=0; hou=0; rsec=0; rmin=0; rhou=0; smh=0; for (i=50;i0;i-) display(); while(1) display(); examring(); zhen

12、gdian(); if(P3_3=0) delay(); if(P3_3=0) switch(smh) case 0: sec+; break; case 1: min+; break; case 2: hou+; break;if(sec=60) sec=0; min+;if(min=60) min=0; hou+; if(hou=24) hou=0;while(P3_3=0) display(); if(P3_2=0) delay(); if(P3_2=0) switch(smh) case 0: sec-; break; case 1: min-; break; case 2: hou-; break; if(sec=-1) sec=59; min-; if(min=-1) min=59; hou-; if(hou=-1) hou=23;while(P3_2=0) display(); if(P3_4=0) delay(); if(P3_4=0) smh+; if(smh=3) smh=0; while(P3_4=0) display();if(P3_5=0) delay(); if(P3_5=0) ring(); void t0(void) interrupt

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論