版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 畢 業(yè) 設 計(論 文)</p><p> 基于單片機的全自動太陽能熱水器的控制</p><p><b> 器的設計</b></p><p> 學生姓名:</p><p> 學 號:</p><p> 所在系部:電氣信息系</p><p>
2、專業(yè)班級:電氣工程及其自動化</p><p> 指導教師:xx 講師</p><p> 日 期:二○一二年五月</p><p><b> 摘 要</b></p><p> 隨著人們生活水平的不斷提高,全球人口和經(jīng)濟規(guī)模的不斷增長,單片機控制無疑是人們追求的目標之一,它所給人帶來的方便也是不可否定的,其中,能源
3、使用帶來的環(huán)境問題及其誘因逐漸為人們所認識,“低碳經(jīng)濟”這一概念開始進入人們的視野。太陽能具有儲量的“無限性”、存在的普遍性,并且?guī)缀醪划a(chǎn)生任何污染。鑒于此,人們在大力的發(fā)展太陽能產(chǎn)業(yè)。太陽能熱水器順應時代發(fā)展的要求,滿足人們對環(huán)保綠色產(chǎn)品的需求。在人類文明程度日益提高的今天,它是現(xiàn)代文明社會的最佳選擇。</p><p> 本文提出了一種新型的太陽能熱水器控制系統(tǒng)設計方案。本設計采用MSC-51系列單片機AT8
4、9S52作為中央處理器,采用DS1302實時時鐘,12864點陣式液晶顯示屏等模塊,完成時間溫度水位的顯示,以及時間和溫度的設定等功能。</p><p> 關鍵字:太陽能熱水器;單片機;實時時鐘;液晶顯示屏</p><p><b> Abstract</b></p><p> With the continuous improvement
5、 of people's living standard, As the global population and economic growth, energy use of environmental problems and causes gradually recognized, "low-carbon economy," the concept became part of the people
6、of vision. Solar energy has reserves of the limitless ", the universality of existing, and almost does not produce any pollution. In view of this, people in the development of solar energy industry. Solar water heat
7、ers, in conformity with the requirements of the </p><p> A new solar water heater control system design. This design incorporates MSC-51 MCU AT89S52 as central processors, a real-time clock using DS1302, 12
8、864, dot-matrix LCD module, completion time display of the temperature level, as well as the time and temperature setting. </p><p> Keywords: Solar water heater chip clock LCD screen目 錄</p>&l
9、t;p><b> 摘 要i</b></p><p> Abstractii</p><p><b> 1 引言1</b></p><p> 1.1太陽能熱水器的研究現(xiàn)狀1</p><p> 1.2 太陽能熱水器的發(fā)展概況及市場競爭分析1</p><p&
10、gt; 1.3 太陽能熱水器的應用及意義2</p><p> 2太陽能熱水器控制系統(tǒng)的總體設計4</p><p><b> 2.1方案論證4</b></p><p> 2.2 總體設計5</p><p> 2.2.1太陽能熱水器的組成與工作原理5</p><p> 2.2.2
11、系統(tǒng)總體流程圖6</p><p> 3 太陽能熱水器控制系統(tǒng)的硬件設計7</p><p> 3.1 主控芯片模塊7</p><p> 3.1.1 主控芯片模塊電路7</p><p> 3.1.2 主控芯片簡介8</p><p> 3.2 實時時鐘模塊11</p><p>
12、 3.2.1 實時時鐘模塊電路11</p><p> 3.2.2 實時時鐘簡介12</p><p> 3.3 溫度傳感器模塊14</p><p> 3.3.1 溫度傳感器模塊電路14</p><p> 3.3.2 溫度傳感器簡介15</p><p> 3.4 液晶顯示模塊17</p>
13、<p> 3.4.1 液晶顯示模塊電路17</p><p> 3.4.2 液晶顯示屏簡介18</p><p> 3.5 鍵盤輸入模塊21</p><p> 4太陽能熱水器控制系統(tǒng)軟件設計. . . . . . . . . . . . . . . . . . .23</p><p> 4.1 KEIL uVISION
14、 3軟件環(huán)境23</p><p> 4.2 太陽能熱水器控制系統(tǒng)軟件設計流程圖23</p><p> 4.3 太陽能熱水器控制系統(tǒng)軟件功能的實施24</p><p> 4.3.1 初始化程序24</p><p> 4.3.2 按鍵檢測及處理程序25</p><p> 4.3.3 讀取溫度的程序28
15、</p><p> 5太陽能熱水器控制系統(tǒng)整體調(diào)試30</p><p> 5.1 Proteus仿真環(huán)境30</p><p> 5.2 太陽能熱水器控制系統(tǒng)調(diào)試過程31</p><p><b> 結論35</b></p><p><b> 參考文獻36</b&g
16、t;</p><p><b> 致謝37</b></p><p><b> 附錄38</b></p><p><b> 1 引言</b></p><p> 在我設計太陽能熱水器的控制系統(tǒng)之前,首先了解一下太陽能熱水器的組成與工作原理,了解一下太陽能熱水器的基本構架和
17、工作過程,以及太陽能熱水器發(fā)展概況和深遠利用價值。</p><p> 1.1太陽能熱水器的研究現(xiàn)狀</p><p> 隨著全球人口和經(jīng)濟規(guī)模的不斷增長,能源使用帶來的環(huán)境問題及其誘因逐漸為人們所認識,“低碳經(jīng)濟”這一概念開始進入人們的視野。人們在大力的發(fā)展太陽能產(chǎn)業(yè)。能源問題將更為突出:①從長遠來看,全球已探明的石油儲量只能用到2020 年,天然氣也只能延續(xù)到2040 年左右,即使儲量
18、豐富的煤炭資源也只能維持二三百年。②環(huán)境污染③溫室效應引起全球氣候變化。因此,人類在解決上述能源問題,實現(xiàn)可持續(xù)發(fā)展,只能依靠科技進步,大規(guī)模地開發(fā)利用可再生潔凈能源。</p><p> 太陽能具有:①儲量的“無限性”太陽每秒鐘放射的能量大約是1.6×10 的23 次方kW,一年內(nèi)到達地球表面的太陽能總量折合標準煤共約1.892×10 的13 次方千億t。②太陽能對于地球上絕大多數(shù)地區(qū)具有存
19、在的普遍性,可就地取用。 </p><p> 在世界范圍內(nèi),太陽能熱水器技術已很成熟,并已形成行業(yè),正在以優(yōu)良的性能不斷地沖擊電熱水器市場和燃氣熱水器市場。2000 年太陽能熱水器取代47000 套家用電熱水器;2000 年日本太陽能熱水器的擁有量將翻一番;以色列更是明文規(guī)定,所有新建房屋必須配備太陽能熱水器。目前,我國是世界上太陽能熱水器生產(chǎn)量和銷售量最大的國家。</p><p>
20、 然而,目前市場上太陽能熱水器的控制系統(tǒng)大多存在功能單一、操作復雜、控制不方便等問題,很多控制器具有溫度和水位顯示功能,卻不具有溫度控制功能,致使熱水器陰天的時候不能方便使用。即使熱水器具有輔助加熱功能,也可能由于加熱時間不能控制而產(chǎn)生過燒,從而浪費電能。</p><p> 1.2 太陽能熱水器的發(fā)展概況及市場競爭分析</p><p> 我國自78年引進全玻璃真空集熱管的樣管以來,經(jīng)
21、過20多年的努力,攻克了熱壓封等許多技術難關,已經(jīng)建立了擁有自主知識產(chǎn)權的現(xiàn)代化全玻璃真空集熱管產(chǎn)業(yè),用于生產(chǎn)集熱管的磁控濺射鍍膜機已有745臺,產(chǎn)品質(zhì)量達到世界先進水平,產(chǎn)量雄居世界首位。 </p><p> 1978年中國誕生第一臺太陽能熱水器,到1986年臥式磁控濺射鍍膜機的設計制造,是在政策扶持下的研究開發(fā)階段。1987年,我國制造了第一支全玻璃真空集熱管。在之后的幾年里,全玻璃和熱管式真空管集熱器實現(xiàn)
22、了產(chǎn)業(yè)化,產(chǎn)業(yè)規(guī)模達到中試水平,為下一階段產(chǎn)業(yè)的規(guī)模化奠定了良好的基礎,成為產(chǎn)業(yè)的孕育發(fā)展階段。</p><p> 1993年太陽能產(chǎn)業(yè)進入初級發(fā)展階段:由于成果轉化需要很長一段時間的磨合,特別是受技術人員缺乏的影響,此階段的產(chǎn)品質(zhì)量有待于進一步提高,整體來講,發(fā)展速度較為緩慢。這時候以山東力諾集團為主的真空管生產(chǎn)企業(yè)的產(chǎn)品占了真空管生產(chǎn)絕大部分市場。</p><p> 1997-20
23、01年太陽能產(chǎn)業(yè)得到高速發(fā)展,逐漸形成北京、魯東、泰安、揚州、海寧等5個產(chǎn)業(yè)基地,并以此向周圍不斷輻射,產(chǎn)能得以迅速提升。目前,我國是世界上太陽能熱水器生產(chǎn)量和銷售量最大的國家。太陽能熱水器是太陽能利用中最常見的一種裝置,經(jīng)濟效益明顯,正在迅速的推廣應用,太陽能熱水器能夠?qū)⑻栞椛淠苻D換熱能,供生產(chǎn)和生活使用。</p><p> 當今社會發(fā)展日新月異,人們衣食住行也在不斷的提高?,F(xiàn)有電熱型熱水器費用昂貴及燃氣型
24、熱水器的不安全性,且排放二氧化碳污染大氣,北方用煤氣取暖造成城市空氣環(huán)境污染,這些都是太陽能熱水器良好的外部生存環(huán)境。太陽能熱水器 克服了上述缺點,他是綠色環(huán)保產(chǎn)品。它使用簡單、方便。太陽能熱水器順應時代發(fā)展的要求,滿足人們對環(huán)保綠色產(chǎn)品的需求。</p><p> 1.3 太陽能熱水器的應用及意義</p><p> 資源是社會經(jīng)濟發(fā)展的物質(zhì)基礎,經(jīng)濟愈發(fā)展,對資源的依賴性愈強。許多資源
25、(如煤、石油、天然氣等)是不可再生的,而且在利用過程中給人類生存環(huán)境帶來極大污染,人類繁衍生息的物質(zhì)和環(huán)境基礎受到嚴峻挑戰(zhàn)。加強清潔、可再生資源的開發(fā)利用,已引起全世界的普遍重視。太陽能作為一種取之不盡、用之不竭的可再生資源,有節(jié)能、環(huán)保、安全和永續(xù)利用等優(yōu)點,理應成為開發(fā)利用的首選。其中太陽能熱水器作為家庭生活用品,其開發(fā)利用在我國已走過了二十多年的歷程,生產(chǎn)技術成熟,具有明顯優(yōu)點:</p><p> ?。ㄒ唬?/p>
26、從節(jié)能環(huán)保的角度講,使用太陽能熱水器不會對環(huán)境造成污染,同時為國家節(jié)約了大量能源,社會效益明顯,是國家重點推廣項目,使用前景廣闊。</p><p> (二)太陽能熱水器的使用壽命較長,使用太陽能熱水器經(jīng)濟實惠。若使用合理,其壽命可達15年甚至更長。據(jù)測算,使用1平方米太陽能熱水器,相當于每年節(jié)約310度電。太陽能熱水器的費用只有燃氣熱水器的七分之一,電熱水器的六分之一。購置太陽能熱水器一次性投資3000元左右,
27、使用5至6年就可實現(xiàn)與其熱水器的支出對比平衡。按照裝置壽命15年計算,其經(jīng)濟效益是十分明顯的。</p><p> ?。ㄈ┨柲軣崴骷療嵝Ч?,集熱時間更長。只要陽光能照射到的地方,就可以使用太陽能熱水器,即使在高寒地區(qū)一年四季也可以正常使用。在我國浙江、江蘇、山東等地,太陽能熱水器的研發(fā)和生產(chǎn)已形成規(guī)模,應用太陽能熱水器的場所也由家居使用擴展到醫(yī)院、學校、賓館、飯店、游泳池、洗浴場所等。</p>
28、<p> 2 太陽能熱水器控制系統(tǒng)的總體設計</p><p><b> 2.1 方案論證</b></p><p><b> (1)方案一</b></p><p> 在單片機學習課程中,就遇到過一種方案,稱其為方案一。它通過三極管的導通截止特性來判斷液位的位置,并且可以通過按鍵切換檢測壓力。但是在過程中只
29、能檢測三點,雖然可以擴展,但是占了太多的I/O口,容易造成資源的浪費。而且僅顯示單元就占用了12個I/O口,同樣屬于資源浪費。</p><p> 在電機電路設計方面,方案一采用的三極管的導通截止來控制點擊的正轉與反轉,雖然設計簡單,但是過多的使用三極管以及二極管類的元器件,也會使成本升高。而且,既然是太陽能熱水器的自動控制裝置,那么必不可少的就是溫度的檢測,而方案一中卻忽略了這點,造成了最大的殘缺。</p
30、><p><b> (2)方案二</b></p><p> 方案二主要解決了方案一中資源浪費及過于使用分立元件的缺陷。</p><p> 在液位檢測方面,通過利用兩片CD4051芯片,它相當于一個單刀八擲開關,當INH禁止端為低電平即“0”時,開關接通哪一通道由輸入的3位地址碼ABC來決定。這樣就簡單的解決了16個點檢測的問題,并且在最大程度
31、上減少了I/O口的使用。僅使用了8個I/O口即可控制16個點的檢測,如果是方案一,則需要使用16個I/O口。</p><p> 而且在方案二中,使用目前比較流行51系列單片機AT89S52。AT89S52是一種低功耗、高性能CMOS 8位微控制器,具有8K 在系統(tǒng)可編程Flash 存儲器。使用Atmel 公司高密度非易失性存儲器技術制造,與工業(yè)80C51 產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲器在系
32、統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得AT89S52在眾多嵌入式控制應用系統(tǒng)中的優(yōu)勢明顯。</p><p> 在方案二中還解決了方案一種不能檢測溫度缺點,使用了先進的DS18B20芯片,DS18B20數(shù)字溫度傳感器是Dallas公司生產(chǎn)的1-Wire,即單總線器件,具有線路簡單、體積小的特點。因此用他組成一個測溫系統(tǒng),具有線路簡單,在1根通信線可以掛很多這
33、樣的數(shù)字溫度傳感器,十分方便。</p><p><b> (3)方案選擇</b></p><p> 通過上述兩個方案的比較,便能發(fā)現(xiàn)方案二設計的電路比方案一的電路有極大的優(yōu)勢,性能全面,使用方便,而且簡單、穩(wěn)定。故選擇方案二。</p><p><b> 2.2 總體設計</b></p><p>
34、; 2.2.1太陽能熱水器的組成與工作原理</p><p> 圖2.1 熱水器裝置簡圖</p><p> 1-集熱器 2-下降水管3-循環(huán)水管4-補給水箱5-上升水管6-自來水管7-熱水出水管</p><p> 熱水器主要由集熱器、循環(huán)管道和水箱等組成,圖中為典型的熱水器裝置圖。圖中集熱器1按最佳傾角放置,下降水管2的一端與循環(huán)水箱3的下部相連,另一端與集熱
35、器1的下集管接通。上升水管5與循環(huán)水箱3上部相連,另一端與集熱器1的上集管相接。補給水箱4供給循環(huán)水箱3所需的冷水。</p><p> 集熱器吸收太陽輻射后,集熱器內(nèi)溫度上升,水溫也隨之升高。水溫升高后,水的比重減輕,便經(jīng)上升水管進入循環(huán)水箱上部。而循環(huán)水箱下部的冷水比重較大,就由水箱下流到集熱器下方,在集熱器內(nèi)受熱后又上升。這樣不斷對流循環(huán),水溫逐漸提高,直到集熱器吸收的熱量與散失的熱量相平衡時,水溫不再升高
36、。這種熱水利用循環(huán)加熱的原理,因此又稱循環(huán)熱水器。</p><p> 集熱器是一種利用溫室效應,將太陽能輻射轉換為熱能的裝置,該裝置與一般熱水交換器不一樣,熱交換器通常只是液體到液體,或是液體到氣體的熱交換過程,而平板行集熱器時直接將太陽輻射傳給液體或氣體,是一個復雜的傳熱過程。平板型集熱器結構形式很多,世界上已實用的集熱器就有直管式、瓦楞式、扁管式、鋁翼式等二十多種。</p><p>
37、 2.2.2系統(tǒng)總體流程圖</p><p> 圖2.2系統(tǒng)總體流程圖</p><p> 3 太陽能熱水器控制系統(tǒng)的硬件設計</p><p> 3.1 主控芯片模塊 </p><p> 3.1.1 主控芯片模塊電路</p><p> 單片機系統(tǒng)由AT89S52和一定功能的外圍電路組成,包括為單片機提供復位電壓
38、的復位電路,提供系統(tǒng)頻率的晶振。這部分電路主要負責程序的存儲和運行。對外接電容的值雖然沒有嚴格的要求,但電容的大小會影響振蕩器頻率的高低、諧振器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性。晶體可在1.2MHz~12MHz之間任選,電容C1和C2的典型值在20pF~100pF之間選擇,但在60pF~70pF時振蕩器具有較高的頻率穩(wěn)定性。典型值通常選擇為30pF左右,但本電路采用30pF。AT89S52的復位是由外部的復位電路來實現(xiàn)的。復位電路通
39、常采用上電自動復位和按鈕復位兩種方式。本設計中所用到的是上電按鈕復位,如圖3.1所示。</p><p> 圖3.1 單片機系統(tǒng)</p><p> 3.1.2 主控芯片簡介</p><p> AT89S52 是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash 存儲器。使用ATMEL公司高密度非易失性存儲器技術制造,與工業(yè)80C51產(chǎn)品指
40、令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應用系統(tǒng)提供高靈活、有效的解決方案。AT89S52具有以下標準功能:8k字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時器,2個數(shù)據(jù)指針,三個16位定時器/計數(shù)器,一個6向量2級中斷結構,全雙工串行口,片內(nèi)晶振及時鐘電路。另外,AT89S52可降至0Hz靜
41、態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內(nèi)容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。8位微控制器8K字節(jié)在系統(tǒng)可編程Flash AT89S52。圖3.2為AT89S52的引腳圖</p><p> 圖3.2 AT89S52的引腳圖</p><p> AT89
42、S52引腳功能說明如下:</p><p><b> VCC:電源電壓</b></p><p><b> GND:地</b></p><p> P0 口:P0口是一個8位漏極開路的雙向I/O口,也即地址/數(shù)據(jù)總線復用口。作為輸出口,每位能驅(qū)動8個TTL邏輯電平。對P0端口寫“1”時,引腳用作高阻抗輸入。當訪問外部程序和
43、數(shù)據(jù)存儲器時,P0口也被作為低8位地址/數(shù)據(jù)復用。在這種模式下,P0內(nèi)部上拉電阻被激活。在flash編程時,P0口也用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)。程序校驗時,需要外部上拉電阻。</p><p> P1 口:P1口是一個具有內(nèi)部上拉電阻的8位雙向I/O口,P1輸出緩沖器能驅(qū)動(吸收或輸出電流)4個TTL邏輯門電平。對P1 端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用
44、時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(TTL)。此外,P1.0和P1.2分別作定時器/計數(shù)器2的外部計數(shù)輸入(P1.0/T2)和時器/計數(shù)器2 的觸發(fā)輸入(P1.1/T2EX),具體如表3-1所示。在flash編程和校驗P1口接收低8位地址字節(jié)。</p><p> 表3-1 P1口第二功能</p><p> P2 口:P2 口是一個具有內(nèi)部上拉電阻的8位雙向I/O口,P2
45、輸出緩沖器能驅(qū)動4個TTL邏輯電平。對P2端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。在訪問外部程序存儲器或用16位地址讀取外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX @DPTR)時,P2口送出高八位地址。在這種應用中,P2 口使用很強的內(nèi)部上拉發(fā)送1。在使用8位地址(如MOVX @RI)訪問外部數(shù)據(jù)存儲器時,P2口輸出P2鎖存器的內(nèi)容。 在flash編
46、程和校驗時,P2口也接收高8位地址字節(jié)和一些控制信號。 </p><p> 表3-2 P3口的第二功能</p><p> 此外,P3口還接收一些用于FLASH閃存編程和程序校驗的控制信號。</p><p> RST——復位輸入。當振蕩器工作時,RST引腳出現(xiàn)兩個機器周期以上高電平將是單片機復位。WDT溢出將使該引腳輸出高電平,設置SFR AUXR的DISRTO
47、位(地址8EH)可打開或關閉該功能。DISRTO位缺省為RESET輸出高電平打開狀態(tài)。</p><p> ALE/PROG——當訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時鐘振蕩頻率的1/6輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖。如有必要,可通過對特殊功能寄存器(SFR
48、)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序時,應設置ALE禁止位無效。</p><p> PSEN——程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當AT89C52由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN有效,即輸出兩個脈沖,在此期間,當訪問外部數(shù)據(jù)存儲器,將有兩次有效
49、的PSEN信號。</p><p> EA/VPP——外部訪問允許,欲使CPU僅訪問外部程序存儲器(地址為0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復位時內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲器的指令。FLASH存儲器編程時,該引腳加上+12V的編程允許電源Vpp,當然這必須是該器件是使用12V編程電壓Vpp。</p&
50、gt;<p> XTAL1:振蕩器反相放大器及內(nèi)部時鐘發(fā)生器的輸入端。</p><p> XTAL2:振蕩器反相放大器的輸出端。</p><p> 3.2 實時時鐘模塊</p><p> 3.2.1 實時時鐘模塊電路</p><p> 從古代的滴漏更鼓到近代的機械鐘,從電子表到目前的數(shù)字時鐘,為了準確的測量和記錄時間,
51、人們一直在努力改進計時工具。鐘表的數(shù)字化,大力推動了計時的精確性和可靠性。在單片機構成的裝置中,實時時鐘是必不可少的部件。</p><p> 目前常用的實時時鐘,很多采用單片機的中斷服務來實現(xiàn),這種方式一方面需要采用計數(shù)器,占用硬件資源,另一方面需要設置中斷、查詢等,同樣耗費單片機的資源,而且某些測控系統(tǒng)可能不允許;有的則使用并行接口的時鐘芯片,如MC146818、DS12887等,它們雖然能滿足單片機系統(tǒng)對實
52、時時鐘的要求,但是這些芯片與單片機接口復雜,占用地址、數(shù)據(jù)總線多,芯片體積大,占用空間多,給其它設計帶來諸多不便。</p><p> 本設計選取串行接口時鐘芯片DS1302與單片機同步通信構成數(shù)字時鐘電路,如圖3.3。其簡單的三線接口能為單片機節(jié)省大量資源,DS1302的后背電源及對后背電源進行涓細電流充電的能力保證電路斷電后仍能保存時間和數(shù)據(jù)信息等。這些優(yōu)點解決了目前常用的實時時鐘所無法解決的問題。該時鐘電路
53、強大的功能和優(yōu)越的性能,在很多領域的應用中,尤其是某些自動化控制、長時間無人看守的測控系統(tǒng)等對時鐘精確性和可靠性有較高要求的場合,具有很高的使用價值。</p><p> 圖3.3 DS1302與單片機接口電路</p><p> 3.2.2 實時時鐘簡介</p><p> DS1302是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時鐘芯片,它可以
54、對年、月、日、周日、時、分、秒進行計時,且具有閏年補償功能,工作電壓寬達2.5~5.5V。時鐘可工作在24小時格式或12小時(AM/PM)格式。DS1302與單片機的接口使用同步串行通信,僅用3條線與之相連接。可采用一次傳送一個字節(jié)或突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。DS1302內(nèi)部有一個31×8的用于臨時性存放數(shù)據(jù)的RAM寄存器。DS1302是DS1202的升級產(chǎn)品,與DS1202兼容,但增加了主電源/后背電源
55、雙電源引腳,同時提供了對后背電源進行細電流充電的能力。</p><p> DS1302的引腳排列,其中Vcc1為后備電源,VCC2為主電源。在主電源關閉的情況下,也能保持時鐘的連續(xù)運行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當Vcc2大于Vcc1+0.2V時,Vcc2給DS1302供電。當Vcc2小于Vcc1時,DS1302由Vcc1供電。X1和X2是振蕩源,外接32.768kHz晶振。RST是復
56、位/片選線,通過把RST輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當RST為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對DS1302進行操作。如果在傳送過程中RST置為低電平,則會終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電運行時,在Vcc>2.0V之前,RST必須保持低電平。只有在SCLK 為低電平時,才能
57、將RST置為高電平。I/O為串行數(shù)據(jù)輸入輸出端(雙向),后面有詳細說明。SCLK為時鐘輸入端。</p><p> 控制字節(jié)的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入到DS1302中。位6如果為0,則表示存取日歷時鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為0表示要進行寫操作,為1表示進行讀操作,控制字節(jié)總是從最低位開始輸出。</p>&l
58、t;p> DS1302的復位引腳:通過把RST輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送.RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供了終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當RST為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對DS1302進行操作。如果在傳送過程中置RST為低電平,則會終止此次數(shù)據(jù)傳送,并且I/O引腳變?yōu)楦咦钁B(tài)。上電運行時,在Vcc≥2.5V之前,RST必須保持低電平。只
59、有在SCLK為低電平時,才能將RST置為高電平。</p><p> 在控制指令字輸入后的下一個SCLK時鐘的上升沿時數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時從低位0位至高位7。 </p><p> DS1302共有12個寄存器,其中有7個寄存器與日歷、時鐘相關,存放的數(shù)據(jù)位為BCD碼形
60、式。其日歷、時間寄存器及其控制字見表3-3。</p><p> 表3-3 DS1302的日歷、時鐘寄存器及其控制字</p><p> 此外,DS1302還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器及與RAM相關的寄存器等。時鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器的內(nèi)容。DS1302與RAM相關的寄存器分為兩類,一類是單個RAM單元,共31個,每個單元組態(tài)為一個
61、8位的字節(jié),其命令控制字為C0H--FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;再一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM的31個字節(jié),命令控制字為FEH(寫)、FFH(讀)。</p><p> 3.3 溫度傳感器模塊</p><p> 3.3.1 溫度傳感器模塊電路</p><p> 基于DS18B20多點溫度測量系統(tǒng)以AT89C51為中
62、心器件,以KEIL為系統(tǒng)開發(fā)平臺,用C語言進行程序設計,以PROTEUS作為仿真軟件設計而成的。</p><p> DS18B20是智能溫度傳感器,它的輸入/輸出采用數(shù)字量,以單總線技術,接收主機發(fā)送的命令,根據(jù)DS18B20內(nèi)部的協(xié)議進行相應的處理,將轉換的溫度以串口發(fā)送給主機。主機按照通信協(xié)議用一個IO口模擬DS18B20的時序,發(fā)送命令(初始化命令、ROM命令、功能命令)給DS18B20,并讀取溫度值,在
63、內(nèi)部進行相應的數(shù)值處理,用圖形液晶模塊顯示各點的溫度。在系統(tǒng)啟動之時,可以通過4×4鍵盤設置各點溫度的上限值,當某點溫度超過設置值時,報警器開始報警,從而實現(xiàn)了對各點溫度的實時監(jiān)控。</p><p> 每個DS18B20有自己的序列號,因此本系統(tǒng)可以在一根總線上掛接了4個DS18B20,通過CRC校驗,對各個DS18B20的ROM進行尋址,地址符合的DS18B20才作出響應,接收主機的命令,向主機發(fā)送
64、轉換的溫度。采用這種DS18B20尋址技術,使系統(tǒng)硬件電路更加簡單,圖3.4所示。</p><p> 圖3.4 18B20與單片機的連接電路</p><p> 3.3.2 溫度傳感器簡介</p><p> DS18B20數(shù)字溫度計是DALLAS公司生產(chǎn)的1-Wire,即單總線器件,具有線路簡單,體積小的特點。因此用它來組成一個測溫系統(tǒng),具有線路簡單,在一根通信
65、線,可以掛很多這樣的數(shù)字溫度計,十分方便。</p><p> DS18B20產(chǎn)品的特點:</p><p> 只要求一個端口即可實現(xiàn)通信。</p><p> 在DS18B20中的每個器件上都有獨一無二的序列號。</p><p> 實際應用中不需要外部任何元器件即可實現(xiàn)測溫。</p><p> 測量溫度范圍在-5
66、5.C到+125.C之間。</p><p> 數(shù)字溫度計的分辨率用戶可以從9位到12位選擇。</p><p> 內(nèi)部有溫度上、下限告警設置。</p><p> 其引腳功能描述見表3-4。</p><p> 表3-4 DS18B20詳細引腳功能描述</p><p> 64位ROM存儲器件獨一無二的序列號。暫存器
67、包含兩字節(jié)(0和1字節(jié))的溫度寄存器,用于存儲溫度傳感器的數(shù)字輸出。暫存器還提供一字節(jié)的上線警報觸發(fā)(TH)和下線警報觸發(fā)(TL)寄存器(2和3字節(jié)),和一字節(jié)的配置寄存器(4字節(jié)),使用者可以通過配置寄存器來設置溫度轉換的精度。暫存器的5、6和7字節(jié)器件內(nèi)部保留使用。第八字節(jié)含有循環(huán)冗余碼(CRC )。</p><p> DS18B20加電后,處在空閑狀態(tài)。要啟動溫度測量和模擬到數(shù)字的轉換,處理器須向其發(fā)出C
68、onvert T [44h] 命令;轉換完后,DS18B20回到空閑狀態(tài)。溫度數(shù)據(jù)是以帶符號位的16-bit補碼存儲在溫度寄存器中的。</p><p> 符號位說明溫度是正值還是負值,正值時S=0,負值時S=1。</p><p> 訪問DS18B20必須嚴格遵守這一命令序列,如果丟失任何一步或序列混亂,DS18B20都不會響應主機(除了Search ROM 和Alarm Search這
69、兩個命令,在這兩個命令后,主機都必須返回到第一步)。</p><p><b> a.初始化:</b></p><p> DS18B20所有的數(shù)據(jù)交換都由一個初始化序列開始。由主機發(fā)出的復位脈沖和跟在其后的由DS18B20發(fā)出的應答脈沖構成。當DS18B20發(fā)出響應主機的應答脈沖時,即向主機表明它已處在總線上并且準備工作。</p><p>&
70、lt;b> b. ROM命令:</b></p><p> ROM命令通過每個器件64-bit的ROM碼,使主機指定某一特定器件(如果有多個器件掛在總線上)與之進行通信。DS18B20的ROM如表3-5所示,每個ROM命令都是8 bit長。</p><p> 表3-5 ROM命令</p><p> 3.4 液晶顯示模塊</p>
71、<p> 3.4.1 液晶顯示模塊電路</p><p> 液晶顯示模塊以其微功耗、體積小、顯示內(nèi)容豐富、模塊化、接口電路簡單等諸多優(yōu)點得到廣泛應用。液晶顯示模塊分字符型和點陣型兩種,前者只能顯示常用的字符,點陣型液晶顯示模塊除顯示字符外還能顯示各種圖形和漢字。</p><p> 如圖3.5所示,為液晶顯示屏與單片機的連接電路圖。</p><p>
72、圖3.5 液晶顯示屏與單片機的連接電路</p><p> 3.4.2 液晶顯示屏簡介</p><p> 12864是一種具有4位/8位并行、2線或3線串行多種接口方式,內(nèi)部含有國標一級、二級簡體中文字庫的點陣圖形液晶顯示模塊;其顯示分辨率為128×64, 內(nèi)置8192個16*16點漢字,和128個16*8點ASCII字符集。該模塊靈活的接口方式和簡單、方便的操作指令,可構成全
73、中文人機交互圖形界面。可以顯示8×4行16×16點陣的漢字。可完成圖形顯示。電壓低功耗是其又一顯著特點。由該模塊構成的液晶顯示方案與同類型的圖形點陣液晶顯示模塊相比,不論硬件電路結構或顯示程序都要簡潔得多,且該模塊的價格也略低于相同點陣的圖形液晶模塊。</p><p> 圖3.6 LCD結構尺寸</p><p><b> 基本特性:</b>&l
74、t;/p><p> 低電源電壓(VDD:+3.0--+5.5V)</p><p> 顯示分辨率:128×64點</p><p> 內(nèi)置漢字字庫,提供8192個16×16點陣漢字(簡繁體可選)</p><p> 內(nèi)置 128個16×8點陣字符</p><p><b> 2MH
75、Z時鐘頻率</b></p><p> 顯示方式:STN、半透、正顯</p><p> 驅(qū)動方式:1/32DUTY,1/5BIAS</p><p><b> 視角方向:6點</b></p><p> 背光方式:側部高亮白色LED,功耗僅為普通LED的1/5—1/10</p><p&g
76、t; 通訊方式:串行、并口可選</p><p> 內(nèi)置DC-DC轉換電路,無需外加負壓</p><p> 無需片選信號,簡化軟件設計</p><p> 工作溫度: 0℃ - +55℃ ,存儲溫度: -20℃ - +60℃ </p><p> 控制器接口信號說明:如表3-6,3-7</p><p> 表3-
77、6 RS和R/W的配合選擇決定控制界面的4種模式</p><p><b> 表3-7 E信號</b></p><p> 忙標志:BF。BF標志提供內(nèi)部工作情況.BF=1表示模塊在進行內(nèi)部操作,此時模塊不接受外部指令和數(shù)據(jù).BF=0時,模塊為準備狀態(tài),隨時可接受外部指令和數(shù)據(jù)。</p><p> 利用STATUS RD 指令,可以將BF讀到
78、DB7總線,從而檢驗模塊之工作狀態(tài)。</p><p> 字型產(chǎn)生ROM(CGROM):字型產(chǎn)生ROM(CGROM)提供8192個此觸發(fā)器是用于模塊屏幕顯示開和關的控制。DFF=1為開顯示(DISPLAY ON),DDRAM 的內(nèi)容就顯示在屏幕上,DFF=0為關顯示(DISPLAY OFF)。DFF 的狀態(tài)是指令DISPLAY ON/OFF和RST信號控制的。</p><p> 顯示數(shù)據(jù)
79、RAM(DDRAM):模塊內(nèi)部顯示數(shù)據(jù)RAM提供64×2個位元組的空間,最多可控制4行16字(64個字)的中文字型顯示,當寫入顯示數(shù)據(jù)RAM時,可分別顯示CGROM與CGRAM的字型;此模塊可顯示三種字型,分別是半角英數(shù)字型(16*8)、CGRAM字型及CGROM的中文字型,三種字型的選擇,由在DDRAM中寫入的編碼選擇,在0000H—0006H的編碼中(其代碼分別是0000、0002、0004、0006共4個)將選擇CGRA
80、M的自定義字型,02H—7FH的編碼中將選擇半角英數(shù)字的字型,至于A1以上的編碼將自動的結合下一個位元組,組成兩個位元組的編碼形成中文字型的編碼BIG5(A140—D75F),GB(A1A0-F7FFH)。 </p><p> 字型產(chǎn)生RAM(CGRAM):字型產(chǎn)生RAM提供圖象定義(造字)功能, 可以提供四組16×16點的自定義圖象空間,使用者可以將內(nèi)部字型沒有提供的圖象字型自行定義到CGRAM
81、中,便可和CGROM中的定義一樣地通過DDRAM顯示在屏幕中。</p><p> 地址計數(shù)器AC:地址計數(shù)器是用來貯存DDRAM/CGRAM之一的地址,它可由設定指令暫存器來改變,之后只要讀取或是寫入DDRAM/CGRAM的值時,地址計數(shù)器的值就會自動加一,當RS為“0”時而R/W為“1”時,地址計數(shù)器的值會被讀取到DB6——DB0中。</p><p> 光標/閃爍控制電路:此模塊提供
82、硬體光標及閃爍控制電路,由地址計數(shù)器的值來指定DDRAM中的光標或閃爍位置。</p><p> 3.5 鍵盤輸入模塊</p><p> 一般具有人機對話的單片機系統(tǒng)少不了會有鍵盤。本設計采用三個按鍵,最佳的接口方案是獨立式接法,即每一個I/O口上只接一個按鍵,按鍵的另一端接地。</p><p> 獨立式鍵盤的實現(xiàn)方法是利用單片機I/O口讀取口的電平高低來判斷是
83、否有鍵按下。我們將按鍵的一端接地,另一端接一個I/O口,程序開始時將此I/O口置于高電平,平時無按鍵按下時I/O口保護高電平。當有鍵按下時,此I/O口與地短路迫使I/O口為低電平。按鍵釋放后,與單片機連接的上拉電阻使I/O口仍然保持高電平。本設計所要做的就是在程序中查詢此I/O口的電平狀態(tài)就可以了解是否有按鍵動作了。</p><p> 值得注意的是,本設計在用單片機對鍵盤處理的時候涉及到了一個重要的過程,那就是
84、鍵盤的去抖動。這里說的抖動是機械的抖動,是當鍵盤在未按到按下的臨界區(qū)產(chǎn)生的電平不穩(wěn)定正?,F(xiàn)象,并不是我們在按鍵時通過注意可以避免的。這種抖動一般在10~200毫秒之間,這種不穩(wěn)定電平的抖動時間對于人來說太快了,而對于時鐘是微秒級的單片機而言則是漫長的。為了提高系統(tǒng)的穩(wěn)定性,必須去除或避開它。此處我采用軟件去抖動,實現(xiàn)方法是先查詢按鍵當有低電平出現(xiàn)時立即延時10~200毫秒以避開抖動,延時結束再讀一次I/O口的值。</p>
85、<p> 按鍵分工,從左至右依次為1、2、3號按鍵,一號鍵模式鍵,二號三號鍵為加減鍵。</p><p> 圖3.7 鍵盤接口電路</p><p> 4 太陽能熱水器控制系統(tǒng)軟件設計</p><p> 4.1 KEIL uVISION 3軟件環(huán)境</p><p> 單片機開發(fā)中除必要的硬件外,同樣離不開軟件,本系統(tǒng)的軟件編程
86、設計是在Keil軟件環(huán)境中完成的。我們寫的C語言、匯編語言源程序要變?yōu)镃PU可以執(zhí)行的機器碼有兩種方法,一種是手工匯編,另一種是機器匯編,目前已極少使用手工匯編的方法了。機器匯編是通過匯編軟件將源程序變?yōu)闄C器碼,用于MCS-51單片機的匯編軟件有早期的A51,隨著單片機開發(fā)技術的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機的開發(fā)軟件也在不斷發(fā)展,Keil軟件是目前最流行開發(fā)51系列單片機的軟件,這從近年來各仿真機廠商紛紛宣
87、布全面支持Keil即可看出。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uVision)將這些部份組合在一起。掌握這一軟件的使用對于使用51系列單片機的愛好者來說是十分必要的,如果使用C語言編程,那么Keil幾乎就是不二之選。即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調(diào)試工具也會令人事半功倍。</p><p>
88、; Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結構性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學易用。用過匯編語言后再使用C來開發(fā),體會更加深刻。 Keil C51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標代碼效率非常之高,多數(shù)語句生成
89、的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。</p><p> 4.2 太陽能熱水器控制系統(tǒng)軟件設計流程圖</p><p> 本課題設計的太陽能熱水器控制系統(tǒng)的軟件程序設計主要由(1)初始化程序,(2)掃描按鍵程序,(3)按鍵處理子程序,(4)讀取水位信息、水箱溫度和時間程序,(6)調(diào)用顯示子程序,六個部分組成。系統(tǒng)總體流程圖如圖3.1所示。</p>
90、<p> 圖4.1 系統(tǒng)總體流程圖</p><p> 4.3 太陽能熱水器控制系統(tǒng)軟件功能的實施</p><p> 4.3.1 初始化程序</p><p> 太陽能熱水器控制系統(tǒng)在接通電源后,首先要對系統(tǒng)進行初始化。初始化的過程包括啟動DS1302,啟動12864,對12864進行清屏。初始化流程圖如下:</p><p>
91、; void start(void) //初始化函數(shù)</p><p><b> {</b></p><p> unsigned char i;</p><p> set_time(0x8e,0x00); //取消寫保護</p><p> set_time(0x80,0x00);
92、 //啟動時鐘</p><p> set_time(0x84,0x00); //設置24小時模式</p><p> set_time(0x90,0xa5); //時鐘時鐘充電模式</p><p> set_time(0x8e,0x80); //啟動寫保護</p><p><b
93、> RES1=0;</b></p><p><b> RES1=1;</b></p><p> dis_write_cmd(0xaf); //啟動12864</p><p> clean(); //清屏</p><p> 4.3.2 按鍵檢測及處理程序&l
94、t;/p><p> 在太陽能熱水器初始化完成之后,系統(tǒng)便會進入鍵盤掃描狀態(tài),此狀態(tài)下,主控芯片AT89S52會不斷掃描是否有鍵按下,即等待用戶輸入。在檢測到有鍵按下后,根據(jù)按下的次數(shù)(按一下設置“分”,按兩下設置“時”,三下設置“星期”,以此類推),在運用“加”“減”分別設置。</p><p> 按鍵檢測及處理流程圖如圖所示:(以按下“一下”為例)</p><p>
95、 圖4.3 按鍵檢測及處理程序流程圖</p><p> 按鍵檢測及處理程序清單如下:</p><p> while(1) //總循環(huán)</p><p><b> {</b></p><p> while(state_button==0) //狀態(tài)0循環(huán)
96、</p><p><b> {</b></p><p> … //無鍵按下的處理程序</p><p><b> …</b></p><p><b> }</b></p><p> whil
97、e(state_button!=0) //狀態(tài)非0循環(huán)</p><p><b> {</b></p><p> set_time(0x80,0x80); //啟動時鐘 </p><p> set_time(0x8e,0x00); //啟動保護位</p><p&g
98、t; if(state_button==1) //狀態(tài)1設置分</p><p><b> {</b></p><p> if(time_jia==1) //判斷按鈕加是否按下過</p><p><b> {</b></p><p>
99、minute0++; //分操作 下面所有的加減同理</p><p> if(minute0>9) // minute0最大為9,minute1最大為5</p><p><b> {</b></p><p> minute1++;</p><p> min
100、ute0=0;</p><p> if(minute1>5)</p><p><b> {</b></p><p> minute1=0;</p><p><b> }</b></p><p><b> }</b></p>
101、<p> time_jia=0; //按鍵清零 表示已經(jīng)執(zhí)行完</p><p><b> }</b></p><p> if(time_jian==1)</p><p><b> {</b></p><p> minute0--;</p>
102、<p> if(minute0<0)</p><p><b> {</b></p><p> minute1--;</p><p> minute0=9;</p><p> if(minute1<0)</p><p><b> {</b>
103、</p><p> minute1=5;</p><p><b> }</b></p><p><b> }</b></p><p> time_jian=0;</p><p><b> }</b></p><p>&l
104、t;b> }</b></p><p> 4.3.3 讀取溫度的程序</p><p> 本設計采用while循環(huán),在沒有鍵按下時,跳出while循環(huán),進行下邊的語句,即讀取溫度,并將其顯示在12864上。在讀取的過程中,要注意溫度的正負。</p><p> 讀取溫度的流程圖如圖3.4所示:</p><p> 圖4.4
105、 讀取溫度流程圖</p><p><b> 讀取溫度程序清單:</b></p><p> wendu_reset(); //溫度復位</p><p> wendu_write(0xcc); //跳過ROM搜索命令</p><p> wendu_write(0x44);
106、//啟動一次轉換</p><p> wendu_reset(); //復位</p><p> wendu_write(0xcc); //跳過ROM搜索命令</p><p> wendu_write(0xbe); //發(fā)送讀命令</p><p> a=wendu_read();
107、 //讀高字節(jié)8位</p><p> b=wendu_read(); //讀低字節(jié)8位</p><p> pn=b&0x80; //判斷溫度正負</p><p> if(pn==0) //如果溫度為正</p><p><b> {<
108、;/b></p><p> t=((b*256)+a)/16; //直接轉化為十進制數(shù)</p><p><b> }</b></p><p> if(pn==0x80) //如果溫度為負</p><p><b> {</b></p>&
109、lt;p> a=~a; //將數(shù)據(jù)取反</p><p><b> b=~b;</b></p><p> c=a+1; //低位加1</p><p> if(c==0x00) //當?shù)臀粸?55時,加1后為0,這時需進位</p>
110、<p> {b++;} //向高位進1</p><p> t=((b*256)+c)/16; //再進行轉換十進制</p><p> 5太陽能熱水器控制系統(tǒng)整體調(diào)試</p><p> 5.1 Proteus仿真環(huán)境</p><p> 本系統(tǒng)的硬件設計首先是在Proteus軟件環(huán)
111、境中仿真實現(xiàn)的。Proteus軟件是來自英國Labcenter electronics公司的EDA工具軟件,Proteus軟件有十多年的歷史,在全球廣泛使用,除了具有和其它EDA工具一樣的原理布圖、PCB自動或人工布線及電路仿真的功能外,其革命性的功能是,它的電路仿真是互動的。針對微處理器的應用,還可以直接在基于原理圖的虛擬原型上編程,并實現(xiàn)軟件源碼級的實時調(diào)試。如果有顯示及輸出,配合系統(tǒng)配置的虛擬儀器如示波器、邏輯分析儀等,還能看到運
112、行后輸入輸出的效果。它運行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和集成電路。 Proteus建立了完備的電子設計開發(fā)環(huán)境,尤其重要的是Proteus Lite可以完全免費,也可以花微不足道的費用注冊達到更好的效果。</p><p> Proteus7.1是目前最好的模擬單片機外圍器件的工具??梢苑抡?1系列、AVR、PIC等常用的MCU及其外圍電路(如LCD,RAM,ROM,鍵盤,
113、馬達,LED,AD/DA,部分SPI器件,部分IIC器件,...)。 其實Proteus 與 multisim比較類似,只不過它可以仿真MCU! 當然,軟件仿真精度有限,而且不可能所有的器件都找得到相應的仿真模型,用開發(fā)板和仿真器當然是最好選擇,可是初學者擁有它們的可能性比較小。 使用51系列單片機,不管是用匯編語言還是用C語言編程都要用到keil軟件。 使用keil c51 v7.50 + proteus 7.1 可以像使用仿真器一樣
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于單片機的太陽能熱水器畢業(yè)設計
- 基于單片機的太陽能熱水器控制的畢業(yè)設計
- 基于單片機的太陽能熱水器控制器
- 單片機設計太陽能熱水器畢業(yè)設計
- 畢業(yè)設計--基于51單片機的太陽能熱水器智能控制器的設計
- 畢業(yè)設計---基于單片機的太陽能熱水器控制系統(tǒng)的設計與實現(xiàn)
- 課程設計--基于單片機的太陽能熱水器的設計
- 基于單片機的太陽能熱水器控制器的設計 開題報告
- 單片機課程設計--太陽能熱水器控制器設計
- 太陽能熱水器控制畢業(yè)設計論文
- 基于單片機的太陽能熱水器控制系統(tǒng)的設計與實現(xiàn)
- 太陽能熱水器控制器畢業(yè)設計
- 基于單片機的太陽能熱水器智能控制系統(tǒng)設計開題報告
- 開題報告---基于單片機的太陽能熱水器智能控制系統(tǒng)設計
- 基于單片機的太陽能熱水器控制系統(tǒng)的實現(xiàn).pdf
- 開題報告---基于單片機的太陽能熱水器智能控制系統(tǒng)設計
- 基于單片機的太陽能熱水器控制系統(tǒng)的設計畢業(yè)論文開題報告
- 太陽能熱水器的智能控制器-畢業(yè)設計
- 太陽能熱水器智能控制器-畢業(yè)設計
- 畢業(yè)設計---太陽能熱水器自動控制系統(tǒng)
評論
0/150
提交評論