電子萬年歷的設計與制作畢業(yè)論文_第1頁
已閱讀1頁,還剩54頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  畢業(yè)設計(論文)</b></p><p> 題目電子萬年歷的設計與制作</p><p><b>  摘 要</b></p><p>  本文介紹了基于AT89S52單片機的多功能電子萬年歷的硬件結構和軟硬件設計方法。本設計由數(shù)據(jù)顯示模塊、溫度采集模塊、時間處理模塊和調(diào)整設置模塊四個模塊組成。

2、系統(tǒng)以AT89S52單片機為控制器,以串行時鐘日歷芯片DS1302記錄日歷和時間,它可以對年、月、日、時、分、秒進行計時,還具有閏年補償?shù)榷喾N功能。溫度采集選用DS18B20芯片,萬年歷采用直觀的數(shù)字顯示,數(shù)據(jù)顯示采用1602A液晶顯示模塊,可以在LCD上同時顯示年、月、日、周日、時、分、秒,還具有時間校準等功能。此萬年歷具有讀取方便、顯示直觀、功能多樣、電路簡潔、成本低廉等諸多優(yōu)點,具有廣闊的市場前景。</p><

3、p>  關鍵字:萬年歷;溫度計;液晶顯示</p><p><b>  ABSTRACT</b></p><p>  This paper introduces the based on AT89S52 multi-function electronic calendar of the hardware structure and software and har

4、dware design method. This design by data display module, temperature acquisition module, time processing module and set module four modules. With AT89S52 single-chip microcomputer system for the controller to serial cloc

5、k calendar chip DS1302 record calendar and time, it can be to date and time, minutes and seconds for the time, also has a leap year compensation and other f</p><p>  Key words:Perpetual Calendar;thermometer;

6、LCD display</p><p><b>  目 錄</b></p><p><b>  摘 要I</b></p><p>  AbstractII</p><p><b>  第1章 緒論1</b></p><p>  1.1 課題研究

7、的背景1</p><p>  1.2 課題的研究目的與意義1</p><p>  1.3 課題解決的主要內(nèi)容2</p><p>  第2章 系統(tǒng)的方案設計與論述3</p><p><b>  2.1概述3</b></p><p>  2.2單片機芯片設計與論證3</p>

8、<p>  2.3 按鍵控制模塊設計與論證3</p><p>  2.4時鐘模塊設計與論證4</p><p>  2.5溫度采集模塊設計與論證4</p><p>  2.6顯示模塊設計與論證4</p><p>  2.7系統(tǒng)的機體設計…...………………………………………………4

9、 </p><p>  第3章 系統(tǒng)硬件的設計5</p><p><b>  3.1概述5</b></p><p>  3.2 AT89S52單片機5</p><p>  3.2.1單片機的引腳功能5</p>&

10、lt;p>  3.2.2 AT89S52單片機與MCS-51完全兼容5</p><p>  3.3 時鐘芯片DS1302接口設計與性能分析5</p><p>  3.3.1 DS1302性能簡介5</p><p>  3.3.2 DS1302接口電路設計5</p><p>  3.4 溫度芯片DS18B20接口設計與性能分析6

11、</p><p>  3.4.1 DS18B20性能簡介6</p><p>  3.4.2 DS18B20接口電路設計6</p><p>  3.4.3 DS18B20的工作時序6</p><p>  3.5 LCD顯示模塊6</p><p>  3.5.1 LCM1602的特性及使用說明7</p>

12、;<p>  3.5.2 LCM1602與MCU的接口電路7</p><p>  3.6 按鍵模塊設計7</p><p>  3.7 復位電路的設計7</p><p>  第4章 系統(tǒng)的軟件設計7</p><p><b>  4.1 概述7</b></p><p>  4.

13、2 主程序流程圖的設計7</p><p>  4.3 程序設計7</p><p>  4.3.1 DS1302讀寫程序設計8</p><p>  4.3.2 溫度程序設計8</p><p><b>  總結與展望10</b></p><p><b>  參考文獻11</

14、b></p><p><b>  致 謝13</b></p><p><b>  附錄14</b></p><p><b>  緒論</b></p><p>  隨著科學的快速發(fā)展,時間的流逝,從觀太陽、擺鐘到現(xiàn)在電子鐘,人類不</p><p>

15、;  斷研究,不斷創(chuàng)新紀錄。目前,單片機技術的應用產(chǎn)品已經(jīng)走進了千家萬戶。電</p><p>  子萬年歷的出現(xiàn)給人們的生活帶來了諸多方便。隨著微電子技術的高速發(fā)展,單</p><p>  片機在國民經(jīng)濟的個人領域得到了廣泛的運用。單片機以體積小、功能全、性價</p><p>  比高等諸多優(yōu)點,在工業(yè)控制、家用電器、通信設備、信息處理、尖端武器等各</p&g

16、t;<p>  種測控領域的應用中獨占鰲頭,單片機開發(fā)技術已成為電子信息、電氣、通信、</p><p>  自動化、機電一體化等專業(yè)技術人員必須掌握的技術。</p><p>  單片機單芯片的微小體積和低的成本,可廣泛地嵌入到如玩具、家用電器、</p><p>  機器人、儀器儀表、汽車電子系統(tǒng)、工業(yè)控制單元、辦公自動化設備、金融電子</p>

17、;<p>  系統(tǒng)、艦船、個人信息終端及通訊產(chǎn)品中,成為現(xiàn)代電子系統(tǒng)中最重要的智能化</p><p>  工具,于是基于單片機的醒目而時尚的電子版萬年歷順應而生?;趩纹瑱C的電</p><p>  子萬年歷結合了時鐘和日歷的功能,將其二者融為一體,在顯示時間的同時還能</p><p>  顯示日期和年、月,它主要是通過單片機來讀取時鐘芯片的時間、日期,

