日歷時(shí)鐘的設(shè)計(jì)綜述_第1頁
日歷時(shí)鐘的設(shè)計(jì)綜述_第2頁
日歷時(shí)鐘的設(shè)計(jì)綜述_第3頁
日歷時(shí)鐘的設(shè)計(jì)綜述_第4頁
日歷時(shí)鐘的設(shè)計(jì)綜述_第5頁
已閱讀5頁,還剩13頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、單片機(jī)課程設(shè)計(jì)報(bào)告書課題名稱 日歷時(shí)鐘的設(shè)計(jì)姓名學(xué)號(hào)院 、系 、部物理與電子科學(xué)系專 業(yè) 應(yīng)用電子技術(shù) 指導(dǎo)教師2013 年 11 月 20 日12一、設(shè)計(jì)任務(wù)及要求:設(shè)計(jì)任務(wù): 1、利用 MCS-51內(nèi)部定時(shí)器定時(shí) T0/T1,編程實(shí)現(xiàn)時(shí)、分、秒的顯示, 顯示格式為:時(shí)分秒: 09 12 35 (24 小時(shí)制) 2、能按鍵調(diào)整時(shí)間的數(shù)值(按鍵數(shù)量自定) 。 要 求: 首先進(jìn)行預(yù)設(shè)計(jì),根據(jù)設(shè)計(jì)的任務(wù)要求,先確定設(shè)計(jì)的硬件電路方案, 然后進(jìn)行硬件電路的初步設(shè)計(jì),在計(jì)算機(jī)上畫出硬件電路圖,在老師的指導(dǎo)下進(jìn) 行修正硬件電路圖,并對(duì)所涉及的參數(shù)進(jìn)行計(jì)算。在確定硬件的基礎(chǔ)上,要進(jìn)行軟件的總體設(shè)計(jì),包括軟

2、件主流程的設(shè)計(jì)以及 各子程序的設(shè)計(jì),同時(shí),要寫出詳細(xì)的操作說明,如時(shí)間的調(diào)整方法,顯示窗口 的時(shí)間切換等,以配合軟件的設(shè)計(jì)。然后進(jìn)入硬件的調(diào)試及編程工作,設(shè)計(jì)組內(nèi)的同學(xué)可根據(jù)任務(wù)分工,有調(diào)試 硬件各功能模塊的,如鍵盤子程序、顯示子程序等,有進(jìn)行整體程序的編制的, 各模塊的編制過程中要注意資源的銜接。最后進(jìn)入聯(lián)機(jī)調(diào)試,聯(lián)機(jī)調(diào)試的原則也要采用分步走的原則,各個(gè)功能模塊 要逐步套入,通過一個(gè)再增加一項(xiàng)功能,從而達(dá)到設(shè)計(jì)的總體要求,不要上來編 制個(gè)最大的程序,最后無法查找錯(cuò)誤,最后寫出設(shè)計(jì)報(bào)告。指導(dǎo)教師簽名: 年月日二、指導(dǎo)教師評(píng)語:指導(dǎo)教師簽名: 年月日三、成績(jī)指導(dǎo)教師簽名:年月日目錄緒言3二、方案

3、比較與論證 3.2.1 系統(tǒng)整體流程圖 32.2 單片機(jī)芯片的選擇方案和論證: 42.3 時(shí)鐘方案選擇 52.4 顯示模塊的選擇 52.5 鍵盤模塊的選擇 52.6 具體設(shè)計(jì)分析 5三、硬件電路設(shè)計(jì) 6.3.1 整個(gè)電路原理圖 63.2 數(shù)碼顯示模塊設(shè)計(jì) 73.3 按鍵模塊 73.4 復(fù)位電路 8四 .程序流程圖 8.五、系統(tǒng)仿真 9.5.1Proteus 軟件應(yīng)用 95.2 實(shí)驗(yàn)測(cè)試 10六 主要元器件選擇 1.1.七、參考文獻(xiàn) 1.1.八.結(jié)束語 1.1.附錄 2 部分源程序 1.2.緒言數(shù)字電子鐘具有走時(shí)準(zhǔn)確, 一鐘多用等特點(diǎn), 在生活中已經(jīng)得到廣泛的應(yīng)用。 雖然現(xiàn)在 市場(chǎng)上已有現(xiàn)成的電

