畢業設計(論文)基于AT89C52單片機的太陽能熱水器控制器設計_第1頁
畢業設計(論文)基于AT89C52單片機的太陽能熱水器控制器設計_第2頁
畢業設計(論文)基于AT89C52單片機的太陽能熱水器控制器設計_第3頁
畢業設計(論文)基于AT89C52單片機的太陽能熱水器控制器設計_第4頁
畢業設計(論文)基于AT89C52單片機的太陽能熱水器控制器設計_第5頁
已閱讀5頁,還剩43頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、摘 要本課題的目的是結合太陽能熱水器的具體應用,設計一種用于太陽能熱水器的檢測控制系統,以更好的實現對太陽能熱水器的監控與控制。太陽能熱水器作為太陽能利用中最常見的一種裝置,經濟效益明顯,正在迅速的推廣應用。根據太陽能熱水器特點以及對控制器的要求,本文提出了一種基于單片機at89c52的太陽能熱水器智能控制器的設計方法。本文在分析了解太陽能熱水器及其控制器的發展和市場分布狀況的基礎上,描述了太陽能熱水器控制器的組成及其工作原理。論文完成了控制器的硬件設計和軟件設計。在硬件設計中,利用at89c52單片機作為控制的中心環節,控制整個系統運作。利用溫度傳感器ds18b20和分段式水位傳感器作為水溫

2、水位測量環節,并將測量結果送單片機進行處理。利用ds12887作為時鐘芯片,以實現時間以及日期的顯示。選用液晶顯示模塊12864顯示水溫水位時間及日期,顯示部分是人機交換的重要媒介之一。在軟件設計部分采用模塊化結構,完成了包括主程序,水位檢測子程序、lcd顯示等子程序的設計。系統主程序主要完成一些初始化功能,溫度的檢測以及控制輔助加熱系統,同時完成信號轉換及送顯示功能;水位檢測子程序完成水位測量及送數據功能;顯示子程序完成水溫水位及時間日期的顯示功能;鍵盤掃描子程序實現功能轉換及水溫水位時間的設定。論文通過對整體設計方案,硬件電路,軟件程序的設計分析,實現了太陽能熱水器的水溫水位的檢測與控制,

3、具有實際的意義。 關鍵詞:太陽能熱水器;傳感器;ds12887;單片機; fyd12864-0402babstractthe purpose of this study is to introduce a kind of solar water heater detection based on the application of solar water heater,achieving to do the better monitoring and controling of the solar water heater. solar water heater,as one of the

4、most common use of the solar energy utilization. the economic benefit is obviously and the popularization and application is rapidly. according to the characteristics of solar water heater and the requirement of the controller,here shows a design method of the solar water heater intelligent controll

5、er based on the clock chip ds12887.in the analysis of the article about solar water heaters and control of the development and market condition on the basis of distribution, solar water heaters of the controller and the principle of work. the papers finish the control of the hardware and software de

6、sign. in hardware design of at89c52 monolithic integrated circuits to control center segments of the whole system. use of the temperature sensors ds18b20 and sectional form sensors to measure the level as the water, and measurements taken for processing monolithic integrated circuits. use ds12887 as

7、 the clock, to realize the time and date display. use lcd modules 12864 show that the level of time and date, the display is part of the exchange of one of the man-machine important vehicle. in software design of structure, use modular completed include the program, the level of the inspection or su

8、broutines lcd display design and so on. the main program of the system performs some of the initialization, the temperature of the inspection and control the heating system and the auxiliary signal to show complete the exercise and function testing programs;the water, the measurement and send data t

9、o display the functions;a subroutine to complete the water and time functions of the date display;scan a subroutine into the function and the time set.this paper on the overall design, software, hardware circuit analysis of designs, make the measurement and control of the solar water heater into rea

10、lize, which has played a significant role in the daily life.keywords: solar water heater; sensor; ds12887; mcu; fyd12864-0402b ii 目 錄摘 要iabstractii第1章緒 論11.1太陽能熱水器控制器的發展概況及市場分析11.1.1發展概況11.1.2市場分析11.2太陽能熱水器控制器的應用及意義1第2章控制器的組成及工作原理32.1太陽能熱水器的結構及工作原理32.1.1 太陽能熱水器的結構32.1.2 控制器結構及工作原理52.2控制器的總體設計62.2.1設

11、計思想及實現功能62.2.2方案論證6第3章控制器硬件設計83.1控制器原理框圖83.2單片機外圍電路83.2.1晶振電路93.2.2上電復位電路93.3控制器時鐘接口電路設計103.3.1 ds12887時鐘芯片簡介113.3.2 時鐘電路183.4溫度檢測電路設計193.4.1數字溫度傳感器ds18b20主要特性193.4.2溫度檢測電路設計203.5水位檢測及鍵盤電路設計213.5.1水位檢測電路設計213.5.2鍵盤電路的設計213.5.3總體電路設計213.7顯示接口電路的設計213.7.1 fyd12864-0402b模塊簡介223.7.2 顯示電路設計263.8光電隔離與輔助加熱