18、然后送</p><p>  給顯示設備顯示出來。而電子萬年歷作為電子類小設計不僅是市場上的寵兒,也</p><p>  是是單片機實驗中一個很常用的題目。因為它的有很好的開放性和可發(fā)揮性,因</p><p>  此對作者的要求比較高,不僅考察了對單片機的掌握能力更加強調(diào)了對單片機擴</p><p>  展的應用。而且在操作的設計上要力求簡潔,

19、功能上盡量齊全,顯示界面也要出</p><p>  色。數(shù)字顯示的日歷鐘已經(jīng)越來越流行,特別是適合在家庭居室、辦公室、大廳、</p><p>  會議室、車站和廣場等使用,壁掛式LED數(shù)碼管顯示的日歷鐘逐漸受到人們的歡</p><p>  迎。LED數(shù)字顯示的日歷鐘顯示清晰直觀、走時準確、可以進行夜視,并且還可</p><p>  以擴展出多

20、種功能。。</p><p><b>  課題研究的背景</b></p><p>  隨著科技的快速發(fā)展,時間的流逝,從觀太陽、擺鐘到現(xiàn)在電子鐘,人類不斷研究,不斷創(chuàng)新紀錄。它可以對年、月、日、時、分、秒進行計時,還具有閏年補償?shù)榷喾N功能,而且DS1302的使用壽命長,誤差小。對于數(shù)字電子萬年歷采用直觀的數(shù)字顯示,可以同時顯示年、月、日、時、分、秒和溫度等信息,還具有時

21、間校準等功能。該電路采用AT89S52單片機作為核心,功耗小,能在3V的低壓工作,電壓可選用3~5V電壓供電。</p><p>  此萬年歷具有讀取方便、顯示直觀、功能多樣、電路簡潔、成本低廉等諸多優(yōu)點,符合電子儀器儀表的發(fā)展趨勢,具有廣闊的市場前景。</p><p>  課題的研究目的與意義</p><p>  二十一世紀是數(shù)字化技術高速發(fā)展的時代,而單片機在數(shù)字

22、化高速發(fā)展的時代扮演著極為重要的角色。電子萬年歷的開發(fā)與研究在信息化時代的今天亦是當務之急,因為它應用在學校、機關、企業(yè)、部隊等單位禮堂、訓練場地、教學室、公共場地等場合,可以說遍及人們生活的每一個角落。所以說電子萬年歷的開發(fā)是國家之所需,社會之所需,人民之所需。</p><p>  由于社會對信息交換不斷提高的要求及高新技術的逐步發(fā)展,促使電子萬年歷發(fā)展并且投入市場得到廣泛應用</p><p

23、><b>  課題解決的主要內(nèi)容</b></p><p>  本課題所研究的電子萬年歷是單片機控制技術的一個具體應用,主要研究內(nèi)容包括以下幾個方面:</p><p> ?。?)選用電子萬年歷芯片時,應重點考慮功能實在、使用方便、單片存儲、低功耗、抗斷電的器件。</p><p> ?。?)根據(jù)選用的電子萬年歷芯片設計外圍電路和單片機的接口電

24、路</p><p> ?。?)在硬件設計時,結構要盡量簡單實用、易于實現(xiàn),使系統(tǒng)電路盡量簡單</p><p> ?。?)根據(jù)硬件電路圖,在開發(fā)板上完成器件的焊接。</p><p> ?。?)根據(jù)設計的硬件電路,編寫控制AT89S52芯片的單片機程序。</p><p> ?。?)通過編程、編譯、調(diào)試,把程序下載到單片機上運行,并實現(xiàn)本設計的功能

25、。</p><p>  (7)在硬件電路和軟件程序設計時,主要考慮提高人機界面的友好性,方便用戶操作等因素。</p><p>  第2章 系統(tǒng)的方案設計與論述</p><p><b>  2.1概述</b></p><p>  單片機電子萬年歷的制作有多種方法,可供選擇的器件和運用的技術也有很多種。所以,系統(tǒng)的總體設計方

26、案應在滿足系統(tǒng)功能的前提下,充分考慮系統(tǒng)使用的環(huán)境,所選的結構要簡單使用、易于實現(xiàn),器件的選用著眼于合適的參數(shù)、穩(wěn)定的性能、較低的功耗以及低廉的成本。</p><p>  系統(tǒng)的功能往往決定了系統(tǒng)采用的結構,經(jīng)過成本,性能,功耗等多方面的考慮決定用三個8位74LS164串行接口外接LED顯示器,RESPACK-8對單片機AT89S52進行供電,時間芯片DS1302連接單片機AT89S52。從而實現(xiàn)電子萬年歷的功能

27、。</p><p>  按照系統(tǒng)設計的要求,初步確定系統(tǒng)由電源模塊、時鐘模塊、顯示模塊、鍵盤接口模塊、溫度測量模塊和鬧鐘模塊共六個模塊組成,電路系統(tǒng)構成框圖如圖2.1所示</p><p>  圖2.1 硬件電路框圖</p><p>  2.2單片機芯片選取</p><p>  采用AT89S52芯片作為硬件核心,采用Flash ROM,能以

28、3V的超低電壓工作,而且與MCS-51系列單片機完全兼容,該芯片內(nèi)部存儲器為8KB ROM 存儲空間。同樣具有AT89S52的功能,且具有在線編程可擦除技術,當在對電路進行調(diào)試時,由于程序的錯誤修改或對程序的新增功能需要燒入程序時,不需要對芯片多次拔插,所以不會對芯片造成損壞。</p><p>  由于AT89S52內(nèi)部具有8KBROM存儲芯片并且支持ISP在線編程,因此采用AT89S52作為主控芯片。</

29、p><p>  2.3 按鍵控制模塊設計與論證</p><p>  因系統(tǒng)中所需按鍵不多,為了釋放更多的CPU占有時間,操作方便采用獨</p><p>  立按鍵,查詢簡單,程序處理簡單,可節(jié)省CPU資源</p><p>  2.4 時鐘模塊設計與論述</p><p>  采用DS1302時鐘芯片實現(xiàn)時鐘,DS1302芯片