4、子鐘集成電路芯片, 價(jià)格便宜、 使用也方便, 但是人們對(duì)電子產(chǎn)品的應(yīng) 用要求越來越高,數(shù)字鐘不但可以顯示當(dāng)前的時(shí)間,而且可以顯示期、 農(nóng)歷 、以及星期等, 給人們的生活帶來了方便。 另外數(shù)字鐘還具備秒表和鬧鐘的功能, 且鬧鐘鈴聲可自選, 使一 款電子鐘具備了多媒體的色彩。 單片機(jī)具有體積小、 功能強(qiáng)可靠性高、 價(jià)格低廉等一系列優(yōu) 點(diǎn),不僅已成為工業(yè)測(cè)控領(lǐng)域普遍采用的智能化控制工具, 而且已滲入到人們工作和和生活 的各個(gè)角落,有力地推動(dòng)了各行業(yè)的技術(shù)改造和產(chǎn)品的更新?lián)Q代,應(yīng)用前景廣闊。時(shí)鐘電路在計(jì)算機(jī)系統(tǒng)中起著非常重要的作用, 是保證系統(tǒng)正常工作的基礎(chǔ)。 在一個(gè)單 片機(jī)應(yīng)用系統(tǒng)中,時(shí)鐘有兩方面的

5、含義:一是指為保障系統(tǒng)正常工作的基準(zhǔn)振蕩定時(shí)信號(hào), 主要由晶振和外圍電路組成, 晶振頻率的大小決定了單片機(jī)系統(tǒng)工作的快慢; 二是指系統(tǒng)的 標(biāo)準(zhǔn)定時(shí)時(shí)鐘, 即定時(shí)時(shí)間,它通常有兩種實(shí)現(xiàn)方法:一是用軟件實(shí)現(xiàn),即用單片機(jī)內(nèi)部的 可編程定時(shí) /計(jì)數(shù)器來實(shí)現(xiàn),但誤差很大,主要用在對(duì)時(shí)間精度要求不高的場(chǎng)合;二是用專 門的時(shí)鐘芯片實(shí)現(xiàn), 在對(duì)時(shí)間精度要求很高的情況下, 通常采用這種方法, 典型的時(shí)鐘芯片 有: DS1302, DS12887,X1203 等都可以滿足高精度的要求。二、方案比較與論證2.1 系統(tǒng)整體流程圖開始2.2 單片機(jī)芯片的選擇方案和論證:方案一 :純硬件電路系統(tǒng),各功能采用分離的硬件電路

6、模塊實(shí)現(xiàn)。用時(shí)序邏輯電路實(shí)現(xiàn)時(shí)鐘 功能,用 555 定時(shí)器實(shí)現(xiàn)鬧鐘的設(shè)定。但這種實(shí)現(xiàn)方法可靠性差、控制精度低,靈活性小、 線路復(fù)雜、安裝調(diào)試不方便,而且不方便實(shí)現(xiàn)對(duì)系統(tǒng)的擴(kuò)展。方案二 :用可編程邏輯器件( PLD )實(shí)現(xiàn)。這種方案與前一種相比,可靠性增加,同時(shí)可以 很好的完成時(shí)鐘的功能。 同時(shí)這種方案只能選用數(shù)碼管顯示, 顯示的效果不夠理想, 無法很 好的完成擴(kuò)展功能的要求,系統(tǒng)的靈活性不夠。方案三 :采用 AT89S52 單片機(jī)作為系統(tǒng)的控制核心。時(shí)鐘功能采用單片集成的時(shí)鐘芯片 DS1307 來實(shí)現(xiàn),可以使用液晶顯示時(shí)間、日歷及鬧鈴,有著智能化的人機(jī)界面。由于使用 了單片機(jī), 整個(gè)系統(tǒng)可編程

