畢業(yè)論文-基于AT89C51單片機電子時鐘的設(shè)計與實現(xiàn)(完稿).docx

上傳人:good****022 文檔編號:116788897 上傳時間:2022-07-06 格式:DOCX 頁數(shù):41 大?。?69.21KB
收藏 版權(quán)申訴 舉報 下載
畢業(yè)論文-基于AT89C51單片機電子時鐘的設(shè)計與實現(xiàn)(完稿).docx_第1頁
第1頁 / 共41頁
畢業(yè)論文-基于AT89C51單片機電子時鐘的設(shè)計與實現(xiàn)(完稿).docx_第2頁
第2頁 / 共41頁
畢業(yè)論文-基于AT89C51單片機電子時鐘的設(shè)計與實現(xiàn)(完稿).docx_第3頁
第3頁 / 共41頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《畢業(yè)論文-基于AT89C51單片機電子時鐘的設(shè)計與實現(xiàn)(完稿).docx》由會員分享,可在線閱讀,更多相關(guān)《畢業(yè)論文-基于AT89C51單片機電子時鐘的設(shè)計與實現(xiàn)(完稿).docx(41頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、 屆學生畢業(yè)論文(設(shè)計) 存檔編號: 江 漢 大 學 文 理 學 院 College of Arts & Science of Jianghan University畢業(yè)論文(設(shè)計)論文題目 基于單片機電子時鐘的設(shè)計與實現(xiàn) (英 文)Design and implementation of single chip electronic clock 學 部 信息技術(shù)學部 專 業(yè) 電子信息工程 姓 名 學 號 指導(dǎo)教師 2014年 5月8 日摘 要電子鐘亦稱數(shù)顯鐘(數(shù)字顯示鐘)。它是一種利用數(shù)字電路技術(shù)實現(xiàn)時、分、秒計時的裝置。與老式機械鐘相比,它具有走時準確、顯示直觀、無機械傳動裝置等優(yōu)點,給人

2、們的生活、學習、工作、娛樂帶來極大地方便。在這次設(shè)計中,我們以24小時計時方式,采用LED數(shù)碼管顯示時、分、秒,根據(jù)數(shù)碼管動態(tài)顯示原理來進行顯示。用12MHz的晶振產(chǎn)生振蕩脈沖,定時器計數(shù)。在此次設(shè)計中,電路具有顯示時間的基本功能,還可以實現(xiàn)對時間的調(diào)整以及定時響鈴。數(shù)字鐘因其小巧,價格低廉,走時精度高,使用方便,功能多,便于集成化而受廣大消費的喜愛.因此,研究數(shù)字鐘及擴大其應(yīng)用,有著非常現(xiàn)實的意義。關(guān)鍵字:數(shù)字電子鐘;單片機;數(shù)碼管AbstractElectronic clock is also called digital clock. It is a kind of device to

3、realize the use of digital circuit technology, minutes, seconds. Compared with the old mechanical clock, it has the advantages of accurate, intuitive display, no mechanical transmission device. To peoples life, study, work, entertainment , it brings great convenience. In this design, we take 24 hour

4、 time, use LED digital display hours, minutes, seconds, according to the principle of dynamic display of digital tube to display, use the 12MHz crystal oscillation pulse to the timer count. In this design, the circuit has a display time of basic function, also can achieve the adjustment of time and

5、regular rings. Digital clock because of its small, low price, travel time and high precision, convenient use, multiple functions, easy integration and loved by the general consumer. Therefore , the digital clock and expand its application, has the very. realistic significance.Keywords: digital elect

6、ronic ;clock chip;digital目 錄摘 要I目錄III1.緒論11.1 選題的背景和意義11.2 電子時鐘的現(xiàn)狀與發(fā)展趨勢11.3 本設(shè)計研究的主要內(nèi)容與終極目標12.采用的主要技術(shù)32.1 單片機控制技術(shù)32.1.1 AT89C51主要功能32.1.2 AT89C51引腳特性42.1.3 結(jié)構(gòu)特點52.2 軟件的仿真技術(shù)72.2.1 keil仿真72.2.2 protues 仿真83.電子時鐘的硬件電路設(shè)計93.1 系統(tǒng)控制電路(單片機系統(tǒng))93.2 秒信號產(chǎn)生電路103.3 計時電路103.4 校準電路103.5 顯示電路103.6 功能選擇電路(鍵盤控制)123.7定

7、時鬧鈴電路134.電子時鐘的軟件程序設(shè)計144.1 主程序流程144.2 計時程序流程164.3 鍵盤掃描程序174.4中斷程序及延時程序174.5 時間顯示程序185.電子時鐘電路仿真與性能測試205.1 電子時鐘電路仿真圖205.1.1 電子時鐘正常走時狀態(tài)電路仿真圖205.1.2 電子時鐘定時響鈴電路仿真圖215.2 電子時鐘性能測試分析225.2.1 系統(tǒng)性能測試225.2.2 系統(tǒng)誤差分析256.收獲體會26致 謝27參考文獻28附錄:電子時鐘程序清單29 1 緒論1.1 選題的背景和意義隨著科技的進步,電子技術(shù)獲得了飛速的發(fā)展。在社會的各個領(lǐng)域,我們可以看到各種各樣的電子產(chǎn)品。電子

8、技術(shù)的進步使我們社會生產(chǎn)力的發(fā)展和社會信息化程度得到了提高?,F(xiàn)代社會的電子產(chǎn)品性能也更進一步提高,各種產(chǎn)品更新?lián)Q代的速度越來越快。幾百年前開始,鐘表就已將出現(xiàn),以前的擺鐘和懷表可以說是鐘表中的經(jīng)典,它們不僅大方實用,而且制作精美。但是,近幾十年來,它們已經(jīng)逐漸被電子時鐘所取代。電子時鐘精確度高,外觀小巧,功能完善,成本低。單片機控制的電子時鐘具備時鐘的各種功能,而且硬件組成非常精簡,我們只需要進行軟件編寫,就可以實現(xiàn)我們所需要的功能。1.2 電子時鐘的現(xiàn)狀與發(fā)展趨勢時間就是金錢,現(xiàn)代生活的人們對時間越來越重視。在工作,學習,生活中,許多時候都需要我們對時間把握非常嚴格和準確,錯誤的信息會帶來非

