基于at89s52單片機溫度控制系統(tǒng)畢業(yè)設(shè)計_第1頁
已閱讀1頁,還剩47頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  畢業(yè)設(shè)計</b></p><p>  題 目: 大棚溫度控制系統(tǒng) </p><p>  系 別: 計算機科學(xué)系 </p><p>  班 級: 計 應(yīng)091 </p><p>  姓 名: XXXX <

2、/p><p>  學(xué) 號: 000000 </p><p>  指導(dǎo)老師: XXX </p><p>  二〇一一年十一月十三日</p><p><b>  目 錄</b></p><p>  第1章 緒 論1</p><

3、;p>  1.1 系統(tǒng)的概述1</p><p>  1.2 系統(tǒng)的要求1</p><p>  1.3 系統(tǒng)的主要模塊1</p><p>  1.3.1 本系統(tǒng)的主要組成部分1</p><p>  1.3.2 各部分的功能2</p><p>  1.3.3 工作原理2</p><

4、;p>  第2章 設(shè)計的理論基礎(chǔ)3</p><p>  2.1 AT89C52的工作原理3</p><p>  2.1.1 CPU的結(jié)構(gòu)3</p><p>  2.1.2 CPU的結(jié)構(gòu)I/O口結(jié)構(gòu)3</p><p>  2.1.3 程序存儲器3</p><p>  2.1.4 定時器4</p&

5、gt;<p>  2.1.5 中斷系統(tǒng)4</p><p>  2.2 單總線數(shù)字溫度傳感器DS18B20檢測電路5</p><p>  2.2.1 DS18B20簡單介紹5</p><p>  2.2.2 DS18B20 的性能特點5</p><p>  2.2.3 DS18B20的測溫原理6</p>

6、<p>  2.3 LCD1602液晶顯示器6</p><p>  2.3.1 LCD1602簡介6</p><p>  2.3.2 1602LCD的指令說明及時序7</p><p>  2.4 直流馬達8</p><p>  2.4.1 馬達工作的原理8</p><p>  2.4.2 馬達的基

7、本構(gòu)造9</p><p>  第3章 系統(tǒng)的硬件組成電路設(shè)計10</p><p>  3.1 系統(tǒng)總硬件設(shè)計10</p><p>  3.2 時鐘電路10</p><p>  3.3 AT89C52的復(fù)位電路11</p><p>  3.4 單總線數(shù)字溫度傳感器DS18B20檢測電路11</p>

8、<p>  3.5 LCD1602顯示模塊12</p><p>  3.6 驅(qū)動電路12</p><p>  第4章 系統(tǒng)軟件的設(shè)計14</p><p>  4.1主程序設(shè)計14</p><p>  4.2 溫度檢測14</p><p>  4.2.1讀取溫度設(shè)計14</p>

9、<p>  4.2.2 溫度數(shù)據(jù)處理設(shè)計16</p><p>  4.3 液晶顯示器LCM160217</p><p>  4.3.1 LCM1602初始化17</p><p>  4.4馬達的控制21</p><p>  第5章 系統(tǒng)調(diào)試22</p><p>  第6章 總結(jié)與展望23&l

10、t;/p><p><b>  5.1 總結(jié)23</b></p><p><b>  5.2 展望23</b></p><p><b>  參考文獻24</b></p><p><b>  致 謝25</b></p><p>&

11、lt;b>  附錄A:程序26</b></p><p>  附錄B:元件清單42</p><p>  附錄C:實物照片42</p><p>  基于單片機AT89C52的大棚溫度控制系統(tǒng)</p><p><b>  摘 要</b></p><p>  蔬菜的生長與溫度息息

12、相關(guān),對于蔬菜大棚來說,最重要的一個管理因素是溫度控制。溫度不合適,蔬菜則停止生長或者生長速度減慢,從而造成不可估量的損失。所以要將溫度始終控制在適合蔬菜生長的范圍內(nèi)。如果僅靠人工控制既耗人力,又容易造成誤差。為此,在現(xiàn)代化的蔬菜大棚管理中通常有溫度自動控制系統(tǒng),以控制蔬菜大棚溫度,適應(yīng)生產(chǎn)需要。 </p><p>  單片機微型計算機是微型計算機的一個重要分支,也是頗具生命力的機種。單片機微型計算機簡稱單片機,

13、特別適用于控制領(lǐng)域,故又稱為微控制器。單片機具有體積小、集成度高、性能穩(wěn)定、控制功能強、易擴展、低功耗、價格便宜等特點,所以單片機市場前景廣闊。</p><p>  本設(shè)計是通過單片機控制,來實現(xiàn)對蔬菜大棚溫度進行自動控制。系統(tǒng)以AT89C52單片機為基礎(chǔ),通過數(shù)字及模擬式對溫度進行采集并檢測,通過顯示屏顯示當前溫度。當采集到的溫度高于系統(tǒng)設(shè)定值,馬達將帶動風扇的轉(zhuǎn)動,實現(xiàn)自動控制大棚里的溫度。</p>

14、;<p>  【關(guān)鍵詞】大棚溫度控制系統(tǒng) AT89C52 DS18B20 LCD1602 直流馬達</p><p>  The Greenhouse Temperature Control System</p><p>  Based on AT89C52 MCU</p><p><b>  Abstract</b>&

15、lt;/p><p>  The growth of vegetables and temperature are closely related, for vegetable shed, one of the most important management factor is the temperature control. Temperature not appropriate, then stop the v

16、egetable growth or growth slowed, causing the immeasurable loss. So will always control temperature in vegetable growth for the range. If only on artificial control both human consumption, and easy to cause the error. Th

17、erefore, in modern management of vegetable shed, usually with temperature automati</p><p>  Single chip microcomputers are microcomputer as an important branch, is also a vitality of the model. Single chip m

18、icrocomputer hereinafter referred to as the single chip microcomputer, is particularly applicable to control field, so it is also called the micro controller. Single chip microcomputer with small size, high level of inte