30、是一種高性能的時鐘芯片,可</p><p>  自動對秒、分、時、日、周、月、年以及閏年補償?shù)哪赀M行計數(shù),而且精度高,</p><p>  位的RAM作為數(shù)據(jù)暫存區(qū),工作電壓2.5V~5.5V范圍內(nèi),2.5V時耗電小于300</p><p><b>  Ma</b></p><p>  2.5 溫度采集模塊設計與論證&l

31、t;/p><p>  因為用DS18B20溫度芯片,采用單總線訪問,降低成本、降低制作難度且</p><p>  可節(jié)省單片機資源,所以采用數(shù)字式溫度傳感器DS18B20,它能直接讀出被測溫</p><p>  度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)9-12位的數(shù)字值讀數(shù)方式。</p><p>  2.6 顯示模塊設計與論證</p>

32、<p>  采用LCD的方法,具有硬件制作簡單可直接與單片機接口,顯示內(nèi)容多,功耗</p><p>  小,成本低等優(yōu)點,LCM1602可顯</p><p>  2.7 系統(tǒng)的機體設計 </p><p>  本設計由數(shù)據(jù)顯示模塊、溫度采集模塊、時間處理模塊和調(diào)整設置模塊四個模塊組成。系統(tǒng)的核心采用的是AT89S52單片機;數(shù)據(jù)顯示模塊采用的是LCD液晶

33、顯示;溫度采集模塊用的是DS18b20溫度傳感器,該傳感器所采用的是單總線傳輸,內(nèi)部帶有A/D轉換,用起來非常方便;時間處理模塊用的是DS1302時鐘芯片,可以對年、月、日、時、分、秒進行計時,還具有閏年補償?shù)榷喾N功能;調(diào)整設置模塊共包括四個按鍵:模式選擇鍵、功能選擇鍵、調(diào)整加按鍵、調(diào)整減按鍵。</p><p>  系統(tǒng)在正常工作時,LCD液晶上第一行顯示時分秒和溫度,第二行顯示年月日和星期,如果想要對時間進行調(diào)

34、整,可以通過調(diào)整設置模塊來實現(xiàn)。當按下P3.3鍵時,系統(tǒng)進入另一模式,此時液晶顯示當前溫度以及溫度上限和下限,可以通過按鍵來設置溫度上下限,當溫度超過溫度上限或低于溫度下限,此時液晶會顯示越限標志,如果想要退出該模式就在按一下P3.3即可。</p><p>  系統(tǒng)仿真圖如圖2.2:</p><p>  圖2.2 系統(tǒng)仿真圖</p><p>  第3章 系統(tǒng)硬件的

35、設計</p><p><b>  3.1概述</b></p><p>  系統(tǒng)硬件的設計主要采用AT89S52單片機的可編程串口其內(nèi)部的震蕩電路產(chǎn)生時鐘。用其2個定時器、計數(shù)器產(chǎn)生震蕩周期。單片機中的六個中斷系統(tǒng)中C</p><p>  PU執(zhí)行各種操作。另外同時使用時鐘芯片DS1302能夠向單片機提供包括秒、分、時、日、月、年等在內(nèi)的實時時間

36、信息。</p><p>  3.2 AT89S52單片機</p><p>  3.2.1 單片機的引腳功能</p><p>  AT89S52單片機有40個引腳</p><p>  Vcc:電源電壓+5V</p><p><b>  GND:接地</b></p><p> 

37、 P0口:P0口是一組8位漏極開路型雙向I/O口,也即地址/數(shù)據(jù)總線復用口。作為輸出口用時,每位能驅動8個TTL邏輯門電路,對端口寫“1”可作為高阻抗輸入端用。在訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉換地址(低8位)和數(shù)據(jù)總線服用,在訪問期間激活內(nèi)部上拉電阻在Flash編程時,P0口接收指令字節(jié),而在程序校驗時,輸出指令字節(jié),校驗時要求外接上拉電阻。</p><p>  P1口:P1口是一個帶內(nèi)部上拉電

38、阻的8位雙向I/O,P1的輸出緩沖級可驅動(吸收或輸出電流)4個TTL邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流。Flash 編程和程序校驗期間,P1接收低8位地址。</p><p>  P2口:P2口是一個帶內(nèi)部上拉電阻的8位雙向I/O,P2的輸出緩沖級可驅動(吸收或輸出電流)4個TTL邏輯門電路。

39、對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流。在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX@DPTR指令)時,P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器(MOVX @Ri指令)時,P2口線上的內(nèi)容(也即特殊功能寄存器(SFR)區(qū)中P2寄存器的內(nèi)容),在整個訪問期間不改變。Flash 編程和程序校驗期間,

40、P2亦接收低高位地址和其他控制信號。</p><p>  P3口:P3口是一組帶內(nèi)部上拉電阻的8位雙向I/O,P3的輸出緩沖級可驅動(吸收或輸出電流)4個TTL邏輯門電路。對P3口寫入“1”時,它們被內(nèi)部的上拉電阻拉高并可作為輸入端口。作輸入端時,被外部拉低的P3口將用上拉電阻輸出電流。P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能,見表3.1所示P3口還接收一些用于Flash閃速存儲器編程和程序校

41、驗的控制信號。</p><p>  表3.1 P3口的第二功能圖</p><p>  RST:復位輸入。當振蕩器工作時,RST引腳出現(xiàn)兩個機器周期以上高電平將使單片機復位。WDT溢出將使引腳輸出高電平,設置SFR AUXR的DISRT0(地址8EH)可打開或關閉該功能。DISRT0位缺省為RESET輸出高電平打開狀態(tài)。</p><p>  ALE/PROG:當訪

42、問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存器允許)輸出脈沖用于鎖存地址的低8位字節(jié)。即使不訪問外部存儲器,ALE仍以時鐘振蕩頻率的1/6輸出固定的正脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖。對Flash存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。</p><p>  PSEN:程序存儲允許(PSEN)輸出是外部程序存儲器的讀選通信號,當