9、常大的麻煩。這個時候數(shù)字電子鐘就給我們帶來了很大的方便,數(shù)字電子鐘是以數(shù)碼管作為顯示器,比指針式的時鐘有很大的優(yōu)勢。用數(shù)碼管來顯示時間,我們可以簡單快速的讀數(shù),而且它的時間準確顯示到秒。因此,電子時鐘在生活中被廣大消費者喜愛,得到了廣泛的應(yīng)用。數(shù)字電子時鐘的精度是遠遠的超過老式的鐘表。 在生活中,我們享受著鐘表數(shù)字化帶來的便利,并且不斷的擴展著鐘表的功能,讓它在更多的領(lǐng)域得到應(yīng)用。例如,時間程序自動控制、定時自動報警、定時廣播、按時自動打鈴、定時開關(guān)烘箱、通斷動力設(shè)備、自動起閉路燈等等各種定時裝置,它們都是以鐘表數(shù)字化為基礎(chǔ)的。因此,我們對數(shù)字鐘進行研究并且擴大它的應(yīng)用,是有著非?,F(xiàn)實的意義的

10、。1.3 本設(shè)計研究的主要內(nèi)容與終極目標本次設(shè)計是使用12MHZ晶振與單片機AT89C51相連接,通過軟件編程的方法來設(shè)計以24小時為一個周期同時顯示小時,分鐘和秒的數(shù)字電子鐘,并在計時過程中通過對調(diào)時鍵盤的掃描來調(diào)整時間,以及控制顯示電路進行時間顯示功能和定時響鈴功能。整體方案如圖1-1所示。鍵盤輸入秒信號走時電子時鐘60進制計數(shù)器LED顯示24進制計數(shù)器定時鬧鈴圖1-1 電子時鐘設(shè)計總方案圖2 采用的主要技術(shù)2.1 單片機控制技術(shù)單片機是一種在一塊硅片上集成了各種部件的微型計算機。它可以將中央處理器(CPU)、數(shù)據(jù)存儲器(RAM)、程序存儲器(ROM)、定時器計數(shù)器以及輸入/輸出(I/O)

11、接口電路等主要計算機部件,集成在一塊電路芯片上,獨立執(zhí)行內(nèi)部程序。2.1.1 AT89C51主要功能AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,所以ATMEL的AT89C51是一種高效微控制器, 它為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。AT89C51引腳特性如圖2-1所示。 主要特性:與MCS-51 兼容4K字節(jié)可編程閃爍存儲器壽命:1000寫/擦循環(huán)數(shù)據(jù)保

12、留時間:10年全靜態(tài)工作:0Hz-24Hz三級程序存儲器鎖定128*8位內(nèi)部RAM32可編程I/O線兩個16位定時器/計數(shù)器5個中斷源可編程串行通道 低功耗的閑置和掉電模式 圖2-1 單片機引腳圖片內(nèi)振蕩器和時鐘電路 2.1.2 AT89C51引腳特性(1)P0口(P0.0P0.7)8位、漏極開路的雙向I/O口。當使用片外存儲器及外擴I/O口時,P0口作為低字節(jié)地址/數(shù)據(jù)復(fù)用線。在編程時,P0口可用于接收指令代碼字節(jié);程序校驗時,可輸出指令字節(jié)。P0口也可做通用I/O口使用,但需加上拉電阻。作為普通輸入時,應(yīng)輸出鎖存器配置1。P0口可驅(qū)動8個TTL負載。(2)P1口(P1.0P1.7)8位、準

13、雙向I/O口,具有內(nèi)部上拉電阻。 P1口是為用戶準備的I/O雙向口。在編程和校驗時,可用作輸入低8位地址。用作輸入時,應(yīng)先將輸出鎖存器置1。P1口可驅(qū)動4個TTL負載。(3)P2口(P2.0P2.7)8位、準雙向I/O口,具有內(nèi)部上拉電阻。 當使用外存儲器或外擴I/O口時,P2口輸出高8位地址。在編程和校驗時,P2口接收高字節(jié)地址和某些控制信號。(4)P3口(P3.0P3.7)8位、準雙向I/O口,具有內(nèi)部上拉電阻。 P3口可作為普通I/O口。用作輸入時,應(yīng)先將輸出鎖存器置1。在編程/校驗時,P3口接收某些控制信號。它可驅(qū)動4個TTL負載。P3口除了作為一般的I/O口使用之外,其還具有特殊功能

