版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、<p> 分類號: 編號:</p><p><b> 煙 臺 大 學</b></p><p> 畢 業(yè) 論 文(設 計)</p><p> 太陽能熱水器控制器設計</p><p> The design of controller f
2、or solar water heater</p><p> 申請學位: 工學學士 </p><p> 院 系: 光電信息科學技術(shù)學院 </p><p> 專 業(yè): </p><p> 姓 名: </p><p> 學
3、 號: </p><p> 指導老師: </p><p><b> 年 05 月 日</b></p><p><b> 煙臺大學</b></p><p> 太陽能熱水器控制器設計</p><p> 姓 名: &
4、lt;/p><p><b> 導 師: </b></p><p><b> 年05月 日</b></p><p><b> 煙臺大學</b></p><p> 煙臺大學畢業(yè)論文(設計)任務書</p><p> 院(系):光電信息科學技術(shù)學院&l
5、t;/p><p> [摘要] 該太陽能熱水器控制器是基于C51單片機設計和實施的,它以AT89C51單片機作為檢測和控制中心,由主控芯片模塊、DS18B20 溫度檢測及顯示模塊、水位檢測及顯示模塊、時鐘模塊、報警模塊和電磁閥控制模塊、輔助加熱模塊等模塊組成。它通過DS18B20溫度檢測及顯示模塊實時檢測和顯示水溫,通過水位檢測及顯示模塊實時檢測和顯示水位,通過時鐘模塊實時顯示時鐘并在設定的時間給主控芯片特定的信號,
6、通過電磁閥控制模塊實現(xiàn)熱水器的自動及手動上水,通過輔助加熱模塊實現(xiàn)太陽能熱水器自動及手動加熱,當水位過低且水溫過高時通過報警模塊報警,而主控芯片則負責協(xié)調(diào)其他各模塊的工作。</p><p> [關(guān)鍵詞] 太陽能熱水器控制器;AT89C51單片機;DS18B20 </p><p> [Abstract] The designing of this solar water heater
7、controller is based on C51 single-chip microcomputer, The AT89C51 MCU is used as it’s detection and control center, It consists of a main control chip module, DS18B20 temperature detection and display module, the water l
8、evel detection and display module, clock module, alarm module and the electromagnetic valve control module, auxiliary heating module and etc. It is through the DS18B20 temperature detection and display module Detect and
9、display </p><p> [Key words] The Solar water heater controller ; AT89C51 MCU ; DS18B20</p><p><b> 目 錄</b></p><p><b> 1 緒論1</b></p><p>
10、1.1 太陽能熱水器應用的意義1</p><p> 1.2 我國太陽能發(fā)展現(xiàn)狀1</p><p> 2 系統(tǒng)設計及仿真軟件2</p><p> 2.1 系統(tǒng)的總體結(jié)構(gòu)設計2</p><p> 2.2 設計功能要求2</p><p> 2.3 設計思路2</p><p
11、> 2.4 仿真軟件(proteus)簡介3</p><p> 3 AT89C51簡介4</p><p> 3.1 主要特性4</p><p> 3.2 中斷向量4</p><p> 3.3 管腳說明4</p><p> 3.4 內(nèi)部結(jié)構(gòu)6</p><p&g
12、t; 4 控制器各模塊電路設計7</p><p> 4.1 主控芯片模塊7</p><p> 4.1.1 時鐘電路7</p><p> 4.1.2 復位電路8</p><p> 4.1.3 單片機管腳分配9</p><p> 4.2 DS18B20 溫度檢測及顯示模塊9</p&
13、gt;<p> 4.2.1 DS18B20芯片簡介10</p><p> 4.2.2 74LS245簡介12</p><p> 4.2.3 LED數(shù)碼管顯示13</p><p> 4.3 水位測量及顯示模塊14</p><p> 4.4 報警模塊15</p><p> 4.
14、5 輔助加熱模塊16</p><p> 4.5.1 繼電器工作原理16</p><p> 4.5.2 輔助加熱模塊工作原理17</p><p> 4.6 電磁閥控制模塊17</p><p> 4.6.1 電磁閥工作原理18</p><p> 4.6.2 電磁閥控制模塊工作原理18<
15、;/p><p> 4.7 時鐘模塊18</p><p> 4.7.1 電子表發(fā)聲原理及控制器定時工作原理19</p><p> 5 控制器軟件程序設計20</p><p> 5.1 軟件設計分析20</p><p> 5.2 主程序模塊20</p><p> 5.3
16、 子程序模塊21</p><p> 5.3.1 DS18B20溫度檢測子程序設計21</p><p> 5.3.2 DS18B20溫度轉(zhuǎn)化及顯示子程序22</p><p> 5.3.3 加熱子程序設計23</p><p> 5.3.4 上水子程序設計24</p><p> 5.4 中斷子程
17、序設計25</p><p> 5.4.1 外部中斷0(設定溫度+)子程序設計25</p><p> 5.4.2 外部中斷1(設定溫度-)子程序設計26</p><p> 6 調(diào)試與總結(jié)27</p><p> 6.1 調(diào)試方法27</p><p> 6.2 遇到的問題及解決辦法27<
18、/p><p> 6.3 總結(jié)28</p><p><b> 致謝29</b></p><p><b> 參考文獻30</b></p><p><b> 附錄31</b></p><p><b> 1 緒論</b>&
19、lt;/p><p> 1.1 太陽能熱水器應用的意義</p><p> 邁入21世紀以來,隨著經(jīng)濟的急速發(fā)展,對自然資源的需求缺口越來越大,人口基數(shù)過大使得將在很長一段時間保持人口數(shù)量的增長,而經(jīng)濟的高發(fā)展速度也將持續(xù)對資源的供應提出考驗。顯而易見的,資源儲量并不是無限的,若要保證經(jīng)濟的可持續(xù)發(fā)展,僅僅靠節(jié)約能源或是限制開采數(shù)量,并不是一個長久的解決辦法,只有開發(fā)新的能源,才能從根本上解
20、決發(fā)展與資源之間的矛盾。所以在今后,新能源必定將會有很大的發(fā)展空間,太陽能、風能、潮汐能,這些清潔能源是未來大規(guī)模利用的新趨勢。[1]</p><p> 在各類能源中,太陽能以其清潔、無害、長久和普遍等特點,有極高的發(fā)展?jié)摿Γ梢哉f是取之不盡用之不竭。雖然離太陽能的廣泛利用還有很長的路要走,但是現(xiàn)在已經(jīng)在不少地方開始使用,如常見的太陽能發(fā)電系統(tǒng),太陽能熱水系統(tǒng),太陽能路燈、交通燈等等。我國目前太陽能產(chǎn)業(yè)規(guī)模已躍
21、至世界第一,隨著技術(shù)的日益成熟,太陽能相關(guān)的成熟產(chǎn)品造價也將隨之降低,將更加廣泛地在人們生產(chǎn)生活中普及,這同時也是解決越來越嚴重環(huán)境污染的一個極佳的解決方案。在我們的生活中,最為我們所熟知的太陽能利用系統(tǒng)便是太陽能熱水器,太陽能熱水器同傳統(tǒng)的熱水器相比有著許多顯著的特點。不僅節(jié)能環(huán)保,而且使用也非常方便。以其低廉的價格深受各層次消費者的青睞。</p><p> 隨著太陽能熱水器的大面積使用,太陽能的優(yōu)勢特點已
22、廣泛為人們所熟知,這也對以后的相關(guān)產(chǎn)品的生產(chǎn)推廣起到了很好的宣傳效應。大力開發(fā)和利用豐富的太陽能資源,對于我國的經(jīng)濟、社會可持續(xù)發(fā)展具有重大深遠意義。[2]</p><p> 1.2 我國太陽能發(fā)展現(xiàn)狀</p><p> 我國太陽能熱水產(chǎn)業(yè)的發(fā)展特點可以用“起步晚,發(fā)展快”來形容,雖然國內(nèi)與于上世紀80年代才開始研究推廣,但是歷經(jīng)多年的飛速發(fā)展,我國的太陽能產(chǎn)業(yè)已經(jīng)占據(jù)了世界首位,其
23、中熱水器的產(chǎn)量占世界百分之五十以上,同時,中國國產(chǎn)太陽能產(chǎn)品在世界同類產(chǎn)品中也占據(jù)著很大的市場份額,并且市場占有率還在不斷增長。[3]</p><p> 盡管有著如此迅猛的發(fā)展勢頭,但是需要指出的是,目前國內(nèi)的能與太陽能熱水器相配置的控制器的功能卻并不完善,在市面上很多同類的太陽能熱水器產(chǎn)品,控制系統(tǒng)簡單,功能不全,大多數(shù)只具有設定水溫,顯示水溫這兩個功能,較為智能化的產(chǎn)品還尚未推廣應用,有些功能還處于研發(fā)階段
24、。因此設計出一款具有溫度控制功能和水位控制功能的產(chǎn)品,將很具有實際意義。這樣的控制器,將能夠解決天氣原因?qū)е碌墓饩€不足問題導致熱水器水溫過低的問題,并且因為有了水位控制功能,就可以解決當水位達到一定高度時不能自動開始或停止供水等等問題。</p><p> 2 系統(tǒng)設計及仿真軟件</p><p> 2.1 系統(tǒng)的總體結(jié)構(gòu)設計</p><p> 系統(tǒng)總體結(jié)構(gòu)設
25、計如圖2.1,該系統(tǒng)包括保溫箱、排氣管、集熱管、溢流管、上下水管、調(diào)節(jié)閥等。</p><p> 圖2.1 系統(tǒng)總體結(jié)構(gòu)設計</p><p> 2.2 設計功能要求</p><p> 該太陽能熱水器的控制器不但需要具有水位、水溫及時間的實時顯示功能,而且需要具有水位、水溫的自動控制功能,必要時,還需要能夠?qū)崿F(xiàn)對時間和水溫進行設定等功能。當蓄水箱水位低于40%
26、時能夠?qū)崿F(xiàn)自動上水,當設定時間到且水位低于蓄水箱水位90%時能夠?qū)崿F(xiàn)自動上水,當上水到達規(guī)定的水位時能夠?qū)崿F(xiàn)自動停止上水,當水位界于高低水位之間時,用戶可以通過按鍵操作手動上水、停水;當設定時間到且水溫低于規(guī)定值時,能夠?qū)崿F(xiàn)自動加熱。必要時還可以對太陽能熱水器進行手動加熱和上水,禁止高溫空曬后進水以及淋浴時禁止上水等功能。</p><p><b> 2.3 設計思路</b></p&
27、gt;<p> 該太陽能熱水器控制器是基于C51單片機設計和實施的,它以AT89C51單片機作為檢測和控制中心,由主控芯片模塊、DS18B20 溫度檢測及顯示模塊、水位檢測及顯示模塊、時鐘模塊、報警模塊和電磁閥控制模塊、輔助加熱模塊等模塊組成。它通過DS18B20溫度檢測及顯示模塊實時檢測和顯示水溫,通過水位檢測及顯示模塊實時檢測和顯示水位,通過時鐘模塊實時顯示時鐘并在設定的時間給主控芯片特定的信號,通過電磁閥控制模塊實
28、現(xiàn)熱水器的自動及手動上水,通過輔助加熱模塊實現(xiàn)太陽能熱水器自動及手動加熱,當水位過低且水溫過高時通過報警模塊報警,而主控芯片則負責協(xié)調(diào)其他各模塊的工作。</p><p> 2.4 仿真軟件(proteus)簡介</p><p> Proteus可以仿真單片機,兼具EDA軟件的仿真功能,還能一部分外圍器件,是當前使用最廣,用戶評價最好的仿真工具??梢詮脑韴D設計,程序編寫調(diào)試,再到與外
29、圍電路同步仿真,提供與PCB板設計的簡單切換,可以由最初的模擬概型一直到產(chǎn)品的模擬仿真。該軟件也是第一款融合電路原理圖設計,PCB板設計,產(chǎn)品生產(chǎn)前的仿真三者結(jié)合的開發(fā)平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430,Cortex,DSP等系列處理器,截止到現(xiàn)在,依然在不斷增加其它系列處理器模型。程序編譯支持Keil和MPLAB軟件編譯器。[4]&
30、lt;/p><p> Proteus軟件具有其它EDA工具軟件的功能: </p><p><b> 1.原理布圖 </b></p><p> 2.PCB自動或人工布線</p><p> 3.SPICE電路仿真革命性的特點</p><p> Proteus的工作過程:在開始
31、菜單中選擇proteus文件夾,單擊文件夾中的ISIS圖標進入proteus仿真軟件的主界面。在工作之前,先要設置捕捉對齊、顏色、圖形界面大小等項目。工作時,先要單擊工具欄中的P按鈕進入元件選擇對話框(pick devices),在對話框keyword中輸入所需元件的關(guān)鍵字(比如當需要電阻時輸入“res”),在results一欄中雙擊選出所需要的元器件(注意當選中元器件時在pick devices對話框中右側(cè)兩欄中會出現(xiàn)該元器件在仿真電
32、路圖和PCB板上的預覽圖,根據(jù)此預覽圖進行選擇),選中的元件會自動出現(xiàn)在工作界面P按鈕下面。然后需要進行仿真電路圖的繪制(具體做法為:在P按鈕下面單擊所需要的元器件即選中此元器件,根據(jù)實驗原理圖把選中的元器件放在工作界面的適當位置,雙擊工作界面中的元器件,在出現(xiàn)的對話框中修改元器件的參數(shù),重復以上步驟直到所有的元器件都擺放到工作界面上,然后單擊各元器件的引腳進行連線。至此仿真電路圖制作完成。然后進行程序的編寫,在程序編寫時需要使用專門的
33、程序編寫器(比如keil軟件等)來編寫并編譯連接運行,生成hex文件。接下來需要把程序存</p><p> 3 AT89C51簡介</p><p><b> 3.1 主要特性</b></p><p> ?與MCS-51 兼容</p><p> ?具有4K 字節(jié)的可重復編程的flash,可寫入/抹掉數(shù)據(jù)1000
34、次以上,寫入的數(shù)據(jù)能保存10年以上</p><p> ?操作頻率:0Hz~24MHz</p><p> ?128×8位內(nèi)部RAM</p><p> ?32條可規(guī)劃的I/O線</p><p><b> ?5個中斷向量地址</b></p><p><b> ?可編程串行通
35、道</b></p><p> ?需要振蕩電路和時鐘電路[5]</p><p><b> 3.2 中斷向量</b></p><p> 中斷向量見圖3.1[6]</p><p> 圖3.1 中斷向量表</p><p><b> 3.3 管腳說明</b>
36、</p><p> AT89C51引腳見圖3.2[7]</p><p><b> VCC:供電電壓。</b></p><p><b> GND:接地。</b></p><p> P0管腳、P1管腳、P2管腳、P3管腳都是8位雙向I/O口,其中P3管腳還有第二功能。</p>&l
37、t;p> 圖3.2 AT89C51 芯片引腳圖</p><p> P3管腳第二功能見圖3.3。</p><p> RST:復位輸入端。</p><p> ALE/:地址鎖存信號線。</p><p> 圖3.3 P3口第二功能說明</p><p> :外部程序存儲器讀選通端。</p>
38、<p> /VPP:訪問內(nèi)部程序存儲器控制端</p><p> XTAL1、XTAL2:震蕩電路輸入端。</p><p><b> 3.4 內(nèi)部結(jié)構(gòu)</b></p><p> 51單片機內(nèi)部機構(gòu)如圖3.4[8]</p><p> 圖3.4 51單片機內(nèi)部結(jié)構(gòu)框圖</p><p&
39、gt; 4 控制器各模塊電路設計</p><p> 4.1 主控芯片模塊</p><p> 單片機只有40個管腳,其中I/O管腳只有32個,必須合理地分配單片機管腳,否則很容易造成單片機管腳的不夠用。另外,單片機運行需要時鐘電路、復位電路、電源、地線等,這些電路也需要在單片機主控芯片里面設計。主控芯片模塊proteus仿真圖如圖4.1。[9]</p><p&g
40、t; 圖4.1 主控芯片模塊proteus仿真圖</p><p> 4.1.1 時鐘電路</p><p> 單片機的運行需要時鐘電路的支持,單片機時鐘電路是配合外部晶體實現(xiàn)振蕩的電路,它由一個晶振和兩個電容組成,其組成圖如圖4.2,它的兩端分別接在單片機的XTAL1和XTAL2管腳。它可以為單片機提供運行時鐘,如果運行時鐘為0 的話,單片機就不工作,當然超出單片機的工作頻率的時鐘
41、也會導致單片機不能正常工作,C51單片機的支持的時鐘頻率為0~24MHz。</p><p> 圖4.2 單片機時鐘電路</p><p> 4.1.2 復位電路</p><p> 在單片機在使用過程中有時(比如上電瞬間以及運行中出現(xiàn)錯誤的時候)需要使單片機從開始狀態(tài)重新運行,這時就需要單片機的復位電路了。它可以使單片機內(nèi)部各寄存器的值變?yōu)槌跏紶顟B(tài),復位電路如
42、圖4.3。它可以在單片機上電瞬間和復位開關(guān)按下的瞬間給單片機RESET管腳加上一個程指數(shù)函數(shù)的電平信號,當此電平信號能夠在單片機的RESET管腳保持兩個機器周期以上的高電平時,單片機就能完成復位操作。[10]</p><p> 圖4.3 單片機復位電路</p><p> 4.1.3 單片機管腳分配</p><p> 單片機管腳分配如圖4.4。 </p
43、><p> 圖4.4 單片機管腳分配</p><p> 4.2 DS18B20 溫度檢測及顯示模塊</p><p> 蓄水箱水溫檢測電路使用單總線DS18B20芯片,它可以將溫度信號轉(zhuǎn)化成脈沖信號進而轉(zhuǎn)化成水溫高低的信號。DS18B20的DQ端與單片機的P3.7口相連,它可以將水溫大小直接以數(shù)值的方式存放在其內(nèi)部的RAM中,單片機可以通過DS18B20的DQ引
44、腳直接讀取其內(nèi)部RAM中存放的溫度值。在水溫的顯示上,本設計采用兩位LED數(shù)碼管來實現(xiàn),LED數(shù)碼管的段選信號由單片機的P0口來發(fā)出,其位選信號由單片機的P2.6、P2.7管腳發(fā)出。水溫檢測及顯示模塊的proteus電路仿真如圖4.5。</p><p> 圖4.5 溫度檢測及顯示模塊proteus仿真圖</p><p> 4.2.1 DS18B20芯片簡介</p>&
45、lt;p> DS18B20是美國DALLAS公司推出的一種溫度傳感器,它能比較準確的測量-55~125℃之間的溫度。相對于以前的熱敏電阻等溫度傳感器,DS18B20更加智能,它能夠直接測出被測環(huán)境的溫度并以數(shù)值方式存在其內(nèi)部的RAM中,當有需要時,它可以通過單總線實現(xiàn)單片機等對DS18B20內(nèi)部RAM中數(shù)據(jù)的讀取。</p><p> DS18B20有如下性能特點:</p><p>
46、; 單總線結(jié)構(gòu)設計,僅需要一個引腳即可完成數(shù)據(jù)在DS18B20和單片機之間的通信。</p><p> 每個DS18B20都有獨一無二的序列號,可以在一條線上并聯(lián)多個DS18B20芯片。</p><p> 測量溫度范圍-55℃~+125℃。</p><p><b> 分辨率可調(diào)。</b></p><p> DS1
47、8B20 內(nèi)部結(jié)構(gòu)[11]</p><p> DS18B20 內(nèi)部結(jié)構(gòu)如圖4.6。</p><p> 圖4.6 DS18B20內(nèi)部結(jié)構(gòu)框圖</p><p><b> DS18B20引腳</b></p><p> DS18B20引腳功能描述見圖4.7。</p><p> 圖4.7 DS
48、18B20各引腳功能</p><p> DS18B20轉(zhuǎn)換成的溫度數(shù)據(jù)格式[12]</p><p> 當DS18B20接到溫度轉(zhuǎn)換命令時它就可以將測得的溫度信號轉(zhuǎn)換成溫度值并以16位帶符號擴展的二進制補碼形式存儲在其高速緩存RAM中,其溫度值格式如圖4.8。</p><p> 圖4.8 DS18B20溫度數(shù)據(jù)格式</p><p>
49、單片機可以通過DS18B20的DQ引腳直接取RAM中溫度的值,讀取時,先讀取低位數(shù)據(jù),然后讀取高位數(shù)據(jù)。在DS18B20溫度數(shù)據(jù)格式中,當S=0時表示此時的溫度值為正值,當S=1時表示此時溫度為負值。</p><p> DS18B20 ROM命令[13]</p><p> DS18B20的一系列操作基本都是通過ROM命令來實現(xiàn)的,DS18B20的ROM命令見圖4.9。</p&g
50、t;<p> 圖4.9 DS18B20的ROM命令</p><p> 4.2.2 74LS245簡介</p><p> 74LS245為8位雙向3態(tài)緩沖電路,主要用途為數(shù)據(jù)的雙向緩沖,以增強芯片的驅(qū)動能力。[14]74LS245真值表如圖4.10所示。</p><p> 圖4.10 74LS245真值表</p><p&
51、gt; 4.2.3 LED數(shù)碼管顯示</p><p> LED數(shù)碼管是由八個發(fā)光二極管排列在一起并相互連接組成的,根據(jù)其連接方法的不同,LED數(shù)碼管可以分為共陰極和共陽極兩種連接方法。兩種接法電路圖如圖4.11。</p><p> 圖4.11 LED數(shù)碼管及接線方法</p><p> 當把數(shù)碼管中各發(fā)光二極管的陰極連接在一塊并與地相連,通過從各發(fā)光二極管
52、陽極是否接電源來控制發(fā)光二極管的亮滅時成為共陰極接法。同理,當把數(shù)碼管中各發(fā)光二極管陽極接在一塊并與電源相連,通過在各發(fā)光二極管陰極是否接地來控制各發(fā)光二極管的亮滅時稱為共陽極接法。不同的接法所需要點亮電平是不一樣的,所以在使用數(shù)碼管顯示時,一定要注意區(qū)分這兩種接法。當然為了顯示數(shù)字或字符,需要對數(shù)字或字符進行編碼,本設計采用共陰極LED數(shù)碼管顯示。 </p><p> LED數(shù)碼管顯示方式有兩種,即靜態(tài)顯示方
53、式和動態(tài)顯示方式。靜態(tài)顯示就是每個數(shù)碼管都需要連接一個8位的數(shù)據(jù)線,通過該8位數(shù)據(jù)線發(fā)送數(shù)據(jù)來保持顯示的字符,當向數(shù)碼管送入一次8位數(shù)據(jù)時數(shù)碼管就會一直顯示該字符,如果需要改變需要顯示的字符則需要重新給數(shù)碼管輸入另一個8位數(shù)據(jù)。動態(tài)顯示就是通過一定的操作使各個數(shù)碼管依次點亮,利用發(fā)光二極管的余暉效應和人眼的視覺暫留現(xiàn)象使人的感覺就像是同時點亮各個數(shù)碼管一樣。動態(tài)顯示的亮度比靜態(tài)顯示稍微差一下,程序上稍微麻煩一些,占用的CPU時間長點,但
54、當數(shù)碼管位數(shù)比較多時需要的管腳位數(shù)明顯減少,硬件電路會大大簡化。由于單片機輸出管腳有限,為了節(jié)省單片機管腳,本設計采用動態(tài)顯示方式。</p><p> 4.3 水位測量及顯示模塊</p><p> 蓄水箱水位是智能控制的一個重要參數(shù),是實現(xiàn)智能控制的重要依據(jù),只有準確檢測出水箱水位才能更好地實現(xiàn)水位地顯示以及蓄水箱的上水、停水等操作。要實現(xiàn)水位地精確檢測最好采用連續(xù)液位傳感器,但考慮
55、到系統(tǒng)成本及使用范圍,本系統(tǒng)在進行水位檢測時仍然采用分段式液位傳感器(即在蓄水箱不同的位置放入水位探針),在水位顯示上采用由5個發(fā)光二極管組成的分段式液位顯示器。水位檢測及顯示電路圖如圖4.12。</p><p> 圖4.12 水位檢測及顯示電路圖</p><p> 檢測原理:把五個金屬水位探針分別固定在水箱的五個位置上,金屬探針通過一個1M的電阻(即上拉電阻)和+5V電源相連,水箱
56、里的水通過導線和地相連。當金屬探針在水面以下時,+5V電源、上拉電阻、水箱里的水、地等組成一個回路,由于水的電阻遠比1M小,所以此時探針處電平為低電平。這個低電平通過一個反相器(非門)后變?yōu)楦唠娖?,這個高電平通過發(fā)光二極管、500Ω的電阻放電,使得發(fā)光二極管點亮,顯示此時該液位有水。當金屬探針在水面以上時,金屬探針處電平為高電平,該高電平經(jīng)過反相器時變?yōu)榈碗娖剑碗娖讲荒苁拱l(fā)光二極管發(fā)光,從而顯示該液位沒有水。至此,水位的顯示完成。水位
57、測量及顯示模塊proteus仿真圖如圖4.13。</p><p> 圖4.13 水位測量及顯示模塊proteus仿真圖</p><p> 本proteus仿真圖使用按鍵開關(guān)代替水和+5V電源、1M電阻及地構(gòu)成回路,當按鍵按下時代表此位置處有水,當按鍵沒有按下時代表此水位處沒有水。需要注意的是,上拉電阻不宜選的太小,因為水是有電阻的,上拉電阻選的太小會導致當探針在水面以下時探針輸出低電
58、平特性不明顯,此時很容易導致液位顯示上出現(xiàn)錯誤。位置最高到位置最低處的探針所測出的電平經(jīng)反相器后會通過導線依次送到單片機的P2.0到P2.4管腳,經(jīng)單片機接收、處理,實現(xiàn)水位控制的操作。</p><p><b> 4.4 報警模塊</b></p><p> 太陽能熱水器通常對蓄水箱內(nèi)的水位有一定的要求,當水箱水位過低時,很容易給人們的正常生活帶來不便,所以,當水
59、位過低時能及時讓人們知道就顯得比較重要,報警模塊正是基于此種原因設計的。報警模塊的proteus仿真圖如圖4.14。</p><p> 圖4.14 報警模塊的proteus仿真圖</p><p> 檢測及報警原理:當水位過低時,單片機相應管腳被清零,使得單片機通過P1.5口輸出一系列脈沖波。脈沖波經(jīng)由Q1、R1組成的放大電路后作用于蜂鳴器BUZI的線圈上,線圈產(chǎn)生變化的磁場帶動蜂鳴器
60、紙盆震動從而發(fā)出聲音。</p><p> 4.5 輔助加熱模塊</p><p> 當光照不足時,太陽能熱水器的水溫很難達到指定的要求,為了不影響人們的正常使用,輔助加熱設備就顯得尤為重要了。輔助加熱模塊的proteus電路仿真圖如圖4.15。</p><p> 圖4.15 輔助加熱模塊的proteus電路仿真圖</p><p>
61、4.5.1 繼電器工作原理</p><p> 繼電器工作原理圖如圖4.16所示。[15]</p><p> 圖4.16 繼電器工作原理圖</p><p> 當繼電器的控制回路沒有電流流過時,繼電器的銜鐵在彈簧的拉力作用下右端上翹,觸點3與觸點5斷開,與觸點4結(jié)合。當有電流流過繼電器的控制回路(即由導線和線圈組成的電磁鐵)時,電流就會在在電磁鐵上產(chǎn)生磁場,
62、此時,銜鐵會被電磁鐵吸引而下降,使得觸點3與觸點4分離,與觸點5連接。如果在端點3和端點5接上其他電路組成被控回路就會出現(xiàn)當有電流流過控制回路時被控回路導通,當沒有電流流過控制回路時被控回路斷開。</p><p> 4.5.2 輔助加熱模塊工作原理</p><p> 當加熱按鈕沒有按下時,此輔助加熱模塊為自動控制模式。在自動控制模式下,當設定的時間到時,單片機會自動對蓄水箱的水溫進行
63、判斷。當水溫高于設定值時,P1.1口輸出為高電平,三極管Q1集電極和發(fā)射極斷開,此時,輸入回路中沒有電流為零,繼電器被控回路斷開,加熱電阻不工作。當P1.1口輸出為低電平時,三極管Q1集電極和發(fā)射極導通,+5V電源經(jīng)電阻R1,繼電器控制回路、三極管Q1和地相連,輸入回路導通,此時,繼電器被控回路閉合,220V交流電源經(jīng)繼電器被控回路給加熱電阻加熱,從而使水溫升高。當臨時(不是設定時間)需要熱水時可以通過加熱按鈕進行加熱,此時,只需按下加
64、熱按鈕即可對蓄水箱的水進行加熱。</p><p> 4.6 電磁閥控制模塊</p><p> 電磁閥是把電信號轉(zhuǎn)化成水龍頭開關(guān)信號的裝置,是實現(xiàn)水位智能控制不可缺少的一部分。電磁閥從原理上分為直動式、分步直動式和先導式三類電磁閥,本設計采用直動式電磁閥。電磁閥控制模塊proteus仿真如圖4.17。</p><p> 圖4.17 電磁閥控制模塊proteu
65、s仿真電路圖</p><p> 繼電器工作原理已在輔助加熱模塊介紹,此處不再敘述</p><p> 4.6.1 電磁閥工作原理</p><p> 電磁閥工作原理如圖4.18。</p><p> 圖4.18 電磁閥工作原理圖</p><p> 當電磁閥不通電時,活動鐵心在彈簧的彈力作用下上升,入口和出口被閥
66、門隔開,水被阻斷;當通電時,活動鐵心在線圈產(chǎn)生的磁場作用下下落,此時入口和出口導通,水從入口經(jīng)電磁閥流向出口,完成上水。</p><p> 4.6.2 電磁閥控制模塊工作原理</p><p> 在本設計中,此電磁閥控制模塊分為自動控制和手動控制兩種工作情況:當上水按鍵開關(guān)斷開且淋浴開關(guān)閉合時電磁閥控制模塊為自動控制模式,此時當單片機P1.4口輸出為高電平時,繼電器的輸入端輸入電流為零
67、,繼電器輸出端開路,電磁閥所在電路開路,電磁閥關(guān)閉;當單片機P1.4口輸出為低電平時,繼電器輸入端通過電阻、三極管和電源、地相連,此時,輸入回路有輸入電流,使得繼電器輸出回路閉合,電磁閥所在電路導通,電磁閥打開。當上水按鍵開關(guān)直接閉合且淋浴開關(guān)閉合時,電磁閥通過按鍵開關(guān)直接和220V電源相連,此時電磁閥所在電路導通,電磁閥打開。另外,為了避免淋浴時因水位偏低而導致熱水器直接上水,本模塊加了一個淋浴狀態(tài)開關(guān),當淋浴狀態(tài)打開(淋浴開關(guān)斷開)
68、時,直接斷開電磁閥開關(guān),此時無論水位多么低都不會上水,當淋浴狀態(tài)關(guān)閉(淋浴開關(guān)閉合)時,可以選擇自動控制和手動控制兩種模式。</p><p><b> 4.7 時鐘模塊</b></p><p> 時間是實現(xiàn)熱水器控制器定時上水、定時加熱的重要參考,所以設置時鐘模塊是非常有必要的。時鐘模塊可以通過單片機設置一個數(shù)字時鐘來實現(xiàn),也可以時鐘芯片(比如DS1302)實現(xiàn)
69、,還可以通過外接具有定時功能的電子表來實現(xiàn)??紤]到單片機管腳的數(shù)量限制和設計的難易程度,本設計采用外接電子表的方式來實現(xiàn)定時上水、定時加熱。</p><p> 4.7.1 電子表發(fā)聲原理及控制器定時工作原理</p><p> 電子表里面裝有壓電陶瓷片,壓電陶瓷片是一種電子發(fā)音元件,在兩個電極中間放入壓電陶瓷介質(zhì)材料,當設定時間到時,會在壓電陶瓷片的兩個電極上加上特定的交流信號,壓電陶
70、瓷片就會根據(jù)所加信號的大小和頻率震動,從而發(fā)出聲音。本設計中會把這個電極信號接在單片機的P1.0管腳,當該管腳的電平是低電平時可以給單片機一個觸發(fā)信號,經(jīng)單片機處理,使得加熱設備開始工作;同理,當給單片機的P1.3管腳加上一個低電平時同樣能給單片機一個觸發(fā)信號,經(jīng)單片機處理后,使得上水設備開始工作。</p><p> 5 控制器軟件程序設計</p><p> 5.1 軟件設計分析&
71、lt;/p><p> 軟件是系統(tǒng)的指揮中心,由軟件來配合硬件來完成電子設備特定的功能是目前電子設備的普遍規(guī)律。本系統(tǒng)同樣要求軟件和硬件兩部分協(xié)調(diào)工作才能所完:由硬件電路完成數(shù)據(jù)的采集、顯示以及對電磁閥和蜂鳴器的控制,由軟件來實現(xiàn)數(shù)據(jù)的判斷、處理等。由此可見,軟件和硬件一樣,都是該系統(tǒng)正常工作所必須的一部分。</p><p> 軟件相對于硬件電路來說具有更高的性價比,并且更容易實現(xiàn),為了充分
72、發(fā)揮C51單片機的優(yōu)良的性能價格比,我們在進行系統(tǒng)設計時,更傾向于使硬件電路“軟件化”,即通過編程的方法使硬件電路簡化??紤]到C語言諸多優(yōu)良特性,本設計采用C語言編寫,為了增加系統(tǒng)的實時性,本設計對于偶然事件的處理采用中斷的方式來進行處理。</p><p> 在電路設計時我們采用模塊化設計,同理,在軟件設計時,我們也采用模塊化設計。首先需要編寫出大概的主程序,然后需要找出所設計的子程序并對子程序進行逐個分析和設
73、計,編寫出子程序后應給予每個子程序語法檢驗以確定子程序是不是有語法錯誤,接下來需要把子程序和主程序以及一些的聲明函數(shù)等進行合理的檢查和修改直到?jīng)]有語法錯誤為止,再然后對偶然事件需要進行中斷處理函數(shù)的編寫。最后需要對整個程序進行編譯檢查以確定是否有語法錯誤,如果有語法錯誤需要對程序進行改正,如果沒有可以把程序烤到單片機里來檢驗程序的正確與否。[16]</p><p> 5.2 主程序模塊</p>
74、<p> 主程序需要完成對單片機端口的初始化,開外部中斷0,開外部中斷1等,此外,還包括溫度數(shù)據(jù)讀取、溫度數(shù)據(jù)顯示、水位數(shù)據(jù)讀取以及對熱水器加熱、上水等操作。其流程圖如圖5.1所示。</p><p> 圖5.1 主程序模塊流程圖</p><p> 5.3 子程序模塊</p><p> 子程序是指能夠?qū)崿F(xiàn)某一特定功能并能被其他程序調(diào)用的一段程序。
75、采用子程序結(jié)構(gòu)可以使程序得到簡化,便于進行調(diào)試,并可實現(xiàn)程序的模塊化,本設計將采用子程序模塊的設計來實現(xiàn)部分功能。</p><p> 5.3.1 DS18B20溫度檢測子程序設計</p><p> DS18 B20溫度檢測模塊的子程序流程圖如圖5.2,它包括對 DS18 B20的初始化、發(fā) ROM命令、發(fā)溫度轉(zhuǎn)化命令、讀存儲器等操作。</p><p> 圖5
76、.2 DS18B20溫度檢測流程圖</p><p> 5.3.2 DS18B20溫度轉(zhuǎn)化及顯示子程序</p><p> DS18 B20溫度轉(zhuǎn)化及顯示子程序流程圖如圖5.3,它包括讀取溫度值、對溫度值得判斷、區(qū)分溫度的十位和個位數(shù)據(jù)、顯示十位數(shù)據(jù)、顯示個位數(shù)據(jù)等操作。</p><p> 圖5.3 DS18B20溫度轉(zhuǎn)化及顯示流程圖</p>
77、<p> 5.3.3 加熱子程序設計</p><p> 當設定時間到時,外部時鐘會在單片機的P1.0管腳給單片機一個觸發(fā)信號,使得單片機執(zhí)行加熱子程序。加熱子程序流程圖如圖5.4。</p><p> 圖5.4 加熱子程序流程圖</p><p> 5.3.4 上水子程序設計</p><p> 同加熱子程序一樣,當設定時
78、間到時,外部時鐘會在單片機的P1.3管腳給單片機一個觸發(fā)信號,使得單片機執(zhí)行上水子程序。上水子程序流程圖如圖5.5。</p><p> 圖5.5 上水子程序流程圖</p><p> 5.4 中斷子程序設計</p><p> 為了保證系統(tǒng)的實時性,本設計有一些功能是通過中斷來實現(xiàn)的,這就要求在軟件程序設計里面需要有專門的中斷服務子程序的設計。本設計采用了兩個
79、中斷服務,包括外部中斷0和外部中斷1。其中外部中斷0用作增加設定的溫度值,外部中斷1用作減小設定的溫度值。</p><p> 5.4.1 外部中斷0(設定溫度+)子程序設計</p><p> 外部中斷0負責使設定的溫度值增加,每當執(zhí)行一次外部中斷0,所設定的溫度值就會增加1。外部中斷0(設定溫度+)子程序流程圖如圖5.6。</p><p> 圖5.6 外部
80、中斷0(設定溫度+)子程序流程圖</p><p> 5.4.2 外部中斷1(設定溫度-)子程序設計</p><p> 同外部中斷0相對應,外部中斷1用作使設定的溫度值減小。每當執(zhí)行一次外部中斷1,所設定的溫度值就會自動減1,當設定溫度值減小到30℃一下時設定溫度值自動變?yōu)?9℃。外部中斷1(設定溫度-)子程序流程圖如圖5.7。</p><p> 圖5.7
81、外部中斷1(設定溫度-)子程序流程圖</p><p><b> 6 調(diào)試與總結(jié)</b></p><p><b> 6.1 調(diào)試方法</b></p><p> 為了節(jié)省人力、物力,在正式調(diào)試之前往往會對電路進行仿真操作。所謂的仿真操作就是使用專門用于仿真的仿真軟件對系統(tǒng)的硬件電路圖及程序進行仿真。如果仿真結(jié)果滿足我
82、們的要求,那么我們就可以進行硬件電路的制作了,如果仿真結(jié)果不能滿足我們的要求,那么我們就需要重新對程序及相關(guān)的硬件進行設計。</p><p> 本設計使用proteus對系統(tǒng)的各部分和整個系統(tǒng)進行仿真。具體做法為:</p><p> 根據(jù)系統(tǒng)要求用proteus 畫出整體系統(tǒng)的仿真電路圖(可以先一個模塊一個模塊的畫,然后在組裝在一塊)。</p><p> 2、
83、根據(jù)系統(tǒng)要求及畫出的仿真電路圖編寫程序(本設計使用C語言編寫),并用keil軟件進行編譯,生成HEX文件。</p><p> 把生成的HEX文件下載到對應的單片機中(具體做法為:在proteus仿真電路圖中雙擊相應的單片機會出現(xiàn)“Edit Component”對話框,在此對話框中program File一欄中選擇所需的HEX文件,然后點擊該對話框右上角的ok按鈕即可),然后點擊仿真電路圖界面左下角的play按鈕
84、即可進行電路仿真。</p><p> 在完成系統(tǒng)的仿真操作后就需要對系統(tǒng)進行調(diào)試了。調(diào)試可以分為硬件調(diào)試和系統(tǒng)調(diào)試兩部分。硬件調(diào)試主要是對硬件部分進行調(diào)試,看看所設計的硬件能否完成我們期望的功能,而系統(tǒng)調(diào)試主要是看看系統(tǒng)能否按照預期進行工作。</p><p> 在制作完成PCB板之后就可以進行硬件部分的調(diào)試了。在制作完P(guān)CB板之后就可以進行硬件電路調(diào)試了。在進行硬件電路調(diào)試之前需要先
85、對各元器件進行檢查,對于有問題的元器件需要及時替換。在檢查完元器件之后就可以往PCB板上查元器件了。為了降低硬件調(diào)試的難度,便于更好的發(fā)現(xiàn)問題,在硬件調(diào)試過程中采用分塊調(diào)試的方法。</p><p> 在完成硬件電路調(diào)試之后就需要對系統(tǒng)進行調(diào)試了。所謂系統(tǒng)調(diào)試就是把提前編譯好的程序下載單片機中,對系統(tǒng)的整體性能進行觀察、調(diào)試。</p><p> 6.2 遇到的問題及解決辦法</p
86、><p> 在進行proteus各模塊仿真電路圖設計時有部分元器件(比如電磁閥、加熱裝置等)在元件庫中找不到。解決方法:用其他有相似特點的元件代替,并將此元件的參數(shù)修改一下。</p><p> 在進行proteus總體仿真電路設計時,有很多現(xiàn)象(比如:電磁閥的通斷、水位的高低等)不容易觀察或不容易操作。解決方法:用發(fā)光二極管、按鍵開關(guān)代替這些不容易觀察或不容易操作的現(xiàn)象。</p>
87、;<p> 在程序設計時對DS18B20的程序設計總是弄不對。解決方法:參考其他人對這部分程序的編寫,然后按照自己的要求和DS18B20的原理進行修改。</p><p> 在程序設計過程中 ,對DS18B20測出的溫度進行轉(zhuǎn)化方面出現(xiàn)失誤:沒有注意DS18B20溫度數(shù)據(jù)是包含小數(shù)部分的溫度而導致在溫度轉(zhuǎn)化時出現(xiàn)錯誤。解決方法:在對DS18B20結(jié)構(gòu)及原理仔細分析的基礎上對設計的程序進行修改,首先
88、去除溫度的小數(shù)部分,然后吧溫度的個位數(shù)部分和十位數(shù)部分分別放在一個數(shù)組的兩個元素中。</p><p> 在系統(tǒng)調(diào)試中發(fā)現(xiàn)溫度顯示時總是個位數(shù)在前,十位數(shù)在后,給人的感覺很別扭。解決方法有兩個:一、在溫度數(shù)據(jù)的處理子程序中把個位數(shù)據(jù)和十位數(shù)據(jù)處理的語句調(diào)換一下。二、在硬件電路中把兩個LED數(shù)碼管位選信號輸入端調(diào)換一下。本設計采用第一種方法,即在程序處理方面做改變。</p><p><
89、b> 6.3 總結(jié)</b></p><p> 太陽能熱水器控制器是對太陽能熱水器進行控制的一種裝置,它需要能夠?qū)崿F(xiàn)對熱水器水溫、水位的控制。在本設計的過程中,我先是對太陽能熱水器需要實現(xiàn)的功能進行分析,然后按照需要實現(xiàn)的功能按照模塊設計的思想進行設計,接下來把各模塊組合起來形成一個系統(tǒng),用proteus對該系統(tǒng)進行仿真,最后進行實際電路連接。經(jīng)過以上各個步驟的實際操作,我們可以看出,本設計
90、是可行的。</p><p> 本設計中我用的了單片機、C語言、模電、數(shù)電、電路分析等多門課程,可以說正是在這些知識的支撐下我才能順利完成本設計。在進行本設計的過程中,我較深刻理解了能夠綜合運用知識的重要性,當然,本設計對我綜合運用能力也有一定程度的提高。</p><p> 另外,在進行本設計的過程中,我的交流能力也有一定程度的提高。在本設計中,我遇到過很多問題,正是與老師、學長、同學的
91、交流給我解決這些問題很大的啟發(fā),使我能夠順利完成本設計。</p><p><b> 致謝</b></p><p> 對于即將畢業(yè)的我們來說,本設計的完成就基本意味著大學學習生活的結(jié)束。離別時刻就要到來,而我也將要開始我新一段的學習生活。此時此刻難免會有各種思緒,其中最強烈的莫過于感恩了。</p><p> 大學四年不算太長,但在這四年里我
92、卻完成從稚嫩到成熟,由懵懂到理智的成功蛻變。猶記得剛上大一時對未來的迷茫,對生活的不知所措、對專業(yè)知識的一清二白,在看看現(xiàn)在的對未來的憧憬與信心,對生活的游刃有余,對專業(yè)基本知識的胸有成竹,大學給與我了太多東西,因此,在這里我首先要感謝我的母?!獰熍_大學。</p><p> “出門遇貴人”,在這所大學里我遇到了太多太多這樣的貴人,正是這些貴人讓我的大學收獲非常豐富,這些人也是我要感激的。首先要說感謝的是我的畢
93、業(yè)設計指導老師——劉云學老師,在我做畢業(yè)設計時是你給我提供了無私的指導和幫助。其次我要感謝大學里的其他老師,是你們讓我學會了如何學習,如何做人。再次還要感謝那些給過我指引的學長和學姐們,尤其要感謝在我論文寫作過程中給我指導的岳峰學長,正是你們對我無私的引導才使得我的大學生活不再那么茫然。當然還要感謝我那些可愛的同學們,在我遇困難的時候是你們在陪伴著我,當我開心的時候是你們在分享我的歡樂,在論文的創(chuàng)作過程中也是你們給提供了很多幫助。<
94、;/p><p> 本次畢業(yè)設計將會在我的經(jīng)歷上留下濃重的一筆,在此過程中,我不僅學到了很多新的實用的知識技術(shù),收獲了不少經(jīng)驗,最重要的是學到了解決問題的辦法及途徑,讓我今后在遇到這樣的課題能夠有章可循。</p><p><b> 參考文獻</b></p><p> [1]張才忠. 真空管太陽能熱水器熱性能分析與參數(shù)化設計研究. 濟南:山東大學
95、學報,2006</p><p> [2] 胡潤青. 蓬勃發(fā)展的太陽能熱水器產(chǎn)業(yè).北京:建設科技雜志,2006</p><p> [3] 張媛等. 太陽能熱水器的發(fā)展前景. 天津:天津建設科技,2009年1期</p><p> [4] 侯玉寶等. 基于Proteus的51系列單片機設計與仿真[M]. 北京: 電子工業(yè)出版社,2008</p><
96、;p> [5] 余錫存,曹國華. 單片機原理及接口技術(shù)(第二版)[M].西安:西安電子科技大學出版社,2007</p><p> [6] 趙建領,薛園園等. 51單片機開發(fā)與應用技術(shù)詳解[M]北京:電子工業(yè)出版社,2009</p><p> [7] 胡漢才.單片機原理及其接口技術(shù)[M].北京:清華大學出版社,2004</p><p> [8] 李群芳等
97、.單片機微型計算機與接口技術(shù)(第2版)[M].北京:電子工業(yè)出版社,2005.1</p><p> [9] 寧成軍等,基于 Proteus和Keil接口的單片機外圍硬件電路仿真,北京:現(xiàn)代電子技術(shù)出版社,2006 </p><p> [10] 樓然苗,李光飛. 單片機課程設計指導(第2版)[M]. 北京:北京航空航天大學出版社,2012.1</p><p&
98、gt; [11] 李華等.MCS-51系列單片機應用系統(tǒng)設計[M]北京:北京航空航天大學出版社,1995</p><p> [12]楊居義 主編. 單片機課程設計指導[M]. 北京:清華大學出版,2009.9</p><p> [13]80C51 8bit flash microcontroller family P89C51RB2/
99、P89C51RC2/P89C51RD2. Data Book, Philips Semicon-ductors, 2001,6(1).</p><p> [14] 康華光,陳大欽.電子技術(shù)基礎數(shù)字部分(第四版)[M].北京:高等教育出版社,2001.6</p><p> [15] 齊玲, 繼電器綜合參數(shù)檢測系統(tǒng)[J] 河北:河北工業(yè)大學
100、學報,2009</p><p> [16] 周潤景等,基于PROTEUS的電路及單片機系統(tǒng)設計與仿真.北京:北京航空航天大學出版社,2006.</p><p> [17]馬忠梅等.單片機的C語言應用程序設計[M].北京:北京航空航天大學出版社,2003.11.</p><p><b> 附錄</b></p><p>
101、; 本設計程序如下:[17]</p><p> /***************************************************/</p><p> #include <reg51.h></p><p> #include <intrins.h> </
102、p><p> #define Disdata P0 </p><p> #define uchar unsigned char</p><p> #define uint unsigned int</p><p> sbit b20=P3^7;</p><p> sbit p2
103、0=P2^0;</p><p> sbit p21=P2^1; </p><p> sbit p22=P2^2; </p><p> sbit p23=P2^3; </p><p> sbit p24=P2^4;</p><p
104、> sbit p25=P2^5; </p><p> sbit p26=P2^6; </p><p> sbit p27=P2^7;</p><p> sbit beet=P1^5; </p><p> sbit heat=P1^
105、0;</p><p> sbit p11=P1^1;</p><p> sbit qxjr=P1^2;</p><p> sbit add=P1^3;</p><p> sbit p14=P1^4;</p><p> sbit qxss=P1^6;</p>
106、<p> uchar a=35; </p><p> uint temp,b,wd,h;</p><p> bit lock0=1; //加熱標志位</p><p> bit lock1=1; </p><p> uchar code dis[12]={0xc0,0xf9,0x
107、a4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf}; </p><p> uchar data temp_data[3]={0x00,0x000,0x00}; </p><p> uint key_[2]={5,0};</p><p> /*****************11us延
108、時函數(shù)*************************/</p><p> void delay(uint t)</p><p><b> {</b></p><p> for (;t>0;t--);</p><p><b> }</b></p><p>
109、/******************1ms延時函數(shù)*****************************/</p><p> void delay1ms(uint z)</p><p><b> {</b></p><p><b> uint x,y;</b></p><p> for
110、(x=z;x>0;x--)</p><p> for(y=110;y>0;y--);</p><p><b> }</b></p><p> /****************發(fā)音函數(shù)***************************/</p><p> void play(uchar t)&l
111、t;/p><p><b> {</b></p><p><b> uchar i;</b></p><p> for(i=0;i<1000;i++)</p><p><b> {</b></p><p> beet=~beet;</p&
112、gt;<p> delay1ms(t);</p><p><b> }</b></p><p><b> beet=0;</b></p><p><b> }</b></p><p> /****************顯示掃描函數(shù)***********
113、****************/</p><p><b> scan()</b></p><p><b> {</b></p><p><b> uint k=0;</b></p><p> Disdata=~dis[temp_data[k]];</p>
114、<p><b> p26=0;</b></p><p><b> p27=1;</b></p><p> delay1ms(5);</p><p><b> k++;</b></p><p> Disdata=~dis[temp_data[k]];<
115、/p><p><b> p26=1;</b></p><p><b> p27=0;</b></p><p> delay1ms(5);</p><p><b> p26=1;</b></p><p><b> p27=1;</b&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機課程設計--太陽能熱水器控制器設計
- 基于單片機的太陽能熱水器控制器的設計 開題報告
- 基于單片機的太陽能熱水器畢業(yè)設計
- 畢業(yè)設計--基于51單片機的太陽能熱水器智能控制器的設計
- 基于單片機的太陽能熱水器控制的畢業(yè)設計
- 太陽能熱水器
- 太陽能熱水器控制器設計[開題報告]
- 太陽能熱水器控制器畢業(yè)設計
- 基于單片機的太陽能熱水器控制系統(tǒng)的實現(xiàn).pdf
- 課程設計--基于單片機的太陽能熱水器的設計
- 基于單片機的太陽能熱水器控制系統(tǒng)的設計與實現(xiàn)
- 基于單片機的太陽能熱水器智能控制系統(tǒng)設計開題報告
- 開題報告---基于單片機的太陽能熱水器智能控制系統(tǒng)設計
- 太陽能熱水器控制器設計-畢業(yè)論文
- 基于FPGA太陽能熱水器智能控制器的設計.pdf
- 太陽能熱水器智能控制器-畢業(yè)設計
- 畢業(yè)設計---基于單片機的全自動太陽能熱水器的控制
- 開題報告---基于單片機的太陽能熱水器智能控制系統(tǒng)設計
- 太陽能熱水器的智能控制器-畢業(yè)設計
- 畢業(yè)論文太陽能熱水器控制器設計
評論
0/150
提交評論