19、gration, stable performance, easy to control function expansion, low power consumption, price cheap and so on, so the single chip microcomputer wide prospect of mark</p><p>  This design is through the singl

20、e-chip microcomputer control, to realize the canopy temperature vegetables for automatic control. System based on single chip microcomputer AT89C52, through the digital and analog temperature in acquisition and detection

21、, through the screen shows the current temperature. When the collected temperature higher than system setting, motors will drive the rotation of the fan, and realize the automatic control the temperature of the shelter.&

22、lt;/p><p>  【Key words】Temperature control of the greenhouses system AT89C52 DS18B20 LCD1602 DC motor</p><p><b>  第1章 緒 論</b></p><p>  我國南方溫度嚴熱而漫長,只有大力推廣大棚蔬菜的種植

23、來滿足人們?nèi)粘I顚κ卟说男枰kS著人們生活水平的日益增長,對蔬菜的要求也較高,對大棚蔬菜的溫度控制就是一個重要因素。溫度過高,蔬菜就會停止生長或者糜爛。</p><p>  本系統(tǒng)仿真就基于單片機AT89C52實現(xiàn)對大棚溫度的自動化控制(實物焊接時則采用存儲器更強大的AT89S52)。用數(shù)字溫度計DS18B20采集,將采集到的溫度用顯示屏顯示,再根據(jù)采集到的溫度作分析來控制馬達的轉(zhuǎn)或停,從而實現(xiàn)對大棚溫度的控制

24、。</p><p>  1.1 系統(tǒng)的概述</p><p>  應(yīng)用自動控制和電子計算機實現(xiàn)農(nóng)業(yè)生產(chǎn)和管理的自動化,是農(nóng)業(yè)現(xiàn)代化的重要標志之一。近年來電子技術(shù)和信息技術(shù)的飛速發(fā)展,帶來了溫室控制與管理技術(shù)方面的一場革命,隨著“設(shè)施農(nóng)業(yè)”、“虛擬農(nóng)業(yè)”等新名稱的出現(xiàn)。溫度計算機控制與管理系統(tǒng)正在不斷吸收自動控制和信息管理領(lǐng)域的理論和方法,結(jié)合溫室作物種植的特點,不斷創(chuàng)新,逐步完善,從而使溫

25、室種植業(yè)實現(xiàn)真正意義上的現(xiàn)代化,產(chǎn)業(yè)化。國內(nèi)外度計算機控制技術(shù)的發(fā)展善計算機的發(fā)展最早可以追溯到上個世紀的40年代,但將計算機用于環(huán)境控制則開始于20世紀60年代。20世紀80年代初誕生了第一批溫室控制計算機,此后溫度計算機控制及管理技術(shù)便函先在發(fā)達國家得到廣泛應(yīng)用,后來各發(fā)展中國家也都紛紛引進,開發(fā)出適合自己的系統(tǒng)。這在給各國帶來了巨大的經(jīng)濟效益的同時,也極大地推動了各國農(nóng)業(yè)的現(xiàn)代化進程。</p><p>  

26、本系統(tǒng)以AT89C52單片機為控制核心,主要是為了對蔬菜大棚內(nèi)的溫度的檢測與控制而設(shè)計的。該測控儀具有檢測精度高、使用簡單、成本較低和工作穩(wěn)定可靠等特點,所以具有一定的應(yīng)用前景。</p><p><b>  1.2 系統(tǒng)的要求</b></p><p>  本系統(tǒng)通過單片機AT89C52控制,用DS18B20數(shù)字溫度計采集溫度。通過LCD1602液晶顯示屏顯示當前溫度,

27、當檢測到溫度高于系統(tǒng)設(shè)定溫度值,馬達將帶動風扇的轉(zhuǎn)動,實現(xiàn)自動控制降低大棚里的溫度。本設(shè)計將實現(xiàn)大棚溫度的自動化控制。</p><p>  用protues7.7仿真軟件繪制電路原理圖,再根據(jù)電路原理圖焊接電路板。</p><p>  1.3 系統(tǒng)的主要模塊</p><p>  1.3.1 本系統(tǒng)的主要組成部分</p><p>  本系統(tǒng)為

28、一個全自動溫度檢測與控制系統(tǒng),由以下幾個部分組成:AT89C52單片機,復(fù)位電路,溫度檢測電路,顯示電路,馬達。組成圖如圖1-1。</p><p>  圖 1-1 溫度自動控制主要組成部分</p><p>  由圖1-1所示,本系統(tǒng)的核心部分是AT89C52,此芯片是該電路的樞紐。由它先控制著溫度的檢測,用檢測到的溫度實現(xiàn)馬達的自動控制,以及顯示。若檢測到的溫度高于設(shè)定的值則驅(qū)動馬達轉(zhuǎn)動。

29、</p><p>  1.3.2 各部分的功能</p><p>  AT89C52單片機:它是系統(tǒng)的中央處理器,擔負著系統(tǒng)的控制和運算。溫度檢測裝置:DS18B20數(shù)字溫度計對大棚內(nèi)溫度進行采集,將溫度轉(zhuǎn)換成數(shù)字。顯示設(shè)備:主要是用于顯示檢測到的大棚溫度。馬達:主要用于帶動風扇的轉(zhuǎn)動。按鍵電路:設(shè)置系統(tǒng)時間和參考溫度值。</p><p>  1.3.3 工作原理&

30、lt;/p><p>  首先對硬件系統(tǒng)端口定義,DS18B20定義端口為P1.7, P0口控制液晶LCM1602的顯示,定義端口P3.7為馬達控制端口。首先對溫度采集,將采集到的溫度轉(zhuǎn)換數(shù)字,采集到的溫度由LCM液晶顯示屏顯示。再將采集到的溫度與系統(tǒng)設(shè)定溫度值進行比較,而控制P3.7的電平輸出。</p><p>  第2章 設(shè)計的理論基礎(chǔ)</p><p>  整個控制系