14、。P3口作為AT89C51的一些特殊功能口,如下表2-1所示。表2-1P3端口引腳兼用功能表P3引腳兼用功能P3.0串行通訊輸入(RXD)P3.1串行通訊輸出(TXD)P3.2外部中斷0( INT0)P3.3外部中斷1(INT1)P3.4定時器0輸入(T0)P3.5定時器1輸入(T1)P3.6外部數(shù)據(jù)存儲器寫選通WRP3.7外部數(shù)據(jù)存儲器寫選通RD(5)RST:復(fù)位輸入信號,高電平有效。在振蕩器穩(wěn)定工作時,在RST腳施加兩個機器周期以上的高電平,將器件復(fù)位。(6)ALE/PROG:低字節(jié)鎖存信號ALE。在系統(tǒng)擴展時,ALE的下降沿將P0口輸出的低8位地址鎖存在外接的地址鎖存器中,以實現(xiàn)低字節(jié)地

15、址和數(shù)據(jù)的分時傳送。此外,ALE端連續(xù)輸出正脈沖,頻率為晶振頻率的1/6,可做外部定時脈沖使用。(7)/PSEN:片外程序存儲器讀選通信號,低電平有效。在片外程序存儲器取指令期間,當PSEN有效時,程序存儲器的內(nèi)容被送至P0口;在訪問外部數(shù)據(jù)存儲器時,PSEN 無效。(8)/EA/VPP:外部程序存儲器訪問允許信號EA。當EA信號接地時,對ROM的讀操作限定在外部程序存儲器,地址為0000H-FFFFH;當EA接VCC時,對ROM的讀操作從內(nèi)部程序存儲器開始,并可延續(xù)至外部程序存儲器。在編程時,該引腳可接編程電壓5V或12V。在編程校驗時,該引腳可接VCC。 (9)XTAL1:反向振蕩放大器的

16、輸入及內(nèi)部時鐘工作電路的輸入。(10) XTAL2:來自反向振蕩器的輸出。2.1.3 結(jié)構(gòu)特點AT89C51內(nèi)部主要包含:一個8位CPU,一個時鐘電路,4Kbyte程序存儲器,128byte數(shù)據(jù)存儲器,兩個16位定時/計數(shù)器,64Kbyte擴展總線控制電路,四個8-bit并行I/O端口,一個可編程串行接口,五個中斷源,其中包括兩個優(yōu)先級嵌套中斷,如圖2-2所示。圖2-2 單片機系統(tǒng)結(jié)構(gòu)框圖1. CPUCPU即中央處理器的簡稱,是單片機的核心部件,它完成各種運算和控制操作。 2. 存儲器 AT89C51單片機的存儲器包括數(shù)據(jù)存儲器和程序存儲器,其主要特點是程序存儲器和數(shù)據(jù)存儲器的尋址空間是相互獨

17、立的,物理結(jié)構(gòu)也不相同。 3. 并行I/O口 AT89C51單片機有4個雙向的8位并行口P0P3,每一個口都有一個8位的鎖存器,復(fù)位后他們的初始狀態(tài)全為1,每一條I/O線都能獨立地用作輸入或輸出。P0口為三態(tài)雙向口,能帶8個TTL門電路,P1、P2和P3口為準雙向口,負載能力為4個TTL門電路。 4. 串行I/O口 AT89C51單片機具有一個采用通用異步工作方式的全雙工串行通信接口,可以同時發(fā)送和接收數(shù)據(jù)。它具有兩個相互獨立的接收、發(fā)送數(shù)據(jù)緩沖器,兩個緩沖器共用一個地址(99H),發(fā)送緩沖器只能寫入,不能讀出,接收緩沖器只能讀出,不能寫入。 5. 定時/計數(shù)器AT89C51單片機內(nèi)有兩個可編

18、程的16位定時/計數(shù)器,記做T0和T1。T0和T1具有兩種工作方式:定時器工作方式和計數(shù)器工作方式。作為定時器工作方式,每個機器周期給定時/計數(shù)器加1,由于一個機器周期包含12個震蕩周期,故計數(shù)的速率是震蕩器的1/12;作為計數(shù)器工作時,每當T0或T1的外部輸入信號引腳(即P3.4腳或P3.5腳)由1轉(zhuǎn)0時,計數(shù)器加1。定時/計數(shù)器T0和T1除具有兩種工作方式外,還具有4鐘工作模式。模式0: 13位定時器/計數(shù)器。模式1: 16位定時器/計數(shù)器。模式2: 8位定時器/計數(shù)器,可重裝初值。模式3: 定時/計數(shù)器0分為兩個8位定時/計數(shù)器 定時/計數(shù)器1在此方式無意義。與定時/計數(shù)器有關(guān)的特殊功能