7、,系統(tǒng)的靈活性大大增加了。 另外,本方案可以方便的實(shí)現(xiàn)其他 功能的擴(kuò)展。經(jīng)過以上的比較論證,選用方案三來完成項(xiàng)目設(shè)計(jì)的要求。2.3 時(shí)鐘方案選擇方案一:基本門電路搭建。用基本門電路來實(shí)現(xiàn)時(shí)鐘發(fā)生器,電路結(jié)構(gòu)復(fù)雜,故障系數(shù)大, 不易調(diào)試。方案二: 專用時(shí)鐘芯片。 目前市場(chǎng)上已有很多實(shí)時(shí)時(shí)鐘芯片。 如 DS12887、DS1302、DS1307、 PCF8563、X1227 等,芯片內(nèi)都集成了時(shí)鐘 /日歷功能,給時(shí)鐘系統(tǒng)設(shè)計(jì)帶來很多方便。 根據(jù) 設(shè)計(jì)要求,在本設(shè)計(jì)中我采用了 DS1302 時(shí)鐘芯片。2.4 顯示模塊的選擇方案一:使用多個(gè)數(shù)碼管顯示。 LED 數(shù)碼管是利用二極管發(fā)光顯示數(shù)字和字母,具

8、有亮度 大、接口設(shè)計(jì)比較容易, 價(jià)格相對(duì)較便宜等優(yōu)點(diǎn)。 但是由于它工作電流較大、 不能顯示漢字, 顯示的信息量有限,若在此題目中應(yīng)用就會(huì)受到很大的限制。方案二:采用液晶顯示。 液晶特別是具有漢字顯示功能的液晶顯示器, 來實(shí)現(xiàn)顯示功能,不 僅可以實(shí)現(xiàn)基本的顯示信息, 而且可以顯示豐富的符號(hào)指示信息以及文字指示信息, 信息量 豐富且直觀易懂。而且液晶顯示有功耗低,體積小,重量輕,壽命長(zhǎng),不產(chǎn)生電磁輻射污染 等優(yōu)點(diǎn)。系統(tǒng)采用方案二,設(shè)計(jì)選用 LCD1602 液晶顯示模塊。2.5 鍵盤模塊的選擇方案一:采用獨(dú)立式按鍵電路。每個(gè)鍵單獨(dú)占有一根 I/O 接口線,每個(gè) I/O 口的工作狀態(tài)互 不影響,此類鍵

9、盤采用端口直接掃描方式。但是當(dāng)按鍵較多時(shí)占用單片機(jī)的 I/O 數(shù)目較多。 方案二: 采用陣列式鍵盤。 此類鍵盤是采用行列掃描方式, 當(dāng)按鍵較多時(shí)可以降低占用單片 機(jī)的 I/O 口數(shù)目。根據(jù)設(shè)計(jì)要求我采用了方案二。2.6 具體設(shè)計(jì)分析利用單片機(jī)( AT89S51 )制作簡(jiǎn)易電子時(shí)鐘,由六個(gè) LED 數(shù)碼管分別顯示小時(shí)十位、 小時(shí)個(gè)位、分鐘十位、分鐘個(gè)位、秒鐘十位、秒鐘個(gè)位。結(jié)合本設(shè)計(jì)實(shí)驗(yàn)來說,要求顯示的 時(shí)間為時(shí),分,秒,并且都用兩位數(shù)碼管來實(shí)現(xiàn)顯示。因此,具體設(shè)計(jì)程序時(shí),應(yīng)盡可能多 用一些子程序與數(shù)據(jù)暫寄存器單元。 本程序設(shè)計(jì)中, 在主程序之外, 可以設(shè)置時(shí)間值處理子 程序,時(shí)間值顯示前的處理

10、子程序,按鍵情況掃描子程序,1S 定時(shí)中斷子程序以及 5ms 延時(shí)消除按鍵抖動(dòng)子程序等多個(gè)小型的子程序。 另外,可以設(shè)置一些數(shù)據(jù)單元作為數(shù)據(jù)寄存器。 用 28H ,2AH,2BH 和 2CH 地址單元分別作為顯示位數(shù)的掃描指針值寄存器,時(shí)寄存器,分 寄存器和秒寄存器,再用 20H 地址單元作為顯示寄存器三、硬件電路設(shè)計(jì)3.1 整個(gè)電路原理圖3.2 數(shù)碼顯示模塊設(shè)計(jì)數(shù)碼管是一種把多個(gè) LED 顯示段集成在一起的顯示設(shè)備。 有兩種類型, 一種是共陽型, 一種是共陰型。共陽型就是把多個(gè) LED 顯示段的陽極接在一起,又稱為公共端。共陰型就 是把多個(gè) LED 顯示段的陰極接在一起, 即為公共商。 陽極