12、電路設計27第4章控制器的軟件設計314.1主程序設計314.2水位檢測子程序334.3鍵盤掃描子程序設計334.4顯示子程序設計34結 論35參考文獻36致 謝37附錄1:電路圖38附錄2:部分程序39 iv沈陽工業大學本科生畢業設計(論文)第1章緒 論1.1太陽能熱水器控制器的發展概況及市場分析1.1.1發展概況當今社會發展日新月異,人們衣食住行也在不斷的提高。據國家經貿委資源與綜合利用司提供的消息,我國已成為世界上最大的太陽能熱水器生產和使用國。但是與之配套的太陽能熱水器控制器卻一直處在研究與開發階段。這種控制器只具有溫度和液位顯示功能, 而且為分段顯示,溫度顯示誤差為10%,水位顯示誤

13、差為25%。這種顯示器(還稱不上控制器)不具有溫度控制功能,當由于天氣原因而光強不足時,就會給熱水器用戶帶來不便;即使熱水器具有輔助加熱功能,由于加熱時間不能控制而產生過燒,從而浪費大量的電能。近幾年來,人們逐步研究出各種新型的控制器,值控制功能更加完善,控制更加精確,給人們提供了很大的方便。1.1.2市場分析 據中國五金制品協會統計,目前中國城市家庭中,57.4%擁有燃氣熱水器,31.3%擁有電熱水器,擁有的太陽能熱水器只有7.6%。但在城市家庭的購買預期調查中,三者的比例將演變為35.8%、30.2%、23.2%,太陽能熱水器的比例將大幅增長,一種融合三者之長的家庭熱水中心也將占據9.5%

14、的比例。據國家信息中心經濟預測部所做的全國消費者家用電器消費意向調查結果顯示,99年城鎮家庭熱水器的購買量為8.84臺/百戶,銷售總量比98年增長11%左右,傳統的燃氣熱水器產業實現升級換代,迎來安全時代,電熱水器持續升溫,逐漸成為市場較活躍的家電商品之一,作為熱水器市場的新秀,太陽能熱水器開始嶄露頭角。 1.2太陽能熱水器控制器的應用及意義眾所周知,太陽能是取之不盡,用之不竭,沒有污染的巨大能源。隨著世界上煤、油、氣的儲量日益減少,能源危機已日益增長,環境污染的危機已威脅著生態平衡,太陽能開發利用的課題已提到人類的面前。有人預測:二十一世紀太陽能將由輔助能源上升為主要能源。但由于太陽能的分散

15、性、季節性和地區性又給太陽能利用帶來重重困難,有些技術難點尚未突破,產品造價偏高(如光電池)。因而尚未被人們大規模的使用。在太陽能熱利用技術中,太陽能熱水器是技術上比較成熟、造價比較低廉的產品,同時給人民提供不耗能源、保護環境、絕對安全的熱水而受到人們的歡迎。而在太陽能熱水器的整個系統中,起到至關重要的作用的中心環節就是檢測控制系統。控制器不僅實現了對水溫,水位的檢測與控制,而且也實現了對時間,日期的控制及顯示。該控制器有主從兩個系統,其中從系統屬于輔助加熱系統,在陰天下雨等陽光不充足的情況下,從系統發揮作用對水進行加熱,以達到熱水24小時供應的目的1。第2章控制器的組成及工作原理2.1太陽能

16、熱水器的結構及工作原理2.1.1 太陽能熱水器的結構現在市場上的太陽能熱水器的結構復雜多樣,但總和看來,主要有三個部分:1.循環(保溫)水箱;2.集熱器;3.連接管道。而各個部分發揮了不同的作用:1.集熱器: 系統中的集熱元件。其功能相當于電熱水器中的電熱管。和電熱水器、燃氣熱水器不同的是,太陽能集熱器利 用的是太陽的輻射熱量,故而加熱時間只能在有太陽照射的白晝。 2.保溫水箱: 和電熱水器的保溫水箱一樣,是儲存熱水的容器。 因為太陽能熱水器只能白天工作,而人們一般在晚上才使用 熱水,所以必須通過保溫水箱把集熱器在白天產出的熱水儲 存起來。容積是每天晚上用熱水量的總和。采用同樂搪瓷內 膽承壓保

17、溫水箱,保溫效果好,耐腐蝕,水質清潔,使用壽 命可長達20年以上。 3.連接管道(循環水管): 將熱水從集熱器輸送到保溫水箱、將冷水從保溫 水箱輸送到集熱器的通道,使整套系統形成一個閉合的環路。 設計合理、連接正確的循環管道對太陽能系統是否能達到最 佳工作狀態至關重要。熱水管道必須做保溫處理。管道必須 有很高的質量,保證有20年以上的使用壽命。圖2-1為系統的總體結構。但通常在實用的太陽能熱水器系統中,需要外加一個補給水箱,以保證冷水的正常連續供應。圖2-2為典型實用熱水器的裝置簡圖。圖2-2中標號分別代表為:1-集熱器;2-下降水管;3-循環(保溫)水箱;4-補給水箱;5-上升水管;6-自來