31、統(tǒng)分為硬件電路設(shè)計和軟件程序設(shè)計兩部分。根據(jù)系統(tǒng)具體要求,可以對每一個具體部分進行分析設(shè)計。但要實現(xiàn)對各部分的設(shè)計,需要充分了解各部分的理論基礎(chǔ)。本設(shè)計系統(tǒng)的基本組成單元包括:單片機控制單元,復(fù)位電路,按鍵電路,DS18B20溫度檢測電路,LCD1602顯示電路,直流馬達。本章將逐一進行介紹。</p><p>  2.1 AT89C52的工作原理</p><p>  2.1.1 CPU的

32、結(jié)構(gòu)</p><p>  CPU是單片機內(nèi)部的核心部分,是單片機的指揮和執(zhí)行機構(gòu),它決定了單片機的主要功能特性。從功能上看,CPU包括兩個基本部分:運算器和控制器。下面說明控制器和運算器[1]。</p><p>  運算器包括算術(shù)邏輯運算部件ALU、累加器ACCC、B寄存器、暫存寄存器TMP1和TMP2、程序狀態(tài)寄存器PSW、BCD碼運算調(diào)整電路等。為了提高數(shù)據(jù)處理和位操作能力,片內(nèi)設(shè)有

33、一些專用的寄存器,而且還增強了為處理邏輯電路的功能。在進行位操作是,進位位CY作為位操作累加器,整個位操作系統(tǒng)構(gòu)成一臺布爾處理機。</p><p>  2.1.2 CPU的結(jié)構(gòu)I/O口結(jié)構(gòu)</p><p>  AT89C52單片機有4個8位并行I/O接口,記作P0、P1、P2和P3,每個端口都是8位準雙向口,共占32根引腳。每一條I/O線都能獨立地用作輸入或輸出。每個端口都包括一個鎖存器,

34、一個輸出驅(qū)動器和輸入緩沖器,作輸出時數(shù)據(jù)可以鎖存,作輸入時數(shù)據(jù)可以緩沖,但是這四個通道的功能完全不同。</p><p>  在無片外擴展存儲器的系統(tǒng)中,這四個端口的每一位都可以作為準雙向I/O端口使用,在具有片外擴展存儲器系統(tǒng)中,P2口送出高8位地址,P0口為雙向總線,分時送出低8位地址和數(shù)據(jù)的輸入/輸出。</p><p>  2.1.3 程序存儲器</p><p>

35、;  程序存儲器用于存放編好的程序和表格常數(shù),通常該區(qū)域具有不同的保護措施,以防止該區(qū)域的內(nèi)容被破壞。程序存儲器通過16位程序計數(shù)器尋址,尋址能力為64K字節(jié)。這似的能在6K地址空間內(nèi)任意尋址,但沒有指令使程序能控制從程序存儲器空間轉(zhuǎn)移到數(shù)據(jù)存儲空間。對AT89C52芯片來說,片內(nèi)有4K字節(jié)ROM/EPROM,片外可擴展60K字節(jié)EPROM,片內(nèi)和片外程序存儲器統(tǒng)一編址。</p><p>  在程序存儲器中,有6

36、個地址單元被保留用于某些特定的地址。 如表2.1所示:</p><p>  表 2.1 AT89C52的復(fù)位、中斷入口地址</p><p>  數(shù)據(jù)存儲器用于存放運算的中間結(jié)果、數(shù)據(jù)暫存和緩沖以及標志位等。AT89C51數(shù)據(jù)存儲器空間也分為內(nèi)片和外片兩大部分,即片內(nèi)數(shù)據(jù)存儲器RAM和片外數(shù)據(jù)存儲器RAM。片內(nèi)數(shù)據(jù)存儲器最大可以尋址256個單元,片外最大可擴展64K字節(jié)RAM,并且片內(nèi)使用

37、的是MOV指令,片外64K ROM空間專門為MOVX指令所用。</p><p><b>  2.1.4 定時器</b></p><p>  AT89C51單片機的內(nèi)部有兩個16位可變成定時器0和定時器1,它們都有定時或是事件計數(shù)的功能,可用于定時控制、延時、對外部事件計數(shù)和檢測等場合。它們具有計數(shù)和定時兩種工作方式以及四種工作模式。兩個特殊功能寄存器用于確定定時器/計

38、數(shù)器的功能和操作方式。定時器T0的核心是一個加1計數(shù)器,它由8位寄存器TH0和TH1組成,可被變成為13位、16位、兩個分開的8位等不同的結(jié)構(gòu)。計數(shù)器的輸入脈沖源可以是外部脈沖源或系統(tǒng)時鐘震蕩器,計數(shù)器對著兩個輸入脈沖之一進行遞增計數(shù)。</p><p>  定時器T0具有方式0、方式1、方式2和方式3四種工作方式。T1具有方式0、方式1和方式2三種工作方式。不管是定時工作方式還是計數(shù)方式,定時器T0和T1在對內(nèi)部

39、時鐘或?qū)ν獠繒r間計數(shù)時,不占用CPU時間,除非定時器/計數(shù)器溢出,才可能中斷CPU的當前操作。由此可見,定時器是單片機中效率最高而且工作靈活的部件。</p><p>  2.1.5 中斷系統(tǒng)</p><p>  中斷是指中央CPU正在處理某事情的時候,外部發(fā)生了某一事件,請求COU迅速去處理,于是,CPU暫時中斷當前的工作,轉(zhuǎn)入處理所發(fā)生的事件;中斷服務(wù)處理完成以后,再回到原來被中斷的工作

40、,這樣的過程稱為中斷[2]。</p><p>  AT89C52單片機有五個中斷請求源。其中,兩個外部中斷源;兩個片內(nèi)定時器/計數(shù)器的溢出中斷源TE0和TF1;一個片內(nèi)串行口接受或發(fā)送中斷源RI或TI。這些中斷請求分別由單片機的特殊功能寄存器TCON和SCON的相應(yīng)位鎖存。當幾個中斷源同時向CPU請求中斷,要求CPU提供服務(wù)的時候,就存在CPU優(yōu)先響應(yīng)哪一個中斷請求,于是一些微處理器和單片機規(guī)定了每個中斷源的優(yōu)先