11、即為二極管的正極, 又稱為正極, 陰極即為二極管的負(fù)極,又稱為負(fù)極。通常的數(shù)碼管又分為 8 段,即 8 個(gè) LED 顯示段,這 是為工程應(yīng)用方便如設(shè)計(jì)的,分別為A、B、C、D、E、F、 G、DP,其中 DP 是小數(shù)點(diǎn)位段。而多位數(shù)碼管, 除某一位的公共端會(huì)連接在一起, 不同位的數(shù)碼管的相同端也會(huì)連接在 一起。即,所有的 A 段都會(huì)連在一起,其它的段也是如此,這是實(shí)際最常用的用法。數(shù)碼 管顯示方法可分為靜態(tài)顯示和動(dòng)態(tài)顯示兩種。靜態(tài)顯示就是數(shù)碼 管的 8 段輸入及其公共端電平一直有效。動(dòng)態(tài)顯示的原理是,各 個(gè)數(shù)碼管的相同段連接在一起,共同占用 8 位段引管線;每位數(shù) 碼管的陽極連在一起組成公共端。

12、利用人眼的視覺暫留性,依次 給出各個(gè)數(shù)碼管公共端加有效信號(hào),在此同時(shí)給出該數(shù)碼管加有 效的數(shù)據(jù)信號(hào),當(dāng)全段掃描速度大于視覺暫留速度時(shí),顯示就會(huì) 清晰顯示出來。系統(tǒng)采用動(dòng)態(tài)顯示方式,用 P0 口來控制 LED 數(shù)碼管的段控 線,而用 P2 口來控制其位控線。 動(dòng)態(tài)顯示通常都是采用動(dòng)態(tài)掃描 的方法進(jìn)行顯示,即循環(huán)點(diǎn)亮每一個(gè)數(shù)碼管,這樣雖然在任何時(shí) 刻都只有一位數(shù)碼管被點(diǎn)亮,但由于人眼存在視覺殘留效應(yīng),只 要每位數(shù)碼管間隔時(shí)間足夠短,就可以給人以同時(shí)顯示的感覺 。3.3 按鍵模塊共陰數(shù)碼管 時(shí)間計(jì)數(shù)電路由秒個(gè)位和秒十位計(jì)數(shù)器、分個(gè)位和分十位計(jì) 數(shù)器、時(shí)個(gè)位和時(shí)十位計(jì)數(shù)器及星期計(jì)數(shù)器電路構(gòu)成,其中秒個(gè)

13、 位和秒十位計(jì)數(shù)器、 分個(gè)位和分十位計(jì)數(shù)器為 60 進(jìn)制計(jì)數(shù)器, 時(shí) 個(gè)位和時(shí)十位計(jì)數(shù)器為 24 進(jìn)制計(jì)數(shù)器。 下圖為按鍵模塊電路原理圖。數(shù)碼管的引腳圖3.4 復(fù)位電路單片機(jī)復(fù)位的條件是:必須使 RST/VPD 或 RST 引(9)加上持續(xù)兩個(gè)機(jī)器周期(即 24 個(gè)振蕩周期)的高電平。例如,若時(shí)鐘頻率為 12 MHz ,每機(jī)器周期為 1s,則只需 2s 以上時(shí)間的高電平,在 RST 引腳出現(xiàn)高電平后的第二個(gè)機(jī)器周期執(zhí)行復(fù)位。單片機(jī)常見的 復(fù)位如圖所示。電路為上電復(fù)位電路,它是利用電容充電來實(shí)現(xiàn)的。在接電瞬間, RESET 端的電位與 VCC 相同,隨著充電電流的減少, RESET 的電位逐漸下

14、降。只要保證 RESET 為高電平的時(shí)間大于兩個(gè)機(jī)器周期, 便能正常復(fù)位。 該電路除具有上電復(fù)位功能外, 若要復(fù)位,只需按圖中的 RESET 鍵,此時(shí)電源 VCC 經(jīng)電阻 R1 、R2 分壓,在 RESET 端產(chǎn)生一個(gè)復(fù)位高電平。五、系統(tǒng)仿真運(yùn)用 proteus 軟件進(jìn)行仿真現(xiàn)在 proteus 軟件中建立一個(gè)新的文件, 再根據(jù)自己的要求選 擇所需的器件,把器件進(jìn)行適當(dāng)?shù)呐盼缓筮M(jìn)行連接,連接后運(yùn)行軟件進(jìn)行仿真。 5.1Proteus 軟件應(yīng)用1原理圖編輯窗口( The Editing Window ):顧名思義,它是用來繪制原理圖的。藍(lán)色方框 內(nèi)為可編輯區(qū), 元件要放到它里面。 注意,這個(gè)窗口

