版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、單片機(jī)原理及應(yīng)用課程設(shè)計(jì)報(bào)告課題名稱:基于單片機(jī)的電子鐘的設(shè)計(jì)姓 名:李 萬 明院 系:應(yīng)用技術(shù)學(xué)院專 業(yè):07電子信息工程(儀器儀表)學(xué) 號(hào):學(xué)0715190130指導(dǎo)教師:W輝完成時(shí)間:2009 年12月28日目錄摘要 1第一章弓I言 21.1 設(shè)計(jì)目的 21.2 設(shè)計(jì)任務(wù) .21.3 設(shè)計(jì)思路 .2第二章方案選擇 .32.1 單片機(jī)型號(hào)選擇 . 32.2 cpu 選擇 42.3 顯示模塊選擇 .42.4 最終方案和系統(tǒng)組成 5第三章主要硬件說明及設(shè)計(jì)73.1 AT89C51的介紹說明 73.2 顯示部件的設(shè)計(jì) 93.3 驅(qū)動(dòng)部件設(shè)計(jì) 93.4 電源電路 93.5 時(shí)鐘電路 93.6 復(fù)位
2、電路 9第四章軟件系統(tǒng)的設(shè)計(jì)74.1 電子鐘的主程序 74.2 電子鐘的顯示子程序 94.3 參考程序與解釋 9第五章系統(tǒng)調(diào)試75.1 軟件調(diào)試 75.2 硬件調(diào)試 9第六章設(shè)計(jì)心得總結(jié)7第五章附錄13附錄1硬件電路原理圖和連接圖 .13附錄2電子鐘程序清單 14附錄3元器件清單 17附錄4實(shí)訓(xùn)產(chǎn)品照片 .18參考文獻(xiàn)1813摘要本次實(shí)訓(xùn)是基于 AT89C51單片機(jī)電子鐘的設(shè)計(jì),對(duì)時(shí)、分、秒的顯示的控制,時(shí)、分、秒用六位數(shù)碼管顯示 LED數(shù)碼管時(shí)鐘電路采用 24小時(shí)計(jì)時(shí)方式。該電路采用AT89C51單片機(jī),使用5V電池供電,只使用一個(gè)按鍵進(jìn)行復(fù)位狀態(tài)的控制以及正常顯示等狀態(tài)。LED顯示采用靜態(tài)
3、掃描方式實(shí)現(xiàn),采用6M晶振。最常見的電子鐘通常使用單片機(jī)模塊控制,一種用單片機(jī)原理實(shí)現(xiàn)時(shí)、分、秒計(jì)時(shí)的裝置,與機(jī)械式時(shí)鐘相比具有更高的準(zhǔn)確性和直觀性,且無機(jī)械裝置,具有硬件成本低、計(jì)時(shí) 準(zhǔn)確、更長的使用壽命特點(diǎn),因此得到了廣泛的使用。本次設(shè)計(jì)通過用單片機(jī)為主控制,通過電路仿真而實(shí)現(xiàn)。首先使用Proteus Professional 軟件進(jìn)行繪制硬件電路圖, 用keil軟件進(jìn)行編程與調(diào)試, 最終生成hex文件, 傳入單片機(jī)內(nèi)部,從而實(shí)現(xiàn)仿真效果。關(guān)鍵詞:電子鐘、仿真、單片機(jī)第一章引言1.1 設(shè)計(jì)目的1、掌握單片機(jī)的結(jié)構(gòu)、指令系統(tǒng)、單片機(jī)擴(kuò)展方法和接口技術(shù);2、提高綜合運(yùn)用所學(xué)的理論知識(shí)獨(dú)立分析和
4、解決實(shí)際問題的能力;3、掌握匯編語言程序設(shè)計(jì)及調(diào)試方法;4、掌握單片機(jī)應(yīng)用系統(tǒng)的設(shè)計(jì)思想。二、課程設(shè)計(jì)內(nèi)容1.2 設(shè)計(jì)任務(wù)以AT89C51單片機(jī)控制的時(shí)鐘,在 LCD顯示器上顯示當(dāng)前時(shí)間。要求:(1) 用文字型LCD顯示器顯示當(dāng)前時(shí)間。2)顯示格式為“時(shí)時(shí):分分:秒秒” 。(2) 4個(gè)功能鍵操作來設(shè)置當(dāng)前的時(shí)間。(3) K1 進(jìn)入設(shè)置現(xiàn)在的時(shí)間。(4) K2 設(shè)置小時(shí)。(5) K3 設(shè)置分鐘。(6) K4 確認(rèn)完成設(shè)置。4)程序執(zhí)行后工作指示燈LED閃動(dòng),表示程序開始執(zhí)行,LCD顯示“ 00: 00: 00”,然后開始計(jì)時(shí)。1.3 設(shè)計(jì)思路電子鐘的計(jì)時(shí)器的硬件電路如圖所示,采用AT89C51單
5、片機(jī),最小化應(yīng)用設(shè)計(jì);此次設(shè)計(jì),我們采用靜態(tài)顯示的方案來完成電子鐘的設(shè)計(jì)。采用共陽八段LED顯示器,用74LS164來驅(qū)動(dòng)LED數(shù)碼管,采用6M晶振,有利于提高計(jì)時(shí)的精確性。主要功能:設(shè)計(jì)一個(gè)時(shí)鐘系統(tǒng), 時(shí)鐘時(shí)間在六位數(shù)碼管上進(jìn)行顯示,從左到右依次為“時(shí):分:秒”。8E1思a!IB.一上電,數(shù)碼管顯示起始時(shí)間為 0時(shí)0分0秒,即學(xué) 鐘系統(tǒng)加1,最大顯示值為23.59.59 。本次設(shè)計(jì)中,次碼管顯示 00.00.00 ,以后每秒, 我們只用到了一個(gè)按鍵,此按鍵是用來控制電路復(fù)位的,我們將設(shè)計(jì)好的復(fù)位電路直接接在單片機(jī)的復(fù)位引腳(RST)上,這樣程序在運(yùn)行過程中就會(huì)自動(dòng)查詢?cè)撘_上的電平,當(dāng)該引腳
6、電平為高電平時(shí),則電路 恢復(fù)初始狀態(tài),反之,則程序正常運(yùn)行。電子鐘的硬件電路框圖如下:第二章方案選擇2.1 單片機(jī)型號(hào)選擇通過對(duì)多種單片機(jī)性能的分析,最終認(rèn)為 89C51是最理想的電子時(shí)鐘開發(fā) 芯片。89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的低電壓,高性能 CMOS8位微處理器,器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與 工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能 8位CPU和閃爍 存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的89C51是一種高效微控制器,而且它與 MCS-51兼容,且具有4K字節(jié)可編程閃爍存儲(chǔ)器和1000寫/擦循環(huán),數(shù)據(jù)保留 時(shí)間為10年等特點(diǎn),
7、是最好的選擇。2.2 cpu的型號(hào)選擇單片機(jī)芯片作為控制系統(tǒng)的核心部件,它除了具備微機(jī)CPU的數(shù)值計(jì)算功能外,還具有靈活強(qiáng)大的控制功能,以便實(shí)時(shí)檢測系統(tǒng)的輸入量、控制系統(tǒng)的輸出量, 實(shí)現(xiàn)自動(dòng)控制。在本次設(shè)計(jì)中采用單片機(jī)技術(shù)來實(shí)現(xiàn)數(shù)字鐘的功能。方案的設(shè)計(jì) 可以從以下幾個(gè)方面來確定。 微處理器的選擇,AT89S51、52是2003年ATMEL 推出的新型品種,除了完全兼容 8051外,還多了 ISP編程和看門狗功能。雖然 AT89S52的存儲(chǔ)器容量比AT89S51的大。但在本次設(shè)計(jì)中采用 AT89S51單片機(jī) 因?yàn)锳T89C51足以滿足我們?cè)O(shè)計(jì)的需要;顯示電路的設(shè)計(jì),隨著科技的發(fā)展, 液晶顯示的使
8、用越來越方便,已被普遍的使用。但由于液晶顯示比較昂貴,另外其驅(qū)動(dòng)也集成在一起,因此使用起來很方便。在這里采用數(shù)碼管顯示;校時(shí)電路的設(shè)計(jì);實(shí)時(shí)控制電路是時(shí)鐘電路的一個(gè)重要組成部分, 采用的是一個(gè)時(shí)鐘芯片, 單片機(jī)從中讀取數(shù)據(jù)送到顯示器上顯示, 從而實(shí)現(xiàn)數(shù)字鐘的功能;還有一些其他 控制電路如復(fù)位電路、時(shí)鐘電路等。通過這些控制電路的連接構(gòu)成了完整的電路。2.3 顯示模塊選擇采用LCD,電路比較簡單,且在軟件設(shè)計(jì)上也相對(duì)簡單,具有低功耗功能,能夠滿足設(shè)計(jì) 最優(yōu)的要求。因此,在設(shè)計(jì)中我采用的顯示模塊是LCD顯示。2.4 最終方案和系統(tǒng)組成對(duì)此次數(shù)字時(shí)鐘的方案選定為:采用AT89C52作為主控制系統(tǒng);并由
9、其 定時(shí)計(jì)數(shù)器提供時(shí)鐘;LCD作為顯示電路,來實(shí)現(xiàn)功能。系統(tǒng)由AT89C51、LED數(shù)碼管、按鍵、74LS245等部分構(gòu)成,能實(shí)現(xiàn)時(shí) 問的調(diào)整、定時(shí)時(shí)間的設(shè)定,輸出等功能。系統(tǒng)的按鍵有K1、K2、K3, K1對(duì)秒校對(duì),K2對(duì)分校對(duì),K3對(duì)時(shí)校對(duì)。o 1 2 3 4 5 6 7 V / RM E B a B ” EU vcrro叩曲闖ro加叩叩而札2 1 Ou- 87654-3 21 4 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2泥宴3.1 AT89C51介紹說明AT89C51是美國Intel公司生產(chǎn)的低電壓,高性能 CHMOS8位單片機(jī),片內(nèi)含 4k bytes
10、 的可反復(fù)擦寫的只讀程序存儲(chǔ)器(PEROM)和藹可親 128 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM ),器件采用Intel公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),片內(nèi)置通用 4位中央處 理器(CPU)和Flash存儲(chǔ)單元,功能強(qiáng)大AT89C51單片機(jī)適合于許多較為復(fù)雜控制應(yīng)用場 合。Pl.0 c PL1 Pl.2 e PL 3匚 PLd u PL帛匚 PL 6 e Pl. 7 匚 RSTAp& 匚 P3t O/KXD c P3J/TKP 匚 琳2/麗匚 P3, 3/INTi t P3. VTO 匚 P3. 5/n U pm,魂 P3. 7/R& cXTALS cXTAL1 cVss uAT89C
11、5引腳圖3.1.1 引腳功能PIDIPVcc(40):電源電壓GND(20):接地P3.0 RXD(串行輸入口)P3.1TXD (串行輸出口)RST(9):復(fù)位信號(hào)輸入端。當(dāng)振蕩 器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器 周期以上高電平將使單片機(jī)復(fù)位。/EA/VPP:當(dāng)/EA保持低電平時(shí),則P 1 0P1.1P 1 2P 1.3P 1 4P 1 .5 p r 6P 1.7RST(RXD) P3.0(TXD) P3 I(INTO) P3 2(INT 1 ) P3.3(TO) P3.4 f T 1 ) P3.5(WR) P3.6 (-R7T) P3.7XTAL2 XTAL I GND012 3456789
12、0 12 3 4-5 67 8911111111 11 2 匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚匚VCCP0.0(ADO)P01(ADI)P0.2(AD2)P03(AD3)Pfl4(AD4P05(AD5)P0,6(ADC )P0,7(AD7)E A/V PRALE/PROGP S ENP27Al 5)P2 .,6(A 14)P25(A13)P2J(A 12)P23(A1 1 )P22(A1 0)P2P1(A9)P20(A8)nnnnnnnnnnnnnnnnnnn09876543210 9 876543 21 4 3 333333333222222222在此期間外部程序存儲(chǔ)器(0000H -FF
13、FFHD ,不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式 1時(shí),/EA將內(nèi)部鎖定為RESET當(dāng)/EA端保 持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在 FLAS編程期間,此弓唧也用于施加12V程程電源(V PP)。XTAL1(18):振蕩器反相放大器的及內(nèi)部時(shí)鐘發(fā)生器的輸入端。XTAL2(19):振蕩器反相放大器的輸出端。通過 XTAL1、XTAL2外接晶振后,即可構(gòu) 成自激振蕩器,驅(qū)動(dòng)內(nèi)部時(shí)鐘發(fā)生器向主機(jī)提供時(shí)鐘信號(hào)。3.2 顯示部件設(shè)計(jì)如圖所示由8個(gè)共陰極的數(shù)碼管組成時(shí)、分、秒和分隔符的顯示。P0 口的8條 數(shù)據(jù)線P0.0至P0. 7分另I與74LS245的A 口對(duì)應(yīng)相接,增大 AT89C51的帶 負(fù)載能
14、力;P3 口對(duì)應(yīng)接八個(gè)數(shù)碼管的公共端,通過程序控制數(shù)碼管的亮與滅,這樣通過P0 口送出一個(gè)存儲(chǔ)單元的高位、低位 BCD顯示代碼,通過P3 口送 出掃描選通代碼輪流點(diǎn)亮LED1至LED8,就會(huì)將要顯示的數(shù)據(jù)在數(shù)碼管中顯示 出來。從P0 口輸出的代碼是BCD碼,從P3 口輸出的就是位選碼。這是掃描 顯示原理。3.3 驅(qū)動(dòng)部件設(shè)計(jì)本設(shè)計(jì)的驅(qū)動(dòng)電路采用 74LS164, 74LS164是最常見的移位寄存器,移位寄存器是暫時(shí)記憶數(shù)據(jù)的“寄存器”,其特征是具有將數(shù)據(jù)向左或向右移動(dòng)的功能。移位寄存器有各種形 式。按存數(shù)據(jù)的位數(shù)有 4位、8位等,按“輸入/輸出數(shù)據(jù)”形式有“串入/串出、“串入/并 出”、“并入
15、/串出、“并入/并入”等。圖3是串行輸入/并行(串行)輸出移位寄存器 74LS164的管腳排列圖。其功能表見 表2所示。74LS164有兩個(gè)串行數(shù)據(jù) Da、Db輸入端,使用時(shí)一般把它們連在一起;CR為清零輸入端,低電平有效,當(dāng)該端加入低電平時(shí),寄存器輸出QoQ7全為低電平。在正常情況下,清零輸入端接高電平,當(dāng)CP信號(hào)上升沿到來時(shí),數(shù)據(jù)右移一位;QoQ7為并行數(shù)據(jù)輸出端,同時(shí) Q7端也是串行數(shù)據(jù)輸出端,對(duì)于串行輸入的數(shù)據(jù),最后進(jìn)入的從Qo輸出。CP為移位脈沖。最先輸入的從 Q7輸出,Q 口 Ql QN Q3 巨ZI374LS164管腳圖74LS164真值表輸入小輸出尹1Db1,京CP0aQo Q
16、i Q: Qs Q4 Q: Qe Q”疑0XOQQQQQQQ二、密_10XQo Qi Q; Qi Q4 Q? Qs1T11 Qo Qi Q: Qm QQ Q/X/1T00 Qo Qi Q: Q? Q4 Qw Qe*11TX0 Qo Qi Q: Qs Q$ Q三 Q.3.4電源電路C2T卜C1L內(nèi)部方式如圖3-1所示,XTAL1 19 XTAL2 18XTAL1是片內(nèi)振蕩器的反相放大器輸入端,XTAL2則是輸出端,使用外部振蕩器時(shí),外部振蕩信號(hào)應(yīng)直接加到XTAL而XTAL2a空。內(nèi)部方式時(shí),時(shí)鐘發(fā)生器又t振蕩脈沖二分頻,如晶振為 12MHz 時(shí)鐘頻率就為6MHz晶振的頻率可以在1MHz-24MH
17、的選擇。電容取30PF左右。 系統(tǒng)的時(shí)鐘電路設(shè)計(jì)是采用的內(nèi)部方式,即利用芯片內(nèi)部的振蕩電路。AT89單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器。引腳XTAL1和XTAL2分別 是此放大器的輸入端和輸出端。這個(gè)放大器與作為反饋元件的片外晶體諧振器一 起構(gòu)成一個(gè)自激振蕩器。外接晶體諧振器以及電容 C1和C2構(gòu)成并聯(lián)諧振電路, 接在放大器的反饋回路中。對(duì)外接電容的值雖然沒有嚴(yán)格的要求, 但電容的大小 會(huì)影響震蕩器頻率的高低、震蕩器的穩(wěn)定性、 起振的快速性和溫度的穩(wěn)定性。因 此,此系統(tǒng)電路的晶體振蕩器的值為 12MHz電容應(yīng)盡可能的選擇陶瓷電容,電 容值約為22 Fo在焊接刷電路板時(shí),晶體振蕩器
18、和電容應(yīng)盡可能安裝得與單片 機(jī)芯片靠近,以減少寄生電容,更好地保證震蕩器穩(wěn)定和可靠地工作。3.4 時(shí)鐘電路時(shí)鐘電路:單片機(jī)必須在時(shí)鐘的驅(qū)動(dòng)下才能進(jìn)行工作。 MCS-51系列單片機(jī)內(nèi) 部有一時(shí)鐘振蕩電路只需外接振蕩電源, 就能產(chǎn)生一定頻率的鐘信號(hào)到單片機(jī)內(nèi) 部的各個(gè)單元,決定單片機(jī)的工作速度。電路如下圖:CRYSTAlC1、C2值大,起其中兩個(gè)電容C1、C2的作用有兩個(gè):一是幫助振蕩器起震 震速度慢;C1、C2值小,起振蕩速度快);二是對(duì)振蕩頻率起微調(diào)作用( C1、C2值大,頻率略有降低,C1、C2值小,頻率略有提高)。C1、C2的典型值為 30pF。時(shí)鐘電路:單片機(jī)必須在時(shí)鐘的驅(qū)動(dòng)下才能進(jìn)行工
19、作。 MCS-51系列單片機(jī)內(nèi) 部有一時(shí)鐘振蕩電路只需外接振蕩電源, 就能產(chǎn)生一定頻率的鐘信號(hào)到單片機(jī)內(nèi) 部的各個(gè)單元,決定單片機(jī)的工作速度。電路如下圖 :X .CRYSTAlXTEXTi-其中兩個(gè)電容C1、C2的作用有兩個(gè):一是幫助振蕩器起震(C1、C2值大,起 震速度慢;C1、C2值小,起振蕩速度快);二是對(duì)振蕩頻率起微調(diào)作用( C1、C2值大,頻率略有降低,C1、C2值小,頻率略有提高)。C1、C2的典型值 為 30pF。3.6 復(fù)位電路VCCS1RESET圖3-2:復(fù)位電路圖如圖3-2所示,復(fù)位電路主要由型號(hào)為1N4148的二極管,型號(hào)為10UF/16V 的電解電容,型號(hào)為104的瓷片
20、電容,10K的電阻以及按鍵S1構(gòu)成,S1接芯片 的相應(yīng)引腳RST,當(dāng)開關(guān)按下時(shí)引腳RST為高電平1,斷開時(shí)引腳為低電平0o4.1電子時(shí)鐘主程序15開始設(shè)堆棧指針秒分時(shí)計(jì)數(shù)單元清零設(shè)定時(shí)器工作方式設(shè)定時(shí)器初值設(shè)中斷方式8155初始化調(diào)顯示子程序NO194.3參考程序與解釋S_SETBITM_SETBITH_SETBITSECOND EQUP1.0;數(shù)字鐘秒控制位,S-SET為P1.0位標(biāo)號(hào)P1.1;分鐘控制位,M-SET為P1.1位標(biāo)號(hào)P1.2;小時(shí)控制位,H-SET位P1.2位標(biāo)號(hào)30H;定義SECOND為30H單元標(biāo)號(hào),秒計(jì)數(shù)單元MINUTEEQU31H;定義MINUTE為31H單元標(biāo)號(hào),分
21、計(jì)數(shù)單元HOUREQU32H;定義HOUR為32H單元標(biāo)號(hào),時(shí)計(jì)數(shù)單元TCNTEQU34H淀義TCNT為34H單元標(biāo)號(hào)定時(shí)器T0計(jì)數(shù)單元.*;主程序ORG00H;程序開始地址SJMPSTART ;跳轉(zhuǎn)至ij START執(zhí)行ORG0BH;定時(shí)器T0中斷入口地址LJMPINT_T0;跳轉(zhuǎn)至ij INT-T0執(zhí)行START:MOVDPTR,#TABLE;#指向 TABLE 首地址MOVHOUR,#0;初始化秒計(jì)數(shù)單元MOVMINUTE, #0;初始化分計(jì)數(shù)單元MOVSECOND, #0;初始化時(shí)計(jì)數(shù)單元MOVTCNT, #0;初始化T0計(jì)數(shù)單元MOVTMOD,#01H;工作方式1MOVTH0,#(6
22、5536-50000)/256;定時(shí) 50 毫秒MOVTL0,#(65536-50000)MOD 256MOVIE,#82H;允許定時(shí)器T0中斷SETBTR0;啟動(dòng)定時(shí)器T0*判斷是否有控制鍵按下,是哪一個(gè)鍵按下A1:LCALLDISPLAY;跳轉(zhuǎn)到DISPLAY執(zhí)行JNBS_SET, S1檢查 P1.0 口電平JNBM_SET, S2檢查 P1.1 口電平JNBH_SET, S3;檢查 P1.2 口 電平LJMPA1;返回S1:LCALLDELAY;卻動(dòng)JBS_SET, A1;確認(rèn) P1.0 口電平INCSECOND;秒值力口 1MOVA, SECOND;秒數(shù)值送入A比較CJNEA,#60,
23、J0;判斷是否力口至IJ 60秒MOVSECOND,#0;SECOND 單元清零LJMPK1;轉(zhuǎn)至ij K1執(zhí)行S2:LCALLDELAY;長調(diào)用 DELAY 指令JBM_SET,A1;確認(rèn) P1.1 口電平K1:INCMINUTE;分鐘值加 1MOVA, MINUTE;分?jǐn)?shù)值送入A比較CJNEA,#60,J1;判斷是否加至ij 60分MOVMINUTE,#0;秒單元清零LJMPK2;調(diào)用K2指令S3:LCALLDELAY;調(diào)用延時(shí)子程序JBH_SET,A1;確認(rèn) P1.2 口 電平K2:INCHOUR;小時(shí)值加1MOVA, HOUR;時(shí)數(shù)值送入A比較CJNEA,#24,J2;判斷是否力口到2
24、4小時(shí)MOVHOUR, #0;時(shí)單元清零MOVMINUTE, #0;分單元清零MOVSECOND, #0;秒單元清零LJMPA1;跳轉(zhuǎn)到程序A1.* ;等待按鍵抬起J0: JBS_SET,A1;調(diào)用 A1 指令LCALLDISPLAY;調(diào)用顯示子程序SJMPJ0;返回J0指令J1: JBM_SET,A1;數(shù)值比較LCALLDISPLAY;調(diào)用顯示子程序SJMPJ1;返回J1指令J2: JBH_SET, A1;數(shù)值比較LCALLDISPLAY;調(diào)用顯示子程序SJMPJ2;返回J2指令.* ;定時(shí)器T0中斷服務(wù)子程序,對(duì)秒,分鐘和小時(shí)的計(jì)數(shù)INT_T0:MOV TH0, # (65536-5000
25、0)/256定時(shí) 50msMOV TL0, # (65536-50000) MOD 256INCTCNT;定時(shí)器T0計(jì)數(shù)單元中的數(shù)值加1MOV A, TCNT;定時(shí)器T0計(jì)數(shù)單元中的數(shù)值送入 A比較CJNEA,#20,RETUNE ;計(jì)時(shí) 1 秒,INCSECOND;秒計(jì)數(shù)單元中的數(shù)值加1MOVTCNT, #0;定時(shí)器T0計(jì)數(shù)單元?dú)w零MOVA, SECOND;秒計(jì)數(shù)單元中的數(shù)值送入A比較CJNEA, #60, RETUNE;記時(shí) 1 分,INCMINUTE;分計(jì)數(shù)單元中的數(shù)值加1MOVSECOND, #0;秒計(jì)數(shù)單元?dú)w零MOVA, MINUTE;分計(jì)數(shù)單元中的數(shù)值送入 A比較CJNEA, #6
26、0, RETUNE;記時(shí) 1 時(shí),INCHOUR;時(shí)計(jì)數(shù)單元中的數(shù)值加1MOVMINUTE, #0;分計(jì)數(shù)單元?dú)w零MOVA, HOUR;時(shí)計(jì)數(shù)單元中的數(shù)值送入 A比較CJNE A, #24, RETUNE;記時(shí) 1 天,MOVHOUR, #0;時(shí)計(jì)數(shù)單元?dú)w零MOVMINUTE,#0;分計(jì)數(shù)單元?dú)w零MOVSECOND,#。;秒計(jì)數(shù)單元?dú)w零MOVTCNT, #0;定時(shí)器T0計(jì)數(shù)單元清零RETUNE: RETI;中斷返回.*;顯示控制子程序DISPLAY: MOVA,SECOND;顯示秒MOVB, #10;B寄存器賦值為10DIV AB;(A)/(B),商存入A,余數(shù)存入B,分別處理A與B中數(shù)CLR
27、P3.6;數(shù)碼管7開始工作MOVCA,A+DPTR;數(shù)據(jù)指針指向數(shù)值地址并送入A輸出顯示MOVP0, A;在數(shù)碼管7輸出顯示秒單元的十位數(shù)值LCALLDELAY;調(diào)用延時(shí)子程序SETBP3.6;數(shù)碼管7停止工作MOVA, B;將B寄存器中的數(shù)送入A處理顯示CLRP3.7;數(shù)碼管8開始工作MOVCA,A+DPTR;數(shù)據(jù)指針指向數(shù)值地址并送入 A輸出顯示MOVP0, A;在數(shù)碼管8輸出顯示秒單元的個(gè)位數(shù)值LCALLDELAY;調(diào)用延時(shí)子程序SETBP3.7;數(shù)碼管8停止工作CLRP3.5;數(shù)碼管6開始工作MOVP0,#40H;顯示分隔符LCALLDELAY;調(diào)用延時(shí)子程序SETBP3.5;數(shù)碼管6
28、停止工作MOVA,MINUTE;顯示分鐘MOVB, #10;B寄存器賦值為10DIVAB;商存入A,余數(shù)存入B,分別處理A與B中數(shù)CLRP3.3;數(shù)碼管4開始工作MOVCA,A+DPTR;數(shù)據(jù)指針指向數(shù)值地址并送入A輸出顯示MOVP0, A;在數(shù)碼管4輸出顯示分單元的十位數(shù)值LCALLDELAY;調(diào)用延時(shí)子程序SETBP3.3;數(shù)碼管4停止工作MOVA, B;將B寄存器中的數(shù)送入A處理顯示CLRP3.4;數(shù)碼管5開始工作MOVCA,A+DPTR;數(shù)據(jù)指針指向數(shù)值地址并送入A輸出顯示MOVP0, A;在數(shù)碼管5輸出顯示分單元的個(gè)位數(shù)值LCALLDELAY;調(diào)用延時(shí)子程序SETBP3.4;數(shù)碼管5
29、停止工作CLRP3.2;數(shù)碼管3開始工作MOVP0,#40H;顯示分隔符LCALLDELAY;調(diào)用延時(shí)子程序SETBP3.2;數(shù)碼管3停止工作MOVA,HOUR;顯示小時(shí)MOVB, #10;B寄存器賦值為10DIV AB;商存入A,余數(shù)存入B,分別處理A與B中數(shù)CLRP3.0;數(shù)碼管1開始工作MOVCA,A+DPTR;數(shù)據(jù)指針指向數(shù)值地址并送入 A輸出顯示MOVP0, A;在數(shù)碼管1輸出顯示時(shí)單元的十位數(shù)值LCALLDELAY;調(diào)用延時(shí)子程序SETBP3.0;數(shù)碼管1停止工作MOVA,B;將B寄存器中的數(shù)送入 A處理顯示CLRP3.1;數(shù)碼管2開始工作MOVCA,A+DPTR;數(shù)據(jù)指針指向數(shù)值
30、地址并送入 A輸出顯示MOVP0,A;在數(shù)碼管2輸出顯示時(shí)單元的個(gè)位數(shù)值LCALLDELAY;調(diào)用延時(shí)子程序SETBP3.1;數(shù)碼管2停止工作RET;子程序返回TABLE:DB 3FH,06H,5BH,4FH,66H;共陰極 LED 顯示器段選碼 0,1,2,3,4DB 6DH,7DH,07H,7FH,6FH;共陰極 LED 顯示器段選碼 5,6,7,8,9.* ;延時(shí)子程序DELAY: MOVR6,#10;R6 賦值為 10D1: MOVR7,#250;R7 賦值為 250DJNZR7,$;原地踏步DJNZR6,D1;返回D1循環(huán)RET;子程序返回END;結(jié)束程序5系統(tǒng)調(diào)試5.1 軟件調(diào)試打
31、開程序調(diào)試軟件keil uVision2 ,在里面新建一個(gè)工程,命名為:數(shù)字時(shí) 鐘.Uv2。接著新建文件,編寫相應(yīng)程序。編寫好的各個(gè)程序進(jìn)行編譯與連接。但 若是在該過程中,看見我們編好的程序有錯(cuò)誤,那么就根據(jù)他相應(yīng)的提示來修改 錯(cuò)誤,直到該程序能夠正確編譯為止。能夠正常編譯的程序說明沒有什么問題了,此時(shí)我們?cè)邳c(diǎn)擊相關(guān)欄目,讓它生成我們?cè)谟布抡鏁r(shí)所需要的.HEX文件。到此步,我們的軟件調(diào)試就完成了。5.2 硬件調(diào)試打開Proteus 7 Professional 軟件,按照方案所選的電路元件來設(shè)計(jì)整體電路,線把個(gè)芯片按一定的位置放好, 然后對(duì)相應(yīng)的對(duì)象進(jìn)行連接,連接時(shí)需仔細(xì),以免調(diào)試時(shí)發(fā)生錯(cuò)誤
32、。做好之后把編程所生成的。HEX文件加載到AT89C51中,運(yùn)行仿真軟件,查看運(yùn)行效果。如果運(yùn)行出錯(cuò)那么就根據(jù)他相應(yīng)的提示來修 改錯(cuò)誤,直到仿真成功為止。第六章設(shè)計(jì)心得總結(jié)本設(shè)計(jì)能夠很準(zhǔn)確的走時(shí),并能夠通過硬件對(duì)時(shí)鐘進(jìn)行時(shí)間調(diào)整。我在這一 次單片機(jī)最小系統(tǒng)的設(shè)計(jì)過程中, 很是受益匪淺。通過對(duì)自己在大學(xué)三年時(shí)間里 所學(xué)的知識(shí)的回顧,并充分發(fā)揮對(duì)所學(xué)知識(shí)的理解和對(duì)畢業(yè)設(shè)計(jì)的思考及書面表 達(dá)能力,最終完成了。這為自己今后進(jìn)一步深化學(xué)習(xí),積累了一定寶貴的經(jīng)驗(yàn)。撰寫論文的過程也是專業(yè)知識(shí)的學(xué)習(xí)過程, 它使我運(yùn)用已有的專業(yè)基礎(chǔ)知識(shí), 對(duì) 其進(jìn)行設(shè)計(jì),分析和解決一個(gè)理論問題或?qū)嶋H問題, 把知識(shí)轉(zhuǎn)化為能力的實(shí)
33、際訓(xùn) 練。培養(yǎng)了我運(yùn)用所學(xué)知識(shí)解決實(shí)際問題的能力。通過這次課程設(shè)計(jì)我發(fā)現(xiàn),只有理論水平提高了;才能夠?qū)⒄n本知識(shí)與實(shí)踐 相整合,理論知識(shí)服務(wù)于教學(xué)實(shí)踐,以增強(qiáng)自己的動(dòng)手能力。 這個(gè)實(shí)驗(yàn)十分有意 義 我獲得很深刻的經(jīng)驗(yàn)。通過這次課程設(shè)計(jì),我們知道了理論和實(shí)際的距離, 也知道了理論和實(shí)際想結(jié)合的重要性,也從中得知了很多書本上無法得知的知 識(shí)。我們的學(xué)習(xí)不但要立足于書本,以解決理論和實(shí)際教學(xué)中的實(shí)際問題為目 的,還要以實(shí)踐相結(jié)合,理論問題即實(shí)踐課題,解決問題即課程研究,學(xué)生自己 就是一個(gè)專家,通過自己的手來解決問題比用腦子解決問題更加深刻。學(xué)習(xí)就應(yīng)該采取理論與實(shí)踐結(jié)合的方式,理論的問題,也就是實(shí)踐性的
34、課題。這種做法既有助于完成理論知識(shí)的鞏固,又有助于帶動(dòng)實(shí)踐,解決實(shí)際問題,加強(qiáng)我們的動(dòng)手能力和解決問題的能力。第5章附錄附錄1:硬件電路原理圖和連接圖i附錄2:電子鐘程序清單;時(shí)鐘,計(jì)數(shù)初值 00.00.00 靜態(tài)顯示,定時(shí) 100ms; 內(nèi)存單兀分配SECL EQU 30H / 秒SECH EQU 31HMINL EQU 32H / 分MINH EQU 33HHOURL EQU 34H/ 小時(shí)HOURH EQU 35HSECEQU 36HMINEQU37HHOUR EQU 38HCOUNT EQU 39H/ 計(jì)時(shí)到 1 秒;1s=10X 100msORG 0000HLJMP STARTORG
35、 000BHLJMP TIMER0ORG 0030H;主程序。使用資源:R3,6位顯示的指針。;R0,顯示緩沖地址指針。;DPTR段碼表指針。START:MOV SP,#60H;設(shè)置堆棧MOV COUNT,#00HMOV TMOD,#01H ; T0,方式 1,定時(shí) 100msMOV TH0,#3CHMOV TL0,#0B0HSETB EA;開放T0中斷SETB ET0SETB TR0;啟動(dòng) T0MOV SCON,#00H ;串 口方式 0MOV R3,#06HMOV DPTR,#TABLEMOV R0,#30HMOV SEC,#0 ;秒,分,時(shí)清 0MOV MIN,#0MOV HOUR,#0
36、MOV SECL,#00H ;顯示緩沖區(qū)單元清 0MOV SECH,#00HMOV MINL,#00HMOV MINH,#00HMOV HOURL,#00HMOV HOURH,#00HDISP1:MOV A,R0;初始化顯示 00.00.00MOVC A,A+DPTRMOV SBUF,AWAIT1:JNB TI,WAIT1CLR TIINC R0DJNZ R3,DISP1MOV R0,#30HMOV R3,#06HLOOP:SJMP LOOP; 顯示子程序 ;入口參數(shù):(R0)=顯示緩沖區(qū)地址;(R3)=顯示位數(shù);占用資源: ACC,DPTR,R0,R3DISP:MOV A,R0MOVC A,A+DPTRCJNE R3
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 住宅小區(qū)外墻改造協(xié)議
- 礦泉水廠保溫系統(tǒng)安裝協(xié)議
- 網(wǎng)絡(luò)短視頻副導(dǎo)演招聘協(xié)議
- 裝飾裝修勞務(wù)協(xié)議
- 市場調(diào)研門頭租賃合同
- 污水處理工程勞務(wù)合同模板
- 創(chuàng)業(yè)學(xué)校租賃合同
- 花藝作品銷售顧問聘用協(xié)議
- 建筑工程施工合同:生態(tài)保護(hù)工程
- 花園租賃協(xié)議模板
- 心律失常指南課件
- 2023年好醫(yī)生繼續(xù)教育公共必修課《醫(yī)務(wù)人員職業(yè)素質(zhì)修養(yǎng)與執(zhí)業(yè)法律知識(shí)》題庫
- 2023年軍隊(duì)文職考試《數(shù)學(xué)1》真題
- 軟件測試項(xiàng)目課件04黑盒測試
- 長春耐火磚施工方案
- 美術(shù)四年級(jí)上冊(cè)說課稿-第14課 漂亮的房間2-蘇少版
- 思明區(qū)公開招聘非在編聘用人員報(bào)名表
- 〔部編版〕口語交際:勸告名師課件1
- 運(yùn)用品管圈QCC管理工具消化內(nèi)科-運(yùn)用“日間病房”優(yōu)化科室管理指標(biāo)PDCA
- 導(dǎo)尿術(shù)導(dǎo)尿術(shù)課件
- 生態(tài)停車場監(jiān)理規(guī)劃
評(píng)論
0/150
提交評(píng)論