多功能數(shù)字鐘基于AT89C51單片機的電子鐘的設(shè)計_第1頁
多功能數(shù)字鐘基于AT89C51單片機的電子鐘的設(shè)計_第2頁
多功能數(shù)字鐘基于AT89C51單片機的電子鐘的設(shè)計_第3頁
多功能數(shù)字鐘基于AT89C51單片機的電子鐘的設(shè)計_第4頁
多功能數(shù)字鐘基于AT89C51單片機的電子鐘的設(shè)計_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 課程設(shè)計任務(wù)書課程名稱:微型計算機技術(shù)設(shè)計題目:多功能數(shù)字鐘基于at89c51單片機的電子鐘的設(shè)計電子鐘使用外接時鐘芯片作為時鐘源,精確到秒。顯示部分為led動態(tài)顯示設(shè)計;并有鍵盤設(shè)計;硬件設(shè)計:1)最小系統(tǒng)設(shè)計:at89c51單片機為本設(shè)計的控制器,包括外擴rom,ram各32 m(其大小由設(shè)計者自己設(shè)計),系統(tǒng)時鐘電路、復(fù)位電路等構(gòu)成的最小系統(tǒng);2)接口電路的設(shè)計:設(shè)計者擴展一個并行接口8155或8255,鍵盤設(shè)計由設(shè)計者根據(jù)需要設(shè)計鍵盤的數(shù)量,顯示采用led顯示,顯示電路也根據(jù)顯示的內(nèi)容設(shè)計(年、月、日,時、分、秒;可用兩屏顯示);3)有開機顯示狀態(tài)(如顯示888888);4)在完成基

2、本設(shè)計功能同時可以增加功能。軟件設(shè)計: 1)主程序設(shè)計(包括初始化芯片,定時器,中斷以及sp指針等); 2)各功能子程序設(shè)計,鍵盤子程序、顯示子程序設(shè)計,定時,中斷程序等;引言:單片機因?qū)⑵渲饕M成部分集成在一個芯片上而得名,單片機具有體積小、功能多、價格低廉、使用方便、系統(tǒng)設(shè)計靈活等優(yōu)點。它把中央處理單元、隨機存儲器、只讀存儲器、定時/計數(shù)器以及i/o接口電路等主要部件集成在一塊半導(dǎo)體芯片上。因此從某種意義上說,一塊單片機芯片就是一臺微型計算機。自20世紀70年代問世以來,以其極高的性能價格比,受到人們的重視和關(guān)注,應(yīng)用很廣、發(fā)展很快。目前單片機滲透到我們生活的各個領(lǐng)域,幾乎很難找到哪個領(lǐng)域

3、沒有單片機的蹤跡。導(dǎo)彈的導(dǎo)航裝置,計算機的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動化過程的實時控制和數(shù)據(jù)處理,錄像機、攝像機、全自動洗衣機的控制等等,這些都離不開單片機。隨著半導(dǎo)體技術(shù)的飛速發(fā)展,以及移動通信、網(wǎng)絡(luò)技術(shù)、多媒體技術(shù)在嵌入式系統(tǒng)設(shè)計中的應(yīng)用,從4位、8位、16位到32位,單片機功能越來越強大,價格越來越低,同時應(yīng)用領(lǐng)域的擴大也使得更多人加入到基于單片機系統(tǒng)的開發(fā)行列中,推動著單片機技術(shù)的創(chuàng)新進步。數(shù)字時鐘應(yīng)用廣泛,在現(xiàn)實生活中有著至關(guān)重要的作用,在工業(yè)控制和日常生活中它不僅可以用于計時、提醒又可用于對機器的控制。給人們的生活,學(xué)習(xí),工作,娛樂帶來極大的方便,其一般由振蕩器,分頻器,譯碼器,顯

4、示器等部分組成,采用了先進的石英技術(shù),使數(shù)字鐘具有走時準確,性能穩(wěn)定。本次課程設(shè)計采用外接時鐘芯片ds1302為系統(tǒng)提供計時信號,通過51單片機進行控制讀寫,由按鍵進行時間設(shè)置修改,最終將年月日時分秒等時間信息顯示到外界數(shù)碼管上,同時亦可用蜂鳴器來實現(xiàn)鬧鐘功能,具有穩(wěn)定準確,靈活方便的特點。1、 系統(tǒng)方案與論證 1.1整體方案論證本系統(tǒng)主要利用at89c51單片機外接8155擴展單片機io口,a口控制數(shù)碼管的位顯示, 51單片機p0口控制數(shù)碼管的段顯示,p3口與按鍵和蜂鳴器相接用于時間的校正和聲音提醒,使用外接rom2764和外接ram6264芯片各兩片擴展單片機的外部程序容量為24kb的 r