41、級別。</p><p>  2.2 單總線數(shù)字溫度傳感器DS18B20檢測電路</p><p>  由于傳統(tǒng)的熱敏電阻等測溫元件測出的一般都是電壓,再轉(zhuǎn)換成對應(yīng)的溫度,需要比較多的外部元件支持,且硬件電路復(fù)雜,制作成本相對較高。這里采用DALLAS公司的數(shù)字溫度傳感器DS18B20作為測溫元件。</p><p>  2.2.1 DS18B20簡單介紹</p&

42、gt;<p>  DALLAS 最新單線數(shù)字溫度傳感器DS18B20是一種新型的“一線器件”,其體積更小、更適用于多種場合、且適用電壓更寬、更經(jīng)濟。DALLAS 半導(dǎo)體公司的數(shù)字化溫度傳感器DS18B20是世界上第一片支持“一線總線”接口的溫度傳感器。溫度測量范圍為-55~+125 攝氏度,可編程為9位~12 位轉(zhuǎn)換精度,測溫分辨率可達0.0625攝氏度,分辨率設(shè)定參數(shù)以及用戶設(shè)定的報警溫度存儲在EEPROM 中,掉電后依

43、然保存。被測溫度用符號擴展的16位數(shù)字量方式串行輸出;其工作電源既可以在遠端引入,也可以采用寄生電源方式產(chǎn)生;多個DS18B20可以并聯(lián)到3 根或2 根線上,CPU只需一根端口線就能與諸多DS18B20 通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。因此用它來組成一個測溫系統(tǒng),具有線路簡單,在一根通信線,可以掛很多這樣的數(shù)字溫度計,十分方便[3]。</p><p>  2.2.2 DS18B20 的性

44、能特點</p><p>  獨特的單線接口方式,DS18B20在與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊。DS18B20支持多點組網(wǎng)功能,多個DS18B20可以并聯(lián)在唯一的三線上,實現(xiàn)組網(wǎng)多點測溫。DS18B20在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。適應(yīng)電壓范圍更寬,電壓范圍:3.0~5.5V,在寄生電源方式下可由數(shù)據(jù)線供電。溫范圍-5

45、5℃~+125℃,在-10~+85℃時精度為±0.5。零待機功耗??删幊痰姆直媛蕿?~12位,對應(yīng)的可分辨溫度分別為0.5℃、0.25℃、0.125℃和0.0625℃,可實現(xiàn)高精度測溫。在9位分辨率時最多在93.75ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12位分辨率時最多在750ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快。用戶可定義報警設(shè)置。報警搜索命令識別并標志超過程序限定溫度的器件。測量結(jié)果直接輸出數(shù)字溫度信號,以"一線總線"

46、;串行傳送給CPU,同時可傳送CRC校驗碼,具有極強的抗干擾糾錯能力。負電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作。以上特點使DS18B20非常適用與多點、遠距離溫度檢測系統(tǒng)。</p><p>  DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH和TL、配置寄存器。DS18B20的管腳排列、各種封裝形式如圖 4 所示,DQ 為數(shù)據(jù)輸入/輸出引腳

47、。開漏單總線接口引腳。當被用著在寄生電源下,也可以向器件提供電源;GND為地信號;VDD為可選擇的VDD引腳。當工作于寄生電源時,此引腳必須接地。 </p><p>  2.2.3 DS18B20的測溫原理</p><p>  DS18B20的測溫原理,低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的

48、信號作為減法計數(shù)器2的脈沖輸入,還隱含著計數(shù)門,當計數(shù)門打開時,DS18B20就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖后進行計數(shù),進而完成溫度測量.計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將-55 ℃所對應(yīng)的基數(shù)分別置入減法計數(shù)器1和溫度寄存器中,減法計數(shù)器1和溫度寄存器被預(yù)置在-55 ℃所對應(yīng)的一個基數(shù)值[4]。</p><p>  減法計數(shù)器1對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行減法計數(shù),當減法計數(shù)

49、器1的預(yù)置值減到0時溫度寄存器的值將加1,減法計數(shù)器 1的預(yù)置將重新被裝入,減法計數(shù)器1重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進行計數(shù),如此循環(huán)直到減法計數(shù)器2計數(shù)到0時,停止溫度寄存器值的累加,此時溫度寄存器中的數(shù)值即為所測溫度。斜率累加器用于補償和修正測溫過程中的非線性其輸出用,于修正減法計數(shù)器的預(yù)置值,只要計數(shù)門仍未關(guān)閉就重復(fù)上述過程,直至溫度寄存器值達到被測溫度值,這就是DS18B20的測溫原理。</p><

50、p>  另外,由于DS18B20單線通信功能是分時完成的,它有嚴格的時隙概念,因此讀寫時序很重要。系統(tǒng)對DS18B20的各種操作必須按協(xié)議進行。操作協(xié)議為:初始化DS18B20→發(fā)ROM功能命令→發(fā)存儲器操作命令→處理數(shù)據(jù)[5]。</p><p>  2.3 LCD1602液晶顯示器</p><p>  2.3.1 LCD1602簡介</p><p>  字

51、符型LCD1602通常有14條引腳線或16條引腳線的LCD,多出來的2條線是背光電源線VCC(15腳)和地線GND(16腳),其控制原理與14腳的LCD完全一樣,引腳定義如表2.2所示: </p><p>  表 2.2引腳接口說明表</p><p>  第1腳:VSS為地電源。</p><p>  第2腳:VDD接5V正電源。</p><p&

52、gt;  第3腳:VL為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。</p><p>  第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。</p><p>  第5腳:R/W為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當RS和R/W共同為低電平時可以寫入指令或者顯

53、示地址,當RS為低電平R/W為高電平時可以讀忙信號,當RS為高電平R/W為低電平時可以寫入數(shù)據(jù)。</p><p>  第6腳:E端為使能端,當E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。</p><p>  第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。</p><p>  第15腳:背光源正極。</p><p>  第16腳:背光源負極。&l

