![基于51單片機(jī)的數(shù)字時鐘的設(shè)計說明書_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/17/df078a4e-68c8-4229-8426-fcf67a8fcb40/df078a4e-68c8-4229-8426-fcf67a8fcb401.gif)
![基于51單片機(jī)的數(shù)字時鐘的設(shè)計說明書_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/17/df078a4e-68c8-4229-8426-fcf67a8fcb40/df078a4e-68c8-4229-8426-fcf67a8fcb402.gif)
![基于51單片機(jī)的數(shù)字時鐘的設(shè)計說明書_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/17/df078a4e-68c8-4229-8426-fcf67a8fcb40/df078a4e-68c8-4229-8426-fcf67a8fcb403.gif)
![基于51單片機(jī)的數(shù)字時鐘的設(shè)計說明書_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/17/df078a4e-68c8-4229-8426-fcf67a8fcb40/df078a4e-68c8-4229-8426-fcf67a8fcb404.gif)
![基于51單片機(jī)的數(shù)字時鐘的設(shè)計說明書_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/17/df078a4e-68c8-4229-8426-fcf67a8fcb40/df078a4e-68c8-4229-8426-fcf67a8fcb405.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、畢業(yè)設(shè)計基于51單片機(jī)的數(shù)字時鐘的設(shè)計摘要:現(xiàn)代生活中,對于數(shù)字電子鐘的使用情況已經(jīng)遠(yuǎn)遠(yuǎn)大于對于機(jī)械表的使用。數(shù)字時鐘不僅僅是使用方便,而且由于單片機(jī)的引入,額外增加了自動控制和鬧鐘報時等功能,十分便利。本次畢業(yè)設(shè)計,是以STC89C52芯片為核心,添加適當(dāng)外圍電路,輔以C語言,所形成的數(shù)字電子鐘。除了51單片機(jī)芯片,還主要用到了時鐘芯片DS1302和型號是1602的液晶顯示屏。關(guān)鍵詞:STC89C52;數(shù)字電子鐘;C語言。Design of Digital Clock System Based on MSC-51 SinglechipAbstract:In modern life, the
2、use of digital electronic clock has been far greater than for the use of mechanical watches. Digital Clock is not just easy to use, and because of the introduction of single-chip, additional automatic control and alarm clock timekeeping functions, is very convenient. The graduation project is based
3、STC89C52 chip as the core, adding the appropriate external circuit, supplemented by the C language, the formation of digital electronic clock. In addition to 51 single-chip, is also largely used in the clock chip DS1302 and models are 1602 LCD display.Keywords: STC89C52; digital electronic clock; C
4、language.26 / 29目錄基于51單片機(jī)的數(shù)字時鐘的設(shè)計IDesign of Digital Clock System Based on MSC-51 SinglechipII目錄III前言1第1章硬件設(shè)計方案與各部分簡述21.1單片機(jī)概述21.2 DS1302時鐘芯片概述51.3 1602顯示屏71.4 元件清單8第2章硬件電路圖設(shè)計10Protel硬件開發(fā)與介紹102.2 電路總體設(shè)計圖11第3章軟件總體設(shè)計173.1 主流程圖173.2 軟件設(shè)計分部說明18第4章調(diào)試與誤差分析204.1 程序下載與調(diào)試204.2 調(diào)試結(jié)果與誤差分析214.3 誤差分析21總結(jié)22致23參考文獻(xiàn)
5、24前言隨著當(dāng)下時代的發(fā)展,形式各樣的數(shù)字電子鐘為我們的工作學(xué)習(xí)生活帶來了極便利。眾所周知,數(shù)字集成電路技術(shù)的發(fā)展并輔以先進(jìn)的石英技術(shù),使數(shù)字鐘具有準(zhǔn)確、穩(wěn)定和攜帶便利等優(yōu)點,它還用于計時、報時與自動控制等各個領(lǐng)域。盡管目前市場上已有比較便宜實用的數(shù)字電子鐘集成電路芯片出售,但考慮到單片機(jī)的定時器功能也可以完成對數(shù)字電子鐘的設(shè)計,因此進(jìn)行數(shù)字電子鐘的設(shè)計是必要的。在這里我大學(xué)四年學(xué)到的專業(yè)知識系統(tǒng)的聯(lián)系起來用于實際,從而培養(yǎng)我設(shè)計和分析電路,寫程序、調(diào)試電路的能力。單片機(jī)具有體積小、功能強(qiáng)可靠性高、價格適當(dāng)、走時準(zhǔn)確、性能穩(wěn)定、攜帶方便等一系列優(yōu)點,不僅已成為工業(yè)測控領(lǐng)域普遍采用的智能化控制工
6、具,而且已進(jìn)入我們?nèi)藗児ぷ骱秃蜕畹母鱾€角落,極推動了各行業(yè)的技術(shù)改造和升級,應(yīng)用前景廣闊。培養(yǎng)針對課題需要,選擇和查閱有關(guān)手冊、圖表與文獻(xiàn)資料的自學(xué)能力,提高組成系統(tǒng)、編程、調(diào)試的動手能力;鞏固、加深和擴(kuò)大單片機(jī)應(yīng)用的知識面,提高綜合與靈活運用所學(xué)知識解決工業(yè)控制的能力;通過對課題設(shè)計方案的分析、選擇、比較、熟悉單片機(jī)用系統(tǒng)開發(fā)、研制的過程,軟硬件設(shè)計的方法、容與步驟。第1章 硬件設(shè)計方案與各部分簡述隨著石英晶體振蕩器的廣泛應(yīng)用和集成電路的飛速發(fā)展,數(shù)字電子鐘的精度要比平時常見的機(jī)械表精確一些,為我們的生活帶來了極大的便利。另一方面,再加上單片機(jī)技術(shù)的純熟,大大擴(kuò)展了鐘表原來的功能,可以提供
7、定時自動報警、按時自動打鈴、時間程序自動控制與各種定時電氣的自動啟用功能等。因此,研究數(shù)字電子鐘的應(yīng)用,有著非?,F(xiàn)實的意義。我這次設(shè)計的畢業(yè)論文,選取的是STC89C52單片機(jī)來作為我的核心控制部分,整個電路主要包括芯片、鍵盤、揚聲器還有顯示屏這四個部分來組成。主要通過焊接的鍵盤來調(diào)整時間,像時、分、秒還有年、月、日都可以通過鍵盤來調(diào)整,為了實現(xiàn)目的,還需要以C語言編程的幫助。整個電路比較簡單,能夠?qū)崿F(xiàn)我想要的所有功能。1.1 單片機(jī)概述(1)單片機(jī)型號:STC89C52芯片,圖 1- 1是其引腳圖。圖 1- 1STC89C52芯片引腳(2)單片機(jī)的特點:STC89C52是一種低功耗高性能CM
8、OS8位微控制器,具有 8K 字節(jié)程序存儲空間。在單芯片上,有8 位CPU 和在系統(tǒng)可編程Flash,為眾多嵌入式控制應(yīng)用系統(tǒng)提供靈活有效的解決方案。擁有512字節(jié)數(shù)據(jù)存儲空間,帶2K字節(jié)的EEPROM存儲空間,可直接使用串口下載,方便快捷。 32 位I/O 口線,看門狗定時器,置4KB EEPROM,MAX810復(fù)位電路,3個16 位定時器/計數(shù)器,4個外部中斷,一個7向量4級的中斷結(jié)構(gòu),還有一個全雙工類型的串行口。空閑模式下,CPU 停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電后進(jìn)入保護(hù)方式,RAM容保存下來后,振蕩器會被凍結(jié),單片機(jī)一切工作停止,直到下一個中斷或硬件復(fù)位
9、為止。最高運作頻率35MHz,6T/12T可選。STC89C52使用經(jīng)典的MCS-51核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能1。(3)管腳說明:VCC:供電電壓。GND:接地。P0 口:P0口是一個8位開路的漏極的雙向I/O口。以它為輸出口,每一位都能驅(qū)動8個TTL邏輯電平。當(dāng)端口寫“1”時,這時候引腳把它當(dāng)作高阻抗來輸入。在flash編程時,p0口可以用作指令字節(jié)的接收;在查驗程序的時候,可以把指令字節(jié)輸出。當(dāng)訪問數(shù)據(jù)存儲器和外部程序時,P0口也作為低8位地址/數(shù)據(jù)復(fù)用。在此模式下, 在P0的部有上拉電阻。檢驗程序時,會用到外部上拉電阻。P1 口:P1 口是一個在它部有上
10、拉電阻的8 位雙向I/O 口, 輸出緩沖器可以驅(qū)動4 個 TTL 邏輯電平。端口寫“1”時,端口被部上拉電阻所拉高,這時候它可以當(dāng)做輸入口使用。作為輸入時,被拉低的引腳由于部電阻的存在,會把電流輸出2。具體端口如下:P1.0 T2定時器/計數(shù)器,T2的外部計數(shù)輸入,時鐘輸出P1.1 T2EX定時器/計數(shù)器,T2的捕捉/方向控制和重載觸發(fā)信號P1.5 MOSI在線系統(tǒng)編程用P1.6 MISO在線系統(tǒng)編程用P1.7 SCK在線系統(tǒng)編程用P2 口:P2 口是一個在它部有上拉電阻的8 位雙向I/O 口, 輸出緩沖器可以驅(qū)動4 個 TTL 邏輯電平。在外部程序存儲器被訪問或用16位地址讀取外部的數(shù)據(jù)存儲
11、器時,P2 口送出高八位地址。在這種應(yīng)用中,P2 口使用很強(qiáng)的部上拉電阻發(fā)送1。在flash編程和檢驗時,P2口也接收高8位地址字節(jié)和很多控制信號。對P2 端口寫“1”時,這時候端口會被上拉電阻拉高,此時就作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于部電阻的原因,將輸出電流。P3 口:P3 口也是在它的部具有上拉電阻的8 位雙向I/O 口, 輸出緩沖器驅(qū)動4 個 TTL邏輯電平。當(dāng)它按輸入口使用時,對P3 端口寫“1”時,端口被部上拉電阻拉高。P3口亦作為STC89C52特殊功能使用,具體如下表所示:P3.0 RXD串行輸入口P3.1 TXD串行輸出口P3.2 INT0外中斷0P3.3
12、 INT1外中斷1P3.4 TO定時/計數(shù)器0P3.5 T1定時/計數(shù)器1P3.6 WR外部數(shù)據(jù)存儲器寫選通P3.7 RD外部數(shù)據(jù)存儲器讀選通RST:復(fù)位輸入。ALE/PROG:當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時,地址的低8位字節(jié)會被ALE輸出脈沖鎖存。通常情況下,ALE會以時鐘振蕩頻率的1/6作為標(biāo)準(zhǔn)來輸出脈沖信號,因此它能夠用來定時還有對外的輸出時鐘來用。但是有一點值得注意:每當(dāng)訪問外部數(shù)據(jù)存儲器的時候會跳過一個ALE脈沖。此外,該引腳會被微弱拉高,單片機(jī)在執(zhí)行程序時,要設(shè)置ALE令位無效。對FLASH存儲器編程期間,該引腳還用于輸入編程脈沖PROG。PSEN:程序儲存允許。外部程序存儲器
13、的讀信號可以輸出,在外部程序存儲器取指令時,PSEN在每個周期兩次有效。但是在這段時間,訪問外部數(shù)據(jù)存儲器,PSEN會跳過兩次信號。EA/VPP:外部訪問允許。想要僅僅訪問外部存儲器,EA端必須保持低電平有效。當(dāng)EA端是高電平,相應(yīng)地,CPU會訪問部存儲器。XTAL1:反向振蕩放大器的輸入與部時鐘工作電路的輸入。 XTAL2:來自反向振蕩器的輸出3。1.2 DS1302時鐘芯片概述(1)芯片說明DS1302是DALLAS公司開發(fā)的一種低耗能、高性能時鐘芯片。它有31字節(jié)的靜態(tài)RAM,并通過SPI三線接口與CPU進(jìn)行同步傳輸,能采用突發(fā)的方式一次就能傳輸數(shù)據(jù)和多個字節(jié)的時鐘信號。芯片使用雙電源供
14、電,同樣還可以用備用電源來進(jìn)行充電。它的功能可以提供秒、分、時、星期、月和年,一個月30與31天時可以自動調(diào)整,同時還有閏年補(bǔ)償?shù)墓δ?。?)引腳分配與說明DS1302外部引腳如圖 1- 2所示。圖 1- 2 DS1302引腳圖VCC1:主電源;VCC2:備份電源。當(dāng)VCC1>VCC2時,VCC1向芯片供電;當(dāng)VCC2>VCC1+0.2V時,由VCC2向芯片供電。 I/O:雙向數(shù)據(jù)線。 SCLK:用于串行時鐘輸入,能夠控制數(shù)據(jù)輸入和輸出。 CE:它有兩個功能:一是能夠控制字訪問移位寄存器的控制邏輯,二是對于單字節(jié)和多字節(jié)數(shù)據(jù)傳輸,CE端都可以為他們提供傳輸方法。此外,在輸入信號時,
15、要想使讀寫數(shù)據(jù)有效,必須保持高電平4。(3)DS1302工作原理 DS1302工作時,首先要進(jìn)行初始化,相應(yīng)的必須使復(fù)位端RST保持高電平有效,這樣才可以把寄存器中裝入地址和命令信息。在SLK的上升沿時,數(shù)據(jù)串行輸入有效,前8位指出要訪問的地址,將命令字裝入移位寄存器后,在下一個時鐘周期中,數(shù)據(jù)在讀操作和寫操作時都可以被輸出。此時時鐘脈沖個數(shù)是8位地址+8位數(shù)據(jù)類型,最多時能有248的數(shù)據(jù)。(4)DS1302字節(jié)控制圖 1- 3 字節(jié)控制DS1302控制字如圖 1- 3所示,它總是從最低位開始進(jìn)行讀寫操作的。位7是它的最高有效位,必須保證這一位是邏輯1才能使該芯片能夠運行,否則是邏輯0的話,芯
16、片無法寫入數(shù)據(jù)。當(dāng)位6是邏輯0,就可以存取日歷的時鐘數(shù)據(jù),如果是邏輯1,就會存取RAM里面的數(shù)據(jù)。位A4到A0這5位代表操作單元地址。當(dāng)位0即最低位是邏輯1時,開始進(jìn)行讀操作,否則是邏輯0的時候,就進(jìn)行寫操作。因為DS1302時鐘芯片也是本次設(shè)計核心之一,所以必須對它如何尋址進(jìn)行讀寫操作十分熟悉。DS1302可以對32個地址尋址為了提高它的尋址速度和準(zhǔn)確性,我們可以把日歷還有RAM寄存器規(guī)定成多字節(jié),方便尋址。由以上可知,位6選擇要尋址的對象是什么,而最低位來決定是讀還是寫操作。因為讀寫都是從最低位開始的,必須按順序先寫最開始的8個寄存器。但當(dāng)選擇寫RAM時,不管是不是把所有的31個字節(jié)都寫進(jìn)
17、去了,都能保證這所有的31個字節(jié)都能夠送入RAM里面。要想充分利用DS1302芯片的功能,還必須對它的具體的寄存器和控制字有所了解,部寄存器地址和容詳見表1- 1。寄存器名命令字節(jié)取值圍寄存器容寫讀76543210秒寄存器80H81H0059CH10sSEC分寄存器82H83H0059010minMIN小時寄存器84H85H0023或011212/24010A/PHRHR日期寄存器86H87H0128,29,30,310010DATEDATE月份寄存器88H89H011200010MMONTH周寄存器8AH8BH010700000DAY年寄存器8CH8DH009910YEARYEAR表1- 1
18、 DS1302部寄存器地址和容 DS1302一共有12個寄存器,這里面主要有7個寄存器是和我們所要用到的時鐘日歷有聯(lián)系的,它們都是按BCD碼的形式來存放數(shù)據(jù)的。奇數(shù)時進(jìn)行讀操作,而偶數(shù)時執(zhí)行寫操作。DS1302是可以暫停工作的,主要受寄存器的位7影響。當(dāng)位7是邏輯0的時候,DS1302才開始工作,當(dāng)它是邏輯1時,芯片會停止當(dāng)前工作。通常情況下,都是在DS1302進(jìn)入寫操作時,芯片才會停止振蕩,進(jìn)入備份模式5。1.3 1602顯示屏(1)顯示屏介紹1602顯示屏實物如圖 1- 4所示。圖 1- 4 1602顯示屏 LCD1602的顯示容量是16*2個字符,工作電壓合電流分別是5V和2mA,字符尺
19、寸是2.95*4.35mm。本次畢業(yè)設(shè)計采用的是無背光(14引腳)的LCD1602,各引腳說明如下:1腳和2腳:VSS和VDD分別接地和5V電源。3腳:用來調(diào)整顯示器的對比度,對比度在接地時最高,在接電源時最低,使用過程中接一個10K電位器可以合理地對對比度進(jìn)行調(diào)整。4腳:RS,對寄存器具有選擇功能,當(dāng)接高電平時,選擇的是數(shù)據(jù)寄存器,當(dāng)接低電平時,相應(yīng)地選擇指令寄存器。5腳:是選擇讀寫的信號端,用R/W來表示。當(dāng)接低電平時選擇寫操作,當(dāng)接高電平時選擇的是讀操作。6腳:使能端,用E表示,當(dāng)它從高電平變成低電平有效時,開始執(zhí)行命令。7到14腳:這八個引腳分別代表8個8位的雙向數(shù)據(jù)線,用D0到D7表
20、示。(2)數(shù)碼管顯示原理以共陽極為例,部結(jié)構(gòu)如圖 1- 5所示。圖 1- 5 數(shù)碼管部結(jié)構(gòu)數(shù)碼管顯示,需要驅(qū)動電路的作用,通過驅(qū)動電路,使得不同的碼段發(fā)亮,來達(dá)到效果。數(shù)碼管顯示有靜態(tài)方式和動態(tài)方式兩種: 靜態(tài)顯示:靜態(tài)顯示必須保證每一個數(shù)碼管的段選端都要接一個8位數(shù)據(jù)線,字形一旦送入,就能一直保持,當(dāng)下一個字形再輸入時才發(fā)生變化。使用靜態(tài)顯示,對CPU占用少,編程簡單,但是電路會比較復(fù)雜,操作性不高。 動態(tài)顯示:動態(tài)顯示需要把數(shù)碼管所有段選端并聯(lián),通過位選線來選擇點亮哪一段。如圖4所示有a到dp8個端,把這8個端口并聯(lián)在一條線上,在數(shù)碼管公共級接上位選通控制電路,每個端口的I/O線控制自己的
21、選通端。然后工作時,單片機(jī)會把需要選擇的數(shù)碼管的選通控制打開,沒選中的就不工作,這樣來實現(xiàn)需要得到的數(shù)字。動態(tài)顯示相比于靜態(tài)顯示,可以節(jié)省更多的I/O端口,功耗低,較為實用。1.4 元件清單元器件清單見表1- 2 元器件清單。元件名封裝標(biāo)稱值說明數(shù)量C1直插10uF電解電容1C2直插20pF1C3直插20pF1C4直插0.1uF1C5直插22uF電解電容1R直插1k、1k、510不等15B1直插蜂鳴器1V1直插8550三極管1Y1直插11.0572M晶振1Y2直插32.768k晶振1K1直插自鎖按鈕電源開關(guān)1K2到K7直插微動開關(guān)按鍵1到66U1直插STC89C52單片機(jī)主芯片1U2DIP8D
22、S1302時鐘芯片1液晶屏LCD1602無背光顯示屏1紐扣電池CR23023V1J14腳插針1J2SIP16顯示接口16腳插座1單片機(jī)插座DIP401表1- 2 元器件清單第2章 硬件電路圖設(shè)計Protel硬件開發(fā)與介紹Protel是我們國目前最流行的通用EDA軟件,它是一個整體的工作平臺,包含了電路原理圖的設(shè)計、PCB板設(shè)計、電路仿真還有PLD設(shè)計等多個模塊于一身的設(shè)計軟件,是第一個將EDA軟件設(shè)計成基于Windows系統(tǒng)下的應(yīng)用軟件。Protel的包括了許多功能,在電子電路設(shè)計領(lǐng)域占有極其重要的地位。它集成了軟件界面、仿真功能和PLD設(shè)計和信號完整性分析,在此基礎(chǔ)上Protel 99SE又
23、增加了一些新的功能,使用起來更加方便靈活。它因為具有很好的實用性,而且容易掌握,逐漸獲得廣大硬件設(shè)計人員的青睞,是目前眾多EDA設(shè)計軟件中用戶最多的產(chǎn)品之一。Altium Designer 6.0是Protel原廠Altium公司開發(fā)的一款用于板級設(shè)計的軟件。該軟件可以支持PCB集成化設(shè)計,嵌入式軟件開發(fā)和FPGA設(shè)計等多種功能。它以EDA為工作平臺,是第一款將EDA軟件設(shè)計在Windows下運行的產(chǎn)品。它的功能非常強(qiáng)大,主要包括原理圖設(shè)計,信號仿真,PLD模塊設(shè)計和完整性分析四個模塊,在我們電子電路設(shè)計行業(yè)中發(fā)揮著重大作用。(1) 原理圖設(shè)計 制作電子器件電路圖是最基本的要素,Protel軟
24、件對各種電子器件都予以收錄并說明,各自用特殊的圖形符號來表示。我們可以利用它將這些圖形符號施以必要的結(jié)點和線路連接起來得到我們需要的電路圖。(2) PCB設(shè)計板塊想要得到電子成品,僅有電路圖是不夠的,還需要實物化,PCB設(shè)計就是把基本的電路圖轉(zhuǎn)化成電路板的過程。利用該軟件可以方便對電路圖做出改動,具有很強(qiáng)的自動功能,制作出符合我們要求的電路板。(3) 信號仿真電路板設(shè)計好后,可以通過軟件進(jìn)行仿真實驗,從仿真元件庫中找到相應(yīng)元件,連接好后,加上電源,就能完成對電路的仿真,大大提高效率6。2.2 電路總體設(shè)計圖本次設(shè)計的核心部分就是單片機(jī)芯片STC89C52,用它來實現(xiàn)最主要的控制功能。然后由外部
25、電源對它供電,還需要對六鍵鍵盤操作,向芯片部傳遞我們想要實現(xiàn)的信息,這樣單片機(jī)才能接受信息,開始工作。然后芯片根據(jù)所收到的信息,將我們需要的信息再通過外部器件傳達(dá)給我們。時間信息顯示在1602顯示屏上面,當(dāng)時間走到我們設(shè)定的鬧鐘時刻時,單片機(jī)會向蜂鳴器發(fā)出指令,起到報警作用,達(dá)到我們想要的鬧鈴效果。當(dāng)所接的外部電源斷開時,DS1302時鐘芯片在掉電情況下在紐扣電池作用下可以保持繼續(xù)工作,確保走時的準(zhǔn)確性。所以電路設(shè)計的總體思路如圖 2- 1。按鍵輸 入電源供 電單片機(jī)主芯片顯示屏?xí)r鐘芯片鬧鐘電路圖 2- 1 電路設(shè)計流程電路的PCB圖見(1) 圖 2- 2。圖 2- 2 PCB設(shè)計圖電路的整體
26、布線圖如圖 2- 3。圖 2- 3電路布線圖電路實物圖如圖 2- 4。圖 2- 4 電路實物圖如上圖所示,用STC89C52作為主控芯片,然后通過DS1302來實現(xiàn)后臺計時功能,用一片紐扣電池為其供電,使得在掉電時依然保證時鐘準(zhǔn)確計時。由六鍵鍵盤來設(shè)定顯示時間與鬧鐘,通過顯示屏顯示年、月、日、時、分、秒各個信息,當(dāng)走到所定的鬧鐘時間時,由蜂鳴器報警提示,來完成一整套工作。2.3 各部分電路原理圖(1)STC89C52主芯片原理圖如圖 2- 5。圖 2- 5 主芯片設(shè)計圖在芯片外圍,是左上端復(fù)位電路,由一個電容和一個電阻構(gòu)成,利用它使電路可以恢復(fù)到初始狀態(tài)。主芯片的管腳,P00到P07與液晶屏相
27、連,左側(cè)伸出的RXD和TXD兩端,用于單片機(jī)程序的下載。整個這段電路是這個電子時鐘的核心部分。(2)DS1302時鐘芯片電路原理圖如圖 2- 6。圖 2- 6 時鐘芯片設(shè)計圖圖中BT1所示接的是一個紐扣電池,這樣可以保證在不接通外部電源情況下,時鐘依然可以后臺準(zhǔn)確走時,確保它的準(zhǔn)時性。R10到R12都是上拉電阻。整個DS1302芯片是通過RST、I/O還有SCLK三個管腳和單片機(jī)主芯片連接來實現(xiàn)功能的。(3)鬧鐘電路部分如圖 2- 7所示。圖 2- 7 鬧鐘部分設(shè)計圖 上圖是數(shù)字電子鐘里面關(guān)于鬧鐘部分的電路原理圖,最主要更能就是在到達(dá)設(shè)定時間時,蜂鳴器會報警提醒,達(dá)到鬧鐘的目的。報警燈需要和單
28、片機(jī)主芯片的管腳驅(qū)動蜂鳴器相連,受它控制。(4) 按鍵電路部分原理圖見圖 2- 8。圖 2- 8 按鍵部分設(shè)計圖 上圖是按鍵驅(qū)動電路的組成情況。當(dāng)按下按鍵時單片機(jī)通過管腳收到的是低電平,單片機(jī)主芯片是通過查詢的方式來得到按鍵驅(qū)動電路傳來的信息,作出決定。當(dāng)按鍵彈回時,發(fā)出高電平,停止工作7。第3章 軟件總體設(shè)計單片機(jī)想要實現(xiàn)我們需要的目的,僅僅有硬件不夠的,還需要軟件編程來運行。軟件的設(shè)計與實現(xiàn),同樣需要像硬件組成一樣來規(guī)劃,先從總體進(jìn)行構(gòu)造,然后一部分一部分進(jìn)行分析,使程序簡單合理,流程清晰。單片機(jī)編程方面,可以采用匯編語言的方式,也可以用C語言的方式,需要對比選擇,最后采取合適的方案。計算
29、機(jī)并不能直接識別我們輸入的指令語言,需要一種程序?qū)⑽覀兊闹噶罡淖兂捎嬎銠C(jī)能識別的機(jī)器語言,這就是匯編語言。匯編語言是直接面向計算機(jī)的低級語言,具有容易讀寫、調(diào)試和修改等優(yōu)點,可以直接訪問、控制計算機(jī)的各類硬件設(shè)備還有各個接口,占用存少,執(zhí)行速度較快。但是作為一種低級語言,它的編寫程序復(fù)雜,代碼量很大,而且通用性差,可移植性不高,所以不提倡使用匯編語言的編程方式。反觀C語言,它是一種高級語言,同時又具備了匯編語言的全部優(yōu)點,所以比較常用。C語言可以對字節(jié)還有地址進(jìn)行直接操作,而且可移植性很好。同時,C語言是一種結(jié)構(gòu)性語言,程序的各個部分可以分開,相互之間的層次十分分明,而且在編程時,可以提前定義
30、函數(shù),對定義的函數(shù)進(jìn)行調(diào)用,中間還可以使用像條件語句、循環(huán)語句、選擇語句等結(jié)構(gòu)化語句,方便了在整個編寫過程中的修改和調(diào)試。除此之外,C語言中還引入了指針,這樣可以更好地提高程序的效率,大大提高了它的使用率。綜上所述,決定在本次畢業(yè)設(shè)計中還是采用我比較熟悉的C語言編程的方式,提高效率。然后先設(shè)計整體的流程,確定總體設(shè)計方案,然后再分塊,編寫程序,最后組成合適的程序方案。3.1 主流程圖主流程圖如圖 3- 1所示。開始定時器與中斷定時器初始化是否設(shè)定參數(shù)執(zhí)行顯示程序執(zhí)行時鐘鬧鈴設(shè)定程序NY圖 3- 1 主流程圖3.2 軟件設(shè)計分部說明(1)時間調(diào)整設(shè)計說明電路板共有六個按鈕,其中有四個是用來調(diào)整時
31、間的。首先第一個是用來選擇要調(diào)整的位數(shù)的。調(diào)整時間需要一位一位來調(diào)整,這個就需要先選擇出來,并且要與其它未改動的位區(qū)分出來,所以增加閃爍功能,讓選中待調(diào)整的位閃爍,當(dāng)改動好后再移到下一位,讓下一位閃爍。閃爍的時間間隔我們可以自由設(shè)置。然后就是另外兩個按鈕,實現(xiàn)具體的時間改動功能,分別稱作加1鈕和減1鈕。選中一位后,按下加1鈕時間會往前調(diào)整,按下減1鈕時間會向后退。由于時間不同單位的進(jìn)制是不一樣的,也需要部分考慮。例如調(diào)整小時位時,當(dāng)時間加到23時,就不能再繼續(xù)加了,需要往后減,找到我們想要的數(shù)字即可。同樣的,不僅時間可以這樣改動,對于年月日的調(diào)整也一樣,直到所有的東西都改動好就可完成了8。(2
32、)時間走時與中斷設(shè)計時間的走時,進(jìn)位是按秒、分、時的順序來進(jìn)行的。中斷先看1秒到了沒有,到了秒這位就加1,不到的話就繼續(xù)檢測下一位,分位,如果到了1分鐘,該位就加1,如果到不了1分鐘,就再往下檢測下一位,就是小時位,如果到了1個小時,就把小時位加1,否則就顯示時間即可。這樣來一位一位地實現(xiàn)時、分、秒的轉(zhuǎn)換。(3)顯示與鬧鐘模塊設(shè)計 時間依次在屏幕顯示之后,芯片部會每改變一個時間就對我們所設(shè)定的鬧鐘時間進(jìn)行比較,如果還未到,會繼續(xù)走時,后臺還會繼續(xù)詢問是否到達(dá)設(shè)計的鬧鐘時間。如果到了我們設(shè)定的鬧鐘時間了,主芯片就會向蜂鳴器發(fā)出指令,讓它報警,達(dá)到目的9。第4章 調(diào)試與誤差分析4.1 程序下載與調(diào)
33、試(1)Keil uVision4簡介Keil uVision4是一款引入了窗口管理系統(tǒng)的,比較人性化的編譯環(huán)境。在里面不僅可以選擇我們所用的芯片和其它硬件元器件,還可以把我們寫好的程序下載進(jìn)來,進(jìn)行仿真調(diào)試,是一款能夠充分提高開發(fā)人員水平且方便實用的軟件。軟件使用非常簡單,就是把.c和.hex文件建立好,然后對他們進(jìn)行編譯,下載之后進(jìn)行調(diào)試就行。下載程序時,需要用到STC單片機(jī)下載軟件。單擊STC-ISP-V481來運行,得到如圖 4- 1 下載界面所示的界面。圖 4- 1 下載界面 選擇好STC89C52類型的芯片后,再打開.hex文件,單擊下載按鈕,就能順利下載。這些準(zhǔn)備都做好后,直接給
34、電路板外部供電后,就能開始運行了9。4.2 調(diào)試結(jié)果與誤差分析運行過程中,實際位選碼的輸出來自P2口,段選碼是從P0口輸出的,存儲單元部都是以二進(jìn)制數(shù)來存儲的。我們要想把顯示的數(shù)據(jù)送到P0口,就必須先把我們想要顯示的數(shù)據(jù)轉(zhuǎn)換成BCD碼后,再把轉(zhuǎn)換后的數(shù)據(jù)送到P0口段選端,這樣才能驅(qū)動1602的數(shù)碼管顯示器。時間能否準(zhǔn)確走時,還需要定時中斷程序?qū)r、分、秒進(jìn)位調(diào)整。計數(shù)器T0打開后,先從秒開始,滿一秒后進(jìn)位,夠60 秒后就為1 分鐘, 分鐘單元進(jìn)位,60 分到了后,時單元進(jìn)位,24 小時滿后,天單元進(jìn)位。每個單位進(jìn)制是不一樣的,當(dāng)我們都規(guī)劃好以后,還需要把時分秒的存儲值進(jìn)行BCD碼轉(zhuǎn)換后,才能使它們顯示在屏幕上。4.3 誤差分析數(shù)字電子鐘是精確度很高的電子產(chǎn)品,因為設(shè)計的不全面性,難免存在誤差。最容易想到的就是按鍵所帶來的時間延時。如果在程序里面設(shè)定比較合適的按鍵延長時間,可以盡量避免此類誤差。因為電子鐘由很多芯片和其它元
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 暑期教師培訓(xùn)學(xué)習(xí)計劃
- 2025年度家庭裝修石材加工及安裝服務(wù)合同范本
- 專業(yè)性合同范本
- 辦公裝飾合同范本
- 買賣攤位合同范本
- 2025年度生態(tài)農(nóng)業(yè)項目土地流轉(zhuǎn)合作合同
- 公司家具購買合同范本
- 會議營銷分成合同范本
- 關(guān)于解除兼職合同范本
- 法律盡職調(diào)查報告模板
- 胸腔積液護(hù)理查房-范本模板
- 水土保持方案中沉沙池的布設(shè)技術(shù)
- 安全生產(chǎn)技術(shù)規(guī)范 第25部分:城鎮(zhèn)天然氣經(jīng)營企業(yè)DB50-T 867.25-2021
- 現(xiàn)代企業(yè)管理 (全套完整課件)
- 走進(jìn)本土項目化設(shè)計-讀《PBL項目化學(xué)習(xí)設(shè)計》有感
- 《網(wǎng)店運營與管理》整本書電子教案全套教學(xué)教案
- 教師信息技術(shù)能力提升培訓(xùn)課件希沃的課件
- 高端公寓住宅項目營銷策劃方案(項目定位 發(fā)展建議)
- 執(zhí)業(yè)獸醫(yī)師聘用協(xié)議(合同)書
- 第1本書出體旅程journeys out of the body精教版2003版
- 2022年肝動脈化療栓塞術(shù)(TACE)
評論
0/150
提交評論