43、AT89S52由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN有效,即輸出兩個脈沖。當訪問外部數(shù)據(jù)存儲器,沒有兩次有效的PSEN信號。</p><p>  EA/VPP:外部訪問允許。欲使CPU僅訪問外部程序存儲器(地址為0000H—FFFFH),EA端必須保持低電平(接地)。需要注意的是:如果加密位LB1被編程,復位時內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平,CPU則執(zhí)行內(nèi)部程序存儲器中的指令。Fla

44、sh存儲器編程時,該引腳加上+12V的變成電壓Vpp。</p><p>  XTAL1:振蕩器反相放大器及內(nèi)部時鐘發(fā)生器的輸入端。</p><p>  XTAL2:振蕩器反相放大器的輸出端。</p><p>  3.2.2 AT89S52單片機與MCS-51完全兼容</p><p>  看門狗(WDT):WDT是一種需要軟件控制的復位方式。W

45、DT 由13位計數(shù)</p><p>  器和特殊功能寄存器中的看門狗定時器復位存儲器(WDTRST)構成。WDT 在默認情況下無法工作;為了激活WDT,用戶必須往WDTRST 寄存器(地址:0A6H)中依次寫入01EH 和0E1H。當WDT激活后,晶振工作,WDT在每個機器周期都會增加。WDT計時周期依賴于外部時鐘頻率。除了復位(硬件復位或WDT溢出復位),沒有辦法停止WDT工作。當WDT溢出,它將驅動RSR引腳

46、輸出一個高電平。</p><p>  可編程串口(UART)在AT89S52中,UART 的操作與AT89S52 和AT89C52 一樣。AT89S52系列單片機的串行通信口可以工作于同步和異步通信方式。當工作于異步方 式時,它具有全雙工的操作功能,也就是說,它可以同時進行數(shù)據(jù)的發(fā)送和接收。串行口內(nèi)的接收器采用的是雙緩沖結構,能夠在接收到的第一個字節(jié)從接收寄存器讀走之前就開始接收第二個字節(jié)(當然,如果第二個字節(jié)接

47、收完畢,而第一個字節(jié)仍然沒有被讀走,那將會丟掉一個字節(jié))。串行口的發(fā)送和接收操作都是通過特殊功能寄存器中的數(shù)據(jù)緩沖寄存器SBUF進行的,但在SBUF的內(nèi)部,接收寄存器和發(fā)送寄存器在物理結構上是完全獨立的。如果將數(shù)據(jù)寫入SBUF,數(shù)據(jù)會被送入發(fā)送寄存器準備發(fā)送。如果執(zhí)行SBUF指令,則讀出的數(shù)據(jù)一定來自接收緩存器。因此,CPU對SBUF的讀寫,實際上是分別訪問2個不同的寄存器。這2個寄存器的功能決不能混淆。</p><

48、p>  振蕩電路:AT89S52系列單片機的內(nèi)部振蕩器,由一個單極反相器組成。XTAL1反相器的輸入,XTAL2為反相器的輸出??梢岳盟鼉?nèi)部的振蕩器產(chǎn)生時鐘,只要XTAL1和XTAL2引腳上一個晶體及電容組成的并聯(lián)諧振電路,便構成一個完整的振蕩信號發(fā)生器,此方式稱為內(nèi)部方式。另一種方式由外部時鐘源提供一個時鐘信號到XTAL1端輸入,而XTAL2端浮空。在組成一個單片機應用系統(tǒng)時,多數(shù)采用這種方式,這種方式結構緊湊,成本低廉,可靠

49、性高。在電路中,對電容C1和C2的值要求不是很嚴格,如果使用高質(zhì)的晶振,則不管頻率為多少,C1、C2通常都選擇30pF。</p><p>  定時/計數(shù)器:AT89S52單片機內(nèi)含有2個16位的定時器/計數(shù)器。當用于定時器方式時,定時器的輸入來自內(nèi)部時鐘發(fā)生電路,每過一個機器周期,定時器加1,而一個機器周期包含有12個振蕩周期,所以,定時器的技術頻率為晶振頻率的1/12,而計數(shù)頻率最高為晶振頻率的1/24。為了實

50、現(xiàn)定時和計數(shù)功能,定時器中含有3種基本的寄存器:控制寄存器、方式寄存器和定時器/計數(shù)器??刂萍拇嫫魇且粋€8位的寄存器,用于控制定時器的工作狀態(tài),方式寄存器是一個8位的寄存器,用于確定定時器的工作方式,定時器/計數(shù)器是16位的計數(shù)器,分為高字節(jié)和低字節(jié)兩部分。</p><p>  RAM:高于7FH內(nèi)部數(shù)據(jù)存儲器的地址是8位的,也就是說其地址空間只有256字節(jié),但內(nèi)部RAM的尋址方式實際上可提供384字節(jié)。的直接地

51、址訪問同一個存儲空間,高于7FH的間接地址訪問另一個存儲空間。這樣,雖然高128字節(jié)區(qū)分與專用寄器 ,即特殊功能寄存器區(qū)的地址是重合的,但實際上它們是分開的。究竟訪問哪一區(qū),存是通過不同的尋址方式加以區(qū)分的。</p><p>  SFR:SFR是具有特殊功能的所有寄存器的集合,共含有22個不同寄存器,</p><p>  它們的地址分配在80H~FFH中。雖然如此,不是所有的單元都被特殊功

52、能寄存器占用,未被占用的單元,其內(nèi)容是不確定的。如對這些單元進行讀操作,得到的是一些隨機數(shù),而寫入則無效,所以在編程時不應該將數(shù)據(jù)寫入這些未確定的地址單元中,特殊功能寄存器主要有累加器ACC、B寄存器、程序狀態(tài)字寄存器PSW、堆棧指針SP、數(shù)據(jù)指針DPTR、I/O端口、串行口數(shù)據(jù)緩沖器SBUF、定時器寄存器、捕捉寄存器、控制寄存器。</p><p>  中斷系統(tǒng):AT89S52單片機有6個中斷源,中斷系統(tǒng)主要由中