54、t;/p><p>  2.3.2 1602LCD的指令說明及時序</p><p>  1602液晶模塊內(nèi)部的控制器共有11條控制指令[6],如表2.3所示:</p><p>  表 2.3 控制命令表</p><p>  1602液晶模塊的讀寫操作、屏幕和光標的操作都是通過指令編程來實現(xiàn)的。1為高電平、0為低電平。</p><

55、;p>  指令1:清顯示,指令碼01H,光標復(fù)位到地址00H位置。</p><p>  指令2:光標復(fù)位,光標返回到地址00H。</p><p>  指令3:光標和顯示模式設(shè)置 I/D:光標移動方向,高電平右移,低電平左移 S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。</p><p>  指令4:顯示開關(guān)控制。 D:控制整體顯示的開與關(guān),

56、高電平表示開顯示,低電平表示關(guān)顯示 C:控制光標的開與關(guān),高電平表示有光標,低電平表示無光標 B:控制光標是否閃爍,高電平閃爍,低電平不閃爍。</p><p>  指令5:光標或顯示移位 S/C:高電平時移動顯示的文字,低電平時移動光標。</p><p>  指令6:功能設(shè)置命令 DL:高電平時為4位總線,低電平時為8位總線 N:低電平時為單行顯示,高電平時雙行顯示 F: 低電平時顯示5x

57、7的點陣字符,高電平時顯示5x10的點陣字符。</p><p>  指令7:字符發(fā)生器RAM地址設(shè)置。</p><p>  指令8:DDRAM地址設(shè)置。</p><p>  指令9:讀忙信號和光標地址 BF:為忙標志位,高電平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為低電平表示不忙。</p><p><b>  指令10:寫數(shù)據(jù)。

58、</b></p><p><b>  指令11:讀數(shù)據(jù)。</b></p><p>  LCD1602讀寫時序如表2.4所示:</p><p>  表2.4 基本操作時序表</p><p><b>  2.4 直流馬達</b></p><p>  電動馬達,又稱為馬

59、達或電動機,是一種將電能轉(zhuǎn)化成機械能,并可再使用機械能產(chǎn)生動能,用來驅(qū)動其他裝置的電氣設(shè)備。 電動機種類非常繁多,但可大致分為交流電動機及直流電動機以用于不同的場合。</p><p>  2.4.1 馬達工作的原理</p><p>  馬達的旋轉(zhuǎn)原理的依據(jù)為佛來明左手定則,當導(dǎo)線置放于磁場內(nèi),若導(dǎo)線通上電流,則導(dǎo)線會切割磁場線使導(dǎo)線產(chǎn)生移動。 電流進入線圈產(chǎn)生磁場,利用電流的磁效應(yīng),使電磁

60、鐵在固定的磁鐵內(nèi)連續(xù)轉(zhuǎn)動的裝置,可以將電能轉(zhuǎn)換成力學(xué)能。 與永久磁鐵或由另一組線圈所產(chǎn)生的磁場互相作用產(chǎn)生動力 直流馬達的原理是定子不動,轉(zhuǎn)子依相互作用所產(chǎn)生作用力的方向運動[7]。 </p><p>  電樞:可以繞軸心轉(zhuǎn)動的軟鐵芯纏繞多圈線圈。 場磁鐵:產(chǎn)生磁場的強力永久磁鐵或電磁鐵。 集電環(huán):線圈約兩端接至兩片半圓形的集電環(huán),隨線圈轉(zhuǎn)動,可供改變電流方向的變向器。每轉(zhuǎn)動半圈,線圈上的電流方向就改變一次。 電

61、刷:通常使用碳制成,集電環(huán)接觸固定位置的電刷,用以接至電源。 </p><p>  2.4.2 馬達的基本構(gòu)造</p><p>  電動機的種類很多,以基本結(jié)構(gòu)來說,其組成主要由定子和轉(zhuǎn)子所構(gòu)成。 定子在空間中靜止不動,轉(zhuǎn)子則可繞軸轉(zhuǎn)動,由軸承支撐。 定子與轉(zhuǎn)子之間會有一定空氣間隙,以確保轉(zhuǎn)子能自由轉(zhuǎn)動。 定子與轉(zhuǎn)子繞上線圈,通上電流產(chǎn)生磁場,就成為電磁鐵,定子和轉(zhuǎn)子其中之一亦可為永久磁鐵

62、[8]。</p><p>  第3章 系統(tǒng)的硬件組成電路設(shè)計</p><p>  系統(tǒng)的硬件組成部分包括:主控制器AT89C52單片機、溫度傳感器DS18B20、顯示電路LCD1602、馬達、報警裝置等構(gòu)成。AT89C52連接各模塊的主控制端口,初步選定將要運用到的電子元器件,再用Protues繪制原理圖,再根據(jù)原理圖焊接電路板。</p><p>  3.1 系統(tǒng)總

63、硬件設(shè)計</p><p>  首先對硬件系統(tǒng)18B20定義端口為P1.3,P2.4,P2.5,P2.6和P0口控制液晶LCM1602的顯示,定義端口P1.5為馬達控制端口,P1.7為喇叭控制端口。首先對溫度采集,將采集到的溫度轉(zhuǎn)換數(shù)字,采集到的溫度由LCM液晶顯示屏顯示。再將采集到的溫度所屬軟件設(shè)置的哪個范圍,而控制P1.5的電平輸出。電路原理圖如3-1所示:</p><p>  圖 3

64、-1 電路原理圖</p><p>  電路原理圖用Protues7.7電路仿真軟件繪制而成。用Protues7.7電路仿真軟件軟件繪制電路原理圖方便,快捷。Protues7.7電路仿真軟件有豐富的元件庫,智能的器件搜索,智能化的連線,可輸出高質(zhì)量的圖紙。電路原理圖清晰明了[9]。</p><p><b>  3.2 時鐘電路</b></p><p&