5、om和ram空間。本設(shè)計采用一節(jié)1.5v干電池為整個系統(tǒng)供電,通過一個升壓電路(從1.5v升至5v),產(chǎn)生+5v電壓用于給cpu及顯示電路提供工作電壓,這是數(shù)字時鐘正常工作時的總電壓。顯示電路將“時”、“分”、“秒”計數(shù)器的輸出,通過六個八段led顯示器顯示出來。校時電路是直接加一個脈沖信號到時計數(shù)器或者分計數(shù)器或者秒計數(shù)器來對“時”、“分”、“秒”顯示數(shù)字進行校對調(diào)整 圖1 系統(tǒng)結(jié)構(gòu)圖1.2主要模塊方案選擇比較與論證1.2.1單片機的選取選用at89c51作為控制器,具有價格低,性價比高,功能齊全的特點,擁有多個定時器和其他外圍功能。作為8位單片機運行速度快且工作穩(wěn)定。1.2.2輸入方案的選

6、擇方案1:采用實時時鐘芯片ds1287、ds12887、ds1302等具備年、月、日、時、分、秒計時功能和多點定時功能,計時數(shù)據(jù)的更新每秒自動進行一次,不需要程序干預(yù)。方案2:使用單片機內(nèi)部的可編程定時器。 利用單片機內(nèi)部的定時計數(shù)器進行中端定時,配合軟件延時實現(xiàn)時、分、秒的計時。該方案節(jié)省硬件成本,但程序設(shè)計較為復(fù)雜。經(jīng)比較 選擇方案二1.2.3輸入方案的選擇 方案一:通過矩陣鍵盤輸入數(shù)據(jù),可調(diào)范圍廣,但占用單片機管腳較多,不易于其他功能的實現(xiàn)。方案二:通過獨立鍵盤輸入數(shù)據(jù),通過數(shù)據(jù)的加減來確定數(shù)據(jù),占用管腳少,功能齊全且直接輸入方便快捷,易于控制。經(jīng)比較,故比較選用方二1.2.4顯示方案的

7、選擇 方案一:使用12864或1602液晶顯示,顯示信息的可讀性好,看起來更方便。而12864點陣液晶模塊具有微功耗,尺寸小,超薄輕巧,字跡美觀,視覺舒適,顯示信息量大等優(yōu)點,但本次設(shè)計中大部分功能用不到,造成浪費,且與矩陣鍵盤一樣占用管腳較多 方案二:數(shù)碼管顯示,顯示信息少,但控制簡單,相比12864復(fù)雜時序數(shù)碼管秩序位選段選控制。經(jīng)比較,故選用方案二進行設(shè)計。2、系統(tǒng)硬件電路模塊2.1 at89c51單片機 at89c51是一種低電壓、高性能cmos 8位微處理器,俗稱單片機。具有4k 字節(jié)flash 閃速存儲器,128 字節(jié)內(nèi)部ram,32 個i/o 口線,2 個16 位定時/計數(shù)器,一

8、個5 向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。單片機的可擦除只讀存儲器可以反復(fù)擦除1000次。該器件采用atmel高密度非易失存儲器制造技術(shù)制造,與工業(yè)標準的mcs-51指令集和輸出管腳相兼容。由于將多功能8位cpu和閃爍存儲器組合在單個芯片中,atmel的at89c51是一種高效微控制器, at89c51單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。同時,at89c51 降至0hz 的靜態(tài)邏輯操作,并支持兩種可選的節(jié)電工作模式。空閑方式體制cpu 的工作,但允許ram,定時/計數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存ram 中的內(nèi)容,但振蕩器體制工作

9、并禁止其他所有不見工作直到下一個硬件復(fù)位。 管腳原理圖見附圖1,2. 2晶振電路 51單片機晶振電路采用外置石英晶振,為單片機提供11.0592時鐘信號,電容c1.c2可以幫助起振典型值為30pf,調(diào)節(jié)他們可以達到微調(diào)晶振頻率的作用,見附圖32.3復(fù)位電路51單片機的復(fù)位電路有兩種,即上電復(fù)位和手動復(fù)位電路。本次設(shè)計采用如圖所示為手動復(fù)位電路。見附圖2。2.按鍵調(diào)整電路本系統(tǒng)采用3位按鍵,其中s1為功能選擇鍵,s2、s3為數(shù)字加減鍵。見附圖42. 蜂鳴器電路 蜂鳴器電路采用一個晶體管驅(qū)動,功率大,安全穩(wěn)定??梢詾橄到y(tǒng)提供鬧鐘功能,同時由于51單片機管腳功率限制問題,故亦可作為功率報警電路見附圖