53、斷允許寄存器IE、中斷優(yōu)先級寄存器IP、優(yōu)先級結構和一些邏輯門組成。IE寄存器用于允許或禁止中斷;IP寄存器用于確定中斷源的優(yōu)先級別;優(yōu)先級結構用于執(zhí)行中斷源的優(yōu)先排序;有關邏輯門用于輸入中斷請求信號。在整個中斷響應過程中CPU所執(zhí)行的操作步驟如下:</p><p>  (1)完成當前指令的操作</p><p> ?。?)將PC內(nèi)容壓入堆棧</p><p>  (3

54、)保存當前的中斷狀態(tài)</p><p>  (4)阻止同級的中斷請求</p><p> ?。?)將中斷程序入口地址送PC寄存器</p><p>  (6)執(zhí)行中斷服務程序</p><p><b> ?。?)返回</b></p><p>  3.3 時鐘芯片DS1302接口設計與性能分析</p&

55、gt;<p>  3.3.1 DS1302性能簡介</p><p>  DS1302是Dallas公司生產(chǎn)的一種實時時鐘芯片。它通過串行方式與單片機進行數(shù)據(jù)傳送,能夠向單片機提供包括秒、分、時、日、月、年等在內(nèi)的實時時間信息,并可對月末日期、閏年天數(shù)自動進行調(diào)整;它還擁有用于主電源和備份電源的雙電源引腳,在主電源關閉的情況下,也能保持時鐘的連續(xù)運行。另外,它還能提供31字節(jié)的用于高速數(shù)據(jù)暫存的RAM

56、。</p><p>  DS1302時鐘芯片內(nèi)主要包括移位寄存器、控制邏輯電路、振蕩器。DS1302與單片機系統(tǒng)的數(shù)據(jù)傳送依靠RST,I/O,SCLK三根端線即可完成。其工作過程可概括為:首先系統(tǒng)RST引腳驅動至高電平,然后在SCLK時鐘脈沖的作用下,通過I/O引腳向DS1302輸入地址/命令字節(jié),隨后再在SCLK時鐘脈沖的配合下,從I/O引腳寫入或讀出相應的數(shù)據(jù)字節(jié)。因此,其與單片機之間的數(shù)據(jù)傳送是十分容易實現(xiàn)

57、的,DS1302的引腳排列及內(nèi)部結構圖如圖3.1</p><p>  DS1302引腳說明:</p><p>  X1,X2 32.768kHz晶振引腳</p><p>  GND 地線</p><p>  RST 復位端</p><p>  I/O

58、 數(shù)據(jù)輸入/輸出端口</p><p>  SCLK 串行時鐘端口 </p><p>  VCC1 慢速充電引腳 </p><p>  VCC2 電源引腳 </p><p>  圖3.1 DS1302的引腳</p>&

59、lt;p>  3.3.2 DS1302接口電路設計</p><p>  時鐘芯片DS1302的接口電路及工作原理:</p><p>  圖3.2 DS1302與MCU接口電路</p><p>  圖3為DS1302的接口電路,其中Vcc1為后備電源,Vcc2為主電源。VCC1在單電源與電池供電的系統(tǒng)中提供低電源并提供低功率的電池備份。VCC2在雙電源系統(tǒng)中提

60、供主電源,在這種運用方式中VCC1連接到備份電源,以便在沒有主電源的情況下能保存時間信息以及數(shù)據(jù)。</p><p>  DS1302由VCC1或VCC2 兩者中較大者供電。當VCC2大于VCC1+0.2V時,VCC2給DS1302供電。當VCC2小于VCC1時,DS1302由VCC1供電。</p><p>  DS1302在每次進行讀、寫程序前都必須初始化,先把SCLK端置 “0”,接著把

61、RST端置“1”,最后才給予SCLK脈沖;讀/寫時序如下圖5所示。表-1為DS1302的控制字,此控制字的位7必須置1,若為0則不能對DS1302進行讀寫數(shù)據(jù)。對于位6,若對時間進行讀/寫時,CK=0,對程序進行讀/寫時RAM=1。位1至位5指操作單元的地址。位0是讀/寫操作位,進行讀操作時,該位為1;進行寫操作時,該位為0??刂谱止?jié)總是從最低位開始輸入/輸出的。表-2為DS1302的日歷、時間寄存器內(nèi)容:“CH”是時鐘暫停標志位,當該

62、位為1時,時鐘振蕩器停止,DS1302處于低功耗狀態(tài);當該位為0時,時鐘開始運行。“WP”是寫保護位,在任何的對時鐘和RAM的寫操作之前,“WP”必須為0。當“WP”為1時,寫保護位防止對任一寄存器的寫操作。</p><p>  DS132的控制字:</p><p>  DS1302的控制字如表3.2所示??刂谱止?jié)的高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入DS1302中,

63、位6如果0,則表示存取日歷時鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為1表示進行讀操作,為0表示進行寫操作??刂谱止?jié)總是從最低位開始輸出。</p><p>  表3.2 DS1302的控制字格式</p><p>  數(shù)據(jù)輸入輸出(I/O)</p><p>  在控制指令字輸入后的下一個SCLK時鐘的上升沿時,數(shù)據(jù)被寫入DS

64、1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時從低位0位到高位7。如下圖3.3所示。</p><p>  圖3.3 DS1302讀/寫時序圖</p><p>  DS1302的寄存器AM</p><p>  DS1302有12個寄存器,其中有7個寄存器與日歷、時鐘相關,存放的數(shù)據(jù)位為