65、gt;  AT89C52芯片內(nèi)部有一個高增益反向放大器,用于構(gòu)成震蕩器。反向放大器的輸入端為XTAL1,輸出端為XTAL2。在TXAL1和XTAL2兩端跨接由石英晶體及兩個電容構(gòu)成的自激震蕩器[10],如圖3-2所示。電容器C1和C2取22pF,選用不同的電容量對震蕩頻率有微調(diào)作用。但石英晶體本身的標定頻率才是單片機震蕩頻率的決定因素。</p><p>  圖 3-2 時鐘電路</p><p

66、>  時鐘電路中,兩個電容都選擇22pF的電容,電容各一端接與晶振相連,各一端接地。選擇的晶振是頻率為12MHZ。此模塊就是產(chǎn)生像時鐘一樣準確的振蕩電路。</p><p>  3.3 AT89C52的復(fù)位電路</p><p>  AT89C52單片機通常采用上電自動復(fù)位和開關(guān)手動復(fù)位兩種方式。本系統(tǒng)采用上電復(fù)位電路,如圖3-3所示,所謂上電復(fù)位,是指單片機只要一上電,便自動地進入復(fù)位

67、狀態(tài)。在通電瞬間,電容C通過電阻R充電,RST端出現(xiàn)正脈沖,用以復(fù)位[10]。</p><p>  圖 3-3 復(fù)位電路</p><p>  復(fù)位電路的基本功能是:系統(tǒng)上電時提供復(fù)位信號,直至系統(tǒng)電源穩(wěn)定后,撤銷復(fù)位信號。為可靠起見,電源穩(wěn)定后還要經(jīng)一定的延時才撤銷復(fù)位信號,以防電源開關(guān)或電源插頭分-合過程中引起的抖動而影響復(fù)位。RC復(fù)位電路可以實現(xiàn)上述基本功能,但解決不了電源毛刺和電源

68、緩慢下降等問題,而其調(diào)整 RC 常數(shù)改變延時會令驅(qū)動能力變差。</p><p>  3.4 單總線數(shù)字溫度傳感器DS18B20檢測電路</p><p>  DQ 為數(shù)據(jù)輸入/輸出引腳,連接P1.7。開漏單總線接口引腳。當被用著在寄生電源下,也可以向器件提供電源,GND為地信號;VCC為電源信號。圖3-4為DS18B20檢測電路。</p><p>  圖 3-4 D

69、S18B20檢測電路</p><p>  3.5 LCD1602顯示模塊</p><p>  用AT89C52的P0口作為數(shù)據(jù)線,用P2.1、P2.2、P2.3分別作為LCD的RS 、R/W、E。其中E是下降沿觸發(fā)的片選信號,連接P2.3,R/W是讀寫信號,連接P2.2,RS是寄存器選擇信號,連接P2.1。圖3-5為LCD1602的硬件連接。</p><p>  

70、圖3-5 LCD1602的硬件連接</p><p>  VEE用連接一阻值為10K的電阻,主要用于調(diào)節(jié)對比度的調(diào)整。接高電源時對比度最低,接低電源時,對比度最高。對比度過高時,會產(chǎn)生“鬼影”。因此連接一10K的電阻用以調(diào)整。當P0口作為I/O用時需要上拉電阻,如圖3.5接一排阻,用于上拉[11]。</p><p><b>  3.6 驅(qū)動電路</b></p&g

71、t;<p>  系統(tǒng)使用的是直流馬達,包含周圍磁場、電刷、整流子等元件,電刷和整流子將外部所供應(yīng)的直流電源,持續(xù)地供應(yīng)給轉(zhuǎn)子的線圈,並適時地改變電流的方向,使轉(zhuǎn)子能以同一方向持續(xù)旋轉(zhuǎn)。直流馬達的優(yōu)點有速度調(diào)整容易,啟動轉(zhuǎn)矩較大等,但是電刷與整流子保養(yǎng)維修不易。直流馬達廣泛的用在消費電子產(chǎn)品及玩具,如電動刮胡刀、錄音機、CD唱機等,而大輸出功率的直流電動機則是用在電車,快速電梯,工作母機等。圖3-6為硬件連接圖。 &l

72、t;/p><p>  圖 3-6 驅(qū)動電路</p><p>  第4章 系統(tǒng)軟件的設(shè)計</p><p>  一個應(yīng)用系統(tǒng)要完成各項功能,首先必須有較完善的硬件作保證。同時還必須得到相應(yīng)設(shè)計合理的軟件的支持,尤其是微機應(yīng)用高速發(fā)展的今天,許多由硬件完成的工作,都可通過軟件編程而代替。甚至有些必須采用很復(fù)雜的硬件電路才能完成的工作,用軟件編和有時會變得很簡單。因此充分利用其

73、內(nèi)部豐富的硬件資源和軟件資源。</p><p>  程序設(shè)計語言有三種:機器語言、匯編語言、高級語言。本系統(tǒng)運用的是高級語言所編寫,也就是C語言。</p><p><b>  4.1主程序設(shè)計</b></p><p>  從軟件的功能不同可分為四大類:一是檢測軟件,它是用來檢測溫度。二是顯示部分,用來顯示所檢測到的溫度。三是控制部分,用來控制馬

74、達。每一個執(zhí)行軟件也就是一個小的功能執(zhí)行模塊。這里將各執(zhí)行模塊一一列出,并為每一個執(zhí)行模塊進行功能定義。圖4-1為軟件設(shè)計流程圖。</p><p>  圖 4-1 軟件設(shè)計流程圖</p><p><b>  4.2 溫度檢測</b></p><p>  4.2.1讀取溫度設(shè)計</p><p>  DSl8B20可以從單總

75、線獲取電源,當信號線為高電平時,將能量貯存在內(nèi)部電容器中;當單信號線為低電平時,將該電源斷開,直到信號線變?yōu)楦唠娖街匦陆由霞纳娫礊橹?。此外,還可外接5 V電源,給DS18B20供電[12]。圖4-2</p><p>  圖 4-2 18B20讀取溫度流程圖</p><p>  讀取溫度子程序的主要功能是讀出RAM中的9個字節(jié),在讀出時需進行CRC校驗,校驗有錯時不進行溫度數(shù)據(jù)的改寫。D