10、52-6電源指示電路 通過開關(guān)閉合時led燈的亮滅來提示51單片機是否正常工作,亦可系統(tǒng)電源是否正常。見附圖62.7電源轉(zhuǎn)換電路 本電源電路采用dc-dc轉(zhuǎn)換芯片rt9266實現(xiàn)1.5v-5v直流電壓轉(zhuǎn)換,輸出為(1+r大÷r小)*1.25 見附圖72.8外置時鐘芯片電路 ds1302時鐘芯片采用32.768mhz的石英晶振提供時鐘信號,具有年月日時分秒星期更能,且能通過51單片機控制來改變初始時間 見附圖82.9 74ls373芯片電路與管腳圖373為三態(tài)輸出的八 d 透明鎖存器,用以鎖存51低八位地址信號。當oe為低le為高時,鎖存器輸出信號o隨數(shù)據(jù)d而變 引出端符號: d0d7

11、 數(shù)據(jù)輸入端 輸入低八位地址信號oe 三態(tài)允許控制端(低電平有效) le 鎖存允許端 高電平有效o0o7 輸出端 輸出鎖存的低八位地址信號見附圖92.10 2764電路與管腳圖本系統(tǒng)使用了3片用與擴展外部rom 24kb 基本地址范圍為:0000h5fffh2764管腳說明a0到a13為14條地址信號輸入線。d0到d7為雙向數(shù)據(jù)線,d7為最高位,d0為最低位,用來傳送2764的讀寫信號ce為片選端,低電平有效。用以選通芯片工作oe為輸出允許信號,低電平有效pgm為編程脈沖輸入端,高電平時芯片正常工作,低電平時配合vpp上的高電壓處于處于編程狀態(tài)vcc和vpp都是接電源的,正常工作時是+5v見附

12、圖102.11 6264電路與管腳圖本系統(tǒng)使用了3片6264用以擴展外部ram 24kb 基本地址范圍6000hbfffha0到a12為13條地址信號輸入線。d0到d7為雙向數(shù)據(jù)線,d7為最高位,d0為最低位,用來傳送2764的讀寫信號oe為允許輸出線用以控制從芯片讀出的數(shù)據(jù)是否送到d0d7上,低電平有效 cs cs為片選輸入線,cs為1cs'為0時芯片選中工作 we讀寫命令線,高電平時讀出低電平時寫入vcc電源線,正常工作時是+5v見附圖112.12外部并行口擴展8155電路圖 本系統(tǒng)通過51單片機控制外部可編程i/o芯片8155的a口對數(shù)碼管進行位選8155各引腳功能說明如下: r

13、st:復(fù)位信號輸入端,高電平有效。復(fù)位后,3個i/o口均為輸入方式。 ad0ad7:三態(tài)的地址/數(shù)據(jù)總線。與單片機的低8位地址/數(shù)據(jù)總線(p0口)相連。單片機與8155之間的地址、數(shù)據(jù)、命令與狀態(tài)信息都是通過這個總線口傳送的。 rd:讀選通信號,控制對8155的讀操作,低電平有效。 wr:寫選通信號,控制對8155的寫操作,低電平有效。 ce:片選信號線,低電平有效。 io/m :8155的ram存儲器或i/o口選擇線。當io/m 0時,則選擇8155的片內(nèi)ram,ad0ad7上地址為8155中ram單元的地址(00hffh);當io/m 1時,選擇 8155的i/o口,ad0ad7上的地址為

14、8155 i/o口的地址。 ale:允許地址輸入線,低電平有效。8155內(nèi)部設(shè)有地址鎖存器,在ale的下降沿將單片機p0口輸出的低8位地址信息及 io/ 的狀態(tài)都鎖存到8155內(nèi)部鎖存器。因此,p0口輸出的低8位地址信號不需外接鎖存器。 pa0pa7:8位通用i/o口,其輸入、輸出的流向可由程序控制。 pb0pb7:8位通用i/o口,功能同a口。 pc0pc5:有兩個作用,既可作為通用的i/o口,也可作為pa口和pb口的控制信號線,這些可通過程序控制。 timer in:定時/計數(shù)器脈沖輸入端。 timer out:定時/計數(shù)器輸出端。 vcc:5v電源。 2、8155的地址編碼及工作方式 在