18、水管;7-熱水出水管。工作原理:圖中集熱器1按最佳傾角放置,下降水管2的一端與循環水箱3的下部相連,另一端與集熱器1的下集管接通。上升水管5與循環水箱3上部相連,另一端與集熱器1的上集管相接。補給水箱4供給循環水箱3所需的冷水。當集熱器吸收太陽輻射后,集熱器內溫度上升,水溫也隨之升高。水溫升高后,水圖2-1系統總體結構圖圖2-2 熱水器裝置簡圖的比重減輕,便經上升水管進入循環水箱上部。而循環水箱下部的冷水比重較大,就由水箱下流到集熱器下方,在集熱器內受熱后又上升。這樣不斷對流循環,水溫逐漸提高,直到集熱器吸收的熱量與散失的熱量相平衡時,水溫不再升高。這種熱水利用循環加熱的原理,因此又稱循環熱水

19、器。集熱器是一種利用溫室效應,將太陽能輻射轉換為熱能的裝置,該裝置與一般熱水交換器不一樣,熱交換器通常只是液體到液體,或是液體到氣體的熱交換過程,而平板行集熱器時直接將太陽輻射傳給液體或氣體,是一個復雜的傳熱過程。平板型集熱器結構形式很多,世界上已實用的集熱器就有直管式、瓦楞式、扁管式、鋁翼式等二十多種。2.1.2 控制器結構及工作原理控制器主要由主控制器(即單片機),溫度檢測單元,水位檢測單元以及輔助加熱單元組成。各個單元發揮各自不同的作用及功能。外接顯示器以及按鍵作為人機交流介質。太陽能熱水器控制器結構看似復雜,但總結重要部分,得出結構簡圖如下圖2-3所示:圖2-3 控制系統結構簡圖在圖2

20、-3中,t1代表保溫水箱中的溫度傳感器。t2代表保溫水箱中的水位自動控制系統。f1代表冷水閥門。f2代表循環水管閥門。f3代表循環水管閥門。f4代表熱水閥門。工作原理:不用水時,閥門f1,f4關閉,f2,f3打開,熱水在保溫水箱和集熱器中流動。t1傳感器實時檢測溫度。用水時,閥門f4打開,傳感器t2檢測水位,當水位低于設定最小值時沒打開閥門f1給水箱供水。當陽光不足時,溫度傳感器t1檢測水溫不在升高且達不到設定值,則發出命令啟動從系統進行電加熱。整個系統循環運作,可以達到24小時提供熱水的目的。2.2控制器的總體設計2.2.1設計思想及實現功能本文設計的太陽能熱水器控制器以at89c52單片機

21、為檢測控制核心,采用ds12887 實時時鐘,不僅實現了時間、溫度和水位三種參數實時顯示和fuzzy控制功能,而且具有時間設定、溫度設定與控制功能。溫度控制采用模糊控制, 控制器可以根據天氣情況利用輔助加熱裝置使蓄水箱內的水溫在設定時間達到預先設定的溫度,從而達到24小時供應熱水的目的。此款熱水器包括主、從兩大系統:主系統的特點是在晴好的天氣利用太陽光能為熱水器加熱;從系統相當于電熱水器,它在無光照的情況下利用電輔助加熱。它充分利用太陽能的豐富的免費的資源的優勢,同時考慮到在陰天及夜間無法利用太陽能的缺點,充分發揮太陽能熱水器和電熱水器的各自優勢。2.2.2方案論證方案一:基于fpga的太陽能

22、熱水器控制系統本方案利用eda技術和vhdl語言,設計了基于fpga的太陽能熱水器控制系統,實現了系統的硬件電路及相關配套軟件,使系統能夠完成太陽能熱水器溫度、水位參數的采集和對采集數據實時記錄、處理、分析、顯示和控制等功能方案二:基于cpld的太陽能熱水器控制系統本方案以altera公司的epml270芯片作為數據處理器,將外界各種電路檢測得到的環境信息進行綜合處理和分析,智能化地解決太陽能熱水器日常使用中普遍存在的問題。方案三:基于89c51單片機的太陽能熱水器控制系統本方案以89c51單片機為核心控制整個系統,選用合適傳感器及接口,鍵盤,顯示電路,實現太讓能熱水器的溫度,壓力,時間檢測與

23、控制。另外,從系統為點加熱系統,在陽光不足的情況下實現輔助加熱。綜合三個方案的優缺點,從現實可行性,經濟條件以及個人知識掌握情況考慮本設計選用第三種方案。第3章控制器硬件設計3.1控制器原理框圖根據設計思想,系統的硬件接口電路應包括:控制器實時時鐘接口電路,蓄水箱溫度和水位檢測接口電路、按鍵電路,顯示電路以及電輔助加熱電路等。系統結構框圖如圖3-1所示:圖3-1 控制器系統框圖3.2單片機外圍電路根據控制要求,由于本系統運算量不是很大, 沒有太多的中間數據需要處理、保存,因此不再外擴數據存儲器。僅使用單片機內部ram已完全能夠滿足要求。因此采用本系統采用atmel公司的單片機at89s52作為