76、S18B20的各個命令對時序的要求特別嚴格,所以必須按照所要求的時序才能達到預(yù)期的目的,同時,要注意讀進來的是高低位在后,低位在前,共12位數(shù),小數(shù)4位,整數(shù)7位,還有一位符號位。</p><p>  讀取溫度的主程序如下:</p><p>  void ReadTemperature(void)</p><p><b>  {</b><

77、/p><p>  unsigned char a=0;</p><p>  unsigned char b=0;</p><p>  unsigned char t=0;</p><p>  Init_DS18B20();</p><p>  WriteOneChar(0xCC); // 跳過讀序號列號的操作<

78、;/p><p>  WriteOneChar(0x44); // 啟動溫度轉(zhuǎn)換</p><p>  delay_18B20(100); // this message is very important</p><p>  Init_DS18B20();</p><p>  WriteOneChar(0xCC); //跳過讀序號列

79、號的操作</p><p>  WriteOneChar(0xBE); //讀取溫度寄存器等(共可讀9個寄存器)前兩個就是溫度</p><p>  delay_18B20(100);</p><p>  a=ReadOneChar(); //讀取溫度值低位</p><p>  b=ReadOneChar(); //讀取溫度值高

80、位</p><p>  temp1=b<<4;</p><p>  temp1+=(a&0xf0)>>4;</p><p>  temp2=a&0x0f;</p><p>  temp=((b*256+a)>>4); //當前采集溫度值除16得實際溫度值</p><

81、p><b>  }</b></p><p>  4.2.2 溫度數(shù)據(jù)處理設(shè)計</p><p>  讀出溫度數(shù)據(jù)后,TempL的低四位為溫度的小數(shù)部分,可以精確到0.0625℃,TempL的高四位和TempH的低四位為溫度的整數(shù)部分,TempH的高四位全部為1表示負數(shù),全為0表示正數(shù)。所以先將數(shù)據(jù)提取出來,分為三個部分:小數(shù)部分、整數(shù)部分和符號部分。小數(shù)部分進行

82、四舍五入處理:大于0.5℃的話,向個位進1;小于0.5℃的時候,舍去不要。當數(shù)據(jù)是個負數(shù)的時候,顯示之前要進行數(shù)據(jù)轉(zhuǎn)換,將其整數(shù)部分取反加一。還因為DS18B20最低溫度只能為-55℃,所以可以將整數(shù)部分的最高位換成一個“-”,表示為負數(shù)。圖4-3為溫度數(shù)據(jù)處理流程圖。</p><p>  圖 4-3 溫度數(shù)據(jù)處理流程</p><p>  由于DS18B20轉(zhuǎn)換后的代碼并不是實際的溫度值,

83、所以要進行計算轉(zhuǎn)換。溫度高字節(jié)高5位是用來保存溫度的正負,高字節(jié)低3位和低字節(jié)來保存溫度值。其中低字節(jié)的低4位來保存溫度的小數(shù)位。由于本程序采用的是0.0625的精度,小數(shù)部分的值,可以用后四位代表的實際數(shù)值乘以0.0625,得到真正的數(shù)值,數(shù)值可能帶幾個小數(shù)位,所以采取小數(shù)舍入,保留一位小數(shù)即可。也就說,本系統(tǒng)的溫度精確到了0.1度[13]。</p><p>  溫度數(shù)據(jù)處理主程序如下:</p>

84、<p>  str[0]=TempH/100; //十位溫度</p><p>  str[1]=(TempH%100)/10; //十位溫度</p><p>  str[2]=(TempH%100)%10; //個位溫度,帶小數(shù)點</p><p>  str[3]=TempL;</p><p>  if(flag_get==1)

85、 //定時讀取當前溫度</p><p><b>  {</b></p><p>  temp=ReadTemperature();</p><p>  if(temp&0x8000)</p><p><b>  {</b></p><p>  str[0]=0

86、x40;//負號標志</p><p>  temp=~temp; // 取反加1</p><p><b>  temp +=1;</b></p><p><b>  }</b></p><p><b>  else</b></p><p><b&

87、gt;  str[0]=0;</b></p><p>  TempH=temp>>4;</p><p>  TempL=temp&0x0F;</p><p>  TempL=TempL*6/10;//小數(shù)近似處理</p><p>  flag_get=0;</p><p>  4.3

88、液晶顯示器LCM1602</p><p>  4.3.1 LCM1602初始化 </p><p>  LCM1602顯示函數(shù)如下[14]</p><p><b>  端口定義如下:</b></p><p>  #define DATAPORT P0

89、 //定義P0口為LCD通訊端口</p><p>  sbit LCM_RS=P2^0;//數(shù)據(jù)/命令端</p><p>  sbit LCM_RW=P2^1;//讀/寫選擇端</p><p>  sbit LCM_EN=P2^2;</p><p>  /***************液晶顯示子函數(shù)

90、1正常顯示*****************/</p><p>  void displayfun1(void)</p><p><b>  {</b></p><p>  WriteCommandLCM(0x0c,1); //顯示屏打開,光標不顯示,不閃爍,檢測忙信號</p><p>  DisplayList

91、Char(0,0,str0);</p><p>  DisplayListChar(0,1,str1);</p><p>  DisplayOneChar(3,0,hour/10+0x30); //液晶上顯示小時</p><p>  DisplayOneChar(4,0,hour%10+0x30);</p><p>  Disp

92、layOneChar(6,0,minite/10+0x30);//液晶上顯示分</p><p>  DisplayOneChar(7,0,minite%10+0x30);</p><p>  DisplayOneChar(9,0,seconde/10+0x30); //液晶上顯示秒</p><p>  DisplayOneChar(10,0,secon

93、de%10+0x30);</p><p>  DisplayOneChar(4,1,K/10+0x30); //液晶上顯示設(shè)定的溫度</p><p>  DisplayOneChar(5,1,K%10+0x30);</p><p>  DisplayOneChar(11,1,temp1/10+0x30); //液晶上顯示測得的溫度 &l