19、計數(shù)器為TMOD和TCON,其相關(guān)格式如表2-2所示。表2-2 TMOD格式定時/計數(shù)器1定時/計數(shù)器0D7D6D5D4D3D2D1D0GATEC/M1M0GATEC/M1M0GATE=0,表示相應(yīng)的外部中斷不起作用;GATE=1,表示相應(yīng)的外部中斷起作用。C/=0,表示定時器工作方式;C/=1,表示計數(shù)器工作方式。M1M0表示定時器/計數(shù)器工作模式的選擇。M1M0=00,選擇工作模式0;M1M0=01,選擇工作模式1;M1M0=10,選擇工作模式2;M1M0=11,選擇工作模式3。6. 中斷系統(tǒng)AT89C51單片機的中斷系統(tǒng)有5個中斷源。AT89C51的5個中斷源中,兩個為外部中斷(P3.2

20、腳)和(P3.3腳)輸入中斷請求;兩個為片內(nèi)定時/計數(shù)器T0、T1溢出中斷請求TF0和TF1;一個為片內(nèi)串行口中斷請求TI(發(fā)送中斷)和RI(接受中斷)。這些溢出中斷請求標志分別由特殊功能寄存器TCON和SCON的相應(yīng)位鎖存。 7. 時鐘電路 AT89C51芯片內(nèi)部有時鐘電路,但晶體振蕩器和微調(diào)電容必須外接。時鐘電路為單片機產(chǎn)生時鐘脈沖序列,振蕩器的頻率范圍為1.2MHz12MHz,典型取值為6MHz。 8. 總線 以上所有組成部分都是通過總線連接起來,從而構(gòu)成一個完整的單片機。系統(tǒng)的地址信號、數(shù)據(jù)信號和控制信號都是通過總線傳送的,總線結(jié)構(gòu)減少了單片機的連線和引腳,提高了集成度和可靠性。2.2

21、 軟件的仿真技術(shù)2.2.1 keil仿真Keil公司是一家業(yè)界領(lǐng)先的微控制器(MCU)軟件開發(fā)工具的獨立供應(yīng)商。Keil公司由兩家私人公司聯(lián)合運營,分別是德國慕尼黑的Keil Elektronik GmbH和美國德克薩斯的Keil Software Inc。Keil公司制造和銷售種類廣泛的開發(fā)工具,包括ANSI C編譯器、宏匯編程序、調(diào)試器、連接器、庫管理器、固件和實時操作系統(tǒng)核心(real-time kernel)。有超過10萬名微控制器開發(fā)人員在使用這種得到業(yè)界認可的解決方案。其Keil C51編譯器自1988年引入市場以來成為事實上的行業(yè)標準,并支持超過500種8051變種2.2.2 p

22、rotues 仿真Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計,真正實現(xiàn)了從概念到產(chǎn)品的完整設(shè)計。是目前世界上唯一將電路仿真軟件、PCB設(shè)計軟件和虛擬模型仿真軟件三合一的設(shè)計平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯器。Proteus仿真軟件包含兩個應(yīng)用程序,Proteus ISIS

23、和ProteusaresProteus ISIS是Proteus系統(tǒng)的核心,擁有超過8000元件的大型元件庫,包含幾千個模擬和數(shù)字電路中常用的Spice模型及各種動態(tài)元件,如三極管、555定時器等基本元件,完全適合于仿真模型。同時ISIS也為用戶提供了非常友好的作圖界面,元件之間的連線方便、靈活、高效率,剪切、移動等操作借助鼠標可簡單實現(xiàn);另外,ISIS還支持層次圖設(shè)計,支持WMF、BNP、DXF等多種圖形輸出格式。3 電子時鐘的硬件電路設(shè)計電路是由控制部分和顯示部分兩大部分組成。利用單片機程序進行控制,并通過數(shù)碼管進行顯示。3.1 系統(tǒng)控制電路(單片機系統(tǒng))單片機的最小系統(tǒng)包括:電源電路、晶

24、振電路、復(fù)位電路和引腳EA的接入狀態(tài),如圖3-1所示。 圖3-1 單片機最小系統(tǒng)的結(jié)構(gòu)圖 1.電源電路VCC40接入電源端;GND20接地端;工作電壓為5V。2.振蕩電路系統(tǒng)的時鐘電路設(shè)計是利用芯片內(nèi)部的振蕩電路來完成的。時鐘發(fā)生器對振蕩脈沖二分頻,如晶振為12MHz,時鐘頻率就為6MHz。AT89C51單片機內(nèi)部有一個用于構(gòu)成振蕩器的高增益反相放大器。引腳XTAL1和XTAL2分別是此放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外晶體諧振器一起構(gòu)成一個自激振蕩器。外接晶體諧振器以及電容C1和C2構(gòu)成并聯(lián)諧振電路,接在放大器的反饋回路中。3.復(fù)位電路在振蕩器運行時,有兩個機器周期(24

25、個振蕩周期)以上的高電平出現(xiàn)在RET引腳時,將使單片機復(fù)位,只要這個腳保持高電平,51芯片便循環(huán)復(fù)位。復(fù)位后P0P3口均置1引腳表現(xiàn)為高電平,程序計數(shù)器和特殊功能寄存器SFR全部清零。當復(fù)位腳由高電平變?yōu)榈碗娖綍r,芯片為ROM的00H處開始運行程序。復(fù)位是由外部的復(fù)位電路來實現(xiàn)的。片內(nèi)復(fù)位電路是復(fù)位引腳RST通過一個斯密特觸發(fā)器與復(fù)位電路相連,斯密特觸發(fā)器用來抑制噪聲,它的輸出在每個機器周期的S5P2,由復(fù)位電路采樣一次。復(fù)位電路通常采用上電自動復(fù)位和按鈕復(fù)位兩種方式,此電路系統(tǒng)采用的是上電自動復(fù)位電路。復(fù)位操作不會對內(nèi)部RAM有所影響。4. EA接入狀態(tài)引腳EA接入高電平,表示訪問內(nèi)部程序存