65、BCD碼形式,其日歷、時間寄存器及其控制字見表3.3</p><p>  表3.3 DS1302的日歷、時間寄存器</p><p>  此外,DS1302 還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器及與RAM相關的寄存器等。時鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器內(nèi)容。 DS1302與RAM相關的寄存器分為兩類:一類是單個RAM單元,共31個,每個單元組態(tài)為一

66、個8位的字節(jié),其命令控制字為C0H~FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM的31個字節(jié),命令控制字為FEH(寫)、FFH(讀)。</p><p>  3.4 溫度芯片DS18B20接口設計與性能分析</p><p>  3.4.1 DS18B20性能簡介</p><p>  DS18B20溫度傳感器

67、是美國DALLAS半導體公司最新推出的一種改進型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)9-12位的數(shù)字值讀數(shù)方式?,F(xiàn)場溫度直接以"一線總線"的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設備或過程控制、測溫類消費電子產(chǎn)品等。與前一代產(chǎn)品不同,新的產(chǎn)品支持3V~5.5V的電壓范圍,使系統(tǒng)設計更靈活、方便。其性能特點可

68、歸納如下:</p><p>  1獨特的單線接口僅需要一個端口引腳進行通信;</p><p>  2測溫范圍在-55℃到125℃,分辨率最大可達0.0625℃;</p><p>  3采用了3線制與單片機相連,減少了外部硬件電路;</p><p><b>  4零待機功耗;</b></p><p>

69、;  5可通過數(shù)據(jù)線供電,電壓范圍在3.0V-5.5V;</p><p>  6用戶可定義的非易失性溫度報警設置;</p><p>  7報警搜索命令識別并標志超過程序限定溫度(溫度報警條件)的器件; </p><p>  8負電壓特性,電源極性接反時,溫度計不會因發(fā)熱燒毀,只是不能正常工

70、作。</p><p>  DS18B20工作原理</p><p>  DS18B20的讀寫時序和測溫原理與DS1820相同,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉換時的延時時間由2s減為750ms。 DS18B20測溫原理如圖3.4所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號送給計數(shù)器1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號作為

71、計數(shù)器2的脈沖輸入。計數(shù)器1和溫度寄存器被預置在-55℃所對應的一個基數(shù)值。計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當計數(shù)器1的預置值減到0時,溫度寄存器的值將加1,計數(shù)器1的預置將重新被裝入,計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫度。圖3.4中的斜率累加器用于補償和修正測溫過程中的非線性,其輸出用于修正計數(shù)器1的預置值

72、。</p><p>  圖3.4 DS18B20測溫原理</p><p>  3.4.2 DS18B20接口電路設計</p><p>  如圖3.5所示,該系統(tǒng)中采用數(shù)字式溫度傳感器DS18B20,具有測量精度高,電路連接簡單特點,此類傳感器僅需要一條數(shù)據(jù)線進行數(shù)據(jù)傳輸,用P3.7與DS18B20的DQ口連接,Vcc接電源,GND接地。 </p>&

73、lt;p>  圖3.5 溫度傳感器DS18B20接口電路</p><p>  3.4.3 DS18B20的工作時序</p><p><b>  復位時序圖</b></p><p>  圖3.6 復位時序圖</p><p><b>  讀時序圖</b></p><p>&

74、lt;b>  圖3.7讀時序圖</b></p><p><b>  寫時序圖</b></p><p>  圖3.8 寫時序圖</p><p><b>  工作時序</b></p><p><b>  總線時序</b></p><p>

75、  圖3.9 總線時序</p><p><b>  寫周期時序</b></p><p>  圖3.10 寫周期時序</p><p><b>  起始/停止時序</b></p><p>  圖3.11 起始/停止時序</p><p><b>  應答時序</b

76、></p><p>  圖3.12 應答時序</p><p><b>  立即地址讀時序</b></p><p>  圖3.13 立即地址讀時序</p><p>  3.5 LCD顯示模塊</p><p>  3.5.1 LCM1602的特性及使用說明</p><p

77、>  LCM1602的接口信號說明如表3.4:</p><p>  表3.4 LCM1602的接口信號</p><p><b>  基本操作時序如下:</b></p><p>  1)讀狀態(tài):RS=L,RW=H,E=H</p><p>  2)寫指令:RS=L,RW=L,D0~D7=指令碼,E=高脈沖</p

78、><p>  3)讀數(shù)據(jù):RS=H,RW=H,E=H</p><p>  4)寫數(shù)據(jù):RS=H,RW=L,D0~D7=數(shù)據(jù),E=高脈沖</p><p><b>  初始化設置</b></p><p>  顯示模式設置如表3.5:</p><p>  表3.5 顯示模式設置</p>&l

79、t;p>  顯示開/關及光標設置如表6:</p><p>  表3.6 顯示開/關及光標設置</p><p>  3.5.2 LCM1602與MCU的接口電路</p><p>  LCD的D0~D7分別接單片機的的P2口,作為數(shù)據(jù)線,因為P0口內(nèi)部沒有上拉電阻,所以外部另外加上10K的上拉電阻;P1.0—P1.2分別接LCD的RS、RW、E三個控制管腳;RV

80、1用來調(diào)節(jié)LCD的顯示灰度;BLK、BLA為背光的陰極和陽極,接上相應電平即點亮背光燈。</p><p>  3.6 按鍵模塊設計</p><p>  本系統(tǒng)用到了5個按鍵,其中一個用作系統(tǒng)手動復位,另外4個采用獨立按鍵,該種接法查詢簡單,程序處理簡單,可節(jié)省CPU資源,按鍵電路如圖3.14所示,4個獨立按鍵分別與AT89S52的P3.4、P3.5、P3.6、P3.7接口相連。</p

81、><p>  圖3.14 按鍵電路</p><p>  對以上4個按鍵作簡要說明:S4——SET 鍵,S3——UP鍵,S2——DOWN鍵,S5——OUT/STOP鍵。</p><p>  SET 鍵:按下SET鍵進入時間校準狀態(tài),按一下進入秒調(diào)整,兩下分調(diào)整,依此類推可進行各年月日,時分秒以及星期的校準;</p><p>  UP鍵:當SET鍵