24、熱水器控制器系統的控制中心環節。主要從以下特點考慮:1.at89s52是一種低功耗,高性能cmos工藝的8位微控制器,具有8k在系統可編程flash存儲器。使用atmel公司高密度非易失性存儲器技術制造,與工業80c51產品指令和引腳完全兼容。片上flash允許程序存儲器在系統可編程,亦適于常規編程器。在單芯片上,擁有靈巧的8位cpu和在系統提供高靈活,超有效的解決方案。 2.at89s52具有以下標準功能:8k字節flash,256字節ram,32位i/o口線,看門狗定時器,2個數據指針,一個6向量2級中斷結構,全雙工串行口,片內晶振及時鐘電路。另外,at89s52可降至0khz靜態邏輯操作

25、,支持2種軟件可選擇節電模式。空閑模式下,cpu停止工作,允許ram、定時器/計數器、串口、中斷繼續工作。掉電保護方式下,ram內容被保存,振蕩器被凍結,單片機停止工作,直到一個中斷或硬件復位為止。3.at89s52有40個引腳,32個外部雙向輸入/輸出(i/o)端口,同時內含8個中斷口,3個16位可編程定時計數器,2個全雙工串行通信口,2個讀寫口線。at89s52可以按照常規方法進行編程,也可以在線編程。其通用的微處理器和flash存儲器結合在一起,可反復擦寫的flash存儲器可有效地降低開發成本。3.2.1晶振電路單片機的時鐘信號通常用兩種電路形式得到:內部振蕩方式和外部震蕩方式。本設計中

26、,在引腳xtal1和xtal2端外接石英晶體振蕩器,就構成了內部震蕩方式。由于單片機內部有一個高增益反相放大器,當外接晶振后,就構成了自己震蕩器,并產生震蕩時鐘脈沖。晶振通常選用6mhz,12mhz或24mhz。本設計選用12mhz晶振。如圖3-2所示,電容c2,c3起穩定震蕩頻率,快速起震的作用。電容值通常為5-30pf。內部震蕩方式所得的時鐘信號比較穩定,實用電路中使用最多。3.2.2上電復位電路設計中用的是上電復位,是指單片機只要一上電,便自動的進入復位狀態。圖3-3是上電復位電路。當采用的晶體頻率為12mhz時,可采取c=10uf,r=8。2k2。圖3-2 晶振電路圖3-3 上電復位電

27、路3.3控制器時鐘接口電路設計為了給用戶提供方便,本設計加入一種時間芯片,它可以為用戶提供準確的時間及日期。具有良好的使用性質。本系統采用美國dallas半導體公司最新推出的時鐘芯片ds12887,該芯片采用cmos 技術,把時鐘芯片所需的晶振和電池以及相關的電路集成到芯片內部,并與mc146818管腳完全兼容。ds12887芯片具有微功耗、外圍接口簡單、精度高,工作穩定可靠等優點,完全能夠滿足設計需要。3.3.1 ds12887時鐘芯片簡介美國達拉斯半導體公司(dallas)最新推出ds12887的串行接口實時時鐘芯片,采用cmos 技術制成,具有內部晶振和時鐘芯片備份鋰電池,同時它與目前i

28、bmat計算機常用的時鐘芯片mc146818b 和ds1287 管腳兼容,可直接替換。它所提供的世紀字節在位置32h,世紀寄存器32h到2000 年1月1日從19遞增到20。采用ds12887 芯片設計的時鐘電路不需任何外圍電路和器件,并具有良好的微機接口。ds12887芯片具有微功耗,外圍接口簡單,精度高,工作穩定可靠等優點,可廣泛用于各種需要較高精度的實時時鐘系統。美國dallas公司推出兩款數字時鐘芯片ds12887/ds12c887,兩款時鐘芯片都將在1999年12月31日23時59分59秒時順利地跳到2000 年1月1日零時,并能實2000 年2月29 日的閏年提示,是時鐘芯片ds1

29、287 的增強型品種,結構上相當于mc146818b 的改進型。芯片都采用24引腳雙列直插式封裝,其引腳接口邏輯和內部操作方式與mc146818 基本一致,所不同的是ds12887/ds12c887 芯片的晶體振蕩器、振蕩電路、充電電路和可充電鋰電池等一起封裝在芯片的上方,組成一個加厚的集成電路模塊,因此,ds12887/ ds12c887時鐘芯片無需mc146818 的電源電位檢測端( ps),電路通電時其充電電路便自動對可充電電池充電,充足一次電可供芯片時鐘運行半年之久,正常工作時可保證時鐘數據十年內不會丟失。此外,片內通用的ram 為mc146818 的兩倍以上。ds12887/ds12

