版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上 太陽能熱水器水溫控制與水位顯示系統(tǒng) 專業(yè): 電氣工程及其自動化 班級: 08電氣工程 學(xué)生姓名: 盛旭路 指導(dǎo)教師: 完成時(shí)間: 專心-專注-專業(yè)摘 要隨著全球人口和經(jīng)濟(jì)規(guī)模的不斷增長,能源使用帶來的環(huán)境問題及其誘因逐漸為人們所認(rèn)識,“低碳經(jīng)濟(jì)”這一概念開始進(jìn)入人們的視野。太陽能具有儲量的“無限性”、存在的普遍性,并且?guī)缀醪划a(chǎn)生任何污染。鑒于此,人們在大力的發(fā)展太陽能產(chǎn)業(yè)。太陽能熱水器順應(yīng)時(shí)代發(fā)展的要求,滿足人們對環(huán)保綠色產(chǎn)品的需求。在人類文明程度日益提高的今天,它是現(xiàn)代文明社會的最佳選擇。本文提出了一種新型的太陽能熱水器控制系統(tǒng)設(shè)計(jì)方案。本設(shè)計(jì)采用MSC-51系列
2、單片機(jī)AT89S52作為中央處理器,采用DS1302實(shí)時(shí)時(shí)鐘,12864點(diǎn)陣式液晶顯示屏等模塊,完成時(shí)間溫度水位的顯示,以及時(shí)間和溫度的設(shè)定等功能。關(guān)鍵詞:太陽能熱水器;單片機(jī);實(shí)時(shí)時(shí)鐘;液晶顯示屏ABSTRACTAs 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 of vision. Solar en
3、ergy 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 heaters, in conformity with the requirements of the times, are meeting the demand for green products. In huma
4、n civilization increasingly today, it is a modern civilized society. A new solar water heater control system design. This design incorporates MSC-51 MCU AT89S52 as central processors, a real-time clock using DS1302, 12864, dot-matrix LCD module, completion time display of the temperature level, as w
5、ell as the time and temperature setting. Key words:Solar water heater; chip; clock; LCD screen目 錄1 前言在我設(shè)計(jì)太陽能熱水器的控制系統(tǒng)之前,首先了解一下太陽能熱水器的組成與工作原理,了解一下太陽能熱水器的基本構(gòu)架和工作過程,以及太陽能熱水器發(fā)展概況和深遠(yuǎn)利用價(jià)值。1.1 太陽能熱水器的組成與工作原理圖1.1 熱水器裝置簡圖1-集熱器 2-下降水管3-循環(huán)水管4-補(bǔ)給水箱5-上升水管6-自來水管7-熱水出水管熱水器主要由集熱器、循環(huán)管道和水箱等組成,圖中為典型的熱水器裝置圖。圖中集熱器1按最佳傾角放
6、置,下降水管2的一端與循環(huán)水箱3的下部相連,另一端與集熱器1的下集管接通。上升水管5與循環(huán)水箱3上部相連,另一端與集熱器1的上集管相接。補(bǔ)給水箱4供給循環(huán)水箱3所需的冷水。集熱器吸收太陽輻射后,集熱器內(nèi)溫度上升,水溫也隨之升高。水溫升高后,水的比重減輕,便經(jīng)上升水管進(jìn)入循環(huán)水箱上部。而循環(huán)水箱下部的冷水比重較大,就由水箱下流到集熱器下方,在集熱器內(nèi)受熱后又上升。這樣不斷對流循環(huán),水溫逐漸提高,直到集熱器吸收的熱量與散失的熱量相平衡時(shí),水溫不再升高。這種熱水利用循環(huán)加熱的原理,因此又稱循環(huán)熱水器。集熱器是一種利用溫室效應(yīng),將太陽能輻射轉(zhuǎn)換為熱能的裝置,該裝置與一般熱水交換器不一樣,熱交換器通常只
7、是液體到液體,或是液體到氣體的熱交換過程,而平板行集熱器時(shí)直接將太陽輻射傳給液體或氣體,是一個(gè)復(fù)雜的傳熱過程。平板型集熱器結(jié)構(gòu)形式很多,世界上已實(shí)用的集熱器就有直管式、瓦楞式、扁管式、鋁翼式等二十多種。1.2 太陽能熱水器的發(fā)展概況及市場競爭分析我國自78年引進(jìn)全玻璃真空集熱管的樣管以來,經(jīng)過20多年的努力,攻克了熱壓封等許多技術(shù)難關(guān),已經(jīng)建立了擁有自主知識產(chǎn)權(quán)的現(xiàn)代化全玻璃真空集熱管產(chǎn)業(yè),用于生產(chǎn)集熱管的磁控濺射鍍膜機(jī)已有745臺,產(chǎn)品質(zhì)量達(dá)到世界先進(jìn)水平,產(chǎn)量雄居世界首位。 1978年中國誕生第一臺,到1986年臥式磁控濺射鍍膜機(jī)的設(shè)計(jì)制造,是在政策扶持下的研究開發(fā)階段。1987年,我國制
8、造了第一支全玻璃真空集熱管。在之后的幾年里,全玻璃和熱管式真空管集熱器實(shí)現(xiàn)了產(chǎn)業(yè)化,產(chǎn)業(yè)規(guī)模達(dá)到中試水平,為下一階段產(chǎn)業(yè)的規(guī)模化奠定了良好的基礎(chǔ),成為產(chǎn)業(yè)的孕育發(fā)展階段。1993年太陽能產(chǎn)業(yè)進(jìn)入初級發(fā)展階段:由于成果轉(zhuǎn)化需要很長一段時(shí)間的磨合,特別是受技術(shù)人員缺乏的影響,此階段的產(chǎn)品質(zhì)量有待于進(jìn)一步提高,整體來講,發(fā)展速度較為緩慢。這時(shí)候以山東力諾集團(tuán)為主的真空管生產(chǎn)企業(yè)的產(chǎn)品占了真空管生產(chǎn)絕大部分市場。1997-2001年太陽能產(chǎn)業(yè)得到高速發(fā)展,逐漸形成北京、魯東、泰安、揚(yáng)州、海寧等5個(gè)產(chǎn)業(yè)基地,并以此向周圍不斷輻射,產(chǎn)能得以迅速提升。目前,我國是世界上太陽能熱水器生產(chǎn)量和銷售量最大的國家。
9、太陽能熱水器是太陽能利用中最常見的一種裝置,經(jīng)濟(jì)效益明顯,正在迅速的推廣應(yīng)用,太陽能熱水器能夠?qū)⑻栞椛淠苻D(zhuǎn)換熱能,供生產(chǎn)和生活使用。當(dāng)今社會發(fā)展日新月異,人們衣食住行也在不斷的提高?,F(xiàn)有電熱型熱水器費(fèi)用昂貴及燃?xì)庑蜔崴鞯牟话踩?,且排放二氧化碳污染大氣,北方用煤氣取暖造成城市空氣環(huán)境污染,這些都是太陽能熱水器良好的外部生存環(huán)境。太陽能熱水器 克服了上述缺點(diǎn),他是綠色環(huán)保產(chǎn)品。它使用簡單、方便。太陽能熱水器順應(yīng)時(shí)代發(fā)展的要求,滿足人們對環(huán)保綠色產(chǎn)品的需求。1.3 太陽能熱水器的應(yīng)用及意義資源是社會經(jīng)濟(jì)發(fā)展的物質(zhì)基礎(chǔ),經(jīng)濟(jì)愈發(fā)展,對資源的依賴性愈強(qiáng)。許多資源(如煤、石油、天然氣等)是不可再生的
10、,而且在利用過程中給人類生存環(huán)境帶來極大污染,人類繁衍生息的物質(zhì)和環(huán)境基礎(chǔ)受到嚴(yán)峻挑戰(zhàn)。加強(qiáng)清潔、可再生資源的開發(fā)利用,已引起全世界的普遍重視。太陽能作為一種取之不盡、用之不竭的可再生資源,有節(jié)能、環(huán)保、安全和永續(xù)利用等優(yōu)點(diǎn),理應(yīng)成為開發(fā)利用的首選。其中太陽能熱水器作為家庭生活用品,其開發(fā)利用在我國已走過了二十多年的歷程,生產(chǎn)技術(shù)成熟,具有明顯優(yōu)點(diǎn):(一)從節(jié)能環(huán)保的角度講,使用太陽能熱水器不會對環(huán)境造成污染,同時(shí)為國家節(jié)約了大量能源,社會效益明顯,是國家重點(diǎn)推廣項(xiàng)目,使用前景廣闊。(二)太陽能熱水器的使用壽命較長,使用太陽能熱水器經(jīng)濟(jì)實(shí)惠。若使用合理,其壽命可達(dá)15年甚至更長。據(jù)測算,使用平
11、方米太陽能熱水器,相當(dāng)于每年節(jié)約310度電。太陽能熱水器的費(fèi)用只有燃?xì)鉄崴鞯钠叻种?,電熱水器的六分之一。購置太陽能熱水器一次性投資3000元左右,使用5至6年就可實(shí)現(xiàn)與其熱水器的支出對比平衡。按照裝置壽命15年計(jì)算,其經(jīng)濟(jì)效益是十分明顯的。(三)太陽能熱水器集熱效果好,集熱時(shí)間更長。只要陽光能照射到的地方,就可以使用太陽能熱水器,即使在高寒地區(qū)一年四季也可以正常使用。在我國浙江、江蘇、山東等地,太陽能熱水器的研發(fā)和生產(chǎn)已形成規(guī)模,應(yīng)用太陽能熱水器的場所也由家居使用擴(kuò)展到醫(yī)院、學(xué)校、賓館、飯店、游泳池、洗浴場所等。2 太陽能熱水器控制系統(tǒng)的硬件設(shè)計(jì) 2.1 主控芯片模塊 2.1.1 主控芯片
12、模塊電路單片機(jī)系統(tǒng)由AT89C52和一定功能的外圍電路組成,包括為單片機(jī)提供復(fù)位電壓的復(fù)位電路,提供系統(tǒng)頻率的晶振。這部分電路主要負(fù)責(zé)程序的存儲和運(yùn)行。對外接電容的值雖然沒有嚴(yán)格的要求,但電容的大小會影響振蕩器頻率的高低、諧振器的穩(wěn)定性、起振的快速性和溫度的穩(wěn)定性。晶體可在1.2MHz12MHz之間任選,電容C1和C2的典型值在20pF100pF之間選擇,但在60pF70pF時(shí)振蕩器具有較高的頻率穩(wěn)定性。典型值通常選擇為30pF左右,但本電路采用30pF。AT89C52的復(fù)位是由外部的復(fù)位電路來實(shí)現(xiàn)的。復(fù)位電路通常采用上電自動復(fù)位和按鈕復(fù)位兩種方式。本設(shè)計(jì)中所用到的是上電按鈕復(fù)位,如圖2.1所
13、示。圖2.1 單片機(jī)系統(tǒng)2.1.2 主控芯片簡介AT89S52 是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash 存儲器。使用ATMEL公司高密度非易失性存儲器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、有效的解決方案。AT89S52具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級中斷結(jié)構(gòu),全雙工串
14、行口,片內(nèi)晶振及時(shí)鐘電路。另外,AT89S52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止1。8位微控制器8K字節(jié)在系統(tǒng)可編程Flash AT89S52。圖2.2為AT89S52的引腳圖圖2.2 AT89S52的引腳圖AT89S52引腳功能說明如下:VCC:電源電壓GND:地2P0 口:P0口是一個(gè)8位漏極開路的雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口,每位能驅(qū)動8個(gè)TTL邏輯電平。對P0端口寫“1”時(shí)
15、,引腳用作高阻抗輸入。當(dāng)訪問外部程序和數(shù)據(jù)存儲器時(shí),P0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,P0內(nèi)部上拉電阻被激活。在flash編程時(shí),P0口也用來接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn)時(shí),需要外部上拉電阻。P1 口:P1口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O口,P1輸出緩沖器能驅(qū)動(吸收或輸出電流)4個(gè)TTL邏輯門電平。對P1 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(TTL)。此外,P1.0和P1.2分別作定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和時(shí)器/計(jì)數(shù)器2 的觸發(fā)輸入
16、(P1.1/T2EX),具體如表2.1所示。在flash編程和校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。 表2.1 P1口第二功能端口引腳第二功能P1.0 T2(定時(shí)器/計(jì)數(shù)器T2的外部計(jì)數(shù)輸入),時(shí)鐘輸出P1.1 T2EX(定時(shí)器/計(jì)數(shù)器T2的捕捉/重載觸發(fā)信號和方向控制)P1.5 MOSI(在系統(tǒng)編程用)P1.6 MISO(在系統(tǒng)編程用)P1.7 SCK(在系統(tǒng)編程用)P2 口:P2 口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O口,P2輸出緩沖器能驅(qū)動4個(gè)TTL邏輯電平。對P2端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流
17、(IIL)。在訪問外部程序存儲器或用16位地址讀取外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX DPTR)時(shí),P2口送出高八位地址。在這種應(yīng)用中,P2 口使用很強(qiáng)的內(nèi)部上拉發(fā)送1。在使用8位地址(如MOVX RI)訪問外部數(shù)據(jù)存儲器時(shí),P2口輸出P2鎖存器的內(nèi)容。 在flash編程和校驗(yàn)時(shí),P2口也接收高8位地址字節(jié)和一些控制信號。 P3 口:P3 口是一個(gè)具有內(nèi)部上拉電阻的8位雙向I/O口,P2輸出緩沖器能驅(qū)動4個(gè)TTL邏輯電平。對P3端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可以作為輸入口使用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(TTL)。P3口除了作為一般的I/O口線外
18、,更重要的用途是它的第二功能,P3口的第二功能如表2.2。表2.2 P3口的第二功能端口引腳第二功能端口引腳第二功能P3.0 RXD(串行輸入口)P3.4TO(定時(shí)/計(jì)數(shù)器0)P3.1TXD(串行輸出口)P3.5T1(定時(shí)/計(jì)數(shù)器1)P3.2 INTO(外中斷0)P3.6WR(外部數(shù)據(jù)存儲器寫選通)P3.3 INT1(外中斷1)P3.7RD(外部數(shù)據(jù)存儲器讀選通)此外,P3口還接收一些用于FLASH閃存編程和程序校驗(yàn)的控制信號。RST復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將是單片機(jī)復(fù)位。WDT溢出將使該引腳輸出高電平,設(shè)置SFR AUXR的DISRTO位(地址8EH)可
19、打開或關(guān)閉該功能。DISRTO位缺省為RESET輸出高電平打開狀態(tài)。ALE/PROG當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號,因此它可對外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲器時(shí)將跳過一個(gè)ALE脈沖。如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無效3。PSEN程序儲存允許(PSEN)輸出是外部程
20、序存儲器的讀選通信號,當(dāng)AT89C52由外部程序存儲器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器,將有兩次有效的PSEN信號。EA/VPP外部訪問允許,欲使CPU僅訪問外部程序存儲器(地址為0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲器的指令。FLASH存儲器編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是該器件是使用12V編程電壓Vpp。XTAL1:振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端。XTA
21、L2:振蕩器反相放大器的輸出端。2.2 實(shí)時(shí)時(shí)鐘模塊2.2.1 實(shí)時(shí)時(shí)鐘模塊電路從古代的滴漏更鼓到近代的機(jī)械鐘,從電子表到目前的數(shù)字時(shí)鐘,為了準(zhǔn)確的測量和記錄時(shí)間,人們一直在努力改進(jìn)計(jì)時(shí)工具。鐘表的數(shù)字化,大力推動了計(jì)時(shí)的精確性和可靠性。在單片機(jī)構(gòu)成的裝置中,實(shí)時(shí)時(shí)鐘是必不可少的部件。目前常用的實(shí)時(shí)時(shí)鐘,很多采用單片機(jī)的中斷服務(wù)來實(shí)現(xiàn),這種方式一方面需要采用計(jì)數(shù)器,占用硬件資源,另一方面需要設(shè)置中斷、查詢等,同樣耗費(fèi)單片機(jī)的資源,而且某些測控系統(tǒng)可能不允許;有的則使用并行接口的時(shí)鐘芯片,如MC、DS12887等,它們雖然能滿足單片機(jī)系統(tǒng)對實(shí)時(shí)時(shí)鐘的要求,但是這些芯片與單片機(jī)接口復(fù)雜,占用地址、
22、數(shù)據(jù)總線多,芯片體積大,占用空間多,給其它設(shè)計(jì)帶來諸多不便。本設(shè)計(jì)選取串行接口時(shí)鐘芯片DS1302與單片機(jī)同步通信構(gòu)成數(shù)字時(shí)鐘電路,如圖2.3。其簡單的三線接口能為單片機(jī)節(jié)省大量資源,DS1302的后背電源及對后背電源進(jìn)行涓細(xì)電流充電的能力保證電路斷電后仍能保存時(shí)間和數(shù)據(jù)信息等。這些優(yōu)點(diǎn)解決了目前常用的實(shí)時(shí)時(shí)鐘所無法解決的問題。該時(shí)鐘電路強(qiáng)大的功能和優(yōu)越的性能,在很多領(lǐng)域的應(yīng)用中,尤其是某些自動化控制、長時(shí)間無人看守的測控系統(tǒng)等對時(shí)鐘精確性和可靠性有較高要求的場合,具有很高的使用價(jià)值。圖2.3 DS1302與單片機(jī)接口電路2.2.2 實(shí)時(shí)時(shí)鐘簡介DS13024是美國DALLAS公司推出的一種高
23、性能、低功耗、帶RAM的實(shí)時(shí)時(shí)鐘芯片,它可以對年、月、日、周日、時(shí)、分、秒進(jìn)行計(jì)時(shí),且具有閏年補(bǔ)償功能,工作電壓寬達(dá)2.55.5V。時(shí)鐘可工作在24小時(shí)格式或12小時(shí)(AM/PM)格式。DS1302與單片機(jī)的接口使用同步串行通信,僅用3條線與之相連接??刹捎靡淮蝹魉鸵粋€(gè)字節(jié)或突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號或RAM數(shù)據(jù)。DS1302內(nèi)部有一個(gè)318的用于臨時(shí)性存放數(shù)據(jù)的RAM寄存器。DS1302是DS1202的升級產(chǎn)品,與DS1202兼容,但增加了主電源后背電源雙電源引腳,同時(shí)提供了對后背電源進(jìn)行細(xì)電流充電的能力。DS1302的引腳排列,其中Vcc1為后備電源,VCC2為主電源。在主電源關(guān)閉
24、的情況下,也能保持時(shí)鐘的連續(xù)運(yùn)行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當(dāng)Vcc2大于Vcc10.2V時(shí),Vcc2給DS1302供電。當(dāng)Vcc2小于Vcc1時(shí),DS1302由Vcc1供電。X1和X2是振蕩源,外接32.768kHz晶振。RST是復(fù)位/片選線,通過把RST輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)RST為高電平時(shí),所有的數(shù)據(jù)傳送被初始化,允許對DS1302進(jìn)行操作。如果在傳送過程中RST置為低電平,則會終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦?/p>
25、態(tài)。上電運(yùn)行時(shí),在Vcc2.0V之前,RST必須保持低電平。只有在SCLK為低電平時(shí),才能將RST置為高電平。I/O為串行數(shù)據(jù)輸入輸出端(雙向),后面有詳細(xì)說明。SCLK為時(shí)鐘輸入端。控制字節(jié)的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫入到DS1302中。位6如果為0,則表示存取日歷時(shí)鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為0表示要進(jìn)行寫操作,為1表示進(jìn)行讀操作,控制字節(jié)總是從最低位開始輸出。DS1302的復(fù)位引腳:通過把RST輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送.RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址命令序列送入移
26、位寄存器;其次,RST提供了終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)RST為高電平時(shí),所有的數(shù)據(jù)傳送被初始化,允許對DS1302進(jìn)行操作。如果在傳送過程中置RST為低電平,則會終止此次數(shù)據(jù)傳送,并且I/O引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時(shí),在Vcc2.5V之前,RST必須保持低電平。只有在SCLK為低電平時(shí),才能將RST置為高電平。在控制指令字輸入后的下一個(gè)SCLK時(shí)鐘的上升沿時(shí)數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個(gè)SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時(shí)從低位0位至高位7。 DS1302共有12個(gè)寄存器5,其中有7個(gè)寄存器與日歷、時(shí)鐘相關(guān),
27、存放的數(shù)據(jù)位為BCD碼形式。其日歷、時(shí)間寄存器及其控制字見表2.3。表2.3 DS1302的日歷、時(shí)鐘寄存器及其控制字寄存器名命令字取值范圍各位內(nèi)容寫操作讀操作76543210秒寄存器 80H81H00-59CH10SECSEC分寄存器82H83H00-59010MINMIN時(shí)寄存器84H85H01-12或00-2312/24010HRHR日寄存器86H87H01-28,29,30,310010DATEDATE月寄存器88H89H01-1200010MMONTH周寄存器8AH8BH01-0700000DAY年寄存器8CH8DH00-9910YEARYEAR此外,DS1302還有年份寄存器、控制
28、寄存器、充電寄存器、時(shí)鐘突發(fā)寄存器及與RAM相關(guān)的寄存器等。時(shí)鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器的內(nèi)容。DS1302與RAM相關(guān)的寄存器分為兩類,一類是單個(gè)RAM單元,共31個(gè),每個(gè)單元組態(tài)為一個(gè)8位的字節(jié),其命令控制字為C0H-FDH,其中奇數(shù)為讀操作,偶數(shù)為寫操作;再一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM的31個(gè)字節(jié),命令控制字為FEH(寫)、FFH(讀)。2.3 溫度傳感器模塊2.3.1 溫度傳感器模塊電路基于DS18B20多點(diǎn)溫度測量系統(tǒng)以AT89C51為中心器件,以KEIL為系統(tǒng)開發(fā)平臺,用C語言進(jìn)行程序設(shè)計(jì),以PROTEUS作為仿真軟件
29、設(shè)計(jì)而成的。DS18B20是智能溫度傳感器,它的輸入/輸出采用數(shù)字量,以單總線技術(shù),接收主機(jī)發(fā)送的命令,根據(jù)DS18B20內(nèi)部的協(xié)議進(jìn)行相應(yīng)的處理,將轉(zhuǎn)換的溫度以串口發(fā)送給主機(jī)。主機(jī)按照通信協(xié)議用一個(gè)IO口模擬DS18B20的時(shí)序,發(fā)送命令(初始化命令、ROM命令、功能命令)給DS18B20,并讀取溫度值,在內(nèi)部進(jìn)行相應(yīng)的數(shù)值處理,用圖形液晶模塊顯示各點(diǎn)的溫度。在系統(tǒng)啟動之時(shí),可以通過44鍵盤設(shè)置各點(diǎn)溫度的上限值,當(dāng)某點(diǎn)溫度超過設(shè)置值時(shí),報(bào)警器開始報(bào)警,從而實(shí)現(xiàn)了對各點(diǎn)溫度的實(shí)時(shí)監(jiān)控。每個(gè)DS18B20有自己的序列號,因此本系統(tǒng)可以在一根總線上掛接了4個(gè)DS18B20,通過CRC校驗(yàn),對各個(gè)D
30、S18B20的ROM進(jìn)行尋址,地址符合的DS18B20才作出響應(yīng),接收主機(jī)的命令,向主機(jī)發(fā)送轉(zhuǎn)換的溫度。采用這種DS18B20尋址技術(shù),使系統(tǒng)硬件電路更加簡單,圖2.4所示。圖2.4 18B20與單片機(jī)的連接電路2.3.2 溫度傳感器簡介DS18B20數(shù)字溫度計(jì)是DALLAS公司生產(chǎn)的1Wire,即單總線器件,具有線路簡單,體積小的特點(diǎn)。因此用它來組成一個(gè)測溫系統(tǒng),具有線路簡單,在一根通信線,可以掛很多這樣的數(shù)字溫度計(jì),十分方便。DS18B20產(chǎn)品的特點(diǎn)6:只要求一個(gè)端口即可實(shí)現(xiàn)通信。在DS18B20中的每個(gè)器件上都有獨(dú)一無二的序列號。實(shí)際應(yīng)用中不需要外部任何元器件即可實(shí)現(xiàn)測溫。測量溫度范圍在
31、55.C到125.C之間。數(shù)字溫度計(jì)的分辨率用戶可以從9位到12位選擇。內(nèi)部有溫度上、下限告警設(shè)置。其引腳功能描述見表2.4。表2.4 DS18B20詳細(xì)引腳功能描述序號名稱引腳功能描述1GND地信號2DQ數(shù)字輸入輸出引腳,開漏單總線接口引腳,當(dāng)使用寄生電源時(shí),可向電源提供電源3VDD可選擇的VDD引腳,當(dāng)工作于寄生電源時(shí),該引腳必須接地64位ROM存儲器件獨(dú)一無二的序列號。暫存器包含兩字節(jié)(0和1字節(jié))的溫度寄存器,用于存儲溫度傳感器的數(shù)字輸出。暫存器還提供一字節(jié)的上線警報(bào)觸發(fā)(TH)和下線警報(bào)觸發(fā)(TL)寄存器(2和3字節(jié)),和一字節(jié)的配置寄存器(4字節(jié)),使用者可以通過配置寄存器來設(shè)置溫
32、度轉(zhuǎn)換的精度。暫存器的5、6和7字節(jié)器件內(nèi)部保留使用。第八字節(jié)含有循環(huán)冗余碼(CRC )。DS18B20加電后,處在空閑狀態(tài)。要啟動溫度測量和模擬到數(shù)字的轉(zhuǎn)換,處理器須向其發(fā)出Convert T 44h 命令;轉(zhuǎn)換完后,DS18B20回到空閑狀態(tài)。溫度數(shù)據(jù)是以帶符號位的16-bit補(bǔ)碼存儲在溫度寄存器中的7。符號位說明溫度是正值還是負(fù)值,正值時(shí)S=0,負(fù)值時(shí)S=1。訪問DS18B20必須嚴(yán)格遵守這一命令序列,如果丟失任何一步或序列混亂,DS18B20都不會響應(yīng)主機(jī)(除了Search ROM 和Alarm Search這兩個(gè)命令,在這兩個(gè)命令后,主機(jī)都必須返回到第一步)。a初始化:DS18B20
33、所有的數(shù)據(jù)交換都由一個(gè)初始化序列開始。由主機(jī)發(fā)出的復(fù)位脈沖和跟在其后的由DS18B20發(fā)出的應(yīng)答脈沖構(gòu)成。當(dāng)DS18B20發(fā)出響應(yīng)主機(jī)的應(yīng)答脈沖時(shí),即向主機(jī)表明它已處在總線上并且準(zhǔn)備工作。b. ROM命令8:ROM命令通過每個(gè)器件64-bit的ROM碼,使主機(jī)指定某一特定器件(如果有多個(gè)器件掛在總線上)與之進(jìn)行通信。DS18B20的ROM如表2.5所示,每個(gè)ROM命令都是8 bit長。表2.5 ROM命令指令協(xié)議功能讀ROM33H讀DS18B20中的編碼(即64位地址)符合ROM55H發(fā)出此命令后,接著發(fā)出64位ROM編碼,訪問單總線上與該編碼相對應(yīng)的DS18B20,使之作出響應(yīng),為下一步對該
34、DS18B20的讀寫作準(zhǔn)備搜索ROM0F0H用于確定掛接在同一總線上DS18B20的個(gè)數(shù)和識別64位ROM地址,為操作各器件作好準(zhǔn)備跳過ROM0CCH忽略64位ROM地址,直接向DS18B20V 溫度轉(zhuǎn)換命令,適用于單個(gè)DS18B20工作告警搜索命令0ECH執(zhí)行后,只有溫度超過廟宇值上限或下限的片子才做出響應(yīng)溫度轉(zhuǎn)換44H啟動DS18B20進(jìn)行溫度轉(zhuǎn)換,轉(zhuǎn)換時(shí)間最長為500ms(典型為200ms),結(jié)果豐入內(nèi)部9字節(jié)RAM中讀暫存器BEH讀內(nèi)部RAM中9字節(jié)的內(nèi)容寫暫存器4EH發(fā)出向內(nèi)部RAM的第3、4字節(jié)寫上、下溫度數(shù)據(jù)命令,緊該溫度命令之后,傳達(dá)兩字節(jié)的數(shù)據(jù)復(fù)制暫存器48H將RAM中第3、
35、4字內(nèi)容復(fù)制到E2PROM中重調(diào)E2PROM0B8H將E2PROM中內(nèi)容恢復(fù)到RAM中的第3、4字節(jié)讀供電方式0B4H讀DS18B20的供電模式,寄生供電時(shí)DS18B20發(fā)送“0”,外部供電時(shí)DS18B20發(fā)送“1”2.4 液晶顯示模塊2.4.1 液晶顯示模塊電路液晶顯示模塊以其微功耗、體積小、顯示內(nèi)容豐富、模塊化、接口電路簡單等諸多優(yōu)點(diǎn)得到廣泛應(yīng)用。液晶顯示模塊分字符型和點(diǎn)陣型兩種,前者只能顯示常用的字符,點(diǎn)陣型液晶顯示模塊除顯示字符外還能顯示各種圖形和漢字。如圖2.5所示,為液晶顯示屏與單片機(jī)的連接電路圖。圖2.5 液晶顯示屏與單片機(jī)的連接電路2.4.2 液晶顯示屏簡介12864是一種具有
36、4位/8位并行、2線或3線串行多種接口方式,內(nèi)部含有國標(biāo)一級、二級簡體中文字庫的點(diǎn)陣圖形液晶顯示模塊;其顯示分辨率為12864, 內(nèi)置8192個(gè)16*16點(diǎn)漢字,和128個(gè)16*8點(diǎn)ASCII字符集。該模塊靈活的接口方式和簡單、方便的操作指令,可構(gòu)成全中文人機(jī)交互圖形界面??梢燥@示84行1616點(diǎn)陣的漢字??赏瓿蓤D形顯示。電壓低功耗是其又一顯著特點(diǎn)。由該模塊構(gòu)成的液晶顯示方案與同類型的圖形點(diǎn)陣液晶顯示模塊相比,不論硬件電路結(jié)構(gòu)或顯示程序都要簡潔得多,且該模塊的價(jià)格也略低于相同點(diǎn)陣的圖形液晶模塊9。圖2.6 LCD結(jié)構(gòu)尺寸基本特性:低電源電壓(VDD:+3.0-+5.5V)顯示分辨率:12864
37、點(diǎn)內(nèi)置漢字字庫,提供8192個(gè)1616點(diǎn)陣漢字(簡繁體可選)內(nèi)置 128個(gè)168點(diǎn)陣字符2MHZ時(shí)鐘頻率顯示方式:STN、半透、正顯驅(qū)動方式:1/32DUTY,1/5BIAS視角方向:6點(diǎn)背光方式:側(cè)部高亮白色LED,功耗僅為普通LED的1/51/10通訊方式:串行、并口可選內(nèi)置DC-DC轉(zhuǎn)換電路,無需外加負(fù)壓無需片選信號,簡化軟件設(shè)計(jì)工作溫度: 0 - +55 ,存儲溫度: -20 - +60 控制器接口信號說明:如表2.6,2.7表2.6 RS和R/W的配合選擇決定控制界面的4種模式RSR/W功能說明LLMPU寫指令到指令暫存器(IR)LH讀出忙標(biāo)志(BF)及地址記數(shù)器(AC)的狀態(tài)HLM
38、PU寫入數(shù)據(jù)到數(shù)據(jù)暫存器(DR)HHMPU從數(shù)據(jù)暫存器(DR)中讀出數(shù)據(jù)表2.7 E信號E狀態(tài)執(zhí)行動作結(jié)果高低I/O緩沖DR配合/W進(jìn)行寫數(shù)據(jù)或指令高DRI/O緩沖配合R進(jìn)行讀數(shù)據(jù)或指令低/低高無動作 忙標(biāo)志:BF。BF標(biāo)志提供內(nèi)部工作情況.BF=1表示模塊在進(jìn)行內(nèi)部操作,此時(shí)模塊不接受外部指令和數(shù)據(jù).BF=0時(shí),模塊為準(zhǔn)備狀態(tài),隨時(shí)可接受外部指令和數(shù)據(jù)。利用STATUS RD 指令,可以將BF讀到DB7總線,從而檢驗(yàn)?zāi)K之工作狀態(tài)。字型產(chǎn)生ROM(CGROM):字型產(chǎn)生ROM(CGROM)提供8192個(gè)此觸發(fā)器是用于模塊屏幕顯示開和關(guān)的控制。DFF=1為開顯示(DISPLAY ON),DDR
39、AM 的內(nèi)容就顯示在屏幕上,DFF=0為關(guān)顯示(DISPLAY OFF)。DFF 的狀態(tài)是指令DISPLAY ON/OFF和RST信號控制的10。顯示數(shù)據(jù)RAM(DDRAM):模塊內(nèi)部顯示數(shù)據(jù)RAM提供642個(gè)位元組的空間,最多可控制4行16字(64個(gè)字)的中文字型顯示,當(dāng)寫入顯示數(shù)據(jù)RAM時(shí),可分別顯示CGROM與CGRAM的字型;此模塊可顯示三種字型,分別是半角英數(shù)字型(16*8)、CGRAM字型及CGROM的中文字型,三種字型的選擇,由在DDRAM中寫入的編碼選擇,在0000H0006H的編碼中(其代碼分別是0000、0002、0004、0006共4個(gè))將選擇CGRAM的自定義字型,02
40、H7FH的編碼中將選擇半角英數(shù)字的字型,至于A1以上的編碼將自動的結(jié)合下一個(gè)位元組,組成兩個(gè)位元組的編碼形成中文字型的編碼BIG5(A140D75F),GB(A1A0-F7FFH)。 字型產(chǎn)生RAM(CGRAM):字型產(chǎn)生RAM提供圖象定義(造字)功能, 可以提供四組1616點(diǎn)的自定義圖象空間,使用者可以將內(nèi)部字型沒有提供的圖象字型自行定義到CGRAM中,便可和CGROM中的定義一樣地通過DDRAM顯示在屏幕中。地址計(jì)數(shù)器AC11:地址計(jì)數(shù)器是用來貯存DDRAM/CGRAM之一的地址,它可由設(shè)定指令暫存器來改變,之后只要讀取或是寫入DDRAM/CGRAM的值時(shí),地址計(jì)數(shù)器的值就會自動加一,當(dāng)R
41、S為“0”時(shí)而R/W為“1”時(shí),地址計(jì)數(shù)器的值會被讀取到DB6DB0中。光標(biāo)/閃爍控制電路:此模塊提供硬體光標(biāo)及閃爍控制電路,由地址計(jì)數(shù)器的值來指定DDRAM中的光標(biāo)或閃爍位置。2.5 鍵盤輸入模塊一般具有人機(jī)對話的單片機(jī)系統(tǒng)少不了會有鍵盤。本設(shè)計(jì)采用三個(gè)按鍵,最佳的接口方案是獨(dú)立式接法,即每一個(gè)I/O口上只接一個(gè)按鍵,按鍵的另一端接地。獨(dú)立式鍵盤的實(shí)現(xiàn)方法是利用單片機(jī)I/O口讀取口的電平高低來判斷是否有鍵按下。我們將按鍵的一端接地,另一端接一個(gè)I/O口,程序開始時(shí)將此I/O口置于高電平,平時(shí)無按鍵按下時(shí)I/O口保護(hù)高電平。當(dāng)有鍵按下時(shí),此I/O口與地短路迫使I/O口為低電平。按鍵釋放后,與單
42、片機(jī)連接的上拉電阻使I/O口仍然保持高電平。我們所要做的就是在程序中查詢此I/O口的電平狀態(tài)就可以了解我們是否有按鍵動作了。值得注意的是,我們在用單片機(jī)對鍵盤處理的時(shí)候涉及到了一個(gè)重要的過程,那就是鍵盤的去抖動。這里說的抖動是機(jī)械的抖動,是當(dāng)鍵盤在未按到按下的臨界區(qū)產(chǎn)生的電平不穩(wěn)定正?,F(xiàn)象,并不是我們在按鍵時(shí)通過注意可以避免的。這種抖動一般在10200毫秒之間,這種不穩(wěn)定電平的抖動時(shí)間對于人來說太快了,而對于時(shí)鐘是微秒級的單片機(jī)而言則是漫長的。為了提高系統(tǒng)的穩(wěn)定性,我們必須去除或避開它。此處我采用軟件去抖動,實(shí)現(xiàn)方法是先查詢按鍵當(dāng)有低電平出現(xiàn)時(shí)立即延時(shí)10200毫秒以避開抖動,延時(shí)結(jié)束再讀一次
43、I/O口的值。按鍵分工,從左至右依次為1、2、3號按鍵,一號鍵模式鍵,二號三號鍵為加減鍵。圖2.7 鍵盤接口電路3 太陽能熱水器控制系統(tǒng)軟件設(shè)計(jì)3.1 KEIL uVISION 3軟件環(huán)境單片機(jī)開發(fā)中除必要的硬件外,同樣離不開軟件,本系統(tǒng)的軟件編程設(shè)計(jì)是在Keil軟件環(huán)境中完成的。我們寫的C語言、匯編語言源程序要變?yōu)镃PU可以執(zhí)行的機(jī)器碼有兩種方法,一種是手工匯編,另一種是機(jī)器匯編,目前已極少使用手工匯編的方法了。機(jī)器匯編是通過匯編軟件將源程序變?yōu)闄C(jī)器碼,用于MCS-51單片機(jī)的匯編軟件有早期的A51,隨著單片機(jī)開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級語言開發(fā),單片機(jī)的開發(fā)軟件也在
44、不斷發(fā)展,Keil軟件是目前最流行開發(fā)51系列單片機(jī)的軟件,這從近年來各仿真機(jī)廠商紛紛宣布全面支持Keil即可看出。Keil提供了包括C編譯器、宏匯編、連接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境(uVision)將這些部份組合在一起。掌握這一軟件的使用對于使用51系列單片機(jī)的愛好者來說是十分必要的,如果使用C語言編程,那么Keil幾乎就是不二之選。即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會令人事半功倍12。Keil C51是美國Keil Software公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),與匯編相比,
45、C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用C來開發(fā),體會更加深刻。 Keil C51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能體現(xiàn)高級語言的優(yōu)勢。3.2 太陽能熱水器控制系統(tǒng)軟件設(shè)計(jì)流程圖本課題設(shè)計(jì)的太陽能熱水器控制系統(tǒng)的軟件程序設(shè)計(jì)主要由(1)初始化程序,(2)掃描按鍵程序,(3)按鍵處理子程序,(4)讀取水位信息、水箱溫度和時(shí)間程序,(6)調(diào)用顯示子程序
46、,六個(gè)部分組成。系統(tǒng)總體流程圖如圖3.1所示。開始初始化掃描鍵盤,是否有按鍵N調(diào)用鍵盤處理子程序Y讀取水位信息和水箱溫度調(diào)用顯示子程序顯示水溫時(shí)間圖3.1 系統(tǒng)總體流程圖3.3 太陽能熱水器控制系統(tǒng)軟件功能的實(shí)施3.3.1 初始化程序 太陽能熱水器控制系統(tǒng)在接通電源后,首先要對系統(tǒng)進(jìn)行初始化。初始化的過程包括啟動DS1302,啟動12864,對12864進(jìn)行清屏。初始化流程圖如下:初始化開始啟動DS1302啟動12864清屏圖3.2 初始化程序流程圖初始化程序清單如下:void start(void) /初始化函數(shù) unsigned char i;set_time(0x8e,0x00); /取
47、消寫保護(hù)set_time(0x80,0x00); /啟動時(shí)鐘set_time(0x84,0x00); /設(shè)置24小時(shí)模式set_time(0x90,0xa5); /時(shí)鐘時(shí)鐘充電模式set_time(0x8e,0x80); /啟動寫保護(hù)RES1=0; RES1=1; dis_write_cmd(0xaf); /啟動12864 clean(); /清屏3.3.2 按鍵檢測及處理程序在太陽能熱水器初始化完成之后,系統(tǒng)便會進(jìn)入鍵盤掃描狀態(tài),此狀態(tài)下,主控芯片AT89S52會不斷掃描是否有鍵按下,即等待用戶輸入。在檢測到有鍵按下后,根據(jù)按下的次數(shù)(按一下設(shè)置“分”,按兩下設(shè)置“時(shí)”,三下設(shè)置“星期”,以
48、此類推),在運(yùn)用“加”“減”分別設(shè)置。按鍵檢測及處理流程圖如圖所示:(以按下“一下”為例)開始掃描是否有鍵按下否是一下(設(shè)置分)是否為“+”鍵是“分”加1否“分”減1圖3.3 按鍵檢測及處理程序流程圖按鍵檢測及處理程序清單如下:while(1) /總循環(huán) while(state_button=0) /狀態(tài)0循環(huán) /無鍵按下的處理程序while(state_button!=0) /狀態(tài)非0循環(huán) set_time(0x80,0x80); /啟動時(shí)鐘 set_time(0x8e,0x00); /啟動保護(hù)位if(state_button=1) /狀態(tài)1設(shè)置分 if(time_jia=1) /判斷按鈕加
49、是否按下過 minute0+; /分操作 下面所有的加減同理 if(minute09) / minute0最大為9,minute1最大為5 minute1+; minute0=0; if(minute15) minute1=0; time_jia=0; /按鍵清零 表示已經(jīng)執(zhí)行完 if(time_jian=1) minute0-; if(minute00) minute1-; minute0=9; if(minute10) minute1=5; time_jian=0; 3.3.3 讀取溫度的程序 本設(shè)計(jì)采用while循環(huán),在沒有鍵按下時(shí),跳出while循環(huán),進(jìn)行下邊的語句,即讀取溫度,并將其
50、顯示在12864上。在讀取的過程中,要注意溫度的正負(fù)。讀取溫度的流程圖如圖3.4所示:復(fù)位讀取溫度數(shù)據(jù)判斷正負(fù)正轉(zhuǎn)為十進(jìn)制負(fù)取反后,轉(zhuǎn)十進(jìn)制圖3.4 讀取溫度流程圖讀取溫度程序清單: wendu_reset(); /溫度復(fù)位 wendu_write(0xcc); /跳過ROM搜索命令wendu_write(0x44); /啟動一次轉(zhuǎn)換wendu_reset(); /復(fù)位wendu_write(0xcc); /跳過ROM搜索命令wendu_write(0xbe); /發(fā)送讀命令a=wendu_read(); /讀高字節(jié)8位b=wendu_read(); /讀低字節(jié)8位 pn=b&0x80; /判
51、斷溫度正負(fù)if(pn=0) /如果溫度為正t=(b*256)+a)/16; /直接轉(zhuǎn)化為十進(jìn)制數(shù)if(pn=0x80) /如果溫度為負(fù)a=a; /將數(shù)據(jù)取反b=b;c=a+1; /低位加1if(c=0x00) /當(dāng)?shù)臀粸?55時(shí),加1后為0,這時(shí)需進(jìn)位b+; /向高位進(jìn)1t=(b*256)+c)/16; /再進(jìn)行轉(zhuǎn)換十進(jìn)制4 太陽能熱水器控制系統(tǒng)整體調(diào)試4.1 Proteus仿真環(huán)境本系統(tǒng)的硬件設(shè)計(jì)首先是在Proteus軟件環(huán)境中仿真實(shí)現(xiàn)的。Proteus軟件是來自英國Labcenter electronics公司的EDA工具軟件,Proteus軟件有十多年的歷史,在全球廣泛使用,除了具有和其
52、它EDA工具一樣的原理布圖、PCB自動或人工布線及電路仿真的功能外,其革命性的功能是,它的電路仿真是互動的。針對微處理器的應(yīng)用,還可以直接在基于原理圖的虛擬原型上編程,并實(shí)現(xiàn)軟件源碼級的實(shí)時(shí)調(diào)試。如果有顯示及輸出,配合系統(tǒng)配置的虛擬儀器如示波器、邏輯分析儀等,還能看到運(yùn)行后輸入輸出的效果。它運(yùn)行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和集成電路。 Proteus13建立了完備的電子設(shè)計(jì)開發(fā)環(huán)境,尤其重要的是Proteus Lite可以完全免費(fèi),也可以花微不足道的費(fèi)用注冊達(dá)到更好的效果。Proteus7.1是目前最好的模擬單片機(jī)外圍器件的工具??梢苑抡?1系列、AVR
53、、PIC等常用的MCU及其外圍電路(如LCD,RAM,ROM,鍵盤,馬達(dá),LED,AD/DA,部分SPI器件,部分IIC器件,.)。 其實(shí)Proteus 與 multisim比較類似,只不過它可以仿真MCU! 當(dāng)然,軟件仿真精度有限,而且不可能所有的器件都找得到相應(yīng)的仿真模型,用開發(fā)板和仿真器當(dāng)然是最好選擇,可是初學(xué)者擁有它們的可能性比較小。 使用51系列單片機(jī),不管是用匯編語言還是用C語言編程都要用到keil軟件。 使用keil c51 v7.50 + proteus 7.1 可以像使用仿真器一樣調(diào)試程序,一般而言,微機(jī)實(shí)驗(yàn)中用萬能仿真器+電工系自己做的實(shí)驗(yàn)板的實(shí)驗(yàn)都可以做得到。 當(dāng)然,硬件
54、實(shí)踐還是必不可少的。在沒有硬件的情況下,Proteus能像pspice 仿真模擬/數(shù)字電路那樣仿真MCU及外圍電路。另外,即使有硬件,在程序編寫早期用軟件仿真一下也是很有必要的14。Proteus軟件主要具有以下幾個(gè)方面的特點(diǎn):(1)實(shí)現(xiàn)了單片機(jī)仿真和SPICE電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS232動態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號發(fā)生器等。(2)支持主流單片機(jī)系統(tǒng)的仿真。目前支持的單片機(jī)類型有:ARM7(LPC21xx)、 8051/52系列、AVR系列、PIC10
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單位管理制度呈現(xiàn)大全【職員管理】十篇
- 《客房清掃程序》課件
- 《番茄晚疫病》課件
- 《四年級下語文總結(jié)》與《四年級本學(xué)期的總結(jié)》與《四年級本學(xué)期的總結(jié)反思》范文匯編
- 復(fù)習(xí)培優(yōu)卷03 第5單元(解析版)
- 第5單元+國防建設(shè)與外交成就
- 軟件開發(fā)委托合同三篇
- 農(nóng)業(yè)投資盈利之路
- 設(shè)計(jì)裝修銷售工作總結(jié)
- 游戲行業(yè)前臺工作總結(jié)
- MOOC 社會保障學(xué)-江西財(cái)經(jīng)大學(xué) 中國大學(xué)慕課答案
- MOOC 理論力學(xué)-國防科技大學(xué) 中國大學(xué)慕課答案
- 城市規(guī)劃設(shè)計(jì)計(jì)費(fèi)指導(dǎo)意見(2004年)
- 制造業(yè)成本精細(xì)化管理
- 工業(yè)互聯(lián)網(wǎng)標(biāo)準(zhǔn)體系(版本3.0)
- 初中生物老師經(jīng)驗(yàn)交流課件
- 柴油發(fā)電機(jī)組采購施工 投標(biāo)方案(技術(shù)方案)
- 股權(quán)招募計(jì)劃書
- 創(chuàng)業(yè)之星學(xué)創(chuàng)杯經(jīng)營決策常見問題匯總
- 公豬站工作總結(jié)匯報(bào)
- 醫(yī)學(xué)專業(yè)醫(yī)學(xué)統(tǒng)計(jì)學(xué)試題(答案見標(biāo)注) (三)
評論
0/150
提交評論