26、儲器,當程序計數(shù)器的值超過0FFFH時,將自動轉(zhuǎn)向訪問外部存儲器。3.2 秒信號產(chǎn)生電路本次時鐘系統(tǒng)的設(shè)計是利用芯片內(nèi)的震蕩電路,對定時器定時50ms,然后通過定時中斷響應(yīng)20次來計時1秒鐘。3.3 計時電路計時電路是通過對秒信號的累計,秒信號達到60,分加1,秒清零;分累計達到60,小時加1,分清零;小時達到24,小時清零,如此循環(huán)計時。3.4 校準電路在這次時鐘系統(tǒng)的設(shè)計中,是通過K、kadd、ksub三個鍵對時、分、秒來進行加、減校對調(diào)整。3.5 顯示電路顯示電路顯示模塊需要實時顯示當前的時間,即時、分、秒,因此需要6個數(shù)碼管,另需兩個數(shù)碼管來顯示橫。本次設(shè)計采用動態(tài)顯示方式顯示時間,時

27、的十位和個位分別顯示在第一個和第二個數(shù)碼管,分的十位和個位分別顯示在第四個和第五個數(shù)碼管,秒的十位和個位分別顯示在第七個和第八個數(shù)碼管,其余數(shù)碼管顯示橫線。本次設(shè)計是通過LED采用動態(tài)掃描的方式來對時間進行顯示,其接口電路是把所有LED顯示器的8個筆劃段ag、dp的同名端連在一起,由P2口控制公共的COM端來決定哪個數(shù)碼管點亮(低電平點亮),P0口輸入字形碼。通過輪流控制各個顯示器的COM端,使各個顯示器輪流點亮。由于每位顯示器的點亮時間是極為短暫的,所以只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感,如圖3-2(a)和圖3-2(b)所示。圖3-2(a)數(shù)碼管連接電路圖3

28、-2(b)數(shù)碼管連接電路3.6 功能選擇電路(鍵盤控制)本次設(shè)計了5個鍵,kadd和ksub用于對時間進行加減,K用于對時,分,秒進行選擇以及判斷時鐘是否從正常走時的狀態(tài)進入到設(shè)定時間的狀態(tài), K1用于啟動時鐘,讓時鐘開始走時,K2用于對時鐘的鬧鈴時間進行設(shè)定。按鍵電路的連接關(guān)系如圖3-3所示。圖3-3按鍵控制電路的連接圖3.7定時鬧鈴電路本次設(shè)計的電子時鐘有到時響鈴的功能,當時間到達指定時間時,蜂鳴器就會啟動,發(fā)出響聲5秒,其電路連接如圖3-4所示。圖3-4 蜂鳴器電路連接圖4 電子時鐘的軟件程序設(shè)計系統(tǒng)的軟件設(shè)計也是系統(tǒng)功能的設(shè)計。單片機軟件的設(shè)計主要包括執(zhí)行軟件(完成各種實質(zhì)性功能)的設(shè)

29、計和監(jiān)控軟件的設(shè)計。4.1 主程序流程主程序流程如圖4-1所示。開始設(shè)置初值,開中斷時間顯示鍵盤掃描K1是否按下 N 時鐘啟動,計時 YK是否按下 N時鐘停止工作Y NK2是否按下定時鬧鐘 Y 圖4-1 主程序流程圖4.2 計時程序流程本設(shè)計編寫了一個計時程序,通過它使時鐘正常走時,其具體流程如圖4-2所示。開始一秒時間到?秒單元加1Y 60秒到?N秒單元清零,分單元加1Y 60分鐘到? N 分單元清零,時單元加1Y24小時到?N時單元清零 Y結(jié)束 圖4-2 計時流程圖4.3 鍵盤掃描程序本次設(shè)計的鍵盤掃描程序有兩部分,一部分在主程序中,通過K、K1、K2來選擇電子時鐘的狀態(tài)。按下K表示時鐘進

30、入調(diào)時狀態(tài),按下K1表示時鐘進入走時狀態(tài),按下K2表示時鐘進入設(shè)定鬧鈴時間的狀態(tài)。另一部分在調(diào)試時態(tài)下的按鍵掃描程序中,其中的K鍵用于對時,分,秒進行選擇。程序開始,先判斷K鍵是否按下以及按下幾次。K鍵按下1次,表示選擇小時;K鍵按下2次,表示選擇分鐘;K鍵按下3次,表示選擇秒;K鍵按下4次,表示清零,可以重新進行選擇。再來判斷kadd和ksub是否按下,kadd按下表示加1,ksub按下表示減1,如圖4-3所示:K按下,i加1i=4i=3i=2i=1 秒分鐘小時i=0kadd按下,加1 ; ksub按下,減1圖4-3 按鍵處理示意圖 4.4中斷程序及延時程序中斷程序,本次設(shè)計中,通過中斷進行