94、t;/p><p>  DisplayOneChar(12,1,temp1%10+0x30);</p><p>  DisplayOneChar(14,1,temp2/10+0x30);</p><p>  if(ON_OFF==0) //若溫控標志為0</p><p><b>  {</b></p

95、><p>  DisplayOneChar(14,0,0x4f); // 液晶上顯示不控溫的標志</p><p>  DisplayOneChar(15,0,0x46);</p><p><b>  }</b></p><p><b>  else</b></p><p&g

96、t;<b>  {</b></p><p>  DisplayOneChar(14,0,0x4f); // 液晶上顯示控溫的標志</p><p>  DisplayOneChar(15,0,0x4e);</p><p>  if(outflag==1)</p><p>  DisplayOneChar(0,0,

97、0x7c); </p><p><b>  else</b></p><p>  DisplayOneChar(0,0,0xef);</p><p><b>  }</b></p><p><b>  }</b></p><p>  /****

98、********液晶顯示子函數(shù)2***************/</p><p>  void displayfun2(void)</p><p><b>  {</b></p><p>  WriteCommandLCM(0x0c,1); //顯示屏打開,光標不顯示,不閃爍,檢測忙信號</p><p>  Dis

99、playListChar(0,0,str0);</p><p>  DisplayListChar(0,1,str1);</p><p>  DisplayOneChar(6,0,minite/10+0x30);</p><p>  DisplayOneChar(7,0,minite%10+0x30);</p><p>  Display

100、OneChar(9,0,seconde/10+0x30);</p><p>  DisplayOneChar(10,0,seconde%10+0x30);</p><p>  DisplayOneChar(4,1,K/10+0x30); </p><p>  DisplayOneChar(5,1,K%10+0x30);</p><p&g

101、t;  DisplayOneChar(11,1,temp1/10+0x30); </p><p>  DisplayOneChar(12,1,temp1%10+0x30);</p><p>  DisplayOneChar(14,1,temp2/10+0x30);</p><p>  WriteCommandLCM(0x0f,1); //顯示

102、屏打開,光標顯示,閃爍,檢測忙信號</p><p>  DisplayOneChar(3,0,hour/10+0x30);</p><p>  DisplayOneChar(4,0,hour%10+0x30);</p><p><b>  }</b></p><p>  /**************液晶顯示子函數(shù)3*

103、****************/</p><p>  void displayfun3(void)</p><p><b>  {</b></p><p>  WriteCommandLCM(0x0c,1); //顯示屏打開,光標不顯示,不閃爍,檢測忙信號</p><p>  DisplayListChar(0,

104、0,str0);</p><p>  DisplayListChar(0,1,str1);</p><p>  DisplayOneChar(3,0,hour/10+0x30);</p><p>  DisplayOneChar(4,0,hour%10+0x30); </p><p>  DisplayOneChar(9,0,second

105、e/10+0x30);</p><p>  DisplayOneChar(10,0,seconde%10+0x30);</p><p>  DisplayOneChar(4,1,K/10+0x30); </p><p>  DisplayOneChar(5,1,K%10+0x30);</p><p>  DisplayOneChar

106、(11,1,temp1/10+0x30); </p><p>  DisplayOneChar(12,1,temp1%10+0x30);</p><p>  DisplayOneChar(14,1,temp2/10+0x30);</p><p>  WriteCommandLCM(0x0f,1); //顯示屏打開,光標顯示,閃爍,檢測忙信號

107、</p><p>  DisplayOneChar(6,0,minite/10+0x30);</p><p>  DisplayOneChar(7,0,minite%10+0x30);</p><p><b>  }</b></p><p>  /**************液晶顯示子函數(shù)4 **************

108、***/</p><p>  void displayfun4(void)</p><p><b>  {</b></p><p>  WriteCommandLCM(0x0c,1); //顯示屏打開,光標不顯示,不閃爍,檢測忙信號</p><p>  DisplayListChar(0,0,str0);</

109、p><p>  DisplayListChar(0,1,str1);</p><p>  DisplayOneChar(3,0,hour/10+0x30);</p><p>  DisplayOneChar(4,0,hour%10+0x30); </p><p>  DisplayOneChar(6,0,minite/10+0x30);<

110、/p><p>  DisplayOneChar(7,0,minite%10+0x30);</p><p>  DisplayOneChar(9,0,seconde/10+0x30);</p><p>  DisplayOneChar(10,0,seconde%10+0x30);</p><p>  DisplayOneChar(11,1,temp

111、1/10+0x30); </p><p>  DisplayOneChar(12,1,temp1%10+0x30);</p><p>  DisplayOneChar(14,1,temp2/10+0x30); </p><p>  WriteCommandLCM(0x0f,1); //顯示屏打開,光標顯示,閃爍,檢測忙信號</p&

112、gt;<p>  DisplayOneChar(4,1,K/10+0x30); </p><p>  DisplayOneChar(5,1,K%10+0x30);</p><p><b>  }</b></p><p><b>  4.4馬達的控制</b></p><p> 

113、 當被測溫度低于系統(tǒng)設(shè)定溫度值時,P3.7角的輸出信號為1,馬達不轉(zhuǎn)動。當被測溫度高于系統(tǒng)設(shè)定溫度值時,P3.7角的輸出信號為0,馬達開始轉(zhuǎn)動。</p><p>  馬達的控制主程序如下:</p><p>  if(ON_OFF==1) //若溫控標志位1, 控制LAMP動作</p><p><b>  {</b></p

114、><p>  if(temp1>=K+1){outflag=1;OUT=0;}</p><p>  if(temp1<K)</p><p><b>  { </b></p><p>  delay_LCM(1000);</p><p>  if(temp1<K){outflag=0;

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論