30、c887 內部有專門的接口電路,從而使得外部電路的時序要求十分簡單,使它與各種微處理器的接口大大簡化。使用時無需外圍電路元件,只要選擇引腳mot 電平,即可和不同計算機總線連接。主要技術特點1. ds12887/ds12c887 具有下列主要技術特點:(1) 具有完備的時鐘、鬧鐘及到2100年的日歷功能,可選擇12小時制或24小時制計時,有am和pm、星期、夏令時間操作,閏年自動補償等功能。(2) 具有可編程選擇的周期性中斷方式和多頻率輸出的方波發生器功能。(3) ds12887內部有14個時鐘控制寄存器,包括10個時標寄存器,4個狀態寄存器和114bit作掉電保護用的低功耗ram。(4) 由

31、于該芯片具有多種周期中斷速率時鐘中斷功能,因此可以滿足各種不同的待機要求,最長可達24小時,使用非常方便。(5) 時標可選擇二進制或bcd碼表示。(6) 工作電壓: + 4.55.5v、工作電流:715ma。(7) 工作溫度范圍:070c。2. ds12887內部結構及管腳說明ds12887/ds12c887為24引腳芯片,內部結構如圖3-4所示。圖3-4 ds18b20內部框圖其中:mot:計算機總線選擇端;sqw:方波輸出,速率和是否輸出由專用寄存器a、b的預置參數決定;ad0ad7:地址/數據(雙向)總線,由as 的下降沿鎖存8位地址;r/w:讀/寫數據;as:地址鎖存信號端;ds:數據

32、讀信號端;cs:選通信號端,低電平有效;irq:中斷申請,由專用寄存器決定;reset:復位端;nc:空引腳。ds12887內部由振蕩電路,分頻電路,周期中斷/方波選擇電路,14字節時鐘和控制單元,114字節用戶非易失ram,十進制/二進制計加器,總線接口電路,電源開關寫保護單元和內部鋰電池等部分組成。ds12887管腳分配如圖3-5所示。圖3-5 管腳分配圖vcc:直流電源+ 5v 電壓。當5v電壓在正常范圍內時,數據可讀寫;當vcc低于4。25v,讀寫被禁止,計時功能仍繼續;當vcc下降到3v以下時,ram和計時器供電被切換到內部鋰電池。mot(模式選擇):mot 管腳接到vcc時,選擇m

33、otorola時序,當接到gnd 時,選擇intel時序。sqw(方波信號輸出):sqw 管腳能從實時時鐘內部15級分頻器的13個抽頭中選擇一個作為輸出信號,其輸出頻率可通過對寄存器a編程改變。ad0 ad7(雙向地址/ 數據復用線):總線接口,可與motorola微機系列和intel 微機系列接口。as (地址選通輸入):用于實現信號分離,在ad/ ale 的下降沿把地址鎖入ds12887。ds(數據選通或讀輸入):ds/ rd 管腳有兩種操作模式,取決于mot管腳的電平,當使用motoro2la 時序時,ds是一正脈沖,出現在總線周期的后段,稱為數據選通;在讀周期,ds指示ds12887驅

34、動雙向總線的時刻; 在寫周期,ds的后沿使ds12887鎖存寫數據。選擇intel時序時,ds稱作(rd),rd與典型存貯器的允許信號(oe) 的定義相同。r/w(讀/ 寫輸入) : r/ w 管腳也有兩種操作模式。選motorola 時序時,r/w 是一電平信號,指示當前周期是讀或寫周期,ds為高電平時,r/ w高電平指示讀周期,r/w 信號是一低電平信號,稱為wr。在此模式下,r/ w管腳與通用ram 的寫允許信號(we) 的含義相同。cs(片選輸入):在訪問ds12887 的總線周期內片選信號必須保持為低。irq(中斷申請輸入):低電平有效,可作微處理的中斷輸入。沒有中斷的條件滿足時,i

35、rq處于高阻態。irq線是漏極開中輸入,要求外接上接電阻。reset(復位輸出):當該腳保持低電平時間大于200ms,保證ds12887有效復位。3. ds12887/ ds12c887 內部寄存器的功能因ds12887 和ds12c887 結構功能上類似,現以ds12887 為例說明如下:cpu通過讀ds12887的內部時標寄存器得到當前的時間和日歷,也可通過選擇二進制碼或bcd碼初始化芯片的10個時標寄存器。其114bit非易失性靜態ram 可供用戶使用,對于沒有ram的單片機應用系統,可在主機掉電時來保存一些重要的數據。ds12887 的4個狀態寄存器用來控制和指ds12887模塊的當前

36、工作狀態,除數據更新周期外,程序可隨時讀寫這4個寄存器,各寄存器的功能和作用如下。寄存器a各位不受復位的影響,uip 位為只讀位,其它各位均可讀寫。寄存器的控制字的格式如下表3-1所列:表3-1 ds12887 控制寄存器a 各布爾位定義:bit7bit6bit5bit4bit3bit2bit1bit0uipdv2dv1dv0rs3rs2rs1rs0(1) ip 位:更新周期標志位。該位為“1”時,表示芯片正處于或即將開始更新周期,此時程序不準讀寫時標寄存器;該位為“0”時,表示至少在244s 后才開始更新周期,此時程序可讀芯片內時標寄存器。該位是只讀位。(2)dv0 、dv1 、dv2 :芯