31、計時,在中斷程序中定時50毫秒,中斷響應(yīng)20次,則1秒鐘時間到。定時初值:本次設(shè)計選用的是定時器0在工作方式1下工作,所以TMOD初始值為0 x01.因為晶振頻率為12MHZ,所以機器周期為1us。定時時間:X=(216-50000)/1 TH0=(216-50000)/256TL0=(216-50000)%256延時程序,本次設(shè)計中延時程序有一個很重要的作用就是給按鍵消抖。當用手按下一個鍵時,如圖4-4所示,通常按鍵在閉合位置和斷開位置之間跳幾下才穩(wěn)定到閉合狀態(tài)的情況;在釋放一個鍵時,也會出現(xiàn)類似的情況,這就是抖動。抖動的持續(xù)時間隨鍵盤材料和操作員而異,不過通??偸遣淮笥?0ms。抖動問題不

32、解決就會引起對閉合鍵的誤識別。用軟件方法可以很容易地解決抖動問題,這就是通過延遲10ms來等待抖動消失,這之后,在讀入鍵盤碼。鍵按下前沿抖動后沿抖動閉合穩(wěn)定圖4-4 按鍵抖動信號波形4.5 時間顯示程序本次設(shè)計數(shù)碼管是共陰極。當選用共陰極的LED時,所有發(fā)光二極管陰極連在一起接地,當某個發(fā)光二極管的陽極加入高電平時,對應(yīng)的二極管點亮。因此要顯示某字形就應(yīng)使此字形的相應(yīng)段的二極管點亮,實際上就是送一個用不同電平組合代表的數(shù)據(jù)字來控制LED的顯示,根據(jù)圖4-5和表4-1,我們可以得出數(shù)碼管顯示0-9的字型碼,如下所示:table10=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0

33、x6d,0 x7d,0 x07,0 x7f,0 x6f表4-1 LED顯示器各段關(guān)系D7D6D5D4D3D2D1D0dpgFedcba圖4-5共陽式、共陰式LED數(shù)碼管的原理圖和數(shù)碼管的符號圖在本次設(shè)計中,我們要讓時間顯示出它對應(yīng)的數(shù)值,是先將秒、分、時的個位和十位分別提取出來。然后提取對應(yīng)的字型碼送入P0口,通過P2口的選擇,輪流顯示,其具體內(nèi)容如圖4-6所示。秒 分鐘 小時%10,得到個位/10,得到十位P2口位選P0口段選 LED顯示0 xfe0 x7f圖4-6 時間顯示示意圖5 電子時鐘電路仿真與性能測試本次設(shè)計通過keil軟件和protues軟件進行軟件仿真,實現(xiàn)對電子時鐘功能的測試

34、。5.1 電子時鐘電路仿真圖5.1.1 電子時鐘正常走時狀態(tài)電路仿真圖電子時鐘正常走時狀態(tài)仿真圖如圖5-1所示。圖 5-1 電子時鐘正常走時仿真圖5.1.2 電子時鐘定時響鈴電路仿真圖電子時鐘定時響鈴狀態(tài)仿真圖,為了顯示明顯用發(fā)光二極管代替蜂鳴器,如圖5-2所示。圖5-2 電子時鐘響鈴狀態(tài)仿真圖5.2 電子時鐘性能測試分析5.2.1 系統(tǒng)性能測試1.調(diào)時狀態(tài)通過k,kadd,ksub對時,分,秒進行加減的調(diào)整。時鐘開始默認為調(diào)時狀態(tài),如圖5-3所示。 圖5-3 開始調(diào)時狀態(tài) 對小時進行加、減的調(diào)整,如圖5-4和圖5-5所示。 圖5-4 小時加調(diào)整圖5-5 小時減調(diào)整對分鐘進行加、減調(diào)整,如圖5

35、-6和圖5-7所示。 圖5-6 分鐘加調(diào)整圖5-7 分鐘減調(diào)整對秒進行加、減的調(diào)整,如圖5-8和圖5-9所示。 圖5-8 秒加調(diào)整圖5-9 秒減調(diào)整2走時狀態(tài)按24小時制分別顯示“時時-分分-秒秒”,有2個“-”動態(tài)顯示,時間會按實際時間以秒為最少單位變化,如圖5-10所示。 圖5-10 時鐘正常走時3.定時響鈴 在調(diào)時狀態(tài)時設(shè)定響鈴時間,然后在走時狀態(tài)中,時間達到定時時間,開始響鈴,5秒后結(jié)束。用發(fā)光二極管代替蜂鳴器,發(fā)光二極管會亮5秒熄滅,如圖5-11和圖5-12所示: 圖5-11 時鐘到時鬧鈴顯示圖5-12 5秒后鬧鈴結(jié)束5.2.2 系統(tǒng)誤差分析本次設(shè)計的單片機電子鐘系統(tǒng)中,其誤差主要來

36、源包括晶體頻率誤差,定時器溢出誤差,延遲誤差。晶體頻率產(chǎn)生震蕩,容易產(chǎn)生走時誤差;定時器溢出的時間誤差,本應(yīng)這一秒溢出,但卻在下一秒溢出,造成走時誤差;延遲時間過長或過短,都會造成與基準時間產(chǎn)生偏差,造成走時誤差。6 收獲體會這次設(shè)計中遇到了很多問題,例如:時間調(diào)整從0減1應(yīng)該等于23或者59,但是開始時總是直接就跳到22或者58了,后來明白了0先減了個1,那么應(yīng)該是對應(yīng)的值等于-1,它才能跳到23或者59。還有仿真過程中,按鍵調(diào)整狀態(tài)的時候,第一次按一下就能迅速的調(diào)整好,到第二次按時,如果按下的時間短了,就不會變化,原來是因為第一次直接執(zhí)行按鍵相關(guān)程序,而后來要執(zhí)行主程序中的所有程序,需要時