82、按下時,UP進行SET選定項(如:小時)的加操作;</p><p>  DOWN鍵:當SET鍵按下時,DOWN進行SET選定項(如:小時)的減操作;</p><p>  OUT鍵:當OUT鍵按下時,此鍵功能為退出校準功能,進入下一模式,顯示溫度值和上下限的溫度值。</p><p>  3.7 復位電路的設計</p><p>  當AT89S5

83、2單片機的復位引腳RST(全稱RESET)出現(xiàn)2個機器周期以上的高電平時,單片機就完成了復位操作。如果RST持續(xù)為高電平,單片機就處于循環(huán)復位狀態(tài),而無法執(zhí)行程序。因此要求單片機復位后能脫離復位狀態(tài)。而本系統(tǒng)選用的是12MHz的晶振,因此一個機器周期為1μs,那么復位脈沖寬度最小應為2μs。在實際應用系統(tǒng)中,考慮到電源的穩(wěn)定時間,參數(shù)漂移,晶振穩(wěn)定時間以及復位的可靠性等因素,必須有足夠的余量</p><p>  

84、根據(jù)應用的要求,復位操作通常有兩種基本形式:上電復位、手動復位。</p><p>  上電復位要求接通電源后,自動實現(xiàn)復位操作。AT89S52單片機的上電復位POR(Power On Reset)實質(zhì)上就是上電延時復位,也就是在上電延時期間把單片機鎖定在復位狀態(tài)上。在單片機每次初始加電時,首先投入工作的功能部件是復位電路。 </p><p>  復位電路把單片機鎖定在復位狀態(tài)上并且維持一

85、個延時(記作TRST),以便給予電源電壓從上升到穩(wěn)定的一個等待時間;在電源電壓穩(wěn)定之后,再插入一個延時,給予時鐘振蕩器從起振到穩(wěn)定的一個等待時間;在單片機開始進入運行狀態(tài)之前, 還要至少推遲2個機器周期的延時。</p><p>  本設計采用上電且開關復位電路,如圖3.15所示上電后,由于電容充電,使RST持續(xù)一段高電平時間。當單片機已在運行之中時,按下復位鍵也能使RST持續(xù)一段時間的高電平,從而實現(xiàn)上電且

86、開關復位的操作。通常選擇C=10~30μF,本設計采用的電容值為10μF的電容和電阻為4.7K的電阻。</p><p>  圖3.15 復位電路</p><p>  第4章 系統(tǒng)的軟件設計</p><p><b>  4.1 概述 </b></p><p>  電子萬年歷的功能是在程序控制下實現(xiàn)的。該系統(tǒng)的軟件設計方法

87、與硬件設計相對應,按整體功能分成多個不同的程序模塊,分別進行設計、編程和調(diào)試,最后通過主程序將各程序模塊連接起來。這樣有利于程序修改和調(diào)試,增強了程序的可移植性。</p><p>  本系統(tǒng)的軟件部分主要要進行公歷計算程序設計,溫度測量程序設計,按鍵的掃描輸入等。程序開始運行后首先要進行初始化,把單片機的各引腳的狀態(tài)按程序里面的初始化命令進行初始化,初始化完成后運行溫度測量程序,讀取出溫度傳感器測量出來的溫度,然

88、后運行公歷計算程序,得到公歷的時間、日期信息,再運行按鍵掃描程序,檢測有無按鍵按下,如果沒有按鍵按下則直接調(diào)用節(jié)日計算程序,根據(jù)得到的公歷日期信息計算出節(jié)日,如果有按鍵按下則更新按鍵修改后的變量后送給節(jié)日計算程序,由節(jié)日計算程序根據(jù)修改后的變量計算出對應的節(jié)假日,計算完成后運行顯示程序,顯示程序將得到的溫度數(shù)據(jù)、公歷信息、節(jié)假日信息送給對應的數(shù)碼管讓其顯示。</p><p>  4.2 主程序流程圖的設計<

89、/p><p>  主程序流程圖如圖4.1:</p><p>  圖4.1 主程序流程圖</p><p><b>  4.3 程序設計</b></p><p>  4.3.1 DS1302讀寫程序設計</p><p>  本系統(tǒng)的時間讀取主要來源于單片機對DS1302的操作,在硬件上時鐘芯片DS130

90、2與單片機的連接需要三條線,即SCLK(7)、I/O(6)、RST(5),具體連接圖見系統(tǒng)硬件設計原理圖。讀取寫程序設計如下:</p><p>  sbit clk = P1^3; //ds1302時鐘線定義</p><p>  sbit io = P1^4; //數(shù)據(jù)線</p><p>  sbit rst = P1^5; //復位線</p&g

91、t;<p>  //秒 分 時 日 月 年 星期 </p><p>  uchar code write_add[]={0x80,0x82,0x84,0x86,0x88,0x8c,0x8a}; //寫地址</p><p>  uchar code read_add[] ={0x81,0x83,0x85,0x87,0x89,0x8d,0x8b};

92、//讀地址</p><p>  uchar code init_ds[] ={0x58,0x00,0x00,0x01,0x01,0x13,0x1}; </p><p>  uchar miao,fen,shi,ri,yue,week,nian;</p><p><b>  uchar i;</b></p><p>

93、  uchar fen1=0x11,shi1=0; //兩個鬧鐘變量的定義</p><p>  bit open1;</p><p>  /*************寫一個數(shù)據(jù)到對應的地址里***************/</p><p>  void write_ds1302(uchar add,uchar dat)</p><p>&