37、片內部振蕩器rtc 控制位。當芯片解除復位狀態,并將010寫入dv0、dv1、dv2后,另一個更新周期將在500ms后開始。因此,在程序初始化時可用這三位精確地使芯片在設定的時間開始工作。這與mc146818 不同的是,ds12887固定使用32 768hz 的內部晶體,所以,dv0 =“0”,dv1 =“1”,dv2 =“0”,即只有一種010的組合選擇即可啟動rtc。(3)rs3、rs2、rs1、rs0:周期中斷可編程方波輸出速率選擇位。各種不同的組合可以產生不同的輸出。程序可以通過設置寄存器b的sqwf 和pie 位控制是否允許周期中斷和方波輸出。其寄存器a輸出速率選擇位如表3-5(見1

38、7頁)所列。寄存器b的控制字的格式如表3-3所列。表3-2 ds12887 控制寄存器b各布爾位定義bit7bit6bit5bit4bit3bit2bit1bit0setpiealeuiesqwedw24/21dse(a) set 位:當該位為“0”時,芯片處于正常工作狀態,每秒產生一個更新周期來更新時標寄存器為“1”時,芯片停止工作,程序在此期間可初始化芯片的各個時標寄存器。(b)pie、aie、uie 位:分別為周期中斷、報警中斷、更新周期結束中斷允許位。各位為“1”時,允許芯片發相應的中斷。(c)sqwe 位:方波輸出允許位。sqwe“1”,按寄存器a 輸出速率選擇位所確定的頻率輸出方波

39、;sqwe =“0”,腳sqw保持低電平。(d) dm 位:時標寄存器用十進制bcd 碼表示或用二進制表示格式選擇位。dm =“0”時,為十進制bcd碼;dm =“1”時,為二進制碼。(e) 24/ 12 位: 24/ 12 小時模式設置位。24/12位=“1”時,為24 小時工作模式;24/ 12 位=“0”時,為12 小時工作模式。(f)dse位:夏令時服務位。dse=“1”,夏時制設置有效,夏時制結束可自動刷新恢復時間;dse=“0”,無效。寄存器c的控制字的格式如表4所列。該寄存器的特點是程序訪問讀該寄存器后,該寄存器的內容將自動清零,從而使irqf 標志位變為高電平,否則,芯片將無法

40、向cpu 申請下一次中斷。表3-4所示的為控制寄存器c各布爾位定義:表3-3 ds12887 控制寄存器c各布爾位定義bit7bit6bit5bit4bit3bit2bit1bit0irpfpfafuf0000(a) irqf位:中斷申請標志位。該位邏輯表達式為:irqf = pfpie +afaie+ufuie。當irqf位變“1”時,引腳將變低電平引發中斷申請。(b) pf、af、uf 位:這三位分別為周期中斷、報警中斷、更新周期結束中斷標志位。只要滿足各中斷的條件,相應的中斷標志位將置“1”。(c) bit3bit0 :未定義的保留位。讀出值始終為0 。寄存器d為只讀寄存器。寄存器d的控

41、制字的格式如表3-5所示。表3-4 ds12887 控制寄存器d 各布爾位定義bit7bit6bit5bit4bit3bit2bit1bit0vrt0000000(a) vrt 位:芯片內部ram 與寄存器內容有效標志位。該位為“1”時,指芯片內部ram 和寄存器內容有效。讀該寄存器后,該位將自動置“1”。(b) bit6bit0 位:保留位。讀出的數值始終為0。表3-5 ds12887 控制寄存器a 輸出速率選擇位定義寄存器a輸出速率選擇位32768hz時基rs3rs2rs1rs0中短周期sqwf輸出頻率(hz)0000無無00013.90625ms25600107.8125ms128001

42、1122.0us8.192k0100244.141us4.096k0101488.281us2.048k0110976.5625us1.024k01111.953125ms51210003.90625ms25610017.812ms128101015.625ms64101131.25ms32110062.5ms161101125ms81110250ms41111500ms2注釋:寄存器b允許讀寫,主要用于控制芯片的工作狀態。3.3.2 時鐘電路ds12887時鐘芯片與at89c52單片機的接口電路見下圖3-6。圖3-6 ds12887與單片機接口電路模式選擇腳mot接地, 選擇in tel時序

43、。ds12887 的高位地址用89c52的p14 選擇,則時鐘芯片的高8位地址為efh,而其低8 位地址則由芯片內部各單元的地址來決定(00h80h),ds12887 的中斷輸出端irq 接上拉電阻,同89c52中斷線in to相連,為單片機提供中斷信號。sqw端口編程為2hz方波輸出,經二分頻后,驅動兩個led發光二極管作為時鐘的秒閃爍示3。3.4溫度檢測電路設計為了實現對水箱內水溫的實時檢測,蓄水箱溫度檢測電路采用ds18b20芯片,該芯片將采集到的溫度信號轉換成脈沖信號,送到at89c52的i/o 口(編程為計數器工作模式),通過測量輸出脈沖頻率的大小來換算成水溫高低信號。3.4.1數字