15、單片機應(yīng)用系統(tǒng)中,8155是按外部數(shù)據(jù)存儲器統(tǒng)一編址的,為16位地址,其高8位由片選線 提供, ce0,選中該片。 當 ce0,io/m 0時,選中8155片內(nèi)ram,這時8155只能作片外ram使用,其ram的低8位編址為00hffh;當 ce0,io/m 1時,選中8155的i/o口,其端口地址的低8位由ad7ad0確定見附圖122.13 六位8段led數(shù)碼管顯示電路數(shù)碼管時間顯示分為 時、分、秒三部分時,jp5jp6為時位 采用24進制,jp3jp4為分位,采用60進制,jp1jp0為時位,采用60進制。當顯示為年月日三部分時jp5jp6為年位,jp3jp4為月位采用12進制,jp1jp

16、0為日位,采用365進制。見附圖133、系統(tǒng)軟件調(diào)試3.1 程序結(jié)構(gòu)3.1 程序結(jié)構(gòu)(1)主程序。 實現(xiàn)初始化與鍵盤監(jiān)控與鬧鐘檢測與報警 (2)定時器 t0 中斷服務(wù)程序。 時鐘電路的設(shè)計功能是利用單片機內(nèi)部的定時/計數(shù)器進行中斷定時刷新計時緩沖區(qū)。定時器 t0 每隔 100ms 益處中斷一次(設(shè)系統(tǒng)使用 12mhz 晶振, 定時 t0 工作方式 1) 的定時初值為 3cboh(即 tho=3ch,tl0=0b0h),每循環(huán)中斷 10 次則延時時間為 1s,進入中斷服務(wù)程序后調(diào)用讀取ds1302始終數(shù)據(jù)及顯示程序 。 (3)時間設(shè)置與鬧鐘設(shè)置子程序。 實現(xiàn)當前時間及定時啟鬧鐘時間的鍵盤輸入設(shè)置

17、。key1鍵位段位循環(huán)選擇鍵根據(jù)key1鍵被按下的次數(shù)進行段位的選擇,依次為秒,分,時,日,月,年,設(shè)定完成并進入顯示時分秒模式。在每種段位模式下都可以改變該段時間實現(xiàn)時間調(diào)節(jié)功能。當key3為顯示模式及鬧鐘設(shè)定模式循環(huán)選擇鍵,分別為顯示年月日模式,顯示時分秒模式,及鬧鐘設(shè)置模式實現(xiàn)分屏顯示及 鬧鐘設(shè)置 功能 。(4)鍵盤掃描子程序。 判斷是否有鍵按下, 無鍵按下則循環(huán)等待, 有鍵按下則求取返回。 (5)顯示子程序。 實現(xiàn)顯示緩沖區(qū)的 6 位 bcd 碼的動態(tài)掃描方式顯示。 首先將 3 字節(jié)計時緩沖區(qū)中 時、分、和秒壓縮 bcd 碼拆分為 6 字節(jié) bcd 碼,由拆字子程序?qū)崿F(xiàn)。當按下時間 或

18、鬧鐘設(shè)置鍵后,在 6 位設(shè)置完成之前,應(yīng)顯示鍵入的數(shù)據(jù)而不顯示當前時間, 為此系統(tǒng)設(shè)置一個計時顯示允許標志位 f0,在時間/鬧鐘設(shè)置期間 f0=1,不調(diào)用 拆字子程序。 (6)定時比較子程序。 實現(xiàn)當前時間與預(yù)設(shè)的啟鬧鐘時間的比較,若二者完全相同時,啟動蜂鳴器名 叫并置位鬧鐘標志位。當按下key3鍵時退出報警程序。(7)ds1302初始化程序。包括往ds1302寫入1byte數(shù)據(jù)程序,從ds1302讀取1byte數(shù)據(jù)往ds1302寫入數(shù)據(jù)從程序,讀取ds1302某地址的數(shù)據(jù)程序,往ds1302寫入時鐘數(shù)據(jù)(多字節(jié)方式)程序,讀取ds1302時鐘數(shù)據(jù)程序及設(shè)置初始時間程序。(8)其他輔助功能子程序。 鍵盤設(shè)置子程序:將鍵入的 6 位時間值送入鍵盤設(shè)置緩沖區(qū)。 拆字程序:將 3 字節(jié)計時緩沖區(qū)中時、分和秒壓縮 bcd 碼拆分為 6 字節(jié) bcd 碼并刷新顯示緩沖區(qū)。 合字子程序:將鍵盤設(shè)置緩沖區(qū)中 6 位 bcd 碼合并為 3 位壓縮 bcd 碼,送入 計時緩沖

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論