94、lt;b>  {</b></p><p>  rst = 1; //把復位線拿高</p><p>  for(i=0;i<8;i++)</p><p>  { //低位在前</p><p>  clk = 0; //時鐘線拿低開始寫數(shù)據(jù)</p><p&g

95、t;  io = add & 0x01; </p><p>  add >>= 1; //把地址右移一位</p><p>  clk = 1; //時鐘線拿高</p><p><b>  }</b></p><p>  for(i=0;i<8;i++)</p>

96、<p><b>  {</b></p><p>  clk = 0; //時鐘線拿低開始寫數(shù)據(jù)</p><p>  io = dat & 0x01;</p><p>  dat >>= 1; //把數(shù)據(jù)右移一位</p><p>  clk = 1; //時鐘線拿高</p

97、><p><b>  }</b></p><p>  rst = 0; //復位線合低</p><p><b>  clk = 0;</b></p><p><b>  io = 0;</b></p><p><b>  }</b>

98、;</p><p>  uchar read_ds1302(uchar add)</p><p><b>  {</b></p><p>  uchar value,i;</p><p>  rst = 1; //把復位線拿高</p><p>  for(i=0;i<8;i+

99、+)</p><p>  { //低位在前</p><p>  clk = 0; //時鐘線拿低開始寫數(shù)據(jù)</p><p>  io = add & 0x01; </p><p>  add >>= 1; //把地址右移一位</p><p>  clk

100、= 1; //時鐘線拿高</p><p><b>  }</b></p><p>  for(i=0;i<8;i++)</p><p><b>  {</b></p><p>  clk = 0; //時鐘線拿低開始讀數(shù)據(jù)</p><p> 

101、 value >>= 1;</p><p>  if(io == 1)</p><p>  value |= 0x80;</p><p>  clk = 1; //時鐘線拿高</p><p><b>  }</b></p><p>  rst = 0; //復位線

102、合低</p><p><b>  clk = 0;</b></p><p><b>  io = 0;</b></p><p>  return value; //返回讀出來的數(shù)據(jù)</p><p><b>  }</b></p><p>  vo

103、id read_time()</p><p><b>  {</b></p><p>  miao = read_ds1302(read_add[0]); //讀秒</p><p>  fen = read_ds1302(read_add[1]); //讀分</p><p>  shi = read_ds1302

104、(read_add[2]); //讀時</p><p>  ri = read_ds1302(read_add[3]); //讀日</p><p>  yue = read_ds1302(read_add[4]);//讀月</p><p>  nian = read_ds1302(read_add[5]); //讀年</p><

105、;p>  week = read_ds1302(read_add[6]);//讀星期</p><p>  Conversion(0,nian,yue,ri); //農(nóng)歷轉換 </p><p>  n_nian = year_moon ;</p><p>  n_yue = month_moon ;</p><

106、;p>  n_ri = day_moon ;</p><p><b>  }</b></p><p>  void write_time()</p><p><b>  {</b></p><p>  write_ds1302(0x8e,0x00);//打開寫保護</p>

107、<p>  write_ds1302(write_add[0],miao); //寫秒</p><p>  write_ds1302(write_add[1],fen);//寫分</p><p>  write_ds1302(write_add[2],shi);//寫時</p><p>  write_ds1302(write_add[3],

108、ri);//寫日</p><p>  write_ds1302(write_add[4],yue);//寫月</p><p>  write_ds1302(write_add[5],nian); //寫星期</p><p>  write_ds1302(write_add[6],week); //寫年</p><p>  writ

109、e_ds1302(0x8e,0x80);//關閉寫保護</p><p><b>  }</b></p><p>  void write_ds1302ram(uchar add,uchar dat)</p><p><b>  {</b></p><p>  add <<= 1;

110、 //地址是從第二位開始的</p><p>  add &= 0xfe; //把最低位清零 是寫的命令</p><p>  add |= 0xc0; //地址最高兩位為 1 </p><p>  write_ds1302(0x8e,0x0

111、0);</p><p>  write_ds1302(add,dat);</p><p>  write_ds1302(0x8e,0x80);</p><p><b>  }</b></p><p>  uchar read_ds1302ram(uchar add)</p><p><b&

112、gt;  {</b></p><p>  add <<= 1; //地址是從第二位開始的</p><p>  add |= 0x01; //把最高位置1 是讀命令</p><p>  add |= 0xc0; //地址最高兩位

113、為 1 </p><p>  return(read_ds1302(add));</p><p><b>  }</b></p><p>  void init_ds1302()</p><p><b>  {</b></p><p><b>  uchar i

114、;</b></p><p>  rst = 0;//第一次讀寫數(shù)據(jù)時要把IO品拿低</p><p><b>  clk = 0;</b></p><p><b>  io = 0;</b></p><p>  i = read_ds1302ram(30); </p>

115、<p>  if(i != 3)</p><p><b>  {</b></p><p><b>  i = 3;</b></p><p>  write_ds1302ram(30,i); //4050 4100 3080</p><p>  write_ds

116、1302(0x8e,0x00); //打開寫保護</p><p>  for(i=0;i<7;i++)</p><p>  write_ds1302(write_add[i],init_ds[i]); //把最高位值0 允許ds1302工作</p><p>  write_ds1302(0x8e,0x80); //

117、關寫保護</p><p><b>  }</b></p><p><b>  }</b></p><p>  DS1302與微處理器進行數(shù)據(jù)交換時,首先由微處理器向電路發(fā)送命令字節(jié),命令字節(jié)最高位MSB(D7)必須為邏輯 1,如果D7=0,則禁止寫DS1302,即寫保護;D6=0,指定時鐘數(shù)據(jù),D6=1,指定RAM數(shù)據(jù);D

118、5~D1指定輸入或輸出的特定寄存器;最低位LSB(D0)為邏輯0,指定寫操作(輸入),D0=1,指定讀操作(輸出) 。</p><p>  4.3.2 溫度程序設計</p><p>  單總線上最基本的操作有初始化、寫和讀3種,所有其它的操作都由這3種基本操作組合而成,初始化用于對總線上的器件進行狀態(tài)復位,寫用于主節(jié)點向總線上寫入一位數(shù)據(jù),讀用于主節(jié)點從總線上讀取一位數(shù)據(jù)。在這3種操作中,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論