15、是沒有滾動(dòng)條的, 你可用預(yù)覽窗口來改 變?cè)韴D的可視范圍。2預(yù)覽窗口( The Overview Window ):它可顯示兩個(gè)內(nèi)容,一個(gè)是:當(dāng)你在元件列表中選 擇一個(gè)元件時(shí), 它會(huì)顯示該元件的預(yù)覽圖; 另一個(gè)是, 當(dāng)你的鼠標(biāo)焦點(diǎn)落在原理圖編輯窗口 時(shí)(即放置元件到原理圖編輯窗口后或在原理圖編輯窗口中點(diǎn)擊鼠標(biāo)后) ,它會(huì)顯示整張?jiān)?理圖的縮略圖, 并會(huì)顯示一個(gè)綠色的方框, 綠色的方框里面的內(nèi)容就是當(dāng)前原理圖窗口中顯 示的內(nèi)容, 因此, 你可用鼠標(biāo)在它上面點(diǎn)擊來改變綠色的方框的位置, 從而改變?cè)韴D的可 視范圍。3模型選擇工具欄( Mode Selector Toolbar ): 主要模型( M

16、ain Modes ):1* 選擇元件( components)(默認(rèn)選擇的)2* 放置連接3* 放置標(biāo)簽(用總線時(shí)會(huì)用到)4* 放置文本5* 用于繪制總線6* 用于放置子電路7* 用于即時(shí)編輯元件參數(shù)(先單擊該圖標(biāo)再單擊要修改的元件)配件( Gadgets):1* 終端接口( terminals):有 VCC 、地、輸出、輸入等接口2* 器件引腳:用于繪制各種引腳3* 仿真圖表( graph):用于各種分析,如 Noise Analysis4*5*6*7*8*錄音機(jī)信號(hào)發(fā)生器( generators) 電壓探針 電流探針:使用仿真圖表時(shí)要用到使用仿真圖表時(shí)要用到虛擬儀表:有示波器等2D 圖形

17、( 2D Graphics ):1*2*3*4*5*6*7*8*4號(hào)發(fā)生器( generators)、仿真圖表( graph)等。舉例,當(dāng)你選擇 擊“P”按鈕會(huì)打開挑選元件對(duì)話框,選擇了一個(gè)元件后(單擊了 列表中顯示,以后要用到該元件時(shí),只需在元件列表中選擇即可。5方向工具欄( Orientation Toolbar ):旋轉(zhuǎn):畫各種直線畫各種方框 畫各種圓 畫各種圓弧 畫各種多邊形 畫各種文本 畫符號(hào) 畫原點(diǎn)等元件列表( The Object Selector ): 用于挑選元件( components)、端接口( terminals)、信 “元件( components) ”,單OK”后)

18、,該元件會(huì)在元件旋轉(zhuǎn)角度只能是 90 的整數(shù)倍。完成水平翻轉(zhuǎn)和垂直翻轉(zhuǎn)。翻轉(zhuǎn):使用方法:先右鍵單擊元件,再點(diǎn)擊(左擊)相應(yīng)的旋轉(zhuǎn)圖。6仿真工具欄1* 運(yùn)行2* 單步運(yùn)行3* 暫停4* 停止 按照自己設(shè)計(jì)的電路圖就可以畫出想要的電路圖! 2.在軟件中模擬和實(shí)際的效果為什么有如此大的差別? 答:軟件中模擬受到電腦 CPU 工作頻率的影響,所以效果不是很明顯,但是一 些基本的現(xiàn)象還是可以看出來的。 只要我們知道原理和圖是正確的, 那么就沒有 必要考慮太多的未知因素。在實(shí)際面包板中一定會(huì)看到正確的現(xiàn)象。3.面包板連線注意事項(xiàng)! ! 答:面包板連線時(shí)一定要弄清楚它的原理, 不然就會(huì)一點(diǎn)頭緒都找不到。 連

