數(shù)字式電子鐘設(shè)計_第1頁
數(shù)字式電子鐘設(shè)計_第2頁
數(shù)字式電子鐘設(shè)計_第3頁
數(shù)字式電子鐘設(shè)計_第4頁
數(shù)字式電子鐘設(shè)計_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

單片機數(shù)字時鐘設(shè)計TOC\o"1-3"\h\z\u摘要單片機因?qū)⑵渲饕M成部分集成在一個芯片上而得名,就是把中央處理器、隨機存儲器、只讀存儲器、中斷系統(tǒng)、定時器/計數(shù)器以及I/O接口電路等部件集成在一個芯片上?;趩纹瑱C設(shè)計的數(shù)字鐘精確度較高,因為在程序的執(zhí)行過程中,任何指令都不影響定時器的正常計數(shù),即便程序很長也不會影響中斷的時間。本設(shè)計使用12MHZ晶振與單片機AT89C52相連接,以AT89C52芯片為核心,采用動態(tài)掃描方式顯示,通過使用該單片機,加之在顯示電路部分使用74HC244驅(qū)動電路,實現(xiàn)在6個LED數(shù)碼管上顯示日期、時間、定時、鬧鈴,通過6個按鍵實現(xiàn)設(shè)置日期、進行調(diào)時、設(shè)定鬧鈴、倒計時等功能,在實現(xiàn)各功能時數(shù)碼管進行相應(yīng)顯示,鬧鈴或定時時間到時蜂鳴器響,按下鬧鈴鍵或定時鍵時,聲音停止。軟件部分用C語言實現(xiàn),分為顯示、延遲、調(diào)時、鬧鈴、定時、調(diào)整日期等部分。通過軟硬件結(jié)合達(dá)到最終目的。關(guān)鍵詞:電子鐘;單片機;動態(tài)掃描;C語言目錄TOC\o"1-3"\h\z\u230621引言 355042整體設(shè)計思路及其方案的選擇 4254553主要元件的使用方法 4252313.1AT89C52單片機 5118003.274HC244驅(qū)動器 596513.3DS18B02液晶顯示 6208464電路設(shè)計 7294484.1整體設(shè)計 7190814.2分塊設(shè)計 7202314.2.1輸入部分 783744.2.2輸出部分(顯示電路) 8198714.2.3晶振與復(fù)位電路: 9252715程序設(shè)計 927915.1程序思路 9274175.2程序設(shè)計步驟 10211675.3程序的主要模塊 1031015.3.1延遲程序 10136195.3.2中斷服務(wù)子程序 1120555.3.3主程序 11314135.3.4顯示程序 1184065.3.5鬧鈴程序 12135376功能仿真 1288716.1軟件介紹 12256166.2仿真過程 129816參考文獻(xiàn) 14單片機數(shù)字時鐘設(shè)計1引言單片機因?qū)⑵渲饕M成部分集成在一個芯片上而得名,就是把中央處理器、隨機存儲器、只讀存儲器、中斷系統(tǒng)、定時器/計數(shù)器以及I/O接口電路等部件集成在一個芯片上。單片機自20世紀(jì)70年代問世以來,以其極高的性能價格比,受到人們的重視和關(guān)注,應(yīng)用很廣、發(fā)展很快。單片機具有體積小、功能多、價格低廉、使用方便、系統(tǒng)設(shè)計靈活等優(yōu)點。因此,它應(yīng)用廣泛前景美好,它的實用性大大地提高了我對畢業(yè)設(shè)計的興趣。數(shù)字鐘是采用數(shù)字電路實現(xiàn)對日期、時、分、秒,數(shù)字顯示的計時裝置,由于數(shù)字集成電路的發(fā)展和石英晶體振蕩器的廣泛應(yīng)用,使得數(shù)字鐘的精度,遠(yuǎn)遠(yuǎn)超過老式鐘表,鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大大地擴展了鐘表的報時功能。數(shù)字鐘已成為人們?nèi)粘I钪械谋匦杵?,廣泛應(yīng)用于家庭、車站、碼頭、劇院、辦公室等場所,給人們的生活、學(xué)習(xí)、工作帶來極大的方便。不僅如此,在現(xiàn)代化的進程中,也離不開電子鐘的相關(guān)功能和原理,比如機械手的控制、家務(wù)的自動化、定時自動報警、按時自動打鈴、時間程序自動控制、定時廣播、自動起閉路燈、定時開關(guān)烘箱、通斷動力設(shè)備、甚至各種定時電氣的自動啟用等,所有這些,都是以鐘表數(shù)字化為基礎(chǔ)的。而且是控制的核心部分。因此,研究數(shù)字鐘及擴大其應(yīng)用,有著非?,F(xiàn)實的意義。數(shù)字電子鐘的設(shè)計方法有多種,例如,可用中小規(guī)模集成電路組成電子鐘,也可以利用專用的電子鐘芯片配以顯示電路及其所需要的外圍電路組成電子鐘還可以利用單片機來實現(xiàn)電子鐘等等。這些方法都各有特點,其中,利用單片機實現(xiàn)的電子鐘具有編程靈活,便于功能擴充,精確度高等特點。2整體設(shè)計思路及其方案的選擇EQ\o\ac(○,1)整體設(shè)計思路首先由單片機的定時器P3口在一定的時間里產(chǎn)生一個中斷,這時單片機由這個中斷信號進行判斷處理,然后由液晶顯示進行時間的顯示。按鍵輸入部分的輸入信號也通過單片機處理,然后由液晶顯示其需要顯示的結(jié)果。EQ\o\ac(○,2)及其方案的選擇方案一:利用時鐘芯片給單片機輸入時鐘信號芯片信號:PCF8583。此芯片可以對時鐘、鬧鐘、日歷進行調(diào)整,且精準(zhǔn)度比較高,可以精準(zhǔn)到1/100秒。方案優(yōu)點:走時精度高,編程時無需考慮各部分運行時的時間干擾,方案缺點:硬件電路要稍微復(fù)雜點,軟件編程時要加部分芯片的程序。方案二:直接利用單片機本身的定時器中斷進行時間的走時方式0:不推薦方式1:16位計數(shù)器,常用方式2:自動重裝初值的8位定時/計數(shù)器方式3:T0相當(dāng)于兩個獨立的8位定時/計數(shù)器方案優(yōu)點:不需要其它芯片就可以進行時鐘的走時,并且精準(zhǔn)度可 以到1/100秒。方案缺點:精準(zhǔn)度越高誤差越大方案三:利用程序的延時進行時鐘的走時用for循環(huán)for(j=148;j>0;j--);延時一毫秒來確定時間方案優(yōu)點:簡單、經(jīng)濟,軟件稍微簡單方案缺點:走時不精準(zhǔn),且在時間的走時過程中不確定因素太多綜上信息,我選擇方案二,因為方案無需在硬件上添加一塊時鐘芯片,軟件上也無需添加一段時鐘芯片的啟動程序,軟件、硬件的調(diào)試都要稍微簡單點,雖然精準(zhǔn)度要比方案一的差,但是我不需要那么高的精準(zhǔn)度,所以我覺得方案二比較適合。3主要元件的使用方法下面就本次設(shè)計中用到的主要元件的所有功能進行簡單的介紹,包括AT89C52單片機、74HC244芯片、DS18B20液晶顯示特性和用法3.1AT89C52單片機單片機的結(jié)構(gòu)如下:圖3.1.1單片機引腳圖在使用時VCC接電源電壓,GND接地。P0,P1,P2,P3可作為輸入或輸出端口,RST是復(fù)位輸入,接復(fù)位電路。XTAL1和XTAL2接復(fù)位電路。這些可以在硬件設(shè)計部分體現(xiàn)出來。3.274HC244驅(qū)動器74HC244芯片的功能

