基于單片機(jī)的太陽(yáng)能熱水器測(cè)控儀設(shè)計(jì)_第1頁(yè)
基于單片機(jī)的太陽(yáng)能熱水器測(cè)控儀設(shè)計(jì)_第2頁(yè)
基于單片機(jī)的太陽(yáng)能熱水器測(cè)控儀設(shè)計(jì)_第3頁(yè)
基于單片機(jī)的太陽(yáng)能熱水器測(cè)控儀設(shè)計(jì)_第4頁(yè)
基于單片機(jī)的太陽(yáng)能熱水器測(cè)控儀設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩36頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

PAGEIV基于單片機(jī)的太陽(yáng)能熱水器測(cè)控儀設(shè)計(jì)摘要:如何很好的節(jié)約和利用能源,特別是可持續(xù)性能源,是人類(lèi)所面臨的重要問(wèn)題。太陽(yáng)能熱水器以其廉價(jià)、節(jié)能的特點(diǎn),受到廣大消費(fèi)者的青睞,與之配套的控制器設(shè)計(jì)問(wèn)題一直受到人們的關(guān)注。本文提出了一種新型的太陽(yáng)能熱水器控制系統(tǒng)設(shè)計(jì)方案。本設(shè)計(jì)采用MCS-51系列單片機(jī)AT89C52作為中央處理器,結(jié)合外圍電路單元,采用液位傳感器、溫度傳感器(PT100)、輔助加熱電路、DS1302實(shí)時(shí)時(shí)鐘、1602液晶顯示屏、按鍵等模塊,完成時(shí)間、溫度、水位的顯示及設(shè)定功能。控制系統(tǒng)可以根據(jù)天氣情況利用輔助加熱裝置(電加熱器)使蓄水箱內(nèi)的水溫達(dá)到預(yù)先設(shè)定的溫度,從而達(dá)到24小時(shí)供應(yīng)熱水的目的。本文主要介紹了單片機(jī)太陽(yáng)能熱水器測(cè)控儀的硬件、軟件的設(shè)計(jì)和調(diào)試方法等內(nèi)容。關(guān)鍵詞:太陽(yáng)能熱水器;單片機(jī);控制器;傳感器TheDesignofSolarEnergyHeaterControllerBasedonMCUAbstract:Toeconomizeandutilizeenergyresource,especiallythelastingenergyresource,isaproblemthathumankindhasfaced.TheSolarEnergyHeaterisbecomingmoreandmorepopularforitscharacteristicoflowpriceandlowenergyconsumption.Andthecontrolleris

