版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> ?。?lt;/b></p><p> 二 〇 一〇 年 六 月</p><p><b> 摘要</b></p><p> 數字時鐘在日常生活中最常見,應用也最廣泛。本次數字時鐘電路根據設計要求采用AT89C51單片機作為控制核心,采用DS1302來實現(xiàn)時、分、秒24小時計時,采用DS18B20來
2、實現(xiàn)溫度的測量,采用LED實現(xiàn)顯示,采用蜂鳴器實現(xiàn)報警功能。文章的核心主要是硬件設計和軟件編程兩個大的方面。硬件電路設計主要包括中央處理單元電路、時鐘電路、溫度測量電路、鍵盤掃描電路、報警電路。軟件用匯編語言及C語言來實現(xiàn),主要包括主程序、時間設置子程序、溫度測量子程序、鍵盤掃描子程序、報警電路子程序等軟件模塊。電路實現(xiàn)了顯示時間、調整時間、測量并顯示溫度、報警、鬧鐘定時等功能,達到了設計的要求和目的。并在偉福軟件上進行了仿真和調試。&
3、lt;/p><p> 關鍵詞: 數字時鐘;AT89C51;DS1302;DS18B20;LED;蜂鳴器</p><p><b> Abstract</b></p><p> Digital clock in their daily lives the most common applications and the most widely.
4、The digital clock circuit according to design requirements using AT89C51 microcontroller as the control, using DS1302 to achieve the hours, minutes, seconds, 24 hours time, using DS18B20 to achieve the temperature measur
5、ement, using LED to achieve display, using a buzzer to achieve alarm function. The core of the article is mainly hardware design and software programming. Hardware design includes a central proce</p><p> Ke
6、ywords: digital clock; AT89C51; DS1302; DS18B20; LED; buzzer</p><p><b> 目錄</b></p><p><b> 摘要2</b></p><p><b> 目錄4</b></p><p><
7、;b> 第一章 緒論1</b></p><p> 1.1 課題研究背景1</p><p> 1.2 課題研究意義2</p><p> 1.3 本文的主要內容2</p><p> 第二章 方案論證及設計4</p><p> 2.1 總體方向的選擇4</p><
8、p> 2.1.1 基礎FPGA的多功能數字時鐘的設計4</p><p> 2.1.2 基于VHDL的多功能數字時鐘的設計4</p><p> 2.1.3 基于 單片機的多功能數字時鐘的設計4</p><p> 2.2 控制芯片及數字時鐘芯片的選擇5</p><p> 2.2.1 AT89S51及DS12887芯片
9、5</p><p> 2.2.2 AT89C51及DS1302芯片5</p><p> 2.3 溫度測量芯片的選擇7</p><p> 2.4 顯示部分的選擇8</p><p> 2.4.1 靜態(tài)顯示8</p><p> 2.4.2 動態(tài)顯示8</p><p> 2.5
10、方案小結9</p><p> 第三章 核心芯片簡介10</p><p> 3.1 AT89C51簡介10</p><p> 3.2 DS1302簡介14</p><p> 3.2.1 DS1302引腳功能與內部結構14</p><p> 3.2.2 DS1302的控制字15</p
11、><p> 3.2.3 DS1302的復位引腳16</p><p> 3.2.4 DS1302的數據輸入輸出16</p><p> 3.2.5 DS1302的寄存器16</p><p> 3.3 DS18B20簡介18</p><p> 3.3.1 DS18B20特性18</p>
12、<p> 3.3.2 DS18B20引腳排列19</p><p> 3.3.3 詳細說明20</p><p> 第四章 系統(tǒng)硬件設計25</p><p> 4.1 硬件主要電路設計25</p><p> 4.2 時鐘電路的設計26</p><p> 4.3 溫度測量電路的設計27
13、</p><p> 4.4 鍵盤掃描電路的設計28</p><p> 4.5 顯示電路的設計29</p><p> 4.6 報警電路設計30</p><p> 4.7 AT89C51復位電路,時鐘電路31</p><p> 4.8 單片機系統(tǒng)電路圖32</p><p> 第
14、五章 系統(tǒng)軟件設計33</p><p><b> 結論34</b></p><p><b> 參考文獻35</b></p><p><b> 謝辭36</b></p><p><b> 第一章 緒論</b></p><p
15、> 計算機的產生加快了人類改造世界的步伐,但是它畢竟體積大。單片機在這種情況下誕生了。截止今日,單片機應用技術飛速發(fā)展,縱觀我們現(xiàn)在生活的各個領域,從導彈的導航裝置,到飛機上各種儀表的控制,從計算機的網絡通訊與數據傳輸,到工業(yè)自動化過程的實時控制和數據處理,以及我們生活中廣泛使用的各種智能IC卡、電子寵物等,這些都離不開單片機。 單片計算機即單片微型計算機。(Single-Chip Microcomputer ),是集
16、CPU ,RAM ,ROM ,定時,計數和多種接口于一體的微控制器。它體積小,成本低,功能強,廣泛應用于智能產業(yè)和工業(yè)自動化上。而51系列單片機是各單片機中最為典型和最有代表性的一種。這次畢業(yè)設計通過對它的學習,應用,從而達到學習、設計、開發(fā)軟、硬的能力。 本文通過對一個基于單片機的能實現(xiàn)時間,鬧鐘,測量溫度,報警等功能的多功能數字時鐘的設計學習,詳細介紹了單片機應用中的數據轉換顯示,液晶顯示原理。從而達到學習、了解單片機相關
17、指令在各方面的應用。系統(tǒng)由AT89C51、DS1302時鐘芯片、DS18B20、8位數碼管、鍵盤等部分構成,能進行時、分、秒的顯示,</p><p> 1.1 課題研究背景</p><p> 人類的生活和工作均離不開時鐘。從古代的滴漏更鼓到近代的機械鐘,從電子表到目前的數字時鐘,為了準確的測量和記錄時間,人們一直在努力改進著計時工具。鐘表的數字化,大力推動了計時的精確性和可靠性。在單片
18、機構成的裝置中,數字時鐘是必不可少的部件。它的用途十分廣泛,只要有計時的存在,便要用到數字時鐘的原理及結構;同時在日期中,它以其小巧,價格低廉,走時精度高,使用方便,功能多,便于集成化而受廣大消費的喜愛。隨著人類科技文明的發(fā)展,人們對于時鐘的要求在不斷地提高。時鐘已不僅僅被看成一種用來顯示時間的工具,在很多實際應用中它還需要能夠實現(xiàn)更多其它的功能。高精度、多功能、小體積、低功耗,是現(xiàn)代時鐘發(fā)展的趨勢。在這種趨勢下,時鐘的數字化、多功能化
19、已經成為現(xiàn)代時鐘生產研究的主導設計方向?,F(xiàn)在是一個知識爆炸的新時代。新產品、新技術層出不窮,電子技術的發(fā)展更是日新月異??梢院敛豢鋸埖恼f,電子技術的應用無處不在,電子技術正在不斷地改變我們的生活,改變著我們的世界。在這快速發(fā)展的年代,時間對人們來說是越來越寶貴,在快節(jié)奏的生活時,人們往往忘記了時間,一旦遇到重要的事情而忘記了時間,這將會帶來很大的損失。因此我們需</p><p> 近些年,隨著科技的發(fā)展和社會的
20、進步,人們對數字鐘的要求也越來越高,傳統(tǒng)的時鐘已不能滿足人們的需求。多功能數字鐘不管在性能還是在樣式上都發(fā)生了質的變化,有電子鬧鐘、數字鬧鐘等等。單片機在多功能數字鐘中的應用已是非常普遍的,人們對數字鐘的功能及工作順序都非常熟悉。但是卻很少知道它的內部結構以及工作原理。由單片機作為數字鐘的核心控制器,可以通過它的時鐘信號進行計時實現(xiàn)計時功能,將其時間數據經單片機輸出,利用顯示器顯示出來。通過鍵盤可以進行定時、校時功能。輸出設備顯示器可以
21、用液晶顯示技術和數碼管顯示技術。</p><p> 1.2 課題研究意義</p><p> 基于MCS-51單片機的數字時鐘系統(tǒng)具有顯示準確、直觀、易于調整等特點。 單片機自誕生以來給全世界人類的生活和工作起到了劇烈的變化,而MCS-51單片機是我國使用最早、最易掌握和應用的一款單片機。通過該系統(tǒng)的設計,對單片機的原理和功能有個較系統(tǒng)和全面的掌握,初步學習到有關工程設計的方法和思路。這
22、樣以后的就業(yè)面會更加寬廣,也可以滿足當今社會對單片機開發(fā)人才的大量需。 </p><p> 縱觀傳統(tǒng)的電路設計,大部分是采用分立元件進行設計,既復雜成本又高。隨著集成化的發(fā)展,現(xiàn)在系統(tǒng)的設計都是在模塊化的基礎上設計系統(tǒng)的。</p><p> 本課題是基于智能化和模塊化的前提下設計數字時鐘的,通過對設計目標的分析,分立出各個模塊,然后根據各個模塊的功能,選擇適當的芯片進行設計的。<
23、/p><p> 本課題的研究,對智能化、模塊化設計具有較強的推廣應用價值。</p><p> 1.3 本文的主要內容</p><p> 本文的主要內容是利用51單片機設計一個數字時鐘系統(tǒng),使其實現(xiàn)以下功能:</p><p><b> 1.數字顯示</b></p><p> 利用八段數碼管實現(xiàn)
24、世界的數字化顯示,顯示包括時、分、秒、星期、年、月、日、溫度以及鬧鐘定時時間。</p><p><b> 2.鬧鐘功能</b></p><p> 能夠實現(xiàn)預定時間的設定,到時報警提醒,手動終止報警和無人應答自動終止報警。</p><p><b> 3.溫度測量功能</b></p><p>
25、能夠實現(xiàn)環(huán)境溫度的測量且顯示。溫度測量包括單路溫度測量和多路溫度測量。</p><p> 第二章 方案論證及設計 </p><p> 2.1 總體方向的選擇</p><p> 2.1.1 基礎FPGA的多功能數字時鐘的設計</p><p> 基于FPGA的數字時鐘設計方法:DCM(數字時鐘管理器)。DCM使用完全數字反饋系統(tǒng)確保多個時
26、鐘同步,使用完全數字延線技術可以精確控制時鐘的頻率和相位。用戶可以編程控制時鐘任意倍率和分頻及任意相位移動,使用非常方便可靠。</p><p> 缺點:設計較為復雜,成本高,無法實現(xiàn)溫度測量功能</p><p> 2.1.2 基于VHDL的多功能數字時鐘的設計</p><p> 利用VHDL硬件描述語言設計的多功能數字時鐘的思路,在MAX+PLUSⅡK開發(fā)環(huán)境
27、中編譯和仿真了所設計的程序,并在可編程邏輯器上下載驗證。</p><p> 缺點:結構簡單,實現(xiàn)功能不全面</p><p> 2.1.3 基于 單片機的多功能數字時鐘的設計</p><p> 基于MCS-51單片機的數字時鐘系統(tǒng)具有顯示準確、直觀、易于調整等特點。系統(tǒng)的設計是在模塊化的基礎上設計系統(tǒng)的?;谥悄芑湍K化的前提下設計數字時鐘的,通過對設計目標的
28、分析,分立出各個模塊,然后根據各個模塊的功能,選擇適當的芯片進行設計的。對智能化、模塊化設計具有較強的推廣應用價值。</p><p> 通過以上三種設計方案的比較,我們可以看到,設計方案三綜合性能良好。所以選用第三種設計方案</p><p> 2.2 控制芯片及數字時鐘芯片的選擇</p><p> 2.2.1 AT89S51及DS12887芯片</p
29、><p> 使用并行接口時鐘芯片DS12887設計時鐘電路。該設計方案用AT89S51主控,利用并行時鐘芯片DS12887為核心計時芯片,組成數字時鐘電路。該電路能夠準確計時,還附加許多其它功能,在掉電時能保存用戶設置參數和故障狀態(tài)參數等重要參數。設計電路圖如下</p><p> 圖2.1 S12887與CPU接口電路</p><p> 該設計雖然能完成所要求的
30、任務,綜合性能也較好,但其并行接口方式占用大量接口資源,給其它設計帶來諸多不便。</p><p> 2.2.2 AT89C51及DS1302芯片</p><p> 使用串行接口時鐘芯片DS1302設計時鐘電路。該設計方案以單片機AT89C51為主控芯片,以串行時鐘芯片DS1302為核心計時芯片,組成數字時鐘電路。該電路不但能準確地計時,而且,其三線接口可以節(jié)省接口資源,在斷電后不丟失
31、時間和數據信息。該設計方案的接口電路如圖所示</p><p> 圖2.2 DS1302與C51的接口電路</p><p> 通過以上兩種設計方案的比較,我們可以看到,設計方案二接口簡單,計時可靠,綜合性能良好。所以選用第二種設計方案。</p><p> 2.3 溫度測量芯片的選擇</p><p> DS18B20是美國DALLAS
32、公司生產的單線數字溫度傳感器芯片,具有結構簡單、體積小、功耗低、抗干擾能力強、使用簡單等優(yōu)點。它的ROM中存有其芯片的唯一標識碼,即任意兩個DS18B20的標識碼是不同的,特別適合于微處理芯片構成多點溫度測控系統(tǒng)。它支持“一線總線”接口,使用戶可以輕松地組建傳感器網絡。其內部采用在板溫度測量專利技術,測量范圍為-55~+125℃,精度為0.5℃。DS18B20內部結構主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的穩(wěn)定報警觸發(fā)器
33、TH和TL、配置寄存器。</p><p> 該芯片非常適合本設計,予以采用。</p><p> 2.4 顯示部分的選擇</p><p> 用單片機驅動LED數碼管顯示有很多方法,按顯示方式分有靜態(tài)顯示和動態(tài)顯示。</p><p> 2.4.1 靜態(tài)顯示</p><p> 靜態(tài)顯示就是顯示驅動電路具有輸出鎖存功
34、能,單片機將所要顯示的數據送出去后,數碼管始終顯示該數據(不變),CPU不再控制LED。到下一次顯示時,再傳送一次新的顯示數據。</p><p> 靜態(tài)顯示的接口電路采用一個并行口接一個數碼管,數碼管的公共端按共陰極或共陽極分別接地或接VCC。這種接法,每個數碼管都要單獨占用一個并行I/O口,以便單片機傳送字形碼到數碼管控制數碼管的顯示。顯然其缺點就是當顯示位數多時,占用I/O口過多。</p>&
35、lt;p> 為了解決靜態(tài)顯示I/O口占用過多的問題,可采用串行接口擴展LED數碼管的技術。靜態(tài)顯示方式的優(yōu)點是顯示的數據穩(wěn)定,無閃爍,占用CPU時間少。其缺點是由于數碼管始終發(fā)光,功耗比較大。</p><p> 2.4.2 動態(tài)顯示</p><p> 動態(tài)掃描用分時的方法輪流控制每個顯示器的COM端,使每個顯示器輪流電亮。在輪流點亮過程中,每位顯示器的點亮時間極為短暫,但由于人
36、的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應,給人的印象就是一組穩(wěn)定的顯示數據。動態(tài)驅動一般用于多位LED數碼管顯示,主要是節(jié)省驅動管腳,減少器件</p><p> 通過以上兩種設計方案的比較,我們可以看到,設計方案二可靠,綜合性能更好。所以選用第二種設計方案。</p><p><b> 2.5 方案小結</b></p><p> 通過上面的方案
37、選擇,我使用串行接口時鐘芯片DS1302設計時鐘電路,使用DS18B20設計溫度測量電路。該設計的硬件電路由主控部分(單片機AT89S51)、計時部分(實時時鐘芯片DS1302)、測量溫度部分(DS18B20)顯示部分(動態(tài)顯示)、電源部分幾個部分組成。各部分之間相互協(xié)作,構成一個統(tǒng)一的有機整體,實現(xiàn)設計所需求的功能。</p><p> 第三章 核心芯片簡介</p><p> 3.1
38、 AT89C51簡介</p><p> AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機。AT89C2051是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲器的單片機。單片機的可擦除只讀存儲器可以反復擦除100次。該器件采用ATMEL高密度非易失存儲器
39、制造技術制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。外形及引腳排列如圖所示主要特性:</p><p> ?與MCS-51 兼容 </p><p> ?4K字節(jié)可編程閃爍存儲器
40、 </p><p> ?壽命:1000寫/擦循環(huán)</p><p> ?數據保留時間:10年</p><p> ?全靜態(tài)工作:0Hz-24MHz</p><p> ?三級程序存儲器鎖定</p><p> ?128×8位內部RAM</p><p> ?32可編程I/O線<
41、/p><p> ?兩個16位定時器/計數器</p><p><b> ?5個中斷源 </b></p><p><b> ?可編程串行通道</b></p><p> ?低功耗的閑置和掉電模式</p><p> ?片內振蕩器和時鐘電路</p><p>
42、;<b> 管腳說明:</b></p><p><b> VCC:供電電壓。</b></p><p><b> GND:接地。</b></p><p> P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數
43、據存儲器,它可以被定義為數據/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。</p><p> P1口:P1口是一個內部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內部上拉的緣故。在FLASH編程和校驗時,P1口作為第
44、八位地址接收。 </p><p> P2口:P2口為一個內部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數據存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內部上拉優(yōu)勢,當對外部八位地址數
45、據存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。</p><p> P3口:P3口管腳是8個帶內部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。</p><p> P3口也可作為A
46、T89C51的一些特殊功能口,如下所示:</p><p><b> 口管腳 備選功能</b></p><p> P3.0 RXD(串行輸入口)</p><p> P3.1 TXD(串行輸出口)</p><p> P3.2 /INT0(外部中斷0)</p><p> P3.3 /INT1(
47、外部中斷1)</p><p> P3.4 T0(記時器0外部輸入</p><p> P3.5 T1(記時器1外部輸入)</p><p> P3.6 /WR(外部數據存儲器寫選通)</p><p> P3.7 /RD(外部數據存儲器讀選通)</p><p> P3口同時為閃爍編程和編程校驗接收一些控制信號。&l
48、t;/p><p> RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。</p><p> ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作
49、外部數據存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。</p><p> /PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取值期間,每個機器周期兩次/PSEN有效。但在訪問外部數據存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。</
50、p><p> /EA/VPP:當/EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內部程序存儲器。注意加密方式1時,/EA將內部鎖定為RESET;當/EA端保持高電平時,此間內部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。</p><p> XTAL1:反向振蕩放大器的輸入及內部時鐘工作電路的輸入。</p>&l
51、t;p> XTAL2:來自反向振蕩器的輸出。</p><p><b> 振蕩器特性:</b></p><p> XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅動器件,XTAL2應不接。有余輸入至內部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須
52、保證脈沖的高低電平要求的寬度。</p><p> 3.2 DS1302簡介</p><p> DS1302 是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時鐘芯片,它可以對年、月、日、周日、時、分、秒進行計時,且具有閏年補償功能,工作電壓寬達2.5~5.5V。時鐘可工作在24小時格式或12小時(AM/PM)格式。 DS1302與單片機的接口使用同步串行通信,僅用3條線
53、與之相連接??刹捎靡淮蝹魉鸵粋€字節(jié)或突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數據。DS1302內部有一個31×8的用于臨時性存放數據的RAM寄存器。DS1302是DS1202的升級產品,與DS1202兼容,但增加了主電源/后背電源雙電源引腳,同時提供了對后背電源進行涓細電流充電的能力。</p><p> 3.2.1 DS1302引腳功能與內部結構</p><p> DS
54、1302的引腳功能如表1所示,外形及內部結構如圖3.1所示:</p><p> 表3.1 DS1302引腳功能表</p><p> 圖3.1 DS1302管腳圖及內部結構圖</p><p> 3.2.2 DS1302的控制字</p><p> DS1302的控制字節(jié)如圖3.2所示:</p><p>
55、7 6 5 4 3 2 1 0</p><p> 圖3.2 DS1302控制字節(jié)的含義</p><p> 控制字節(jié)的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數據寫入到DS1302中。位6如果為0,則表示存取日歷時鐘數據,為1表示存取RAM數據;位5至位1指示操作單元的地址;最低有效位(位0)如為0
56、表示要進行寫操作,為1表示進行讀操作,控制字節(jié)總是從最低位開始輸出。</p><p> 3.2.3 DS1302的復位引腳</p><p> 通過把輸入驅動置高電平來啟動所有的數據傳送。 輸入有兩種功能:首先,接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,提供了終止單字節(jié)或多字節(jié)數據的傳送手段。當為高電平時,所有的數據傳送被初始化,允許對DS1302進行操作。如果在傳送過程
57、中置為低電平,則會終止此次數據傳送,并且I/O引腳變?yōu)楦咦钁B(tài)。上電運行時,在Vcc≥2.5V之前,必須保持低電平。只有在SCLK為低電平時,才能將RST置為高電平。</p><p> 3.2.4 DS1302的數據輸入輸出</p><p> 在控制指令字輸入后的下一個SCLK時鐘的上升沿時數據被寫入DS1302,數據輸入從低位即位0開始。同樣,在8位的控制指令字后的下一個SCLK脈沖
58、的下降沿讀出DS1302數據,讀出數據時從低位0位至高位7,數據讀寫時序如下圖所示:</p><p> 圖3.3 數據讀寫時序</p><p> 3.2.5 DS1302的寄存器</p><p> DS1302共有12個寄存器,其中有7個寄存器與日歷、時鐘相關,存放的數據位為BCD碼形式。其日歷、時間寄存器及其控制字見表2。此外,DS1302還有年份寄存器、
59、控制寄存器、充電寄存器、時鐘突發(fā)寄存器及RAM相關的寄存器等。時鐘突發(fā)寄存器分為兩類,一類是單個RAM單元,共31個,每個單元組態(tài)為一個8位的字節(jié),其命令控制字尾COH—FDH,其中奇數為讀操作,偶數為寫操作;再一類為突發(fā)方式下得RAM寄存器,次方式可一次性讀寫所有的RAM的31個字節(jié),命令控制字尾FEH(寫)、FFH(讀)。</p><p> 表3.2 DS1302的日歷、時鐘寄存器及其控制字</p&
60、gt;<p> 3.3 DS18B20簡介</p><p> DS1820 數字溫度計提供 9 位溫度讀數,指示器件的溫度。</p><p> 信息經過單線接口送入 DS1820或從DS1820送出,因此從中央處理器到DS1820僅需連接一條線(和地)。讀、寫和完成溫度變換所需的電源可以由數據線本身提供,而不需要外部電源。因為每一個DS1820 有唯一的系列號(sil
61、icon serial number),因此多個DS1820可以存在于同一條單線總線上。這允許在許多不同的地方放置溫度靈敏器件,此特性的應用范圍包括 HVAC環(huán)境控制,建筑物、設備或機械內的溫度檢測,以及過程監(jiān)視和控制中的溫度檢測。</p><p> 3.3.1 DS18B20特性</p><p> ? 獨特的單線接口,只需1個接口引腳即可通信</p><p&g
62、t; ? 多點(multidrop)能力使分布式溫度檢測應用得以簡化</p><p><b> ? 不需要外部元件</b></p><p><b> ? 可用數據線供電</b></p><p><b> ? 不需備份電源</b></p><p> ? 測量范圍從-55
63、 至+125,增量值為 0.5</p><p> ? 以9位數字值方式讀出溫度</p><p> ? 在1秒典型值內把溫度變換為數字</p><p> ? 用戶可定義的非易失性的溫度告警設置</p><p> ? 告警搜索命令識別和尋址溫度在編定的極限之外的器件(溫度告警情況)</p><p> ? 應用
64、范圍包括恒溫控制,工業(yè)系統(tǒng),消費類產品,溫度計或任何熱敏系統(tǒng)</p><p> 3.3.2 DS18B20引腳排列</p><p><b> 圖3.4 引腳說明</b></p><p><b> GND 地</b></p><p> DQ 數字輸入輸出</p>
65、<p> VDD 可選的 VDD</p><p> NC 空引腳</p><p> DNC 不連接</p><p> 表3.3 詳細的管腳說明</p><p> 3.3.3 詳細說明</p><p><b> ? 綜述 </b></p&g
66、t;<p> 圖3.5的方框圖表示 DS1820的主要部件DS1820有三個主要的數據部件164 位激光 lasered,ROM;2溫度靈敏元件和3非易失性溫度告警觸發(fā)器TH和TL器件從單線的通信線取得其電源,在信號線為高電平的時間周期內把能量貯存在內部的電容器中。在單信號線為低電平的時間期內,斷開此電源直到信號線變?yōu)楦唠娖街匦陆由霞纳娙蓦娫礊橹埂W鳛榱硪环N可供選擇的方法,DS1820也可用外部5V電源供電。</
67、p><p> 圖3.5 DS18B20方框圖</p><p> 與DS1820的通信經過一個單線接口,在單線接口情況下,在ROM操作未定建立之前不能使用,存貯器和控制操作主機必須首先提供五種ROM操作命令之一: 1 Read ROM(讀ROM);2 Match ROM(符合 ROM);3 Search ROM(搜索 ROM);4 Skip ROM(跳過 ROM); 5 Alarm Sea
68、rch(告警搜索)。這些命令對每一器件的64位激光ROM部分進行操作。如果在單線上有許多器件,那么可以挑選出一個特定的器件并給總線上的主機指示存在多少器件及其類型。在成功地執(zhí)行了ROM 操作序列之后可使用存貯器和控制操作,然后主機可以提供六種存貯器和控制操作命令之一。一個控制操作命令指示DS1820完成溫度測量,該測量的結果將放入DS1820的高速暫存便箋式存貯器Scratchpad memory,通過發(fā)出讀暫存存儲器內容的存儲器操作命
69、令可以讀出此結果。每一溫度告警觸發(fā)器TH和TL構成一個字節(jié)的EEPROM,如果不對DS1820施加告警搜索命令,這些寄存器可用作通用用戶存儲器,使用存儲器操作命令可以寫TH和TL對這些寄存器的讀訪問通過便箋存儲器,所有數據均以最低有效</p><p> ? 寄生電源(parasite power)</p><p> 方框圖(圖 3.5)示出寄生電源電路當I/O或VDD引腳為高電平時,這
70、個電路便取得電源。只要符合指定的定時和電壓要求I/O將提供足夠的功率標題為單總線系統(tǒng)一節(jié),寄生電源的優(yōu)點是雙重的1利用此引腳遠程溫度檢測,無需本地電源2缺少正常電源條件下也可以讀ROM,為了使DS1820能完成準確的溫度變換,當溫度變換發(fā)生時,I/O線上必須提供足夠的功率,因為DS1820的工作電流高達1mA,5K的上拉電阻將使I/O線沒有足夠的驅動能力。如果幾個DS18B20</p><p> 在同一條I/
71、O線上而且企圖同時變換那么這一問題將變得特別尖銳有兩種方法確保DS1820在其有效變換期內得到足夠的電源電流。第一種方法是發(fā)生溫度變換時,在I/O線上提供一強的上拉,如圖3.6所示,通過使用一個MOSFET把I/O 線直接拉到電源可達到這一點。當使用寄生電源方式時 VDD引腳必須連接到地向 DS1820供電的另外一種方法是通過使用連接到 VDD引腳的外部電源,如圖3.7所示,這種方法的優(yōu)點是在I/O線上不要求強的上拉,總線上主機不需向上
72、連接便在溫度變換期間使線保持高電平。這就允許在變換時間內其它數據在單線上傳送。此外,在單線總線上可以放置任何數目的DS1820,而且如果它們都使用外部電源,那么通過發(fā)出跳過Skip ROM命令和接著發(fā)出變換ConvertT命令可以同時完成溫度變換。注意只要外部電源處于工作狀態(tài)GND地引腳不可懸空。</p><p> 圖3.6 強上拉在溫度變換期內向 DS1820供電</p><p>
73、; 在總線上主機不知道總線上DS1820是寄生電源供電還是外部 VDD供電的情況下在DS1820內采取了措施來通知采用的供電方案??偩€上主機通過發(fā)出跳過Skip ROM的操作約定,然后發(fā)出讀電源命令,可以決定是否有需要強上拉的 DS1820,在總線上在此命令發(fā)出后主機接著發(fā)出讀時間片,如果是寄生供電 DS1820 將在單線總線上送回0。如果由 VDD引腳供電,它將送回 1,如果主機接收到一個0,它知道它必須在溫度變換期間在I/O線上供
74、一個強的上拉。</p><p><b> ? 測量溫度</b></p><p> DS1820 通過使用在板on-board溫度測量專利技術來測量溫度,溫度測量電路的方框圖見圖3.7所示:</p><p> 圖 3.7 使用 VDD提供溫度變換所需電流</p><p> 圖3.8 溫度測量電路</p>
75、;<p> DS1820 通過門開通期間內低溫度系數振蕩器經歷的時鐘周期個數計數來測量溫度,而門開通期由高溫度系數振蕩器決定計數器予置對應于-55的基數,如果在門開通期結束前計數器達到零,那么溫度寄存器它也被予置到-55的數值將增量指示溫度高于-55;同時計數器用鈄率累加器電路所決定的值進行予置,為了對遵循拋物線規(guī)律的振蕩器溫度特性進行補償,這種電路是必需的。時鐘再次使計數器計值至它達到零,如果門開通時間仍未結束那么此
76、過程再次重復。</p><p> 鈄率累加器用于補償振蕩器溫度特性的非線性,以產生高分辯率的溫度測量。通過改變溫度每升高一度,計數器必須經歷的計數個數來實行補償。因此為了獲得所需的分辯率,計數器的數值以及在給定溫度處每一攝氏度的計數個數(鈄率累加器的值)二者都必須知道。</p><p> 此計算在DS1820內部完成以提供0.5的分辯率溫度讀數,以16位符號擴展的二進制補碼讀數形式提
77、供。表3.4說明輸出數據對測量溫度的關系數據在單線接口上串行發(fā)送DS1820,可以以0.5的增量值在0.5至+125的范圍內測量溫度。對于應用華氏溫度的場合必須使用查找表或變換系數。</p><p> 注意,在DS1820中溫度是以1/2LSB(最低有效位)形式表示時產生以下9位格式:</p><p> MSB(最高有效位) (最低有效位) LSB&
78、lt;/p><p> =-25℃ </p><p> 最高有效符號位被復制到存儲器內兩字節(jié)的溫度寄存器中較高MSB的所有位 這種符號擴展產生了如表3.4所示的16位溫度讀數。</p><p> 以下的過程可以獲得較高的分辯率。首先,讀溫度并從讀得的值截去0.5位(最低有效位),這個值便是(TEMP_READ),然后可以讀留在計數器內的值
79、。此值是門開通期停止之后計數剩余,所需的最后一個數值是在該溫度處每一攝氏度的計數個數(COUNT_PER_C) ,于是用戶可以使用下式計算實際溫度:</p><p> 表3.4 溫度/數據關系</p><p> 第四章 系統(tǒng)硬件設計</p><p> 4.1 硬件主要電路設計</p><p> 本系統(tǒng)設計的硬件電路由主控部分(AT89
80、C51)、計時部分(DS1302)、測溫部分(DS18B20)、顯示部分(八段數碼管)、按鍵部分(開關按鈕)、報警部分(蜂鳴器)6個部分組成。各部分之間相互協(xié)作,構成一個統(tǒng)一的有機整體,實現(xiàn)多功能數字時鐘的功能。各部分的硬件電路設計如下。設計總電路圖見附錄一。</p><p> 圖4.1 總體功能框圖</p><p> 4.2 時鐘電路的設計</p><p>
81、 時鐘芯片DS1302與單片機AT89C51的接口是由3條線來完成的,單片機AT89C51的P1.6與時鐘芯片的數據傳輸端相連,P1.7用來作為DS1302輸入時鐘SCLK控制端,P1.5控制DS1302的復位輸入端。DS1302接標準32.768KHz石英晶振。DS1302與單片機的接口電路如圖所示:</p><p> 4.3 溫度測量電路的設計</p><p> DS18B20是美
82、國DALLAS公司生產的單線數字溫度傳感器芯片,具有結構簡單、體積小、功耗低、抗干擾能力強、使用簡單等優(yōu)點。它的ROM中存有其芯片的唯一標識碼,即任意兩個DS18B20的標識碼是不同的,特別適合于微處理芯片構成多點溫度測控系統(tǒng)。它支持“一線總線”接口,使用戶可以輕松地組建傳感器網絡。其內部采用在板溫度測量專利技術,測量范圍為-55~+125℃,精度為0.5℃。DS18B20內部結構主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的
83、穩(wěn)定報警觸發(fā)器TH和TL、配置寄存器。DS18B20與單片機的接口電路如圖所示: </p><p> 4.4 鍵盤掃描電路的設計</p><p> 4.5 顯示電路的設計</p><p> 采用共陽極數碼管,采用8位串入并出74HC164移位寄存器驅動數碼管,如下圖所示,它的每一個輸出引腳具有20mA的驅動能力。對于小型LED數碼管,還有串聯(lián)200~360的
84、限流電阻。其電路圖如下所示:</p><p> 4.6 報警電路設計</p><p> 4.7 AT89C51復位電路,時鐘電路</p><p> 4.8 單片機系統(tǒng)電路圖</p><p> 前面介紹了系統(tǒng)的各單元的電路設計,下面從總體上設計課題的硬件,其電路圖如附錄所示。</p><p> 第五章 系統(tǒng)軟件
85、設計</p><p> 本設計,程序采用匯編語言進行設計。程序中主要有以下幾個主要子程序:DS1302初始化、讀寫程序,DS18B20初始化、讀寫程序,數碼管顯示程序。程序清單見附錄。</p><p><b> 結論</b></p><p> 本設計利用單片機AT89C51控制串行實時時鐘芯片DS1302構成數字時鐘電路,實現(xiàn)計時功能。數
86、字時鐘電路使用簡單的三線接口,為單片機節(jié)省大量的接口資源,時鐘芯片DS1302帶有后備電池,具備對后背電源進行涓細電流充電的能力,保證電路斷電后仍保存時間和數據信息,這些優(yōu)點解決了目前常用實時時鐘占用單片機資源多以及計時不可靠等缺點。</p><p> 本設計利用AT89C51控制單線數字溫度傳感器芯片DS18B20構成溫度測量電路,實現(xiàn)溫度的測量。該電路使用一線接口,為單片機節(jié)省大量的接口資源,DS18B20
87、可用數據線充電,不需要備份電源。</p><p> 該時鐘功能強大,性能優(yōu)越,能為很多領域,特別是對時鐘工作的精確性和可靠性有較高要求的場合,提供較好的實時時鐘。但是,由于DS1302易受環(huán)境影響,會使該電路出現(xiàn)時鐘精度不高、時鐘混亂等問題,DS18B20測量溫度不夠精確,這些問題還有待繼續(xù)研究和改進。</p><p><b> 參考文獻</b></p>
88、;<p> [1] 宋克柱.基于FPGA的數字時鐘設計.核電子學與探測技術.2008年28卷(第5期) </p><p> [2] 樊永寧.張曉麗.基于VHDL的多功能數字鐘的設計.工礦自動化.2006年第三期 </p><p> [3] 張元良.王建軍.智能儀表開發(fā)技術.北京市.機械工業(yè)出版社.2009年 </p><p> [4] 唐精隆
89、.基于MCS-51單片機的數字時鐘系統(tǒng)設計.西安工業(yè)大學畢業(yè)論文.2009年 </p><p> [5] AT89C51中文資料</p><p> [6] DS1320中文資料</p><p> [7] DS18B20中文資料</p><p> [8] 王勝男.張?。畯堉緢裕喙δ軘底謺r鐘設計.中國電子商務.2009年8月</p
90、><p> [9] 盛蒙蒙. 葛亦斌. 邱燁.馬棟.基于單片機實現(xiàn)多功能數字鐘的系統(tǒng)設計.電子科學. 009年</p><p> [10] 彭小軍.用單片機實現(xiàn)電子時鐘.新余高專學報.2004年9月.</p><p> [11] 劉建英.基于單片機應用技術. .高等教育出版社.2006年4月.</p><p> [12] 楊剛.周群.電子
91、系統(tǒng)設計與實踐.北京電子工業(yè)出版社.2004.</p><p> [13] 余永權.ATMEL89系列單片機應用技術.北京.北京航空航天大學出版社.2002.</p><p> [14] M.K.Nazeeruddin.M.gratzel.Transition metal complexes for photovoltaic and light emitting application
92、s.Springer berlin/Heidelberg.2007.5.9.</p><p> [15] Ezra N.hoch.Danny dolev.Ariel daliot.Self-atabilizing Byzantine digital clock synchronization.Springer berlin/Heidelberg.2007.6.27. </p><p>
93、 [16] Amr M.fahim.Clock partitioning and skew control.Springer US.2005.12.6.</p><p> [17] Glbert.Light emitting diode technology and applications.Taylor & Francis Group.2009.</p><p><b&g
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 多功能數字時鐘畢業(yè)設計
- 多功能數字時鐘的設計畢業(yè)設計
- 畢業(yè)設計基于fpga的多功能數字時鐘
- 畢業(yè)設計基于fpga的多功能的數字時鐘設計
- 電子時鐘畢業(yè)設計--多功能數字鐘設計
- 多功能數字時鐘設計資料
- 多功能電子時鐘畢業(yè)設計
- 單片機多功能數字電子時鐘設計畢業(yè)設計論文
- 電子畢業(yè)設計---多功能電子時鐘
- 多功能數字時鐘課程設計
- 畢業(yè)設計----多功能數字中的設計
- 多功能數字時鐘課程設計
- 基于fpga的多功能數字時鐘設計
- 畢業(yè)設計---基于單片機的多功能時鐘設計
- 數字電路課程設計-多功能數字時鐘設計
- 畢業(yè)設計-數字時鐘設計
- 數字時鐘畢業(yè)設計
- 單片機多功能時鐘程序設計畢業(yè)設計
- 多功能數字鐘畢業(yè)設計
- 數字電路課程設計----多功能數字時鐘
評論
0/150
提交評論