19、接芯 片是要弄清楚各個(gè)引腳對(duì)應(yīng)的端口號(hào), 該接地的地方一定要接地, 該接高電平的 地方一定要接高電平。5.2 實(shí)驗(yàn)測(cè)試主要的設(shè)計(jì)要求是能夠?qū)崿F(xiàn)時(shí)鐘的一般功能, 以及包括時(shí)間的調(diào)整功能, 這個(gè)基于單片 機(jī)的電子時(shí)鐘基本上實(shí)現(xiàn)了上述功能, 能夠通過時(shí)間調(diào)整電路對(duì)時(shí)間進(jìn)行調(diào)整以及復(fù)位。 下 述為 12:00: 00 的仿真圖:圖 8 12:00:00 時(shí)刻的仿真效果圖六 主要元器件選擇表 6-1 主要元器件清單序號(hào)材料名稱規(guī)格型號(hào)數(shù)量元件代號(hào)1單片機(jī)AT89S511U12電阻1k17R1-R163電容10PF4C1、C2、C3、Y14數(shù)碼管MPX81DS15集成電路274LS47、74LS138七、

20、參考文獻(xiàn)【1】 張迎新 .單片機(jī)初級(jí)教程【 M 】.北京:北京航空航天大學(xué)出版社,2006.【2】 馮志強(qiáng) .Altium Designer8.0 中文版電路設(shè)計(jì)【 M 】 .北京:清華大學(xué)出版社,2009.【3】 楊素行 .模擬電子技術(shù)基礎(chǔ)簡(jiǎn)明教程(第三版) 【 M 】 .北京:高等教育出版社,2006.【4】 余孟嘗 .數(shù)字電子技術(shù)基礎(chǔ)簡(jiǎn)明教程(第三版) 【 M 】 .北京:高等教育出版社,2006.【5】 程鵬 .自動(dòng)控制原理(第二版 )【M】 .北京:高等教育出版社,2006.【6】 王化祥,張淑英 .傳感器原理及應(yīng)用 (第三版 )【 M】.天津:天津大學(xué)出版社,2007.【7】 邱關(guān)

21、源,羅先覺 .電路(第五版) 【 M 】 .北京:高等教育出版社,2006.【8】 王明泉 .信號(hào)與系統(tǒng)【 M 】.北京:科學(xué)出版社,2006.八.結(jié)束語設(shè)計(jì),我懂得了學(xué)習(xí)的重要性, 了解到理論知識(shí)與實(shí)踐相結(jié)合的重要意義, 學(xué)會(huì)了堅(jiān)持、 耐心和努力, 這將為自己今后的學(xué)習(xí)和工作做出了最好的榜樣。 另外, 要非常感謝我的指導(dǎo) 老師, 是她指引我克服一個(gè)由一個(gè)的困難, 讓我學(xué)會(huì)對(duì)困難無所畏懼, 以及對(duì)問題的一些很 重要的思考方法。附錄 2 部分源程序ORG 00H ;主程序起始地址JMP START ;主程序 STARTORG 0BH ;定時(shí)器 T0 中斷起始地址JMP TIM0 ;定時(shí)器 T0

22、中斷子程序 TIM0START: MOV SP ;#70H;設(shè)置堆棧指針MOV 28H,#00 ;設(shè)置顯示位數(shù)掃描指針初值為 0MOV 2AH,#12H ;設(shè)置時(shí)鐘顯示寄存器初值為12HMOV 2BH,#00 ;設(shè)置分鐘顯示寄存器初值為 00HMOV 2CH,#00 ;設(shè)置秒鐘顯示寄存器初值為 00HMOV TMOD,#01H ;設(shè)置定時(shí)器 T0 工作在方式 1MOV TH0,#0F0H ;定時(shí) 4ms 的初值,即 0F060HMOV TL0,#60H ;初值的低位MOV IE,#82H ;定時(shí)器 T0 中斷允許MOV R4,#250 ;保證后面實(shí)現(xiàn)中斷 250 次,即 1s 的延時(shí)SETB