studyinganddeveloping.Anewsolarwaterheatercontrolsystemdesign.ThisdesignincorporatesMCS-51MCUAT89C52ascentralprocessors,combinedwiththeperipheralcircuitunit,theuseofliquidlevelsensor,temperaturesensor(PT100),theauxiliaryheatingcircuit,DS1302realtimeclock,1602LCDscreen,buttonsandothermodules,Completionoftime,temperature,waterleveldisplayandsettingfunction.Accordingtoweatherconditions,controlsystemusinganauxiliaryheatingdevice(electricheater),sothatthewatertemperatureofthewaterstoragetankreachesthepresettemperature,achievingthepurposeofthe24-hoursupplyofhotwater.Thisarticlemainlyintroducedthemonolithicintegratedcircuitsolar-poweredwaterheaterobservesandcontrolsmeter'scontentsandsoonhardware,software'sdesignanddebugmethod.Keywords:Solarenergyheater;MCU;Controller;Sensor目錄摘要 I目錄 III1緒論 11.1概述 11.2太陽(yáng)能熱水器發(fā)展概況及市場(chǎng)競(jìng)爭(zhēng)分析 21.2.1國(guó)內(nèi)外研究現(xiàn)狀 21.2.2國(guó)內(nèi)外太陽(yáng)能熱水器發(fā)展趨勢(shì) 31.2.3太陽(yáng)能熱水器的市場(chǎng)分析 31.3本課題研究的主要內(nèi)容 41.3.1太陽(yáng)能熱水器的組成與工作原理 41.3.2太陽(yáng)能熱水器測(cè)控儀的設(shè)計(jì)內(nèi)容 42太陽(yáng)能熱水器測(cè)控儀總體方案的設(shè)計(jì) 62.1熱水器微控制器系統(tǒng)框圖 62.2控制器系統(tǒng)主要元件簡(jiǎn)介 62.2.1單片機(jī)AT89C52 62.2.2鉑熱電阻PT100 82.2.3轉(zhuǎn)換芯片ADC0832 92.2.4超聲波測(cè)距儀HC-SR04 102.2.5時(shí)鐘芯片DS1302 113硬件設(shè)計(jì) 133.1繪圖軟件Protel99se簡(jiǎn)介 133.2控制器各單元模塊硬件電路設(shè)計(jì) 133.2.1單片機(jī)及其外圍電路的設(shè)計(jì) 133.2.2超聲波液位傳感器電路設(shè)計(jì) 143.2.3時(shí)鐘電路設(shè)計(jì) 163.2.4溫度傳感器電路設(shè)計(jì) 183.2.5上水控制電路和輔助加熱電路設(shè)計(jì) 203.2.6顯示電路設(shè)計(jì) 213.2.7按鍵接口電路設(shè)計(jì) 224軟件設(shè)計(jì) 234.1KEILuVISION3軟件環(huán)境 234.2程序設(shè)計(jì) 234.2.1系統(tǒng)總流程圖 234.2.2超聲波模塊程序設(shè)計(jì) 244.2.3時(shí)鐘模塊程序設(shè)計(jì) 254.2.4溫度模塊程序設(shè)計(jì) 274.2.5液晶顯示模塊程序設(shè)計(jì) 274.2.6按鍵掃描模塊程序設(shè)計(jì) 295調(diào)試 315.1Proteus簡(jiǎn)介 315.2軟件調(diào)試 315.3硬件調(diào)試 326結(jié)論 35參考文獻(xiàn) 36致謝 37常州大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)第37頁(yè)共37頁(yè)1緒論1.1概述在資源緊張,環(huán)境污染的大背景下,太陽(yáng)能熱水器與傳統(tǒng)的燃?xì)鉄崴骱碗姛崴飨啾扔兄鵁o(wú)可取代的優(yōu)勢(shì),因此近幾年太陽(yáng)能熱水器得到了蓬勃的發(fā)展。然而,目前市場(chǎng)上的太陽(yáng)能熱水器控制系統(tǒng)大多存在功能單一、操作復(fù)雜、控制不便等問(wèn)題。很多控制器只具有溫度和水位顯示功能,卻不具有溫度控制功能,致使熱水器在陰天不能方便使用。即使熱水器具有輔助加熱功能,也可能由于加熱時(shí)間不能控制而產(chǎn)生過(guò)燒,從而浪費(fèi)電能。所以研究智能型太陽(yáng)能熱水器測(cè)控儀有著極其深遠(yuǎn)的意義。1)太陽(yáng)能節(jié)能環(huán)保太陽(yáng)能作為一種新能源,與常規(guī)能源相比,它有三大特點(diǎn):第一,它是最豐富的能源,可隨時(shí)被我們利用。據(jù)估計(jì),在過(guò)去的11億年中,太陽(yáng)只消耗了它本身能量的2%。因此可足夠供給我們使用,可謂是取之不盡,用之不竭;第二,地球上,太陽(yáng)能就在我們的身邊,我們可以隨時(shí)就地開(kāi)發(fā)利用,不存在任何運(yùn)輸問(wèn)題。對(duì)于交通不發(fā)達(dá)的農(nóng)村、海島和邊遠(yuǎn)地區(qū)具有更優(yōu)越的利用價(jià)值;第三,太陽(yáng)能是一種潔凈的能源。在開(kāi)發(fā)利用時(shí),不會(huì)產(chǎn)生廢渣、廢水、廢氣、也沒(méi)有噪音,更不會(huì)影響生態(tài)平衡。絕對(duì)不會(huì)造成污染和公害。我國(guó)目前有13億人口,3.5億個(gè)家庭,按較低標(biāo)準(zhǔn)每戶(hù)每天使用6攝氏度熱水100升,從冷水到熱水升溫45攝氏度計(jì)算,共需熱量450千卡。折合電量5.2度,折合天然氣0.5立方米。按每度電0.50元,每立方米天然氣。40元計(jì)算,每天分別需要2.6元(電)或0.70元(天然氣)。按每月30天計(jì)算,分別需要72元和21元,每年分別需要864元和252元。以上均為僅根據(jù)電和天然氣熱值進(jìn)行的計(jì)算,尚未考慮電熱器與燃?xì)鉄崴鞯臒徂D(zhuǎn)換效率及由于結(jié)垢其值肯定會(huì)不斷下降的影響。根據(jù)實(shí)際調(diào)查,一個(gè)家庭用電熱水器,全年的電費(fèi)消耗約1000元,若使用太陽(yáng)能熱水器,其投資在2000—3000元之間,兩至三年節(jié)約的電費(fèi)即可收回。2)太陽(yáng)能的價(jià)格趨于平民化近幾年來(lái),原油價(jià)格飛漲,以原油為原料的燃?xì)鈨r(jià)格也大幅上漲,燃?xì)鉄崴鞯氖褂贸杀敬蟠笤黾?,這給太陽(yáng)能熱水器產(chǎn)業(yè)帶來(lái)了巨大的商機(jī)。現(xiàn)在的太陽(yáng)能熱水器越來(lái)越受歡迎。據(jù)北大四季沐歌太陽(yáng)能熱水器經(jīng)銷(xiāo)商家說(shuō),近年來(lái)的銷(xiāo)量比以前同期增長(zhǎng)了一倍。現(xiàn)在,越來(lái)越多的消費(fèi)者認(rèn)同太陽(yáng)能熱水器。也正因如此,全國(guó)各地出現(xiàn)了各種品牌的太陽(yáng)能熱水器,這也給消費(fèi)者帶來(lái)了更多的選擇性。今年的家電市場(chǎng)刮起了一陣節(jié)能風(fēng)暴,節(jié)能家電成為一大賣(mài)點(diǎn)。太陽(yáng)能熱水器以節(jié)能、安全、價(jià)格走低的趨勢(shì)成為了人們關(guān)注的焦點(diǎn)。3)安全可靠使用太陽(yáng)能熱水器沒(méi)有人身危險(xiǎn),也沒(méi)有環(huán)境污染,而使用燃?xì)鉄崴饔锌赡馨l(fā)生煤氣中毒事故;使用電熱水器有可能發(fā)生觸電身亡事故。據(jù)了解,太陽(yáng)能熱水器不僅能以90%以上的效率將輻射能轉(zhuǎn)換為熱量,更能以近乎100%的效率保存熱水,使用效率更高。它的確是一種很好的節(jié)能型“綠色”產(chǎn)品[1]。1.2太陽(yáng)能熱水器發(fā)展概況及市場(chǎng)競(jìng)爭(zhēng)分析1.2.1國(guó)內(nèi)外研究現(xiàn)狀1)國(guó)內(nèi)研究現(xiàn)狀我國(guó)太陽(yáng)能歷史可追溯到1958年,在上世紀(jì)70年代末起,我國(guó)就加大研發(fā)與生產(chǎn)太陽(yáng)能集熱器。1979年前后我國(guó)有些單位迎頭研發(fā)全玻璃真空管集熱器。清華大學(xué)運(yùn)用電真空物理的背景,發(fā)明了專(zhuān)利是鋁—氮化鋁太陽(yáng)選擇性吸收涂層,在世界上開(kāi)創(chuàng)用單個(gè)鋁陰極通過(guò)磁控射制備紅外低發(fā)射率低層、鋁—氮化鋁吸收太陽(yáng)光的陶瓷薄膜和淡化鋁減反膜三個(gè)部分。使用真空管的集熱器可以在嚴(yán)寒、低太陽(yáng)輻射下利用,很適合多種氣候。太陽(yáng)能熱利用產(chǎn)業(yè)的發(fā)展,在突破了太陽(yáng)選擇性吸收涂層的核心技術(shù),通過(guò)產(chǎn)學(xué)研結(jié)合,生產(chǎn)性能價(jià)格比較好的介質(zhì)。2)國(guó)外研究現(xiàn)狀國(guó)際上,太陽(yáng)能熱水器技術(shù)已日趨成熟,已達(dá)到了工業(yè)化生產(chǎn)階段,作為商品進(jìn)入市場(chǎng),綜合起來(lái),國(guó)外的太陽(yáng)能熱水器有以下幾個(gè)特點(diǎn):(1)政府重視。它首先表現(xiàn)在政府投資大,譬如美國(guó)在78年到81年在太陽(yáng)能供熱方面的投資每年都在1億美元以上。隨著投資的增長(zhǎng),太陽(yáng)能領(lǐng)域里的人員和科研成果增長(zhǎng)的速度也都相應(yīng)得到了提高。其次表現(xiàn)在各國(guó)都根據(jù)本國(guó)的情況,制訂出了能源政策,比如美國(guó)在能源政策和能源法案中,對(duì)國(guó)家投資、指定太陽(yáng)能科研規(guī)定以及實(shí)行稅收優(yōu)惠等經(jīng)濟(jì)措施分別作了規(guī)定。(2)產(chǎn)品的高檔化、大型化。由于國(guó)外一些主要利用太陽(yáng)能?chē)?guó)家的經(jīng)濟(jì)實(shí)力較強(qiáng),為了滿(mǎn)足社會(huì)的需要,其太陽(yáng)能熱水器從設(shè)計(jì)、制作以及材料等都趨于高檔化,而且在太陽(yáng)能熱水器體統(tǒng)上附加諸如循環(huán)泵,專(zhuān)用閥、輔助電加熱器等。當(dāng)然價(jià)格也是比較高的。去年北京舉行的國(guó)際可再生能源展覽會(huì)上,澳大利亞送展的一套家用太陽(yáng)能熱水器售價(jià)達(dá)400多美元。但是,從另一方面看,其發(fā)展仍不平衡,一些發(fā)展中國(guó)家應(yīng)用較為廣泛的仍有不少是較為低檔的太陽(yáng)能熱水器。近年來(lái),印度研究和使用的大都是日本早期產(chǎn)品——集熱蓄熱合一式太陽(yáng)能熱水器。(3)產(chǎn)品多樣化,技術(shù)上先進(jìn)。國(guó)外近幾年來(lái)主要發(fā)展的仍是管板式,并對(duì)降低成本,提高效率和可靠性,以及簡(jiǎn)化設(shè)計(jì)和安裝程序等都做了大量的研究工作,取得了顯著的進(jìn)展。如熱水器框架大都采鋁擠壓件,可以簡(jiǎn)化制造工藝并為玻璃的裝配和吸熱板提供了可靠的支架。采用人造橡膠和特制墊圈以解決漏水和因熱應(yīng)力作用而破裂的問(wèn)題,管道連接和安裝配件已設(shè)計(jì)成便于快速安裝的型式,雖然大部分仍采用回火玻璃做為蓋板,但也涌現(xiàn)出許多塑料和復(fù)合玻璃材料。(4)普及面廣。世界各國(guó)主要利用太陽(yáng)能的國(guó)家如日本、美國(guó)、澳大利亞和以色列等已將太陽(yáng)能熱水器發(fā)展到工業(yè)化生產(chǎn)階段。日本有20多家工廠(chǎng)。澳大利亞有2多家,新西蘭有30多家工廠(chǎng)從事太陽(yáng)能熱水器的生產(chǎn),使用的較為廣泛。如日本有400萬(wàn)多臺(tái)熱水器在運(yùn)行,以色列有60%以上的家庭使用太陽(yáng)能熱水器。目前,全世界正在使用的太陽(yáng)能熱水器(保羅空氣集熱器)約達(dá)700余萬(wàn)平方米[2]。1.2.2國(guó)內(nèi)外太陽(yáng)能熱水器發(fā)展趨勢(shì)近幾年來(lái),低溫太陽(yáng)能熱水器的產(chǎn)量在國(guó)際上略有下降,這主要同國(guó)際石油價(jià)格下跌有關(guān),預(yù)計(jì)今后各國(guó)將在中高溫太陽(yáng)能熱水器,包括充氣集熱器方面有較大的進(jìn)展,以利于使其在工業(yè)及采暖、空調(diào)以及發(fā)電方面取得進(jìn)展。各國(guó)還注意到使用新技術(shù)、新材料研制出更多品種的太陽(yáng)能熱水器。特別在提高熱性能,降低成本,使之不斷提高和完善,使其比在常規(guī)能源有更大的競(jìng)爭(zhēng)能力。特別是太陽(yáng)能的蓄能技術(shù)將把太陽(yáng)能熱水器推進(jìn)到一個(gè)新的天地。我國(guó)太陽(yáng)能熱水器的勢(shì)頭仍處在上升階段。預(yù)計(jì)這種勢(shì)頭持續(xù)2~4年,可能會(huì)出現(xiàn)一個(gè)下降趨勢(shì),為此,從科研和生產(chǎn)上有一定思想準(zhǔn)備,以防止和避免這種可能性的出現(xiàn)。為此應(yīng)當(dāng)一方面發(fā)展新的技術(shù)和材料,使之能打進(jìn)國(guó)際市場(chǎng),另一方面結(jié)合中國(guó)的國(guó)情,研制出使群眾買(mǎi)得起,用得上的太陽(yáng)能熱水器。這樣,高、中、低檔的太陽(yáng)能熱水器將同時(shí)出現(xiàn),并發(fā)揮各自作用和效益。將太陽(yáng)能熱水器同城鄉(xiāng)居民住房結(jié)合在一起,使之成為房屋的一種構(gòu)件和裝備,將愈來(lái)愈受到人們的重視。同時(shí)將太陽(yáng)能熱水器同太陽(yáng)房、太陽(yáng)灶結(jié)合在一起的多種用途的太陽(yáng)能熱利用裝置將會(huì)出現(xiàn),并引起人們的濃厚興趣??傊?,太陽(yáng)能熱水器作為家庭生活和社會(huì)的一種商品將會(huì)越來(lái)越多的出現(xiàn)在人們眼前,將會(huì)發(fā)揮出更高的作用和效益。1.2.3太陽(yáng)能熱水器的市場(chǎng)分析在太陽(yáng)能產(chǎn)業(yè)的發(fā)展中,太陽(yáng)能熱水器的熱利用轉(zhuǎn)換技術(shù)無(wú)疑是最為成熟的,其產(chǎn)業(yè)化進(jìn)程也較光伏電池、太陽(yáng)能發(fā)電等產(chǎn)業(yè)領(lǐng)先一步。但是目前市場(chǎng)還有待規(guī)范,消費(fèi)群體還有待培育,技術(shù)還有尚須改進(jìn),因而對(duì)于企業(yè)來(lái)說(shuō)還有較大的成長(zhǎng)空間。2007年,中國(guó)太陽(yáng)能熱水器產(chǎn)量的增長(zhǎng)速度約為30%,年產(chǎn)量達(dá)2340萬(wàn)㎡(16380MWth),總保有量約為10800萬(wàn)㎡(75600MWth)(太陽(yáng)能熱水器壽命按10年計(jì)算,1997年前的保有量作廢)。2007年,太陽(yáng)能熱水器市場(chǎng)銷(xiāo)售額約為320億元人民幣,產(chǎn)值億元人民幣以上的企業(yè)有20多家;2007年,太陽(yáng)能熱水器的出口額增長(zhǎng)約為28%,6500萬(wàn)美元左右,產(chǎn)品出口歐洲、美洲、非洲、東南亞等50多個(gè)國(guó)家和地區(qū)。中國(guó)太陽(yáng)能熱水器的年生產(chǎn)量是歐洲的2倍,北美的4倍,現(xiàn)已成為世界上最大的太陽(yáng)能熱水器生產(chǎn)國(guó)和最大的太陽(yáng)能熱水器市場(chǎng),并仍在以每年20%-30%的速度遞增。但是中國(guó)太陽(yáng)能熱水器的生產(chǎn)企業(yè)有5000多家,除桑樂(lè)、皇明、清華陽(yáng)光、華揚(yáng)、太陽(yáng)雨、力諾瑞特等10個(gè)全國(guó)性品牌因質(zhì)量、售后服務(wù)過(guò)硬而市場(chǎng)知名度較高外,行業(yè)中存在著大量紛繁蕪雜的雜牌企業(yè),這種狀況不利于行業(yè)的長(zhǎng)遠(yuǎn)發(fā)展,這就要求政府部門(mén)進(jìn)行規(guī)范,加強(qiáng)監(jiān)管引導(dǎo)。盡管市場(chǎng)現(xiàn)狀不如人意,但市場(chǎng)前景仍看好。隨著國(guó)民經(jīng)濟(jì)和人民生活水平的不斷提高,居民對(duì)家庭室內(nèi)熱水的需求越來(lái)越強(qiáng)烈,中國(guó)太陽(yáng)能熱水器市場(chǎng)潛力巨大。1.3本課題研究的主要內(nèi)容本課題研究的是太陽(yáng)能熱水器的測(cè)控儀,但是首先應(yīng)該了解太陽(yáng)能熱水器的組成與工作原理,以及太陽(yáng)能熱水器的基本構(gòu)架和工作過(guò)程,才能使本次的控制系統(tǒng)設(shè)計(jì)的更加完善。1.3.1太陽(yáng)能熱水器的組成與工作原理圖1.1熱水器裝置簡(jiǎn)圖1-集熱器2-下降水管3-循環(huán)水管4-補(bǔ)給水箱5-上升水管6-自來(lái)水管7-熱水出水管熱水器主要由集熱器、循環(huán)管道和水箱等組成。圖1.1為典型的熱水器裝置圖,圖中集熱器1按最佳傾角放置,下降水管2的一端與循環(huán)水箱3的下部相連,另一端與集熱器1的下集管接通。上升水管5與循環(huán)水箱3上部相連,另一端與集熱器1的上集管相接。補(bǔ)給水箱4供給循環(huán)水箱3所需的冷水。集熱器吸收太陽(yáng)輻射后,集熱器內(nèi)溫度上升,水溫也隨之升高。水溫升高后,水的比重減輕,便經(jīng)上升水管進(jìn)入循環(huán)水箱上部。而循環(huán)水箱下部的冷水比重較大,就由水箱下流到集熱器下方,在集熱器內(nèi)受熱后又上升。這樣不斷對(duì)流循環(huán),水溫逐漸提高,直到集熱器吸收的熱量與散失的熱量相平衡時(shí),水溫不再升高。這種熱水利用循環(huán)加熱的原理,因此又稱(chēng)循環(huán)熱水器。集熱器是一種利用溫室效應(yīng),將太陽(yáng)能輻射轉(zhuǎn)換為熱能的裝置,該裝置與一般熱水交換器不一樣,熱交換器通常只是液體到液體,或是液體到氣體的熱交換過(guò)程,而平板型集熱器是直接將太陽(yáng)輻射傳給液體或氣體,是一個(gè)復(fù)雜的傳熱過(guò)程,平板型集熱器結(jié)構(gòu)形式很多,世界上已實(shí)用的集熱器就有直管式、瓦楞式、扁管式、鋁翼式等二十多種。1.3.2太陽(yáng)能熱水器測(cè)控儀的設(shè)計(jì)內(nèi)容此款熱水器測(cè)控儀系統(tǒng)包括主從兩大系統(tǒng):主系統(tǒng)的特點(diǎn)是在晴好的天氣用太陽(yáng)光能為熱水器加熱;從系統(tǒng)相當(dāng)于電熱水器,它在無(wú)光照的情況下利用電輔助加熱。它充分利用太陽(yáng)能的豐富的免費(fèi)資源的優(yōu)勢(shì),同時(shí)考慮到在陰天及夜間無(wú)法利用太陽(yáng)能的缺點(diǎn),充分發(fā)揮太陽(yáng)能熱水器和電熱水器的各自?xún)?yōu)勢(shì)。這是世面上大部分熱水器所不能比擬的。本設(shè)計(jì)有三個(gè)要求:(1)時(shí)間、溫度和水位三種參數(shù)實(shí)時(shí)顯示功能。(2)具有時(shí)間設(shè)定、溫度和水位設(shè)定與控制功能。(3)控制器可以根據(jù)天氣情況利用輔助加熱裝置使蓄水箱內(nèi)的水溫在設(shè)定時(shí)間達(dá)到預(yù)先設(shè)定的溫度。本文的第二章,主要會(huì)介紹系統(tǒng)的整體框圖,以及選擇的主要技術(shù)和元器件,并對(duì)這些技術(shù)和元器件進(jìn)行簡(jiǎn)單的介紹;第三章,重點(diǎn)介紹了系統(tǒng)各單元的電路圖以及工作原理;第四章是對(duì)所涉及的子系統(tǒng)的軟件進(jìn)行分析闡述。第五章則是對(duì)系統(tǒng)的軟硬件調(diào)試;第六章總結(jié)了本系統(tǒng)工作和優(yōu)缺點(diǎn),以及后續(xù)工作。2太陽(yáng)能熱水器測(cè)控儀總體方案的設(shè)計(jì)2.1熱水器微控制器系統(tǒng)框圖本設(shè)計(jì)的太陽(yáng)能熱水器控制器是以AT89C52單片機(jī)為檢測(cè)控制中心單元,利用液位傳感器來(lái)檢測(cè)水箱中的液位,當(dāng)實(shí)際的液位低于設(shè)定液位時(shí),冷水閥開(kāi)關(guān)則會(huì)開(kāi)啟,實(shí)現(xiàn)加水功能;溫度傳感器則是用來(lái)檢測(cè)水箱中水的溫度,當(dāng)實(shí)際溫度低于設(shè)定溫度時(shí),則會(huì)利用輔助加熱器對(duì)水箱中的水溫加熱,從而達(dá)到預(yù)定效果;液晶顯示屏主要顯示的是相應(yīng)的溫度、水位及時(shí)間。而利用按鍵操作不僅可以實(shí)現(xiàn)對(duì)時(shí)間的調(diào)整,而且可以設(shè)定相應(yīng)的溫度和水位。從系統(tǒng)框圖可2.1可以看出。圖2.1熱水器微控制器系統(tǒng)框圖2.2控制器系統(tǒng)主要元件簡(jiǎn)介本系統(tǒng)主要涉及到單片機(jī)AT89C52及其外圍電路,超聲波液位傳感器,溫度傳感器,實(shí)時(shí)時(shí)鐘DS1302,輔助加熱器等等主要模塊,由于有些模塊中涉及到一些重要的元件,所以在這里對(duì)所涉及的主要芯片的功能原理等做一個(gè)簡(jiǎn)單的闡述。元件主要包括:?jiǎn)纹瑱C(jī)AT89C52、鉑熱電阻PT100、轉(zhuǎn)換芯片ADC0832、超聲波測(cè)距儀HC-SR04、時(shí)鐘芯片DS1302等。2.2.1單片機(jī)AT89C52AT89C52作為本設(shè)計(jì)的中央處理器,是一個(gè)低電壓,高性能CMOS8位單片機(jī),片內(nèi)含8kbytes的可反復(fù)擦寫(xiě)的Flash只讀程序存儲(chǔ)器和256bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲(chǔ)單元,AT89C52單片機(jī)在電子行業(yè)中有著廣泛的應(yīng)用。AT89C52的主要功能特性為[3]:(1)兼容MCS51指令系統(tǒng);(2)8k可反復(fù)擦寫(xiě)(大于1000次)FlashROM;(3)32個(gè)雙向I/O口;(4)256x8bit內(nèi)部RAM;(5)3個(gè)16位可編程定時(shí)/計(jì)數(shù)器中斷;(6)時(shí)鐘頻率0-24MHz;(7)2個(gè)串行中斷,可編程UART串行通道;(8)2個(gè)外部中斷源,共8個(gè)中斷源;(9)2個(gè)讀寫(xiě)中斷口線(xiàn),3級(jí)加密位;(10)低功耗空閑和掉電模式,軟件設(shè)置睡眠和喚醒功能;(11)有PDIP、PQFP、TQFP及PLCC等幾種封裝形式,以適應(yīng)不同產(chǎn)品的需求。AT89C52為8位通用微處理器,采用工業(yè)標(biāo)準(zhǔn)的C51內(nèi)核,在內(nèi)部功能及管腳排布上與通用的8xc52相同,如圖2.2所示。主要管腳有:XTAL1(19腳)和XTAL2(18腳)為振蕩器輸入輸出端口,外接12MHz晶振。RST/Vpd(9腳)為復(fù)位輸入端口,外接電阻電容組成的復(fù)位電路。VCC(40腳)和VSS(20腳)為供電端口,分別接+5V電源的正負(fù)端。P0~P3為可編程通用I/O腳,其功能用途由軟件定義,以下簡(jiǎn)單介紹單片機(jī)AT89C52輸入/輸出引腳P0,P1,P2,P3。圖2.2PDIP封裝的AT89C52引腳圖(1)P0口:P0口是一組8位漏極開(kāi)路型雙向I/O口,即地址/數(shù)據(jù)總線(xiàn)復(fù)用口。作為輸出口用時(shí),每位能以吸收電流的方式驅(qū)動(dòng)8個(gè)TTL邏輯門(mén)電路,對(duì)端口P0寫(xiě)“1”時(shí),可作為高阻抗輸入端用。在訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線(xiàn)分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線(xiàn)復(fù)用,在訪(fǎng)問(wèn)期間激活內(nèi)部上拉電阻。在Flash編程時(shí),P0口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。(2)P1口:P1口是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門(mén)電路。對(duì)端口寫(xiě)“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(IIL)。與AT89C51不同之處是,P1.0和P1.1還可分別作為定時(shí)/計(jì)數(shù)器2的外部計(jì)數(shù)輸入,即:P1.0/T2和P1.1/T2EX。(3)P2口:P2是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門(mén)電路。對(duì)端口P2寫(xiě)“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口,作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(IIL)。在訪(fǎng)問(wèn)外部程序存儲(chǔ)器或16位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口送出高8位地址數(shù)據(jù)。在訪(fǎng)問(wèn)8位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器的內(nèi)容。Flash編程或校驗(yàn)時(shí),P2亦接收高位地址和一些控制信號(hào)。(4)P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門(mén)電路。對(duì)P3口寫(xiě)入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。此時(shí),被外部拉低的P3口將用上拉電阻輸出電流(IIL)。P3口除了作為一般的I/O口線(xiàn)外,更重要的用途是它的第二功能。P3口還接收一些用于Flash閃速存儲(chǔ)器編程和程序校驗(yàn)的控制信號(hào)。2.2.2鉑熱電阻PT100由于本設(shè)計(jì)的溫度是測(cè)溫電路,可以使用熱敏電阻PT100的感溫效應(yīng)。PT100溫度傳感器為正溫度系數(shù)熱敏電阻傳感器,主要技術(shù)參數(shù)如下[4]:(1)測(cè)量范圍:-200℃~+850℃;(2)允許偏差值△℃:A級(jí)±(0.15+0.002│t│),B級(jí)±(0.30+0.005│t│);(3)熱響應(yīng)時(shí)間<30s;(4)最小置入深度:熱電阻的最小置入深度≥200mm;(5)允通電流≤5mA。另外,PT100溫度傳感器還具有抗振動(dòng)、穩(wěn)定性好、準(zhǔn)確度高、耐高壓等優(yōu)點(diǎn)。鉑熱電阻的線(xiàn)性較好,在0~100℃之間變化時(shí),最大非線(xiàn)性偏差小于0.5攝氏度。鉑熱電阻阻值與溫度關(guān)系[5]為:(1)-200℃<t<0℃時(shí),RPT=100*[1+At+B*t2+C*t3*(t-100)](2)0℃≤t≤850℃時(shí),RPT=100*(1+At+B*t2)式中,A=0.00390802;B=-0.000000580;C=0.0000000000042735??梢?jiàn)PT100在常溫0~100攝氏度之間變化時(shí)線(xiàn)性度非常好,其阻值表達(dá)式可近似簡(jiǎn)化為:RPT=100(1+At),當(dāng)溫度變化1攝氏度,PT100阻值近似變化0.39歐姆。表2.1為PT100在0℃~100℃的分度表。表2.1PT100分度表℃01234567890102030405060708090100100103.9107.79111.67115.54119.40123.24127.08130.90134.71138.51100.39104.29108.18112.06115.93119.78123.63127.46131.28135.09138.88100.78104.68108.75112.45116.31120.17124.01127.84131.66135.47139.26101.17105.07108.96112.83116.31120.55124.39128.22132.04135.85139.64101.56105.46109.35113.22117.08120.94124.78128.61132.42136.23140.02101.95105.85109.73113.61117.47121.32125.54128.99132.80136.61140.40102.34106.24110.12114.99117.85121.7125.54129.37133.18136.98140.77102.73106.63110.51114.38118.24122.09125.92129.75133.56137.36141.15103.12107.02110.9114.77118.62122.47126.31130.13133.94137.74141.53103.51107.4111.28115.15119.01122.86126.69130.51134.32138.12141.912.2.3轉(zhuǎn)換芯片ADC0832ADC0832是一個(gè)模/數(shù)轉(zhuǎn)換芯片,用在溫度傳感器電路中,ADC0832接在溫度信號(hào)調(diào)理電路之后,可用于將電壓模擬量轉(zhuǎn)換為數(shù)字量,通過(guò)液晶顯示屏從而顯示溫度。ADC0832是美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn)的一種8位分辨率、雙通道A/D轉(zhuǎn)換芯片。由于它體積小,兼容性,性?xún)r(jià)比高而深受單片機(jī)愛(ài)好者及企業(yè)歡迎,其目前已經(jīng)有很高的普及率。學(xué)習(xí)并使用ADC0832可是使我們了解A/D轉(zhuǎn)換器的原理,有助于我們單片機(jī)技術(shù)水平的提高。ADC0832引腳圖如圖2.3所示。ADC0832具有以下特點(diǎn)[6]:(1)8位分辨率;(2)雙通道A/D轉(zhuǎn)換;(3)輸入輸出電平與TTL/CMOS相兼容;(4)5V電源供電時(shí)輸入電壓在0~5V之間;(5)工作頻率為250KHz,轉(zhuǎn)換時(shí)間為32μS;(6)一般功耗僅為15mW;(7)8P、14P—DIP(雙列直插)、PICC多種封裝;(8)商用級(jí)芯片溫寬為0°Cto+70°C,工業(yè)級(jí)芯片溫寬為?40°Cto+85°C。圖2.3ADC0832引腳圖ADC0832為8位分辨率A/D轉(zhuǎn)換芯片,其最高分辨可達(dá)256級(jí),可以適應(yīng)一般的模擬量轉(zhuǎn)換要求。其內(nèi)部電源輸入與參考電壓的復(fù)用,使得芯片的模擬電壓輸入在0~5V之間。芯片轉(zhuǎn)換時(shí)間僅為32μS,據(jù)有雙數(shù)據(jù)輸出可作為數(shù)據(jù)校驗(yàn),以減少數(shù)據(jù)誤差,轉(zhuǎn)換速度快且穩(wěn)定性能強(qiáng)。獨(dú)立的芯片使能輸入,使多器件掛接和處理器控制變的更加方便。通過(guò)DI數(shù)據(jù)輸入端,可以輕易的實(shí)現(xiàn)通道功能的選擇。2.2.4超聲波測(cè)距儀HC-SR04本設(shè)計(jì)采用超聲波測(cè)距儀作為液位傳感器,超聲波測(cè)距儀主要是用于測(cè)量水箱中液位的高度。1)產(chǎn)品特點(diǎn)HC-SR04超聲波測(cè)距模塊可提供2cm-400cm的非接觸式距離感測(cè)功能。測(cè)距精度可達(dá)高到3mm;模塊包括超聲波發(fā)射器、接收器與控制電路。2)基本工作原理[7](1)采用IO口TRIG觸發(fā)測(cè)距,給至少10us的高電平信號(hào);(2)模塊自動(dòng)發(fā)送8個(gè)40KHz的方波,自動(dòng)檢測(cè)是否有信號(hào)返回;(3)有信號(hào)返回,通過(guò)IO口ECHO輸出一個(gè)高電平,高電平持續(xù)的時(shí)間就是超聲波從發(fā)射到返回的時(shí)間。測(cè)試距離=(高電平時(shí)間*聲速(340M/S))/2。3)電氣參數(shù)超聲波測(cè)距儀模塊共有四個(gè)引腳接出:VCC供5V電源,GND為地線(xiàn),TRIG觸發(fā)控制信號(hào)輸入,ECHO回響信號(hào)輸出等四支線(xiàn)。超聲波相應(yīng)的電氣參數(shù)如表2.2所示。表2.2超聲波電氣參數(shù)電氣參數(shù)HC-SR04超聲波模塊工作電壓工作電流工作頻率最遠(yuǎn)射程最近射程測(cè)量角度輸入觸發(fā)信號(hào)輸出回響信號(hào)規(guī)格尺寸DC5V15mA40Hz4m2cm15度10uS的TTL脈沖輸出TTL電平信號(hào),與射程成比例45*20*15mm4)超聲波時(shí)序圖系統(tǒng)只需提供一個(gè)10uS以上脈沖觸發(fā)信號(hào),超聲波模塊內(nèi)部將發(fā)出8個(gè)40kHz周期電平并檢測(cè)回波。一旦檢測(cè)到有回波信號(hào)則輸出回響信號(hào)?;仨懶盘?hào)的脈沖寬度與所測(cè)距離成正比。由此通過(guò)發(fā)射信號(hào)到收到的回響信號(hào)時(shí)間間隔可以計(jì)算得到距離。公式:距離=高電平時(shí)間*聲速(340m/s)/2;一般測(cè)量周期為60ms以上,以防止發(fā)射信號(hào)對(duì)回響信號(hào)的影響。圖2.4為超聲波的時(shí)序圖。圖2.4超聲波時(shí)序圖2.2.5時(shí)鐘芯片DS1302本設(shè)計(jì)中的DS1302時(shí)鐘芯片用在時(shí)鐘電路模塊中,用于顯示實(shí)時(shí)時(shí)間:時(shí)、分、秒。DS1302是DALLAS公司推出的涓流充電時(shí)鐘芯片,內(nèi)含有一個(gè)實(shí)時(shí)時(shí)鐘/日歷和31字節(jié)靜態(tài)RAM。實(shí)時(shí)時(shí)鐘/日歷電路提供秒、分、時(shí)、日、日期、月、年的信息,時(shí)鐘可以對(duì)閏年自動(dòng)調(diào)整天數(shù),時(shí)鐘操作可通過(guò)AM/PM指示決定采用24或12小時(shí)格式。DS1302與單片機(jī)之間能簡(jiǎn)單地采用同步串行的方式進(jìn)行通信,僅需用到三個(gè)口線(xiàn):RES復(fù)位、I/O數(shù)據(jù)、SCLK(串行時(shí)鐘)。時(shí)鐘RAM的讀/寫(xiě)數(shù)據(jù)以一個(gè)字節(jié)或多達(dá)31個(gè)字節(jié)的字符組方式通信。DS1302工作時(shí)功耗很低,保持?jǐn)?shù)據(jù)核實(shí)中信息時(shí)功耗小于1mW。1)DS1302的主要性能指標(biāo)為[8]:(1)DS1302實(shí)時(shí)時(shí)鐘具有能計(jì)算2100年之前的秒、分、時(shí)、日、日期、星期、月、年的能力,還有閏年調(diào)整的能力;(2)內(nèi)部含有31個(gè)字節(jié)靜態(tài)RAM,可提供用戶(hù)訪(fǎng)問(wèn);(3)采用串行數(shù)據(jù)傳送方式,使得管腳數(shù)量最少,簡(jiǎn)單SPI3線(xiàn)接口;(4)工作電壓范圍寬:2.0~5.5V;(5)工作電流:2.0V時(shí),小于300nA;(6)時(shí)鐘或RAM數(shù)據(jù)的讀/寫(xiě)有兩種傳送方式:?jiǎn)巫止?jié)傳送和多字節(jié)傳送方式;(7)采用8腳DIP封裝或SOIC封裝;(8)與TTL兼容,Vcc=5V;(9)可選工業(yè)級(jí)溫度范圍:-40°C~+85°C;(10)具有涓流充電能力;(11)采用主電源和備份電源雙電源供應(yīng);(12)備份電源可由電池或大容量電容實(shí)現(xiàn)。2)引腳功能X1、X2之間接入32.768KHz晶振;R\S\T\為復(fù)位引腳,低電平有效,操作時(shí)高電平;I/O是數(shù)據(jù)輸入/輸出引腳,具有三態(tài)功能。SCLK是串行時(shí)鐘輸入引腳;Vcc1為工作電源引腳;Vcc2為備用電源引腳。圖2.5為DS1302的引腳圖。圖2.5DS1302的引腳圖3硬件設(shè)計(jì)3.1繪圖軟件Protel99se簡(jiǎn)介Protel99se是Protel公司在80年代末推出的EDA軟件,在電子行業(yè)的CAD軟件中,它當(dāng)之無(wú)愧地排在眾多EDA軟件的前面。本設(shè)計(jì)用的是Protel99se的漢化版,下面簡(jiǎn)單介紹一下本設(shè)計(jì)的繪圖過(guò)程[9]。第一步,建文檔。單擊文件—>新建設(shè)計(jì),彈出一個(gè)設(shè)計(jì)數(shù)據(jù)庫(kù),修改文件名及數(shù)據(jù)庫(kù)位置。點(diǎn)擊Document,在單擊文件—>新建文件,選取SchematicDocument建立一個(gè)原理圖文檔。第二步,添加元件庫(kù)。在放置元件之前,必須先將該元件所在的元件庫(kù)載入內(nèi)存才行。通常只載入必要而常用的元件庫(kù),其它特殊的元件庫(kù)當(dāng)需要時(shí)再載入。操作是在.Sch界面下,單擊設(shè)計(jì)—>添加/刪除文件庫(kù),選擇相應(yīng)的庫(kù)即可。第三步,添加元件,繪制原理圖。由于電路是由元件(含屬性)及元件間的邊線(xiàn)所組成的,所以現(xiàn)在要將所有可能使用到的元件都放到空白的繪圖頁(yè)上。軟件左側(cè)有相應(yīng)的庫(kù)及元件,單擊瀏覽,查找相應(yīng)的元件并放置。由于有些元件庫(kù)中沒(méi)有,需要自己編輯,新建SchematicLibraryDocument,在.Lib界面下編輯需要的元件,元件編輯好了之后可以命名保存在庫(kù)里面,這樣下次用到時(shí)就可以像其他元件一樣自由調(diào)用。VCC電源元件與GND接地元件有別于一般的電氣元件。它們必須通過(guò)菜單電路圖繪制工具欄上的按鈕調(diào)用,編輯窗口中會(huì)有一個(gè)隨鼠標(biāo)指針移動(dòng)的電源符號(hào),在對(duì)話(huà)框中可以編輯電源屬性,在網(wǎng)絡(luò)欄中修改電源符號(hào)的網(wǎng)絡(luò)名稱(chēng),在風(fēng)格欄中修改電源類(lèi)型,修改電源符號(hào)放置的風(fēng)格。第四步,連線(xiàn)及放置接點(diǎn)。所有元件放置完畢后,就可以進(jìn)行電路圖中各對(duì)象間的連線(xiàn),右擊鼠標(biāo)—>放置電線(xiàn)。連線(xiàn)的主要目的是按照電路設(shè)計(jì)的要求建立網(wǎng)絡(luò)的實(shí)際連通性。最后全都完成后單擊工具—>電氣規(guī)則檢查,檢查原理圖中的連線(xiàn)是否有問(wèn)題。所有步驟完成后單擊保存。3.2控制器各單元模塊硬件電路設(shè)計(jì)根據(jù)控制要求,本設(shè)計(jì)采用AT89C52單片機(jī)做控制器。由于本系統(tǒng)沒(méi)有太多的中間數(shù)據(jù)需要處理、保存,因此不再外擴(kuò)數(shù)據(jù)存儲(chǔ)器。僅使用AT89C52內(nèi)部RAM已完全能夠滿(mǎn)足要求。系統(tǒng)的硬件接口電路包括:?jiǎn)纹瑱C(jī)及外圍電路,超聲波液位傳感器電路,實(shí)時(shí)時(shí)鐘電路,PT100溫度傳感器電路,上水電路及輔助加熱器電路,液晶顯示電路及按鍵接口設(shè)計(jì)電路等。3.2.1單片機(jī)及其外圍電路的設(shè)計(jì)單片機(jī)系統(tǒng)由AT89C52和一定功能的外圍電路組成,外圍電路包括:提供單片機(jī)工作時(shí)所必須的時(shí)鐘信號(hào)的時(shí)鐘電路,為單片機(jī)提供復(fù)位的復(fù)位電路[10]。如圖3.1所示。圖3.1單片機(jī)AT89C52的外圍電路1)時(shí)鐘信號(hào)電路時(shí)鐘是單片機(jī)運(yùn)行的基礎(chǔ),因此,適中的速度和穩(wěn)定性都直接影響單片機(jī)的工作。單片機(jī)的時(shí)鐘信號(hào)通常有兩種電路方式,內(nèi)部振蕩方式和外部震蕩方式。本設(shè)計(jì)采用的是外部振蕩方式,在引腳ATAL1和引腳ATAL2之間外接晶振和微調(diào)電容C2和C3,與單片機(jī)內(nèi)部的一個(gè)高增益的反相放大器一起構(gòu)成自激振蕩器,并產(chǎn)生振蕩時(shí)鐘脈沖。C2和C3起穩(wěn)定振蕩頻率、快速起振的作用。本設(shè)計(jì)中選取的是電容值大小為33pF的兩個(gè)電容。晶振頻率的典型值為6MHz、12MHz和24MHz,最高可達(dá)到40MHz。晶振的頻率越高,系統(tǒng)時(shí)鐘頻率也越高,單片機(jī)的運(yùn)行速度越快,本設(shè)計(jì)選取的是12MHz。單片機(jī)是按照一定的時(shí)序?yàn)榛鶞?zhǔn)來(lái)工作的,其基準(zhǔn)就是時(shí)鐘的振蕩頻率,所有操作都是以時(shí)鐘頻率的倍數(shù)為最小單位來(lái)進(jìn)行的。時(shí)鐘周期是單片機(jī)的基本時(shí)間單位,晶振的振蕩頻率為12MHz時(shí),時(shí)鐘周期為1/12us=0.0833us。機(jī)器周期是CPU完成一個(gè)基本操作所需要的時(shí)間。單片機(jī)中常把執(zhí)行一條指令的過(guò)程分為幾個(gè)機(jī)器周期,每個(gè)機(jī)器周期內(nèi)完成一個(gè)基本操作。單片機(jī)以每12個(gè)振蕩周期為一個(gè)機(jī)器周期,晶振頻率為12MHz時(shí),機(jī)器周期為12/12us=1us。2)復(fù)位電路在單片機(jī)中,RST引腳是復(fù)位信號(hào)輸入端,復(fù)位信號(hào)為高電平時(shí)有效,其有效時(shí)間應(yīng)持續(xù)24個(gè)振蕩周期以上才能完成復(fù)位操作,復(fù)位電路極性電容C1的大小直接影響復(fù)位時(shí)間,一般采用10至30uF,容值越大需要的復(fù)位時(shí)間越短,在本設(shè)計(jì)中,使用的是約為12MHz的石英晶體振蕩器,這時(shí)電容C1的大小選取10uF,R4的大小為10K。這樣就能進(jìn)行可靠地上電復(fù)位和手動(dòng)復(fù)位操作。3.2.2超聲波液位傳感器電路設(shè)計(jì)超聲波液位傳感器是用來(lái)檢測(cè)水箱中液位的高度,以確定是否需要打開(kāi)冷水閥上水達(dá)到設(shè)定要求。單片機(jī)發(fā)出40KHz的信號(hào),經(jīng)放大后通過(guò)超聲波發(fā)射器輸出;超聲波接收器將接收到的超聲波信號(hào)經(jīng)放大器放大,用鎖相環(huán)電路進(jìn)行檢波處理后,啟動(dòng)單片機(jī)中斷程序,測(cè)得時(shí)間為t,再由軟件進(jìn)行判別、計(jì)算,得出距離數(shù)并送LCD顯示。圖3.2為超聲波測(cè)距儀原理框圖。圖3.2超聲波測(cè)距儀原理框圖1)超聲波發(fā)射電路發(fā)射電路主要由反向器74LS04和超聲波發(fā)射換能器T構(gòu)成,單片機(jī)端口P1.7輸出40MHz的方波信號(hào)一路經(jīng)一級(jí)反向器后送到超聲波換能器的一個(gè)電極,另一路經(jīng)兩級(jí)反向器后送到超聲波換能器的另一個(gè)電極,用這種推換形式將方波信號(hào)加到超聲波換能器的兩端,可以提高超聲波的發(fā)射強(qiáng)度。輸出端采用兩個(gè)反向器并聯(lián)的方式,用以提高驅(qū)動(dòng)能力。上位電阻R10、R11一方面可以提高反向器74LS04輸出高電平的驅(qū)動(dòng)能力,另一方面可以增加超聲波換能器的阻尼效果,縮短其自由振蕩時(shí)間。圖3.3為超聲波發(fā)射電路原理圖。圖3.3超聲波發(fā)射電路壓電式超聲波換能器是利用壓電晶體的諧振來(lái)工作的。超聲波換能器內(nèi)部有兩個(gè)壓電晶片和一個(gè)換能板。當(dāng)它的兩極外加脈沖信號(hào),其頻率等于壓電晶片的固有振蕩頻率時(shí),壓電晶片會(huì)發(fā)生共振,并帶動(dòng)共振板振動(dòng)產(chǎn)生超聲波,這時(shí)它就是一個(gè)超聲波發(fā)生器;反之,如果兩電極問(wèn)未外加電壓,當(dāng)共振板接收到超聲波時(shí),將壓迫壓電晶片作振動(dòng),將機(jī)械能轉(zhuǎn)換為電信號(hào),這時(shí)它就成為超聲波接收換能器。超聲波發(fā)射換能器與接收換能器在結(jié)構(gòu)上稍有不同,使用時(shí)應(yīng)分清器件上的標(biāo)志。2)超聲波檢測(cè)接收電路由于超聲波在空氣中的傳播過(guò)程中是有衰減的,如果距離較遠(yuǎn),那么超聲波接收電路所接收到的超聲波信號(hào)就會(huì)比較微弱,因此需要對(duì)接收到的信號(hào)進(jìn)行放大而且放大的倍數(shù)也要比較大。超聲波接收電路主要是由集成電路CX20106A芯片電路構(gòu)成的,CX20106A芯片電路可以對(duì)超聲波信號(hào)進(jìn)行放大、限幅、帶通濾波、峰值檢波、整形、比較等功能,比較完之后超聲波接收電路會(huì)輸出一個(gè)低電平到單片機(jī)去請(qǐng)求中斷,即當(dāng)單片機(jī)停止計(jì)時(shí),并開(kāi)始去進(jìn)行數(shù)據(jù)的處理。CX20106A芯片的前置放大器具有自動(dòng)增益控制的功能,當(dāng)測(cè)量的距離比較近時(shí),放大器不會(huì)過(guò)載;而當(dāng)測(cè)量距離比較遠(yuǎn)時(shí),超聲波信號(hào)微弱,前置放大器就有較大的放大增益效果。CX20106A芯片的5腳外接電阻,對(duì)它的帶通濾波器的頻率進(jìn)行調(diào)節(jié),而且不用再外接其他的電感,能夠很好地避免外加磁場(chǎng)對(duì)芯片電路的干擾,而且它的可靠性也是比較高的。CX20106A芯片電路本身就具有很高的抗干擾的能力,而且靈敏度也比較高。適當(dāng)更改電容C4的大小,可以改變接收電路的靈敏度和抗干擾能力。所以,能滿(mǎn)足本設(shè)計(jì)的要求。超聲波接收電路如圖3.4所示。圖3.4超聲波檢測(cè)接收電路3.2.3時(shí)鐘電路設(shè)計(jì)為了實(shí)現(xiàn)熱水器24小時(shí)可以供應(yīng)熱水的目的,控制器必須有一個(gè)實(shí)時(shí)時(shí)鐘來(lái)為系統(tǒng)提供準(zhǔn)確的時(shí)間,本系統(tǒng)采用DS1302時(shí)鐘電路來(lái)實(shí)現(xiàn)。DS1302硬件圖中,Vcc1為主電源,Vcc2為后備電源。在主電源關(guān)閉的情況下,也能保持適中的連續(xù)運(yùn)行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當(dāng)Vcc2大于Vcc1+0.2V時(shí),Vcc2給DS1302供電。當(dāng)Vcc2小于Vcc1時(shí),DS1302由Vcc1供電。X1和X2是振蕩源,外接32.768KHz晶振。RST是復(fù)位/片選線(xiàn),通過(guò)把RST輸入驅(qū)動(dòng)置高電平來(lái)啟動(dòng)所有的數(shù)據(jù)傳送,與單片機(jī)的P1.3相連。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當(dāng)RST為高電平時(shí),所有的數(shù)據(jù)傳送被初始化,允許對(duì)DS1302進(jìn)行操作。如果在傳送過(guò)程中RST置為低電平,則會(huì)終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電運(yùn)行時(shí),在Vcc>2.0V之前,RST必須保持低電平。只有在SCLK為低電平時(shí),才能將RST置為高電平。與P1.4相連的I/O為串行數(shù)據(jù)輸入輸出端(雙向)。SCLK為時(shí)鐘輸入端,與單片機(jī)的P1.5相連。DS1302與單片機(jī)接口電路如圖3.5所示。圖3.5DS1302與單片機(jī)接口電路控制字節(jié)的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫(xiě)入到DS1302中。位6如果為0,則表示存取日歷時(shí)鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1指示操作單元的地址;最低有效位(位0)如為0表示要進(jìn)行寫(xiě)操作,為1表示進(jìn)行讀操作,控制字節(jié)總是從最低位開(kāi)始輸出。在控制指令字輸入后的下一個(gè)SCLK時(shí)鐘的上升沿時(shí)數(shù)據(jù)被寫(xiě)入DS1302,數(shù)據(jù)輸入從低位即位0開(kāi)始。同樣,在緊跟8位的控制指令字后的下一個(gè)SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀出數(shù)據(jù)時(shí)從低位0位至高位7.DS1302共有12個(gè)寄存器,其中有7個(gè)寄存器與日歷、時(shí)鐘有關(guān)、存放的數(shù)據(jù)位為BCD碼形式。其日歷、時(shí)間寄存器及其控制字見(jiàn)表3.1。表3.1DS1302的日歷、時(shí)鐘寄存器及其控制字寄存器命令字寫(xiě)操作讀操作取值范圍各位內(nèi)容76543210秒分時(shí)日月周年80H82H84H86H88H8AH8CH81H83H85H87H89H8BH8DH00~5900~5900~12/00~2300~28,29,30,3101~1201~0700~99CH10SEC010MIN12/24010HR0010DATE00010M000010YEARSECMINHRDATEMONTHDAYYEAR此外,DS1302還有年份寄存器、控制寄存器、充電寄存器、時(shí)鐘突發(fā)寄存器及與RAM相關(guān)的寄存器等。時(shí)鐘突發(fā)寄存器可一次性順序讀寫(xiě)除充電寄存器外的所有寄存器的內(nèi)容。DS1302與RAM相關(guān)的寄存器分為兩類(lèi):一類(lèi)是單個(gè)RAM單元,共31個(gè),每個(gè)單元組態(tài)為一個(gè)8位的字節(jié),其命令控制字為C0H~FDH,其中奇數(shù)為讀操作,偶數(shù)為寫(xiě)操作;在一類(lèi)為突發(fā)方式下的RAM寄存器,此方式下一次性讀寫(xiě)所有的RAM的31個(gè)字節(jié),命令控制字為FEH(寫(xiě))、FFH(讀)。3.2.4溫度傳感器電路設(shè)計(jì)在本設(shè)計(jì)中,PT100溫度模塊是用來(lái)檢測(cè)熱水器控制儀水箱中水的溫度,以確定是否需要輔助加熱器的加熱。此模塊包括兩部分:一部分是溫度信號(hào)調(diào)理電路部分,另一部分是A/D轉(zhuǎn)換部分。溫度信號(hào)調(diào)理電路溫度傳感器PT100,它是電阻信號(hào),必須進(jìn)行R-V變換,由PT100、R21、R22、R23構(gòu)成前端橋式電路,溫度的變化將使溫度傳感器阻值發(fā)生變化,從而使該電橋平衡遭到破壞,產(chǎn)生一個(gè)對(duì)外輸出電壓V0[11]。由于水箱內(nèi)的溫度控制在0~100℃,所以查表2.1可得溫度傳感器最高可能達(dá)到的阻值約為140歐姆,因此前端橋式電路的輸出V0的最大值約為:(1)為了保證其輸出信號(hào)與A/D轉(zhuǎn)換器的輸入信號(hào)要求相匹配,必須對(duì)此電壓值進(jìn)行調(diào)理放大。根據(jù)運(yùn)算放大器規(guī)則,若設(shè)圖3.6中運(yùn)算放大器的各引腳對(duì)地電壓分別用其引腳編號(hào)表示,則前端橋式電路的輸出V0可以表示為(2)圖3.6溫度信號(hào)調(diào)理電路對(duì)運(yùn)算放大器電路可以列寫(xiě)下述方程:(3)分析發(fā)現(xiàn),使式(3)中能夠利用式(2),則必須保證下式成立:(4)本設(shè)計(jì)中選取各電阻阻值滿(mǎn)足式(4)的要求,具體阻值在圖3.6中已經(jīng)標(biāo)出。此時(shí)將式(3)中兩個(gè)方程相減得到(5)則該運(yùn)算放大器電路對(duì)前端橋式電路的輸出電壓u0的的放大倍數(shù)為(6)因此溫度信號(hào)的最終輸出電壓范圍為(0~0.0375V)121即0~4.54V,在A/D轉(zhuǎn)換器所要求的輸入信號(hào)范圍0~5V之內(nèi)。電阻R24和電容C15構(gòu)成一階濾波電路;在運(yùn)算放大器的信號(hào)輸入端加電容,可以有效防止高頻干擾。A/D轉(zhuǎn)換電路ADC0832與單片機(jī)的接口應(yīng)為4條數(shù)據(jù)線(xiàn),分別是CS、CLK、DO、DI。如圖3.7所示。由于DO端與DI端在通信時(shí)并未同時(shí)有效并與單片機(jī)的接口是雙向的,所以將DO和DI并聯(lián)在一根數(shù)據(jù)線(xiàn)上與單片機(jī)P1.2相連。當(dāng)ADC0832未工作時(shí)其CS輸入端應(yīng)為高電平,此時(shí)芯片禁用,CLK和DO/DI的電平可任意。當(dāng)要進(jìn)行A/D轉(zhuǎn)換時(shí),須先將CS使能端置于低電平并且保持低電平直到轉(zhuǎn)換完全結(jié)束。此時(shí)芯片開(kāi)始轉(zhuǎn)換工作,同時(shí)由處理器向芯片時(shí)鐘輸入端CLK輸入時(shí)鐘脈沖,DO/DI端則使用DI端輸入通道功能選擇的數(shù)據(jù)信號(hào)。在第1個(gè)時(shí)鐘脈沖的下沉之前DI端必須是高電平,表示起始信號(hào)。在第2、3個(gè)脈沖下沉之前DI端應(yīng)輸入2位數(shù)據(jù)用于選擇通道功能。圖3.7ADC0832電路當(dāng)此2位數(shù)據(jù)為“1”、“0”時(shí),只對(duì)CH0進(jìn)行單通道轉(zhuǎn)換。當(dāng)2位數(shù)據(jù)為“1”、“1”時(shí),只對(duì)CH1進(jìn)行單通道轉(zhuǎn)換。當(dāng)2位數(shù)據(jù)為“0”、“0”時(shí),將CH0作為正輸入端IN+,CH1作為負(fù)輸入端IN-進(jìn)行輸入。當(dāng)2位數(shù)據(jù)為“0”、“1”時(shí),將CH0作為負(fù)輸入端IN-,CH1作為正輸入端IN+進(jìn)行輸入。到第3個(gè)脈沖的下沉之后DI端的輸入電平就失去輸入作用,此后DO/DI端則開(kāi)始利用數(shù)據(jù)輸出DO進(jìn)行轉(zhuǎn)換數(shù)據(jù)的讀取。從第4個(gè)脈沖下沉開(kāi)始由DO端輸出轉(zhuǎn)換數(shù)據(jù)最高位DATA7,隨后每一個(gè)脈沖下沉DO端輸出下個(gè)相反字節(jié)的數(shù)據(jù),即從第11個(gè)字節(jié)的下沉輸出DATA0。隨后輸出8位數(shù)據(jù),到第19個(gè)脈沖時(shí)數(shù)據(jù)輸出完成,也標(biāo)志著一次A/D轉(zhuǎn)換的結(jié)束。最后將CS置高電平禁用芯片,直接將轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行處理。得到的電壓數(shù)值轉(zhuǎn)換為溫度的相應(yīng)計(jì)算在軟件設(shè)計(jì)的溫度模塊程序設(shè)計(jì)4.2.4中說(shuō)明。3.2.5上水控制電路和輔助加熱電路設(shè)計(jì)1)上水控制電路太陽(yáng)能熱水器要具有自動(dòng)上水的功能。太陽(yáng)能熱水器開(kāi)始工作后,當(dāng)實(shí)際水位小于設(shè)定水位時(shí),則通過(guò)單片機(jī)控制冷水閥來(lái)向太陽(yáng)能熱水器水箱里加水直到達(dá)到設(shè)定值要求,通過(guò)單片機(jī)控制停止加水。當(dāng)水箱里的水溫超過(guò)設(shè)定水溫時(shí),單片機(jī)控制冷水水閥向水箱加水,同時(shí)通過(guò)溫度傳感器將水溫反饋給單片機(jī),直到水溫不大于設(shè)定溫度,停止加水;若水箱的水是滿(mǎn)的,也停止加水。2)輔助加熱電路太陽(yáng)能熱水器測(cè)控儀中的加熱模塊是控制器的從系統(tǒng),當(dāng)沒(méi)有太陽(yáng)能或者太陽(yáng)能的熱量達(dá)不到設(shè)定值的要求時(shí),則需要啟動(dòng)加熱模塊給水箱中的水加熱,以達(dá)到設(shè)定值要求。本設(shè)計(jì)采用220V的交流電,當(dāng)實(shí)際溫度小于設(shè)定溫度時(shí),單片機(jī)P0.7口發(fā)出一個(gè)高電平,使三極管Q1導(dǎo)通,同時(shí)電路導(dǎo)通,繼電器開(kāi)始工作,K1閉合,繼電器控制電熱絲加熱,使水箱中的溫度達(dá)到設(shè)定溫度,再通過(guò)單片機(jī)使P0.7為低電平,電路斷開(kāi),電路停止加熱??刂萍訜犭娐啡鐖D3.8所示。圖3.8控制加熱電路3.2.6顯示電路設(shè)計(jì)本系統(tǒng)中LCD1602液晶顯示模塊主要是用來(lái)顯示時(shí)鐘的時(shí)間,實(shí)際溫度及設(shè)定溫度,以及實(shí)際液位及設(shè)定液位,是操作人員可以直觀化的一個(gè)界面,同時(shí)也是為了配合按鍵設(shè)置,使輸入可視化。本系統(tǒng)采用LCD1602:VEE為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地時(shí)對(duì)比度最高。RS是讀寫(xiě)命令與數(shù)據(jù)控制端口,高電平讀數(shù)據(jù),低電平寫(xiě)命令。RW是讀寫(xiě)控制端口,高電平讀信號(hào),低電平寫(xiě)信號(hào);E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。數(shù)據(jù)端由P2提供實(shí)現(xiàn)8位并行通信,其數(shù)據(jù)交換的速率比較快。圖3.9為L(zhǎng)CD1602的顯示電路。圖3.9LCD1602顯示電路3.2.7按鍵接口電路設(shè)計(jì)本設(shè)計(jì)采用五個(gè)個(gè)按鍵,最佳的接口方案是獨(dú)立式接法,即每一個(gè)I/O口上只接一個(gè)按鍵,按鍵的另一端接地。按鍵分工,從上到下依次為1,、2、3、4、5號(hào)按鍵:1,2號(hào)按鍵為時(shí)鐘和分鐘的加減鍵;3,4號(hào)按鍵為溫度、液位和水箱高度的加減按鍵;5號(hào)按鍵是用來(lái)選擇溫度、液位和水箱高度的按鍵。如圖3.10所示。圖3.10按鍵電路獨(dú)立式鍵盤(pán)的實(shí)現(xiàn)方法是利用單片機(jī)I/O口讀取口的電平高低來(lái)判斷是否有鍵按下。電路中將按鍵的一端接地,另一端接一個(gè)I/O口,程序開(kāi)始時(shí)將此I/O口置于高電平,平時(shí)無(wú)按鍵按下時(shí)I/O口保護(hù)高電平。當(dāng)右鍵按下時(shí),此I/O口與地短路迫使I/O口為低電平。按鍵釋放后,與單片機(jī)連接的上位電阻使I/O口仍然保持高電平。系統(tǒng)所要做的就是在程序中查詢(xún)此I/O口的電平狀態(tài)就可以了解是否有按鍵動(dòng)作了。4軟件設(shè)計(jì)4.1KEILuVISION3軟件環(huán)境單片機(jī)開(kāi)發(fā)中除必要的硬件外,同樣離不開(kāi)軟件,本系統(tǒng)的軟件編程設(shè)計(jì)是在Keil軟件環(huán)境中完成。寫(xiě)的C語(yǔ)言、匯編語(yǔ)言源程序要變成CPU可以執(zhí)行的機(jī)器碼有兩種方法,一種是手工匯編,另一種是機(jī)器匯編,目前已極少使用手工匯編的方法了。機(jī)器匯編是通過(guò)匯編軟件將源程序變成機(jī)器碼,用于MCS-51單片機(jī)的匯編軟件有早期的A51,隨著單片機(jī)開(kāi)發(fā)軟件也在不斷發(fā)展,Keil軟件是目前最流行開(kāi)發(fā)51系列單片機(jī)的軟件,這從近年來(lái)各仿真機(jī)廠(chǎng)商紛紛宣布全面支持Keil即可看出。Keil提供了包括C編譯器、宏匯編、連接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開(kāi)發(fā)方案,通過(guò)一個(gè)集成開(kāi)發(fā)環(huán)境(uVision)將這些部分組合在一起。掌握這一軟件的使用對(duì)于使用51系列單片機(jī)的愛(ài)好者來(lái)說(shuō)是十分必要的,如果使用C語(yǔ)言編程,那么Keil幾乎就是不二之選。即使不使用C語(yǔ)言而僅用匯編語(yǔ)言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會(huì)令人事半功倍。KeilC51是美國(guó)KeilSoftware公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)上、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過(guò)匯編語(yǔ)言后再使用C來(lái)開(kāi)發(fā),體會(huì)更加深刻。KeilC51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開(kāi)發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到KeilC51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開(kāi)發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì)[12]。4.2程序設(shè)計(jì)4.2.1系統(tǒng)總流程圖系統(tǒng)的主要工作過(guò)程為:首先通過(guò)超聲波液位傳感器對(duì)太陽(yáng)能熱水器控制器中水箱的液位進(jìn)行檢測(cè),并將實(shí)時(shí)液位顯示出來(lái)。然后利用PT100溫度傳感器檢測(cè)水箱中液位的溫度,并將實(shí)時(shí)溫度在液晶屏上顯示出來(lái)。接著利用DS1302時(shí)鐘模塊顯示實(shí)時(shí)時(shí)間。再對(duì)系統(tǒng)預(yù)設(shè)所需的溫度。液位及水箱的高度并作出相應(yīng)的顯示:當(dāng)實(shí)時(shí)溫度小于設(shè)定溫度時(shí),利用輔助加熱電路對(duì)水箱中的水加熱,這里通過(guò)一個(gè)LED燈來(lái)表示開(kāi)啟加熱模塊;當(dāng)實(shí)時(shí)液位小于設(shè)定值時(shí),開(kāi)啟冷水閥開(kāi)關(guān)向水箱中加水,這里也通過(guò)一個(gè)LED等來(lái)表示開(kāi)啟冷水閥開(kāi)關(guān)。相應(yīng)的流程圖如圖4.1所示。圖4.1系統(tǒng)流程圖4.2.2超聲波模塊程序設(shè)計(jì)圖4.2超聲波模塊的流程圖超聲波測(cè)距儀模塊的流程圖如圖4.2所示。超聲波模塊工作時(shí):當(dāng)TX端口收到一個(gè)持續(xù)時(shí)間在10us以上的脈沖,超聲波模塊將發(fā)射一組特定超聲波,并RX置1超聲波遇到障礙物反射回來(lái),當(dāng)接收裝置收到反射回來(lái)的信號(hào),將RX置0。系統(tǒng)設(shè)計(jì)中將TX與RX分別與I/O口連接,用I/O口發(fā)送10us以上脈沖,同時(shí)將定時(shí)器打開(kāi),并開(kāi)始檢測(cè)RX,當(dāng)RX為0時(shí)停止計(jì)數(shù),取出計(jì)數(shù)值并計(jì)算距離。1)超聲波測(cè)距儀的算法設(shè)計(jì)超聲波測(cè)距的原理為超聲波發(fā)生器T在某一時(shí)刻發(fā)出一個(gè)超聲波信號(hào),當(dāng)這個(gè)超聲波遇到被測(cè)物體后反射回來(lái),就被超聲波接收器R所接收到。這樣只要計(jì)算出從發(fā)出超聲波信號(hào)到接收到返回信號(hào)所用的時(shí)間,就可算出超聲波發(fā)生器與反射物體的距離。距離的計(jì)算公式為:S=s/2=(c×t)/2其中,S為被測(cè)物與測(cè)距儀的距離,s為聲波的來(lái)回的路程,c為聲速(340m/s),t為聲波來(lái)回所用的時(shí)間。即:S=(time*1.7)/100,單位為cm。程序如下所示:unsignedlongS1;time=TH1*256+TL1;TH1=1;TL1=1;S=(time*1.7)/100;//算出來(lái)的是CM但是系統(tǒng)中顯示的是太陽(yáng)能熱水器水箱的液位高度,而不是超聲波到液位的高度S。將S的十位和個(gè)位放入緩沖區(qū)中,然后用S1表示超聲波到液位的高度。再用超聲波裝置高度減去超聲波到液位的高度,從而得到液位高度S1。程序如下所示:disbuff[1]=S%1000%100/10;//十位disbuff[2]=S%1000%10%10;//個(gè)位S1=disbuff[1]*10+disbuff[2];//S1為超聲波到液位的高度S1=sdata[2]-S1;//S1為液位高度disbuff[1]=S1/10;//十位disbuff[2]=S1%10;//個(gè)位if(S1<sdata[0])//液位高度小于設(shè)定高度SF=1;//LED燈亮elseSF=0;4.2.3時(shí)鐘模塊程序設(shè)計(jì)時(shí)鐘DS1302用于顯示實(shí)時(shí)時(shí)間。圖4.3為DS1302實(shí)時(shí)時(shí)鐘模塊的流程圖。DS1302內(nèi)部寄存器的定義直接影響著軟件的設(shè)計(jì),大概可分為時(shí)間控制寄存器和內(nèi)部RAM寄存器。其中[13]:圖4.3DS1302時(shí)鐘模塊流程圖(1)CH:時(shí)鐘停止位寄存器2的第7位12/24小時(shí)標(biāo)志。CH=0振蕩器工作允許bit7=1,12小時(shí)模式;CH=1振蕩器停止bit7=0,24小時(shí)模式。(2)WP:寫(xiě)保護(hù)位寄存器2的第5位:AM/PM定義。WP=0寄存器數(shù)據(jù)能夠?qū)懭階P=1下午模式;WP=1寄存器數(shù)據(jù)不能寫(xiě)入AP=0上午模式。(3)TCS:涓流充電選擇DS:二極管選擇位。TCS=1010使能涓流充電DS=01選擇一個(gè)二極管;TCS=其他禁止涓流充電DS=10選擇兩個(gè)二極管;DS=00或11,即使TCS=1010,充電功能也被禁止。(4)RS:涓流充電電阻選擇位。相應(yīng)的狀態(tài)標(biāo)志及含義如表4.1所示:表4.1RS狀態(tài)標(biāo)志及含義RS位電阻典型值00011011無(wú)R1R2R3無(wú)2KΩ4KΩ8KΩ由于DS1302數(shù)據(jù)傳輸方式為串行移位輸入輸出。地址、數(shù)據(jù)的寫(xiě)操作流程是相同的。地址沒(méi)有讀操作。無(wú)論是讀還是寫(xiě),二者結(jié)構(gòu)類(lèi)似。讀寫(xiě)的核心是產(chǎn)生SCLK移位信號(hào)與移位,讀操作是將數(shù)據(jù)從DS1302的I/O口移入單片機(jī),寫(xiě)操作是將數(shù)據(jù)從單片機(jī)移入時(shí)鐘芯片。最終處理的對(duì)象是時(shí)間數(shù)據(jù)或狀態(tài)數(shù)據(jù),在獲取數(shù)據(jù)時(shí),首先寫(xiě)入地址,然后讀取數(shù)據(jù);寫(xiě)入數(shù)據(jù)時(shí),先寫(xiě)入地址,在輸出數(shù)據(jù)。完成時(shí)間的模塊軟件設(shè)計(jì)。4.2.4溫度模塊程序設(shè)計(jì)本系統(tǒng)中溫度模塊的軟件部分主要涉及到的是ADC0832的電壓取值及轉(zhuǎn)化為相應(yīng)的溫度并顯示問(wèn)題。ADC0832的電壓范圍是0~5V,但是機(jī)器只能識(shí)別的是二進(jìn)制的數(shù)值,而ADC0832的精度為8位,所以軟件中應(yīng)該將將所讀到的電壓值除以28即256,又因?yàn)闇y(cè)量的水的溫度范圍是0~100度,所以再乘以100就得到了相應(yīng)的溫度值。當(dāng)設(shè)定的溫度大于實(shí)時(shí)溫度時(shí),輔助加熱開(kāi)啟,這里用燈亮來(lái)表示,即JR=1。相應(yīng)的程序如下所示。wendu=result(0x0d)*100.0/256;//實(shí)時(shí)溫度的計(jì)算if(wendu>99)wendu=99;elseif(wendu<0)wendu=0;if(sdata[1]>wendu)//設(shè)定溫度大于實(shí)時(shí)溫度JR=1;//LED燈亮elseJR=0;4.2.5液晶顯示模塊程序設(shè)計(jì)本系統(tǒng)中LCD1602是用于顯示相應(yīng)的溫度、液位及高度,當(dāng)然LCD1602顯示字符是有一定的步驟的,圖4.4為L(zhǎng)CD1602液晶顯示字符串的流程圖。圖4.4LCD1602液晶顯示字符串流程圖所謂的檢查L(zhǎng)CD忙狀態(tài),即當(dāng)lcd_busy為1時(shí),忙,等待。lcd-busy為0時(shí),閑,可寫(xiě)指令與數(shù)據(jù);寫(xiě)指令數(shù)據(jù)到LCD:RS=L,RW=L,E=高脈沖,D0-D7=指令碼;寫(xiě)顯示數(shù)據(jù)到LCD:RS=H,RW=L,E=高脈沖,D0-D7=數(shù)據(jù);設(shè)定顯示位置;LCD初始化設(shè)定。LCD1602初始化程序如下所示[14]。voidLCD_Init(void){LCD_Write_Com(0x38);//顯示模式設(shè)置DelayMs(5);LCD_Write_Com(0x38);DelayMs(5);LCD_Write_Com(0x38);DelayMs(5);LCD_Write_Com(0x38);LCD_Write_Com(0x08);//顯示關(guān)閉LCD_Write_Com(0x01);//顯示清屏DelayMs(5);}本設(shè)計(jì)中LCD顯示屏的作用是將太陽(yáng)能熱水器測(cè)控儀的時(shí)間、溫度及液位在LCD的兩行顯示出來(lái)。LCD的RAM地址映射圖如圖4.5所示:圖4.5RAM地址映射圖DS1302時(shí)鐘的時(shí)、分、秒在LCD1602的第一行顯示,各占了兩個(gè)字節(jié)。程序如下:LCD_Write_Char(0,0,shuzi[time_buf1[4]/10]);//顯示時(shí)LCD_Write_Char(1,0,shuzi[time_buf1[4]%10]);LCD_Write_Char(3,0,shuzi[time_buf1[5]/10]);//顯示分LCD_Write_Char(4,0,shuzi[time_buf1[5]%10]);LCD_Write_Char(6,0,shuzi[time_buf1[6]/10]);//顯示秒LCD_Write_Char(7,0,shuzi[time_buf1[6]%10]);}LCD1602顯示屏的第二行是液位高度和溫度的顯示。相應(yīng)的程序如下所示:setdata[0][0]=sdata[0]/10;setdata[0][1]=sdata[0]%10;setdata[1][0]=sdata[1]/10;setdata[1][1]=sdata[1]%10;setdata[2][0]=sdata[2]/10;setdata[2][1]=sdata[2]%10;LCD_Write_Char(3,1,shuzi[setdata[0][0]]);LCD_Write_Char(4,1,shuzi[setdata[0][1]]);//設(shè)定水位的顯示LCD_Write_Char(11,1,shuzi[setdata[1][0]]);LCD_Write_Char(12,1,shuzi[setdata[1][1]]);//設(shè)定溫度的顯示LCD_Write_Char(

溫馨提示

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

評(píng)論

0/150

提交評(píng)論