44、溫度傳感器ds18b20主要特性一線式數字溫度傳感器ds18b20是ds1820的更新換代產品(由美國da iias公司生產)。它具有體積小,分辨率高,轉換快等優點。由于每片ds18b20 含有唯一的硅串行數, 所以在一條總線上可以掛接多達248 2181014只ds18b20,再加上ds18b20 獨特的單線總線結構,決定了ds18b20 特別適合于大型的多路溫度實時測控系統的溫度檢測。溫度實時測控集裝箱的設計, 在實現測控系統的溫度檢測方面就較好地利用了ds18b20 的獨到特點,使系統得到了極大的簡化。ds18b20的特性如下:(1) 獨特的單線接口方式。ds18b20 在i/o處理器連

45、接時,僅需要一個i/o 口即可實現微處理器同ds18b20的雙向通訊。(2) ds18b20支持組網功能,多個ds18b20可以并聯在唯一的單線上,實現多點測溫。(3) ds18b20 的測溫范圍為: - 55+125,在-10+ 85時, 其精度為+ 015。(4) ds18b20的測溫結果的數字量位數從912位,可編程進行選擇。(5) ds18b20內含寄生電源,器件既可以由單線總線供電,也可用外部的電源(310v515v )供電。數字化溫度傳感器ds1820測溫范圍為- 55+125 ,增量值為0。5 (9位溫度讀數),它主要由4個數據部件部分組成:64位rom;溫度傳感器;非易失性的溫

46、度告警觸發器th 和tl;高速便箋存儲器64 位rom用于存儲序列號,其首字節固定為28h,表示產品類型碼,后6個字節是每個器件的編碼,最后1個字節是crc 校驗碼。 溫度告警觸發器th和tl 存儲用戶通過軟件寫入的報警上下限值,高速便箋存儲器由9個字節組成,其中有2個字節ram單元用來存放溫度值前1個字節為溫度值的補碼低8位,后1個字節為符號位和溫度值的補碼高3位。ds18b20在使用時,一般都采用單片機來實現數據采集。只需將ds18b20 信號線與單片機1位i/o線相連,且單片機的1位i/o線可掛接多個ds18b20,就可實現單點或多點溫度檢測。ds18b20傳感器精度高、互換性好;它直接

47、將溫度數據進行編碼,可以只使用一根電纜傳輸溫度數據,通信方便,傳輸距離遠且抗干擾性好:與用傳統溫度傳感器組成的多點測溫系統相比可節省大量電纜,而且系統得以簡化,系統擴充維護十分方便。ds18b20 可以廣泛用于工廠工業過程、大型糧倉、釀酒廠,食品加工廠的溫度檢測以及賓館、儀器儀表室等處的溫度檢測和控制。3.4.2溫度檢測電路設計具體電路如圖3-7所示:圖3-7 溫度檢測電路工作原理:ds18b20的數據口與單片機相連,單片機p13口通過讀口線數據,經處理后送lcd12864顯示4.5。3.5水位檢測及鍵盤電路設計水位檢測電路與鍵盤均是由按鍵開關組成,由于所用按鍵數量不多,只用單片機自身口線寂靜

48、足夠,因此采用獨立式鍵盤設計,這樣也使查詢過程簡單。3.5.1水位檢測電路設計蓄水箱水位及溫度檢測部分是實現溫度智能控制的重要環節,只有準確地檢測出水位和溫度,才能通過軟件計算提前開始輔助加熱的預加熱時間。要實現輔助加熱提前時間的精確計算,最好是采用連續液位傳感器,但考慮系統成本,本設計仍采用分段式液位傳感器(通過軟件來提高精度),在水位顯示上也仍采用分段顯示。在此設計中有四個水位段,分別是低水位、中水位、高水位和超高水位。在實用中,是利用水的導電性原理使電路通路從而判斷水位。在本設計中通過四個單刀單擲開關k1-k4來表示這四種水位,通過掃描著四個開關的開啟閉合狀態從而判斷出水位狀態6.7。3

49、.5.2鍵盤電路的設計由于本設計所使用的鍵盤數量不多,利用4個按鍵鍵盤來實現功能操作。4個按鍵分別為功能選擇鍵,輔助加熱開關以及設定值調節按鍵“+”和“-”。3.5.3總體電路設計將水位測量電路及按鍵電路組成獨立式鍵盤形式,這樣的設計有利于檢測開關閉合情況及實現實時控制。電路圖如圖3-8所示。3.7顯示接口電路的設計為了實現對水溫水位以及時間的形象顯示,本設計采用fyd12864-0402b液晶顯示模塊。該模塊為128*64點陣顯示,不僅能顯示漢字,而且可以顯示圖像,可以使實用者的操作更為簡單,清晰。圖3-8 矩陣鍵盤電路3.7.1 fyd12864-0402b模塊簡介一概述12864是一種具