37、間,要檢測到按鍵,就需要按下時間也長一些。在本次設(shè)計中,我雖然遇到了不少麻煩,經(jīng)過反復(fù)編譯仿真才解決它們 ,但是也從中學到了許多:1. 在進行設(shè)計之前,我們首先要對我們所學的單片機有一個系統(tǒng)的了解,知道單片機片內(nèi)片外的內(nèi)容及其功能。這樣才能合理的利用它去完成我們所需要的功能。2.在開始編寫程序之前,我們要有一個清晰的思路,想好設(shè)計的流程,有哪些部分功能,怎樣去完成一個整體的電子時鐘系統(tǒng)。模塊化的設(shè)計思想在程序設(shè)計中的作用是很大的,它可以為你提供一個比較清晰的思路,并且很容易找到頭緒,不至于在編寫一個程序時感覺到無從下手。3. 在編寫程序時,我們要靜下心來,程序只有經(jīng)過反復(fù)推敲才能設(shè)計好。程序剛

38、開始編好時,一般情況下會存在一些錯誤,要我們不斷地修改,不斷的改進才能達到預(yù)期的目的。所以我們一定要有耐心??傊?,在這一次畢業(yè)設(shè)計的過程中,我受益匪淺。通過對以前所學的知識的回顧和理解,以及對畢業(yè)設(shè)計的思考和合理的書面表達,最終完成了畢業(yè)設(shè)計。這為我今后進一步深化學習,積累了不少的經(jīng)驗。撰寫論文的過程也是我們專業(yè)知識學習進一步加深的過程,在這個過程中,我學會了運用已有的專業(yè)基礎(chǔ)知識,來進行時鐘系統(tǒng)設(shè)計,分析和解決遇到的理論問題或?qū)嶋H問題,讓我的實際動手能力得到了提高。對于本次的設(shè)計,實現(xiàn)了電子時鐘的顯示,調(diào)時以及鬧鈴的功能,但是也有一些尚未完善的地方。例如:對于電子時鐘系統(tǒng)的實現(xiàn)只進行了原理上

39、的仿真,而且在電子時鐘系統(tǒng)功能的實現(xiàn)方面有所欠缺。希望以后能夠進一步的增加其他的功能,比如顯示年月日及溫度等等。總體來說:圓滿完成了任務(wù),實現(xiàn)了電子時鐘的設(shè)計。致 謝通過這一階段的努力,我的畢業(yè)論文終于完成了,我們的大學生活也即將結(jié)束了。在大學階段,我在學習上和思想上都學到了很多,進步了很多,這除了自身的努力外,與各位老師、同學和家人的關(guān)心、支持和鼓勵是分不開的。本文從選題到完成,每一步都是在我的導(dǎo)師路銀聚的指導(dǎo)下完成,傾注了導(dǎo)師的大量的心血。我們的導(dǎo)師對我們給予了極大的幫助,從選題到開題報告,從寫作提綱,到一遍又一遍地指出論文的具體問題,嚴格把關(guān),循循善誘,在此我表示衷心感謝。同時我還要感謝

40、在我學習期間給我極大關(guān)心和支持的各位老師以及關(guān)心我的同學和家人。寫畢業(yè)論文是一次再系統(tǒng)學習的過程,畢業(yè)論文的完成,同樣也意味著新的學習生活的開始。在新的生活中,我會更加努力的提升自己,不辜負老師,同學和家人的期望。參考文獻1. 賀紅娟.匯編語言程序設(shè)計教程.清華大學出版社有限公司.2009-4-1。2. 任文.孔慶彥.C語言程序設(shè)計.機械工業(yè)出版社.2009-7-1。3. 吉海彥.微機原理與接口技術(shù).機械工業(yè)出版社.2007-7-1。4. 段德功.丁瑩亮.單片機原理及應(yīng)用.經(jīng)濟科學出版社.2010-5。5. 陳濤.單片機應(yīng)用及C51程序設(shè)計.機械工業(yè)出版社.2011-1-1。6樓然苗.單片機課

41、程設(shè)計指導(dǎo).北京航空航天大學出版社,2007.7.7蘇家健.單片機原理及應(yīng)用技術(shù).高等教育出版社,2004.11.8 何立民.單片機高級教程(第一版)M.北京:北京航空航天大學出版社,20019張毅坤,陳善久,裘雪紅.單片微型計算機原理及應(yīng)用.西安電子科技大學出版,1998.91 版 .10李學海.標準80C51單片機基礎(chǔ)教程:原理篇.北京航空航天大學出版社,2006.11王建校.51系列單片機及C51程序設(shè)計.科學出版社,2002.12陳龍三.C語言控制與應(yīng)用.清華大學出版社,1999.8.13趙建領(lǐng).51系列單片機開發(fā)寶典.電子工業(yè)出版社,2007.附錄:電子時鐘程序清單:/*設(shè)定初始內(nèi)容

42、*/#include sbit kadd=P10; sbit ksub=P11; sbit K=P12; sbit K1=P13; sbit K2=P14; sbit bear=P16; unsigned char secshi=0,secge=0,minshi=0,minge=0,hourshi=0,hourge=0; unsigned int num=0,sec=0,min=0,hour=0; unsigned int sec1=25,min1=25,hour1=25; unsigned int a=0,i=0; unsigned char code table10=0 x3f,0 x06