23、TR0 ;啟動(dòng)定時(shí)器 T0LOOP: JB P0.0,N2 ;若秒沒有按鍵,就轉(zhuǎn)去下 一步檢查分CALL DELAY ;延時(shí) 5ms 消除抖動(dòng)MOV A,2CH ;將秒寄存器的值載入累加器 AADD A,#01H ; A 的內(nèi)容加 1DA A ;十進(jìn)制調(diào)整MOV 2CH,A ; A 的值存入秒寄存器CJNE A,#60H,N1 ;看是否已經(jīng)是 60 秒,若不是就 繼續(xù)檢查MOV 2CH,#00 ;已經(jīng)是 60 秒,就清空秒寄存器的 值N1: JNB P0.0,$ ;秒按鍵還沒有放開就循環(huán)等待CALL DELAY ;延時(shí) 5ms,消除抖動(dòng)N2: JB P0.1,N4 ;若分沒有按鍵,就轉(zhuǎn)去下一步

24、檢 查時(shí)鐘CALL DELAY ;延時(shí) 5ms,消除抖動(dòng)MOV A,2BH ;將分寄存器的值載入累加器 AADD A,#01H ; A 的內(nèi)容加 1DA A ;十進(jìn)制調(diào)整MOV 2BH,A ; A 的值存入分寄存器CJNE A,#60H,N3 ;看是否已經(jīng)是 60 分MOV 2BH,#00 ;已經(jīng)是 60 分,就清空秒寄存器的 值N3: JNB P0.1,$ ;分按鍵還沒有放開就循環(huán)等待CALL DELAY ;延時(shí) 5ms,消除抖動(dòng)N4: JB P0.2,LOOP ;若時(shí)沒有按鍵, 就轉(zhuǎn)回去繼續(xù) 檢查看是否秒有按鍵CALL DELAY ;延時(shí) 5ms,消除抖動(dòng)MOV A,2AH ;將時(shí)寄存器的

25、值載入累加器 AADD A,#01H ; A 的內(nèi)容加 1 DA A ;十進(jìn)制調(diào)整MOV 2AH,A ;A 的值存入時(shí)寄存器CJNE A,#24H,N5 ;看是否已經(jīng)是 24 時(shí),若不是就 繼續(xù)檢查MOV 2AH,#00 ;已經(jīng)是 24 時(shí),就清空寄存器的值 N5: JNB P0.2,$ ;時(shí)鐘按鍵還沒有放開就循環(huán)等待 CALL DELAY ;延時(shí) 5ms,消除抖動(dòng) JMP LOOP;返回重新檢查看是否有按鍵 ;* 定時(shí)器 T0 中斷子程序 * TIM0: MOV TH0,#0F0H ;定時(shí)初值重設(shè) MOV TL0,#60HPUSH ACC ;將累加器 A 的值暫存于堆棧PUSH PSW;將

26、PSW 的值暫存于堆棧DJNZ R4,X2 ;計(jì)時(shí)中斷不滿 1s 就退出繼續(xù)中斷 MOV R4,#250 ;計(jì)時(shí) 1sCALL CLOCK ;調(diào)用計(jì)時(shí)子程序 CLOCKCALL DISP ;調(diào)用顯示子程序 DISPX2:CALL SCAN ;調(diào)用掃描子程序 SCADPOP PSW;到堆棧取回 PSW 的值POP ACC;到堆棧取回累加器 ACC 的值RETI ;返回主程序;* 掃描子程序 *SCAN: MOV R0,#28HINC R0; 顯示位數(shù)掃描值加 1CJNE R0,#6,X3;掃描位數(shù)不為 6 就準(zhǔn)備控制輸 出MOV R0,#0; 掃描位數(shù)為 6,就另其值為 0 X3:MOV A,R0; 掃描位數(shù)載入 AADD A,#20H;A 加上 20H (顯示寄存器地址) =各 時(shí)間顯示區(qū)地址MOV R1,A; 各時(shí)間顯示區(qū)地址存入 AMOV A,R0; 掃描位數(shù)存入 ASWAP A;將 A 的高低 4位交換(其高 4位為掃描 的位數(shù),低 4 位為顯示數(shù)據(jù)值)ORL A,R1; 將掃描值與顯示數(shù)據(jù)組合MOV P1,A; 顯示輸出RET計(jì)時(shí)子程序 *CLOCK: MOV A,2CH ;秒寄存器值載入 AADD A,#1 ;加 1 秒DA A ;十進(jìn)制調(diào)整MOV 2CH,A ;A 的值存入秒寄存器CJNE A,#60H,X4 ;

溫馨提示

  • 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)論