50、有4位/8位并行、2線或3線串行多種接口方式,內部含有國標一級、二級簡體中文字庫的點陣圖形液晶顯示模塊;其顯示分辨率為12864, 內置8192個16*16點漢字,和128個16*8點ascii字符集。利用該模塊靈活的接口方式和簡單、方便的操作指令,可構成全中文人機交互圖形界面。可以顯示84行1616點陣的漢字。 也可完成圖形顯示。低電壓低功耗是其又一顯著特點。由該模塊構成的液晶顯示方案與同類型的圖形點陣液晶顯示模塊相比,不論硬件電路結構或顯示程序都要簡潔得多,且該模塊的價格也略低于相同點陣的圖形液晶模塊。基本特性:低電源電壓(vdd:+3.0-+5.5v)顯示分辨率:12864點內置漢字字庫

51、,提供8192個1616點陣漢字(簡繁體可選)內置 128個16*8點陣字符2mhz時鐘頻率顯示方式:stn、半透、正顯驅動方式:1/32duty,1/5bias視角方向:6點背光方式:側部高亮白色led,功耗僅為普通led的1/51/10通訊方式:串行、并口可選內置dc-dc轉換電路,無需外加負壓無需片選信號,簡化軟件設計工作溫度: 0 - +55 ,存儲溫度: -20 - +60 二模塊主要硬件構成說明控制器接口信號說明:rs,r/w的配合選擇決定控制界面的4種模式,如表3-6所示:表3-6 四種模式rsr/w功能說明llmpu寫指令到指令暫存器(ir)lh讀出忙標志(bf)及地址記數器(

52、ac)的狀態hlmpu寫入數據到數據暫存器(dr)hhmpu從數據暫存器(dr)中讀出數據表3-7是對e信號的特殊說明。表3-7 e信號說明e狀態執行動作結果高低i/o緩沖dr配合/w進行寫數據或指令高dri/o緩沖配合r進行讀數據或指令低/低高無動作忙標志:bfbf標志提供內部工作情況。bf=1表示模塊在進行內部操作,此時模塊不接受外部指令和數據。bf=0時,模塊為準備狀態,隨時可接受外部指令和數據。利用status rd 指令,可以將bf讀到db7總線,從而檢驗模塊之工作狀態。字型產生rom(cgrom)字型產生rom(cgrom)提供8192個此觸發器是用于模塊屏幕顯示開和關的控制。df

53、f=1為開顯示(display on),ddram 的內容就顯示在屏幕上,dff=0為關顯示(display off)。dff 的狀態是指令display on/off和rst信號控制的。顯示數據ram(ddram)模塊內部顯示數據ram提供642個位元組的空間,最多可控制4行16字(64個字)的中文字型顯示,當寫入顯示數據ram時,可分別顯示cgrom與cgram的字型;此模塊可顯示三種字型,分別是半角英數字型(16*8)、cgram字型及cgrom的中文字型,三種字型的選擇,由在ddram中寫入的編碼選擇,在0000h0006h的編碼中(其代碼分別是0000、0002、0004、0006共

54、4個)將選擇cgram的自定義字型,02h7fh的編碼中將選擇半角英數字的字型,至于a1以上的編碼將自動的結合下一個位元組,組成兩個位元組的編碼形成中文字型的編碼big5(a140d75f),gb(a1a0-f7ffh)。 字型產生ram(cgram)字型產生ram提供圖象定義(造字)功能, 可以提供四組1616點的自定義圖象空間,使用者可以將內部字型沒有提供的圖象字型自行定義到cgram中,便可和cgrom中的定義一樣地通過ddram顯示在屏幕中。地址計數器ac地址計數器是用來貯存ddram/cgram之一的地址,它可由設定指令暫存器來改變,之后只要讀取或是寫入ddram/cgram的值時,

55、地址計數器的值就會自動加一,當rs為“0”時而r/w為“1”時,地址計數器的值會被讀取到db6db0中。光標/閃爍控制電路此模塊提供硬體光標及閃爍控制電路,由地址計數器的值來指定ddram中的光標或閃爍位置。三模塊接口說明表3-8所示的為lcd液晶顯示芯片的管腳說明。表3-8 芯片引腳說明管腳號管腳名稱電平管腳功能描述并行串行1vss0v電源地2vcc3.0+5v電源正3v0-對比度(亮度)調整4rs(cs)h/l寄存器選擇端:h數據;l指令片選,低有效5r/w(sid)h/l讀/寫選擇端:h讀;l寫串行數據線6e(sclk)h/l使能信號串行時鐘輸入7-10db0-bd3h/l數據總線低四位空接11-14db4-db7h/l數據總線高四位,4位并口時空接空接15psbh/lh:8位或4位并口方式;l:串口方式(見注釋1)16nc-空腳17/reseth/l復位端,低電平有效(見注釋2)18vout-lcd驅動電壓輸出

溫馨提示

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

評論

0/150

提交評論