43、,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f; void delay(unsigned int); void keyscan(); void display(); void jishi();/*主程序*/ main()TMOD=0 x01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1;ET0=1; while(1) bear=0; display(); keyscan(); while(K1=0)delay(10); while(K1=0)a+; while(a=1)jishi();

44、display();if(hour=hour1&min=min1&sec=sec1) bear=1; if(sec=sec1+5)bear=0; while(K=0)delay(10); while(K=0)a-;TR0=0;num=0;i=0; while(K2=0)delay(10);while(K2=0)a+;while(a=1)display();a-;sec1=sec;min1=min;hour1=hour; void delay(unsigned int z) unsigned int x,y; for(x=z;x0;x-) for(y=110;y0;y-);/*定時器中斷子程序*

45、/void time0() interrupt 1 num+; TH0=(65536-50000)/256; TL0=(65536-50000)%256; /* 計時程序*/void jishi() TR0=1; if(num=20) num=0; sec+; if(sec=60) sec=0; min+; if(min=60) min=0; hour+; if(hour=24) hour=0; /*顯示程序*/void display() secge=sec%10; secshi=sec/10; minge=min%10; minshi=min/10; hourge=hour%10; hou

46、rshi=hour/10; P2=0 xfe; P0=tablesecge; delay(5); P2=0 xfd; P0=tablesecshi; delay(5); P2=0 xfb; P0=0 x40; delay(5); P2=0 xf7; P0=tableminge; delay(5); P2=0 xef; P0=tableminshi; delay(5); P2=0 xdf; P0=0 x40; delay(5); P2=0 xbf; P0=tablehourge; delay(5); P2=0 x7f; P0=tablehourshi; delay(5);/*按鍵控制子程序*/v

47、oid keyscan() if(K=0) delay(10); if(K=0) i+; while(!K); if(i=1)if(kadd=0)delay(10); if(kadd=0)hour+;if(hour=24)hour=0; while(!kadd)display(); if(ksub=0)delay(10); if(ksub=0) hour-; if(hour=-1)hour=23; while(!ksub)display(); if(i=2)if(kadd=0)delay(10); if(kadd=0)min+;if(min=60)min=0; while(!kadd)disp

48、lay(); if(ksub=0)delay(10); if(ksub=0)min-; if(min=-1)min=59; while(!ksub)display(); if(i=3)if(kadd=0)delay(10); if(kadd=0)sec+;if(sec=60)sec=0; while(!kadd)display(); if(ksub=0)delay(10); if(ksub=0)sec-; if(sec=-1)sec=59; while(!ksub)display(); if(i=4)i=0; 為你提供優(yōu)秀的畢業(yè)論文參考資料,請您刪除以下內(nèi)容,O(_)O謝謝!A large g

49、roup of tea merchants on camels and horses from Northwest Chinas Shaanxi province pass through a stop on the ancient Silk Road, Gansus Zhangye city during their journey to Kazakhstan, May 5, 2015. The caravan, consisting of more than 100 camels, three horse-drawn carriages and four support vehicles,

50、 started the trip from Jingyang county in Shaanxi on Sept 19, 2014. It will pass through Gansu province and Xinjiang Uygur autonomous region, and finally arrive in Almaty, formerly known as Alma-Ata, the largest city in Kazakhstan, and Dungan in Zhambyl province. The trip will cover about 15,000 kil

51、ometers and take the caravan more than one year to complete. The caravan is expected to return to Jingyang in March 2016. Then they will come back, carrying specialty products from Kazakhstan A small art troupe founded six decades ago has grown into a household name in the Inner Mongolia autonomous

52、region. In the 1950s, Ulan Muqir Art Troupe was created by nine young musicians, who toured remote villages on horses and performed traditional Mongolian music and dances for nomadic families. The 54-year-old was born in Tongliao, in eastern Inner Mongolia and joined the troupe in 1975.He says there

53、 are 74 branch troupes across Inner Mongolia and actors give around 100 shows every year to local nomadic people. I can still recall the days when I toured with the troupe in the early 80s. We sat on the back of pickup trucks for hours. The sky was blue, and we couldnt help but sing the folk songs,

54、Nasun says. The vastness of Inner Mongolia and the lack of entertainment options for people living there, made their lives lonely. The nomadic people were very excited about our visits, Nasun recalls. We didnt have a formal stage. The audience just sat on the grass. Usually, the performances became

55、a big party with local people joining in. For him, the rewarding part about touring isnt just about sharing art with nomadic families but also about gaining inspiration for the music and dance. Ulan Muqir literally translates as red burgeon, and todays performers of the troupe still tour the regions

56、 villages and entertain nomadic families, but their fame has spread around the world. On May 16 and 17, nearly 100 singers and dancers from the troupe performed at Beijings Poly Theater. Their show, titled Ulan Muqir on the Grassland, depicted the history and development of the art troupe. Being fro

57、m the region allowed me to embrace the culture of Inner Mongolia and being a member of the troupe showed me where I belonged, Nasun, the art troupes president, who is also a renowned tenor, tells China Daily. During a tour in 1985, he went to a village and met an elderly local man, who told him a story about his fri

展開閱讀全文
溫馨提示:
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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔

相關(guān)搜索

關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!