如果輸入的數(shù)據(jù)可以保持比較長的時間(比如鍵盤),簡單輸入接口擴展通常使用的典型芯片為74HC244,由該芯片可構(gòu)成三態(tài)數(shù)據(jù)緩沖器。74HC244芯片的引腳排列如圖1所示。74HC244芯片的引腳74HC244芯片內(nèi)部共有兩個四位三態(tài)緩沖器,使用時可分別以1C和2G作為它們的選通工作信號。當(dāng)1/OE和2/OE都為低電平時,輸出端Y和輸入端A狀態(tài)相同;當(dāng)1/OE和2/OE都為高電平時,輸出呈高阻態(tài)。圖13.3DS18B02液晶顯示4電路設(shè)計4.1整體設(shè)計此次設(shè)計主要是應(yīng)用單片機來設(shè)計電子時鐘,硬件部分主要分以下電路模塊:顯示電路用六個數(shù)碼管分別顯示小時、分鐘和秒,通過動態(tài)掃描進行顯示,從而避免了譯碼器的使用,使電路更加簡單。單片機采用AT89C52系列,這種單片機應(yīng)用簡單,適合電子鐘設(shè)計。電路的總體設(shè)計框架如下:單片機單片機輸入部分晶振和復(fù)位輸出部分圖4.1.1電路模塊圖4.2分塊設(shè)計這部分介紹各模塊電路的設(shè)計方法和成果,主要分為:輸入部分、輸出部分、復(fù)位和晶振電路。4.2.1輸入部分在電子鐘的輸入部分,設(shè)置相應(yīng)的置數(shù)功能,通過外部設(shè)備的輸入,如按鍵,實現(xiàn)時間的修改。除此之外,調(diào)整鬧鈴、定時、日期時也需要按鍵進行輸入。在選用輸入端口時,將P3引腳與按鍵相連進行輸入。設(shè)計的輸入部分如下:圖4.2.1輸入部分各按鍵功能在后面的部分將會介紹到。4.2.2輸出部分(顯示電路)該部分電路圖如下所示:圖4.2.2顯示部分4.2.3晶振與復(fù)位電路:圖4.2.3晶振與復(fù)位電路5程序設(shè)計5.1程序思路初始化初始化按key1顯示按key3鍵按key4鍵按key6鍵若無按鍵調(diào)時調(diào)鬧鐘調(diào)格式顯示所調(diào)時間顯示鬧鈴時間顯示時間格式調(diào)整時限到或有其他輸入圖5.1.1程序設(shè)計思路結(jié)合電路,程序的總體思路是:1、點復(fù)位鍵后,進行時間顯示,從8時30分30秒開始。2、按下按鍵key4時,進行調(diào)時,此時按2次key4鍵調(diào)整時,按1次key4鍵調(diào)整分。3、按key6鍵時進行鬧鈴調(diào)整,用key3鍵分別調(diào)時和分,時間到達(dá)鬧鈴所定時間時P1.1輸出高電平,蜂鳴器響,按下按key5蜂鳴器停止。4、按key3鍵時進行格式的設(shè)定,可設(shè)定為12H或24H.5.2程序設(shè)計步驟在程序設(shè)計過程中,我遇到了很多困難,這部分也是讓我學(xué)到很多東西的地方。首先,我學(xué)習(xí)了定時器的相關(guān)知識,計數(shù)器的使用是很重要的組成部分[15],在這個設(shè)計中選擇計數(shù)器T0。T0的工作方式有:方式0:不推薦方式1:16位計數(shù)器,常用方式2:自動重裝初值的8位定時/計數(shù)器方式3:T0相當(dāng)于兩個獨立的8位定時/計數(shù)器此程序采用方式1,方式1的定時時間t為t=(216-M)*12/fosc。其中M為定時器初值,fosc為12MHz,若M為0則t=65536*12/2*106=65.536ms。因此可取50ms為計時單位,初值M應(yīng)為50*10-3*106=216-M。M=15536=11110010110000=3CB0。即定時器初值為TH0=03CH,TL0=0B0H。定時器中斷20次為一秒,這部分在中斷程序中用到。5.3程序的主要模塊5.3.1延遲程序在動態(tài)掃描時,必然用到延遲程序,這里使用延遲1ms的程序,此程序需要反復(fù)調(diào)用。voidDelay1ms(unsignedintx){uchari,j; for(i=x;i>0;i--) for(j=148;j>0;j--);}5.3.2中斷服務(wù)子程序中斷服務(wù)程序中,總體思路是:由于初值是3CB0H,所以裝滿定時器需要50ms的時間,從而20次中斷為一秒,一秒之后,判斷是否到60秒,若不到則秒加一,然后返回,若到,則秒賦值為0,分加一,依次類推。5.3.3主程序主程序主要對按鍵進行掃描,以及判斷鬧鈴時間是否已到,若到則調(diào)用聲音程序,該段程序如下:voidmain(){unint();LCDINIT();while(1) {shezhijian();tuichujian();if(flag==1) {switch(m){case0:shijian();tek1();break; case1:sheding();xianshi2();break; case2:laozhong();tek();break;}} else{fengmingqi();xianshi1();}}5.3.4顯示程序液晶進行顯示,分別顯示1ms,這依賴的是人們視覺的惰性,該段程序如下:voiddisplay(ucharaddress,uchar*str){uchari;for(i=0;i<14;i++)//寫顯示第一行 {wcomd(address+i);Delay1ms(1);wdata(str[i]);Delay1ms(1);}}voiddata_cl1(){temp=data_s*10000+data_f*100+data_m; buffer[0]=temp/100000+'0'; buffer[1]=temp/10000%10+'0'; buffer[2]=':'; buffer[3]=temp/1000%10+'0'; buffer[4]=temp/100%10+'0'; buffer[5]=':'; buffer[6]=temp/10%10+'0';buffer[7]=temp%10+'0';//顯示高位 buffer

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論