




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、摘 要太陽能是現(xiàn)在社會(huì)的綠色能源,人們利用太陽能可以節(jié)省好多的能源,所以要好好利用太陽能,發(fā)揮它應(yīng)有的作用。太陽能熱水器因利用太陽能、無污染、使用方便、長期使用投入費(fèi)用低等特點(diǎn)而倍受人們的青睞,得到很好的發(fā)展。本設(shè)計(jì)以單片機(jī)at89c52做為控制核心并協(xié)調(diào)整個(gè)系統(tǒng)的工作,通過數(shù)字溫度傳感器檢測當(dāng)前水的溫度,由于是數(shù)字信號(hào)就直接送入單片機(jī)at89c52內(nèi),通過單片機(jī)的處理在led數(shù)碼管上顯示當(dāng)前的溫度值。另外一路是在水箱中的水壓傳感器測水的壓力從而得到水位的高低,水壓傳感器輸出的是05v的模擬量,要經(jīng)過a/d轉(zhuǎn)換成為數(shù)字量再送入單片機(jī)at89c52進(jìn)行處理,在led數(shù)碼管上顯示水位值。按鍵用來設(shè)
2、定想要控制的溫度值,單片機(jī)在內(nèi)部通過比較設(shè)定的溫度和當(dāng)前溫度,當(dāng)前溫度不滿足設(shè)定溫度時(shí)就會(huì)閉合電磁開關(guān),開啟加熱裝置。滿足設(shè)定溫度時(shí)斷開開關(guān)停止加熱。自動(dòng)上水方面是設(shè)置水位的上限和下限,水位低于下限時(shí)就會(huì)閉合電磁開關(guān),開始上水,當(dāng)水位高于上線時(shí)就會(huì)自動(dòng)斷開電磁開關(guān),停止上水。溫度和水位值在時(shí)時(shí)檢測,達(dá)到控制目的。關(guān)鍵詞:太陽能熱水器;傳感器;控制器;單片機(jī)abstractnow,solar energy is a green resources, people use solar power can save a lot of energy, so make good use of solar
3、 energy, will play its proper role. solar water heater also due to use of solar energy, no pollution, easy to use, long-term use of inputs and low cost has attracted peoples favor, well developed.this design used at89c52 micro controller core as a control and coordinate the work of the entire system
4、, digital temperature sensor by detecting the current water temperature, because the number of digital signal directly into the mcu at89c52, through scm handle led digital tube displays the current temperature. another way is the pressure in the tank pressure sensor measuring the water level to get
5、the water level, water pressure sensor output is 0 5v for analog to go through a/d converted into digital and then processed into the mcu at89c52, in led digital tube display level value. button is used to set the desired temperature and micro controller internally by comparing the set temperature a
6、nd current temperature, current temperature is less than the set value will be closed when the electromagnetic switch, open the heating device. aspect automatically set the upper limit water level, water level less than the lower limit will be closed electromagnetic switch, will begin to water, the
7、water level reaches the line is automatically disconnected when the electromagnetic switch, stop watering . temperature and water values detect constantly to controlling purposes.key words: solar heater, sensor, control ,mcu目 錄摘 要iabstractii1 前言11.1 課題背景和意義11.2 本課題研究內(nèi)容與主要工作31.3 本課題的研究預(yù)期成果32 總體系統(tǒng)設(shè)計(jì)43
8、 總體硬件設(shè)計(jì)63.1 系統(tǒng)總體硬件框圖與工作原理63.2 溫度傳感器63.2.1 溫度傳感器ds18b2063.2.2 ds18b20的結(jié)構(gòu)83.3 水壓傳感器及a/d轉(zhuǎn)換93.3.1 水壓傳感器103.3.2 adc0832結(jié)構(gòu)及原理103.4 電磁開關(guān)(繼電器)電路及原理123.4.1 光電隔離器的原理133.4.2 電磁繼電器的原理143.4.3 上水控制的原理153.4.4 加熱控制的原理153.5 單片機(jī)控制系統(tǒng)163.6 led數(shù)碼管顯示電路173.7按鍵電路設(shè)計(jì)194 軟件設(shè)計(jì)方案214.1 ds18b20驅(qū)動(dòng)程序設(shè)計(jì)224.2串行ad轉(zhuǎn)換器adc0832程序設(shè)計(jì)234.3 按
9、鍵控制程序設(shè)計(jì)264.4 led數(shù)碼管顯示程序設(shè)計(jì)285 硬件電路仿真結(jié)果305.1 溫度仿真305.1.1 溫度顯示仿真305.1.2 溫度控制仿真315.2 水位仿真325.2.1 水位顯示仿真325.2.2 水位控制仿真335.3 仿真結(jié)果分析34致 謝35參 考 文 獻(xiàn)36附錄38附錄 系統(tǒng)總原理圖38附錄 系統(tǒng)源程序391 前言1.1 課題背景和意義目前,中國已成為世界上最大的太陽能熱水器生產(chǎn)國,年產(chǎn)量約為世界各國之和,已有一千多家太陽能熱水器生產(chǎn)廠。但是與之配套的太陽能熱水器控制器卻一直處在研究與開發(fā)階段,當(dāng)由于天氣原因而光強(qiáng)不足時(shí),就會(huì)給熱水器用戶帶來不便;即使熱水器具有輔助加熱
10、功能,由于加熱時(shí)間不能控制而產(chǎn)生過燒,從而浪費(fèi)大量的電能。溫度控制采用模糊控制,控制器可以根據(jù)天氣情況利用輔助加熱裝置使蓄水箱內(nèi)的水溫在設(shè)定時(shí)間達(dá)到預(yù)先設(shè)定的溫度,從而達(dá)到24小時(shí)供應(yīng)熱水的目的。太陽能熱水器是太陽能利用中最常見的一種裝置,經(jīng)濟(jì)效益明顯,正在迅速的推廣應(yīng)用,太陽能熱水器能夠?qū)⑻栞椛淠苻D(zhuǎn)換熱能,供生產(chǎn)和生活使用。他主要由平板集熱器、蓄水器和連接管道等部件組成,可分循環(huán)式、直流式和悶曬式。太陽能熱水器是環(huán)保、無污染,人們用著安全放心。利用太陽的能源,大量節(jié)約現(xiàn)有的能源,是以后能源發(fā)展的趨勢。原有的燃?xì)鉄崴骱碗姛崴麟m然加熱速度比較快,但是所用的煤和氣都會(huì)對(duì)環(huán)境造成一定的污染,而
11、且會(huì)使室內(nèi)的空氣變得不清新,電熱水器的功率較大,對(duì)長期使用的一般家庭來說必定會(huì)帶來一定的經(jīng)濟(jì)困難,是一筆相當(dāng)大的開銷。太陽能熱水器安全、環(huán)保、經(jīng)濟(jì),帶有輔助加熱功能的熱水器可在全年的任何時(shí)候使用,設(shè)計(jì)一個(gè)控制器來幫助人們了解水的溫度和熱水器中水位的高低,使人們清楚的使用。如今大多數(shù)的家庭太陽能都裝有水位監(jiān)測和水溫測量、顯示的功能,使用更加方便。近年來,利用太陽能和其它能源的結(jié)合,使得太陽能熱水器更加的完善,在任何天氣情況下都能使用到熱水。此款太陽能熱水器控制器設(shè)計(jì)包括主、從兩大系統(tǒng):主系統(tǒng)的特點(diǎn)是在晴好的天氣利用太陽光能為熱水器加熱;從系統(tǒng)相當(dāng)于電熱水器,它在無光照或者溫度低的情況下利用電輔助
12、加熱。它充分利用太陽能的豐富的免費(fèi)的資源的優(yōu)勢,同時(shí)考慮到在陰天及夜間如冬季無法利用太陽光弱的缺點(diǎn),充分發(fā)揮太陽能熱水器和電熱水器的各自優(yōu)勢,這是世面上大部分熱水器所不能比擬的。當(dāng)今社會(huì)發(fā)展日新月異,人們衣食住行也在不斷的提高?,F(xiàn)有電熱型熱水器費(fèi)用昂貴及燃?xì)庑偷牟话踩?,且排放二氧化碳污染大氣,北方用煤氣取暖造成城市空氣環(huán)境污染,這些都是太陽能熱水器良好的外部生存環(huán)境。太陽能熱水器克服了上述缺點(diǎn),他是綠色環(huán)保產(chǎn)品。它使用簡單、方便。太陽能熱水器順著時(shí)代發(fā)展的要求,滿足人們對(duì)環(huán)保綠色產(chǎn)品的需求。在人類文明程度日益提高的今天,它是現(xiàn)代文明社會(huì)的最佳選擇。應(yīng)該注意到,集體單位對(duì)太陽能熱水器的用量很大
13、。眾所周知,太陽能是取之不盡,用之不竭,沒有污染的巨大能源。隨著世界上煤、石油、天然氣的存儲(chǔ)量日益減少,能源危機(jī)已日益增長,環(huán)境污染的危機(jī)已威脅著生態(tài)平衡,太陽能開發(fā)利用的課題已提到人類的面前。有人預(yù)測:二十一世紀(jì)太陽能將由輔助能源上升為主要能源。但由于太陽能的分散性、季節(jié)性和地區(qū)性又給太陽能利用帶來重重困難,有些技術(shù)難點(diǎn)尚未突破,產(chǎn)品造價(jià)偏高,因而尚未被人們大規(guī)模使用。在太陽能熱利用技術(shù)中,太陽能熱水器是技術(shù)上比較成熟、造價(jià)比較低廉的產(chǎn)品,同時(shí)給人民提供低耗能源、保護(hù)環(huán)境、絕對(duì)安全的熱水而受到人們的歡迎。世界各國的太陽能熱水器生產(chǎn)發(fā)展也很快。例如:澳大利亞政府規(guī)定,在北部地區(qū)新建房屋一定要設(shè)
14、置太陽能熱水器,已經(jīng)有絕大部分新住宅安裝了太陽能熱水器。日本現(xiàn)在每年安裝大量太陽能熱水器,計(jì)劃今后普及率更高。有些國家法令規(guī)定所有新建筑物必須配備太陽能熱水器。太陽能熱水器的推廣應(yīng)用及經(jīng)濟(jì)效益很巨大,所以該控制器具有使用方便、性價(jià)比高、工作可靠、精度高等特點(diǎn),為太陽能熱水器的進(jìn)一步推廣具有積極的推動(dòng)作用。1.2 本課題研究內(nèi)容與主要工作本設(shè)計(jì)主要利用單片機(jī)為核心,選擇適當(dāng)?shù)膫鞲衅髯鳛樾盘?hào)的采集來源,溫度傳感器選擇數(shù)字式的ds18b20。水位信號(hào)的檢測選擇ptj204/205/206/207壓力傳感器,將檢測的模擬信號(hào)經(jīng)過a/d轉(zhuǎn)換后送入單片機(jī)處理。通過led數(shù)碼管來顯示溫度和水位。要經(jīng)過幾部分
15、的設(shè)計(jì)來完成:(a)led數(shù)碼管顯示部分設(shè)計(jì) (b)a/d轉(zhuǎn)換部分設(shè)計(jì)(c)溫度采集部分設(shè)計(jì)(d)控制加熱和上水電路設(shè)計(jì)從系統(tǒng)需要和研究內(nèi)容可以看出,本設(shè)計(jì)需要做的主要工作有:查閱相關(guān)資料,了解各部分功能原理。查閱元器件資料,掌握器件工作原理和硬件實(shí)現(xiàn)方法。利用電腦仿真,對(duì)設(shè)計(jì)的電路進(jìn)行模擬檢測。1.3 本課題的研究預(yù)期成果設(shè)計(jì)出太陽能熱水器控制器,編寫出程序,調(diào)試成功,并在硬件電路上進(jìn)行仿真達(dá)到預(yù)期的目的,完成設(shè)計(jì)任務(wù)。 2 總體系統(tǒng)設(shè)計(jì)總體設(shè)計(jì)之前,根據(jù)該系統(tǒng)所要達(dá)到的功能,選擇適當(dāng)?shù)脑骷秃线m的芯片來設(shè)計(jì)系統(tǒng),了解各器件的原理和功能。太陽能熱水器控制器設(shè)計(jì),就要有溫度采集器件,根據(jù)相關(guān)
16、參數(shù)范圍選擇了ds18b20數(shù)字溫度傳感器,采集到的數(shù)據(jù)為數(shù)字量,可以直接送入單片機(jī)處理,電路簡單,數(shù)字溫度傳感器比模擬溫度傳感器測量結(jié)果精確。要顯示水位量就要有單片機(jī)能處理的水位量,這個(gè)量就要由傳感器來測量,這里的水位檢測傳感器選擇模擬的傳感器,模擬量不能直接進(jìn)入單片機(jī)進(jìn)行處理,要變成二進(jìn)制的數(shù)字量才能送入單片機(jī)進(jìn)行處理,這就要進(jìn)行a/d轉(zhuǎn)換,把采集到的水位信號(hào)轉(zhuǎn)換成為數(shù)字量。a/d轉(zhuǎn)換的器件選擇為adc0832轉(zhuǎn)換芯片,它是一個(gè)兩路模擬量輸入,轉(zhuǎn)換完的數(shù)字量串行輸出,adc0832轉(zhuǎn)換芯片引腳少,能達(dá)到相同的功能,而且電路簡單,方便。顯示所測量的結(jié)果要用到led數(shù)碼管,用led數(shù)碼管來顯示
17、結(jié)果比較清楚,防水和磨損,是比較好的顯示方式。要實(shí)現(xiàn)溫度穩(wěn)定控制,就需要設(shè)定溫度的標(biāo)準(zhǔn)量,是和當(dāng)前水的溫度進(jìn)行比較的,看當(dāng)前水的溫度有沒有達(dá)到或者大于標(biāo)準(zhǔn)的溫度,然后加以控制,要設(shè)置給定的溫度就要有輸入裝置,采用簡單的按鍵作為輸入是很簡便的,不會(huì)帶來復(fù)雜的問題??刂蒲b置要采用電磁開關(guān)控制,這樣就不用人為的操作,電磁開關(guān)在閉合或打開的時(shí)候在電磁線圈上會(huì)產(chǎn)生電流,為了防止這樣的電流對(duì)前面的電路產(chǎn)生不良效果,與線圈并聯(lián)一個(gè)二極管,利用二極管的單項(xiàng)導(dǎo)通性就能阻止電流流回電路,保證電路的安全。為了保證單片機(jī)輸出的控制信號(hào)穩(wěn)定而且有足夠大的電流,在單片機(jī)輸出信號(hào)后加上正向驅(qū)動(dòng)器來增大信號(hào)強(qiáng)度,再在電磁開關(guān)
18、之前加上光電隔離,會(huì)阻隔掉不必要的干擾,通過光電隔離的電壓信號(hào)是穩(wěn)定的,這樣的控制系統(tǒng)才能穩(wěn)定可靠的工作。圖3-1 系統(tǒng)總體硬件框圖3 總體硬件設(shè)計(jì)3.1 系統(tǒng)總體硬件框圖與工作原理經(jīng)過對(duì)所要設(shè)計(jì)的控制系統(tǒng)的功能要求進(jìn)行分析,可以得道系統(tǒng)的總體硬件設(shè)計(jì)框圖,如圖3-1所示。由系統(tǒng)的總框圖可以看出該系統(tǒng)的工作原理為:單片機(jī)at89c52作為控制核心并協(xié)調(diào)整個(gè)系統(tǒng)的工作,通過數(shù)字溫度傳感器檢測當(dāng)前水的溫度,由于數(shù)數(shù)字信號(hào)就直接送入單片機(jī)at89c52內(nèi),通過單片機(jī)的處理在led數(shù)碼管上顯示當(dāng)前的溫度值。另外一路是在水箱中的水壓傳感器測水的壓力從而得到水位的高低,水壓傳感器輸出的是05v的模擬量,要
19、經(jīng)過a/d轉(zhuǎn)換成為數(shù)字量再送入單片機(jī)at89c52進(jìn)行處理,在led數(shù)碼管上顯示水位值。按鍵用來設(shè)定想要的溫度值,單片機(jī)在內(nèi)部通過比較設(shè)定的溫度和當(dāng)前溫度,當(dāng)前溫度小于設(shè)定值時(shí)就會(huì)閉合電磁開關(guān),開啟加熱裝置。自動(dòng)上水方面是設(shè)置水位的上下限,水位小于下限時(shí)就會(huì)閉合電磁開關(guān),就會(huì)開始上水,水位到達(dá)上線時(shí)就會(huì)自動(dòng)斷開電磁開關(guān),停止上水。溫度和水位值在時(shí)時(shí)檢測,達(dá)到控制目的。3.2 溫度傳感器3.2.1 溫度傳感器ds18b20溫度傳感器選擇ds18b20數(shù)字溫度計(jì),它以9位數(shù)字量的形式反映器件的溫度值。ds1820通過一個(gè)單線接口發(fā)送或接收信息,因此在中央微處理器和ds18b20之間僅需一條連接線(
20、加上地線)。用于讀寫和溫度轉(zhuǎn)換的電源可以從數(shù)據(jù)線本身獲得,無需外部電源。因?yàn)槊總€(gè)ds18b20都有一個(gè)獨(dú)特的片序列號(hào),所以多只ds18b20可以同時(shí)連在一根單線總線上,這樣就可以把溫度傳感器放在許多不同的地方。這一特性在hvac環(huán)境控制、探測建筑物、儀器或機(jī)器的溫度以及過程監(jiān)測和控制等方面非常有用。圖3-2 ds18b20引腳排列與封裝形式表3-1 ds18b20引腳說明引腳符號(hào)說明1gnd接地2dq數(shù)據(jù)輸入/輸出腳。對(duì)于單線操作:漏極開路3vdd可選的vdd引腳。ds18b20雖然具有測溫系統(tǒng)簡單、測溫精度高、連接方便、占用口少等優(yōu)點(diǎn),但在實(shí)際應(yīng)用中也應(yīng)注意一下問題:(a)較小的硬件開銷需要
21、相對(duì)復(fù)雜的軟件進(jìn)行連接補(bǔ)償,ds18b20與微處理器間采用穿行數(shù)據(jù)傳送,編程時(shí)要嚴(yán)格保證讀寫時(shí)序,否則將無法讀取測溫結(jié)果。(b)連接ds18b20的總線電纜長度是有長度限制的。當(dāng)采用普通信號(hào)電纜傳輸長度不能超過50m,采用雙絞線帶屏蔽電纜時(shí)可達(dá)到150m。(c)在ds18b20測溫程序中,向ds18b20發(fā)出溫度轉(zhuǎn)換命令后,程序總要等待ds18b20的返回信號(hào),要保持接觸良好,否則會(huì)進(jìn)入死循環(huán)。ds18b20的特性:(a)獨(dú)特的單總線接口方式。ds18b20在i/o處理器連接時(shí),僅需要一個(gè)i/o口即可實(shí)現(xiàn)微處理器同ds18b20的雙向通訊。(b)ds18b20支持組網(wǎng)功能,多個(gè)ds18b20多
22、個(gè)ds18b20可以并聯(lián)在唯一的單線上,實(shí)現(xiàn)多點(diǎn)測溫。(c)ds18b20的測溫范圍為:55125,在1085時(shí),其精度為0.15。(d)ds18b20的測量結(jié)果的數(shù)字量位數(shù)從912位,可編程進(jìn)行選擇。(e)ds18b20內(nèi)部寄生電源,器件既可以由單線總線供電,也可以用外部電源供電。ds18b290測溫原理:ds18b20測量溫度采用了特有的溫度測量技術(shù),它是通過計(jì)數(shù)時(shí)鐘周期來實(shí)現(xiàn)的,內(nèi)部計(jì)數(shù)器對(duì)一個(gè)受溫度影響的振蕩器的脈沖計(jì)數(shù),低溫時(shí),振蕩器的脈沖無法通過門電路。計(jì)數(shù)器設(shè)置為55。同時(shí),計(jì)數(shù)器復(fù)位在當(dāng)前的溫度值時(shí),電路對(duì)振蕩器的溫度系數(shù)進(jìn)行補(bǔ)償,計(jì)數(shù)器重新開始計(jì)數(shù)直到回零。如果門電路仍未關(guān)閉
23、,則系統(tǒng)重復(fù)上述過程。3.2.2 ds18b20的結(jié)構(gòu)ds18b20有三個(gè)主要數(shù)字部件:1. 64位激光rom,2. 溫度傳感器,3. 非易失性溫度報(bào)警觸發(fā)器th和tl。器件用如下方式從單線通訊線上汲取能量:在信號(hào)線處于高電平期間把能量儲(chǔ)存在內(nèi)部電容里,在信號(hào)線處于低電平期間消耗電容上的電能工作,直到高電平到來再給寄生電源(電容)充電。ds18b20也可用外部5v電源供電。圖3-3 ds18b20的內(nèi)部結(jié)構(gòu)ds18b20單純通信功能是分時(shí)完成的。單線信號(hào)包括復(fù)位脈沖,響應(yīng)脈沖,寫“0”,寫“1”,讀“1”。它們有嚴(yán)格的時(shí)隙概念。系統(tǒng)對(duì)ds18b20的操作以rom命令(5個(gè))和存儲(chǔ)器命令(6個(gè))
24、形式出現(xiàn)。對(duì)它的操作協(xié)議是:初始化ds18b20發(fā)復(fù)位脈沖發(fā)rom功能命令處理數(shù)據(jù)發(fā)存儲(chǔ)器命令處理數(shù)據(jù),各種操作都有相應(yīng)的時(shí)序圖2。ds18b20在使用時(shí),一般都采用單片機(jī)來實(shí)現(xiàn)數(shù)據(jù)采集。只需將ds18b20信號(hào)線與單片機(jī)1位i/o線相連,且單片機(jī)的1位i/o線可掛接多個(gè)ds18b20,就可實(shí)現(xiàn)單點(diǎn)或多點(diǎn)溫度測量。ds18b20傳感器的精度高、互換性好;它直接將溫度數(shù)據(jù)進(jìn)行編碼,可以只使用一根電纜傳輸溫度數(shù)據(jù),通信方便,傳輸距離遠(yuǎn)且抗干擾性好,與用傳統(tǒng)的溫度傳感器系統(tǒng)相比系統(tǒng)得以簡化。系統(tǒng)擴(kuò)充維護(hù)十分方便。3.3 水壓傳感器及a/d轉(zhuǎn)換選用ptj204/205/206/207水壓傳感器,水位傳
25、感器輸出的信號(hào)為模擬信號(hào),由于輸出量微弱,要經(jīng)過放大器的放大轉(zhuǎn)化為05v的電壓信號(hào),才能送入adc0832中進(jìn)行轉(zhuǎn)換,輸出為串行數(shù)字?jǐn)?shù)據(jù),送入單片機(jī)at89c52處理。傳感器和ad轉(zhuǎn)換原理圖如下圖34所示:圖3-4 模擬量輸入及ad轉(zhuǎn)換電路結(jié)構(gòu)3.3.1 水壓傳感器水壓傳感器是由一種檢測裝置,能感受到被測量的信息,并能將檢測感受到的信息,按一定規(guī)律變換成為電信號(hào)或其他所需形式的信息輸出,以滿足信息的傳輸、處理、存儲(chǔ)、顯示、記錄和控制等要求。它是實(shí)現(xiàn)自動(dòng)化檢測和控制的首要環(huán)節(jié)。 力學(xué)傳感器的種類繁多,如電阻應(yīng)變片壓力傳感器、半導(dǎo)體應(yīng)變片壓力傳感器、電感式壓力傳感器、壓阻式壓力傳感器、電容式壓力傳
26、感器、諧振式壓力傳感器及電容式加速度傳感器等。但應(yīng)用最為廣泛的是壓阻式壓力傳感器,它具有極低的價(jià)格和較高的精度以及較好的線性特性。在水箱的最底部安裝壓力傳感器,水位的不同,傳感器檢測到的壓力值就不同,采集到的模擬量信號(hào)經(jīng)過處理和計(jì)算,就能換算成水位的高低,經(jīng)過單片機(jī)顯示。3.3.2 adc0832結(jié)構(gòu)及原理 圖3-5adc0832芯片引腳圖 芯片各引腳說明:1) cs_ 片選使能,低電平芯片使能。2) ch0 模擬輸入通道0,或作為in+/-使用。3) ch1 模擬輸入通道1,或作為in+/-使用。4) gnd 芯片參考0 電位(地)。5) di 數(shù)據(jù)信號(hào)輸入,選擇通道控制。6) do 數(shù)據(jù)信
27、號(hào)輸出,轉(zhuǎn)換數(shù)據(jù)輸出。7) clk 芯片時(shí)鐘輸入。8) vcc/ref 電源輸入及參考電壓輸入(復(fù)用)。adc0832 為8位分辨率a/d轉(zhuǎn)換芯片,其最高分辨可達(dá)256級(jí),可以適應(yīng)一般的模擬量轉(zhuǎn)換要求。其內(nèi)部電源輸入與參考電壓的復(fù)用,使得芯片的模擬電壓輸入在05v之間。芯片轉(zhuǎn)換時(shí)間僅為32s,據(jù)有雙數(shù)據(jù)輸出可作為數(shù)據(jù)校驗(yàn),以減少數(shù)據(jù)誤差,轉(zhuǎn)換速度快且穩(wěn)定性能強(qiáng)。獨(dú)立的芯片使能輸入,使多器件掛接和處理器控制變的更加方便。通過di 數(shù)據(jù)輸入端,可以輕易的實(shí)現(xiàn)通道功能的選擇。單片機(jī)對(duì)adc0832 的控制原理:正常情況下adc0832與單片機(jī)的接口應(yīng)為4條數(shù)據(jù)線,分別是cs、clk、do、di。但由
28、于do端與di端在通信時(shí)并未同時(shí)有效并與單片機(jī)的接口是雙向的,所以電路設(shè)計(jì)時(shí)可以將do和di并聯(lián)在一根數(shù)據(jù)線上使用。當(dāng)adc0832沒有工作時(shí)其cs輸入端為高電平,此時(shí)芯片禁用,clk和do/di的電平可任意。當(dāng)要進(jìn)行a/d轉(zhuǎn)換時(shí),須先將cs使能端為低電平并且保持低電平直到轉(zhuǎn)換完全結(jié)束。此時(shí)芯片開始轉(zhuǎn)換工作,同時(shí)由處理器向芯片時(shí)鐘輸入端clk輸入時(shí)鐘脈沖,do/di端則使用di端輸入通道功能選擇的數(shù)據(jù)信號(hào)。在第1個(gè)時(shí)鐘脈沖的下沉之前di端必為高電平,表示啟始信號(hào)。在第2、3個(gè)脈沖下沉之前di端輸入2 位數(shù)據(jù)用于選擇通道功能,當(dāng)此2 位數(shù)據(jù)為“1” 、“0”時(shí),只對(duì)ch0 進(jìn)行單通道轉(zhuǎn)換。當(dāng)2位
29、數(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端則開始利用數(shù)據(jù)輸出do進(jìn)行轉(zhuǎn)換數(shù)據(jù)的讀取。從第4個(gè)脈沖下沉開始由do端輸出轉(zhuǎn)換數(shù)據(jù)最高位data7,隨后每一個(gè)脈沖下沉do端輸出下一位數(shù)據(jù)。直到第11個(gè)脈沖時(shí)發(fā)出最低位數(shù)據(jù)data0,一個(gè)字節(jié)的數(shù)據(jù)輸出完成。也正是從此位開始輸出下一個(gè)相反字節(jié)的數(shù)據(jù),即從第11個(gè)字節(jié)的下沉輸出data0。
30、隨后輸出8位數(shù)據(jù),到第19個(gè)脈沖數(shù)據(jù)輸出完成,也標(biāo)志著一次a/d轉(zhuǎn)換的結(jié)束。最后將cs置高電平禁用芯片,直接將轉(zhuǎn)換后的數(shù)據(jù)進(jìn)行處理就可以了。3.4 電磁開關(guān)(繼電器)電路及原理 要實(shí)現(xiàn)自動(dòng)控制,就要有能自動(dòng)閉合的開關(guān),這里用到的是電磁開關(guān)(繼電器),繼電器上有電流時(shí),由于電磁感應(yīng)就會(huì)在鐵心上產(chǎn)生磁性,將開關(guān)彈片吸引,使外部電路導(dǎo)通。為了在電磁繼電器上有穩(wěn)定的電流流過,前端就要有相應(yīng)的控制元器件,我選擇的是光電隔離器件,隔離掉了不穩(wěn)定的因素。使光電隔離前端的發(fā)光穩(wěn)定,信號(hào)的前端還需要驅(qū)動(dòng),提供穩(wěn)定的信號(hào)電流。只有發(fā)光部分的穩(wěn)定,后面的信號(hào)才能得到穩(wěn)定輸出??刂萍訜嵫b置和上水裝置的電路如圖36所示
31、??刂齐娐饭ぷ髟恚簡纹瑱C(jī)根據(jù)處理的結(jié)果,從控制端口輸出低電平控制信號(hào),通過正向驅(qū)動(dòng)器,得到穩(wěn)定的信號(hào),使得光電隔離前端的發(fā)光二極發(fā)光,電路接通,后續(xù)電路工作,輸出電壓經(jīng)分壓,三極管導(dǎo)通,電磁繼電器工作,彈片向下吸引,開關(guān)閉合,后面的電路開始工作。圖3-6 電磁開關(guān)控制電路3.4.1 光電隔離器的原理光電隔離器(optical coupler,英文縮寫為oc)亦稱光耦合器,簡稱光耦。光耦合器以光為媒介傳輸電信號(hào)。它對(duì)輸入、輸出電信號(hào)有良好的隔離作用,所以,它在各種電路中得到廣泛的應(yīng)用。目前它已成為種類最多、用途最廣的光電器件之一。光耦合器一般由三部分組成:光的發(fā)射、光的接收及信號(hào)放大。輸入的電
32、信號(hào)驅(qū)動(dòng)發(fā)光二極管(led),使之發(fā)出一定波長的光,被光探測器接收而產(chǎn)生光電流,再經(jīng)過進(jìn)一步放大后輸出。這就完成了電到光再到電的轉(zhuǎn)換,從而起到輸入、輸出、隔離的作用。在發(fā)光二極管上提供一個(gè)偏置電流,再把信號(hào)電壓通過電阻耦合到發(fā)光二極管上,這樣光電晶體管接收到的是在偏置電流上增、減變化的光信號(hào),其輸出電流將隨輸入的信號(hào)電壓作線性變化。光電耦合器也可工作于開關(guān)狀態(tài),傳輸脈沖信號(hào)。在傳輸脈沖信號(hào)時(shí),輸入信號(hào)和輸出信號(hào)之間存在一定的延遲時(shí)間,不同結(jié)構(gòu)的光電耦合器輸入、輸出延遲時(shí)間相差很大。由于光耦合器輸入輸出間互相隔離,電信號(hào)傳輸具有單向性等特點(diǎn),因而具有良好的電絕緣能力和抗干擾能力。又由于光耦合器的
33、輸入端是電流型工作的低阻元件,因而具有很強(qiáng)的共模抑制能力。所以,它在長線傳輸信息中作為終端隔離元件可以大大提高信噪比。在計(jì)算機(jī)數(shù)字通信及實(shí)時(shí)控制中作為信號(hào)隔離的接口器件,可以大大增加計(jì)算機(jī)工作的可靠性。光耦合器的主要優(yōu)點(diǎn)是:信號(hào)單向傳輸,輸入端與輸出端完全實(shí)現(xiàn)了電氣隔離,輸出信號(hào)對(duì)輸入端無影響,抗干擾能力強(qiáng),工作穩(wěn)定,無觸點(diǎn),使用壽命長,傳輸效率高。電耦合器之所以在傳輸信號(hào)的同時(shí)能有效地抑制尖脈沖和各種干擾,使通道上的信號(hào)穩(wěn)定性大為提高,主要有以下幾方面的原因:(1)光電耦合器的輸入阻抗很小,只有幾百歐姆,而干擾源的阻抗較大,通常為105106。據(jù)分壓原理可知,即使干擾電壓的幅度較大,但饋送到
34、光電耦合器輸入端的干擾電壓會(huì)很小,只能形成很微弱的電流,由于沒有足夠的能量而不能使二極體發(fā)光,從而被抑制掉了。(2)光電耦合器的輸入回路與輸出回路之間沒有電氣聯(lián)系,也沒有共地;之間的分布電容極小,而絕緣電阻又很大,因此回路一邊的各種干擾都很難通過光電耦合器饋送到另一邊去,避免了共阻抗耦合的干擾信號(hào)的產(chǎn)生。(3)光電耦合器可起到很好的安全保障作用,即使當(dāng)外部設(shè)備出現(xiàn)故障,甚至輸入信號(hào)線短接時(shí),也不會(huì)損壞儀表。因?yàn)楣怦詈掀骷妮斎牖芈泛洼敵龌芈分g可以承受幾千伏的高壓。3.4.2 電磁繼電器的原理繼電器是一種電子控制器件,它具有控制系統(tǒng)(又稱輸入回路)和被控制系統(tǒng)(又稱輸出回路),通常應(yīng)用于自動(dòng)控
35、制電路中,它實(shí)際上是用較小的電流去控制較大電流的一種“自動(dòng)開關(guān)”。故在電路中起著自動(dòng)調(diào)節(jié)、安全保護(hù)、轉(zhuǎn)換電路等作用。電磁式繼電器一般由鐵芯、線圈、銜鐵、觸點(diǎn)簧片等組成的。電磁繼電器的工作原理并不復(fù)雜,它主要是利用電磁感應(yīng)原理而工作的。當(dāng)線圈通以電流時(shí),線圈便產(chǎn)生磁場,線圈中間的鐵心被磁化產(chǎn)生磁力.從而使銜鐵在電磁吸力的作用下吸向鐵心,此時(shí)銜鐵帶動(dòng)支桿將板簧推開,使兩個(gè)常閉的觸點(diǎn)斷開。當(dāng)斷開繼電器線圈的電流時(shí),鐵心便失去磁性,銜鐵在板簧的作用下恢復(fù)初始狀態(tài),觸點(diǎn)則又閉合。觸點(diǎn)的形式一般分為三種:一種是繼電器線圈未通電時(shí)處于接通狀態(tài)的靜觸點(diǎn),為常閉觸點(diǎn)。二種是處于斷開狀態(tài)的靜觸點(diǎn),稱為常開觸點(diǎn),還
36、有一種是一個(gè)動(dòng)觸點(diǎn)與一個(gè)靜觸點(diǎn)常閉,而同時(shí)與一個(gè)靜觸點(diǎn)常開,形成一開一閉的轉(zhuǎn)換觸點(diǎn)形式。常閉觸點(diǎn)在線圈通電時(shí)由閉合狀態(tài)斷開,所以又稱為動(dòng)斷觸點(diǎn),而把常開觸點(diǎn)稱為動(dòng)合觸點(diǎn)轉(zhuǎn)換觸點(diǎn)有兩種情況,即先合后斷的轉(zhuǎn)換觸點(diǎn)和先斷后合的轉(zhuǎn)換觸點(diǎn)6。先了解必要的條件:(1)控制電路的電源電壓,能提供的最大電流;(2)被控制電路中的電壓和電流;(3)被控電路需要幾組、什么形式的觸點(diǎn)。選用繼電器時(shí),一般控制電路的電源電壓可作為選用的依據(jù)??刂齐娐窇?yīng)能給繼電器提供足夠的工作電流,否則繼電器吸合是不穩(wěn)定的。3.4.3 上水控制的原理供水時(shí),單片機(jī)控制電磁閥通電,水位不斷上升,滑竿在浮球的的帶動(dòng)下沿套管上升,當(dāng)滑竿上升到
37、頂位時(shí),則使接觸開關(guān)斷電,讓電磁閥關(guān)閉水源。當(dāng)水位處于上限與下限之間時(shí),此時(shí)單片機(jī)控制電磁閥通斷電,無論電磁閥是在通電供水,水位不斷上升或者電磁閥沒有工作,水位不斷下降,都應(yīng)維持原有的狀態(tài)。當(dāng)水位處于下限位置時(shí),水箱內(nèi)無水時(shí),需要供水,滑竿落到箱底,滑竿在水箱外的一端與接觸開關(guān)接觸得電,使電磁閥導(dǎo)通進(jìn)水。3.4.4 加熱控制的原理 太陽能熱水器的吸熱時(shí),太陽輻射透過真空管的外管,被集熱鍍膜吸收后沿內(nèi)管壁傳遞到管內(nèi)的水,管內(nèi)的水吸熱后溫度升高,比重減小而上升,形成一個(gè)向上的動(dòng)力,構(gòu)成一個(gè)集熱系統(tǒng)。隨著熱水的不斷上移并儲(chǔ)存在儲(chǔ)水箱上部,同時(shí)溫度較低的水沿管的另一側(cè)不斷補(bǔ)充如此循環(huán)往復(fù),最終整箱水都
38、升高至一定的溫度。 集熱系統(tǒng)吸收太陽能輻射后,集熱管溫度上升,當(dāng)集熱器溫度和水箱溫度水溫達(dá)到設(shè)定值時(shí),檢測系統(tǒng)發(fā)出指令,循環(huán)泵將中央熱水器中的冷水輸入集熱器中,水被加熱后再回到水箱中,使水箱內(nèi)的水達(dá)到設(shè)定的溫度。 3.5 單片機(jī)控制系統(tǒng) 單片機(jī)系統(tǒng)有基本的時(shí)鐘電路和復(fù)位電路,單片機(jī)的頻率一般為11.0592m,復(fù)位電路有手動(dòng)和上電自動(dòng)復(fù)位電路,rst復(fù)位信號(hào)復(fù)位端,當(dāng)此引腳保持兩個(gè)機(jī)器周期的高電平時(shí),就可以完成復(fù)位操作。復(fù)位電路如圖: 圖3-7手動(dòng)復(fù)位電路 圖3-8自動(dòng)復(fù)位電路單片機(jī)的時(shí)鐘信號(hào)是由外部接的晶振產(chǎn)生,晶振的連接電路如圖:圖3-9單片機(jī)晶振電路單片機(jī)芯片上集成了各種功能部件:中央處
39、理器(cpu)、隨機(jī)存取存儲(chǔ)器(ram)、只讀存儲(chǔ)器(rom)、定時(shí)/計(jì)數(shù)器、和各種輸入/輸出(i/o)接口等。它們之間相互連接,構(gòu)成一個(gè)完整的單片機(jī)。at89c52單片機(jī)采用40引腳的雙列直插封裝(dip方式),在單片機(jī)的40條引腳中有2條專用于主電源的引腳,2條外接晶體振蕩的引腳,4條控制與其它電源復(fù)用的引腳,32條輸入/輸出(i/o)引腳7。at89c52單片機(jī)是一種低功耗高性能的coms8位微控制器,內(nèi)置8kb可在線編程閃存。該器件采用atmel公司的高密度非易失性存儲(chǔ)技術(shù)生產(chǎn),其指令與工業(yè)標(biāo)準(zhǔn)的at80c51指令集兼容。片內(nèi)程序存儲(chǔ)器允許重復(fù)在線編程,允許程序存儲(chǔ)器在系統(tǒng)內(nèi)通過spi
40、串行口改寫或通同用的非易失性存儲(chǔ)器改寫。通過把通過的8位cpu與可在線下載的flash集成在一個(gè)芯片上,at89c52便成為一個(gè)高效的微型計(jì)算機(jī)。它的應(yīng)用范圍廣,可用于解決復(fù)雜的控制問題,且成本較低。at89c52的主要特性有:兼容mcs51產(chǎn)品,8k字節(jié)可擦寫1000次的在線可編程isp閃存,3級(jí)程序存儲(chǔ)加密,256字節(jié)內(nèi)部ram,3個(gè)16位定時(shí)/計(jì)數(shù)器,8個(gè)中斷源,低功耗空閑方式和掉電方式,看門狗定時(shí)器,雙數(shù)據(jù)指針,靈活的在線編程。其芯片引腳如圖310所示:圖3-10單片機(jī)芯片封裝引腳3.6 led數(shù)碼管顯示電路7段led數(shù)碼管是利用7個(gè)led(發(fā)光二極管)外加一個(gè)小數(shù)點(diǎn)的led組合而成的
41、顯示設(shè)備,可以顯示09等10個(gè)數(shù)字和小數(shù)點(diǎn),這類數(shù)碼管可以分為公陰極與共陽極兩種,共陽極就是把所有l(wèi)ed的陽極連接到共同的結(jié)點(diǎn),而每個(gè) led的陰極分別為a,b,c,d,e,f,g及dp(小數(shù)點(diǎn));共陰極就是把所有l(wèi)ed的陽極連接到共同的結(jié)點(diǎn),而每個(gè) led的陽極分別為a,b,c,d,e,f,g及dp(小數(shù)點(diǎn)),如圖 311所示:圖3-11數(shù)碼管原理電路根據(jù)數(shù)碼管的驅(qū)動(dòng)方式的不同,可以分為靜態(tài)式和動(dòng)態(tài)式兩類。 靜態(tài)顯示驅(qū)動(dòng):每個(gè)數(shù)碼管的每個(gè)段都由一個(gè)單片機(jī)的i/o端口進(jìn)行驅(qū)動(dòng),或者使用如bcd碼的二十進(jìn)制譯碼器譯碼進(jìn)行驅(qū)動(dòng)。靜態(tài)驅(qū)動(dòng)的優(yōu)點(diǎn)是編程簡單,顯示亮度高,缺點(diǎn)是占用i/o端口多。動(dòng)態(tài)顯示
42、驅(qū)動(dòng):動(dòng)態(tài)驅(qū)動(dòng)是將所有數(shù)碼管的8個(gè)顯示筆劃“a,b,c,d,e,f,g,dp”的同名端連在一起,位選通由各自獨(dú)立的i/o線控制,當(dāng)單片機(jī)輸出字形碼時(shí),所有數(shù)碼管都接收到相同的字形碼,但究竟是那個(gè)數(shù)碼管會(huì)顯示出字形,取決于單片機(jī)對(duì)位選通控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形。 圖3-12單片機(jī)與數(shù)碼管連接電路3.7按鍵電路設(shè)計(jì) 這部分主要是運(yùn)用按鍵實(shí)現(xiàn)太陽能熱水器的實(shí)時(shí)控制的一些觀測,由于沒有實(shí)際的太陽能熱水器用于實(shí)驗(yàn),采用此種方式可以觀察是否實(shí)現(xiàn)了預(yù)期的效果。通過按鍵按下判斷是手動(dòng)/自動(dòng)控制,加水/加熱控制,停止加水/加熱控制,高中低水位控制。按鍵是用來向系統(tǒng)提供
43、操作人員命令的接口,所以準(zhǔn)確無誤地辨認(rèn)每個(gè)鍵的動(dòng)作以及其所處的狀態(tài),是系統(tǒng)能否正常工作的關(guān)鍵。多數(shù)按鍵多采用機(jī)械彈性開關(guān),一次高低電平的變化就是一次命令。但是按鍵的抖動(dòng)是難以避免的,為了穩(wěn)定操作,我們要防止抖動(dòng)的發(fā)生,就要消除抖動(dòng)的影響,可以從硬件和軟件兩方面解決。硬件防抖電路:利用rc積分電路對(duì)干擾脈沖的吸收作用,選擇好電路的時(shí)間常數(shù),就能在按鍵抖動(dòng)信號(hào)通過此濾波電路時(shí),消除抖動(dòng)影響。濾波防抖電路圖如圖2-12所示。當(dāng)k位按下時(shí),電容c兩端的電壓均為0,非門輸出為1。當(dāng)k按下時(shí),由于c兩端電壓不可能產(chǎn)生突變。盡管在觸點(diǎn)接觸過程種可能出現(xiàn)抖動(dòng),只要適當(dāng)選取r1、r2和c的值,即可保證電容c兩端
44、的充電電壓波動(dòng)不超過非門的開啟電壓(ttl位0.8v),非門的輸出維持高電平。同理,當(dāng)觸點(diǎn)斷開時(shí),由于電容c經(jīng)過電阻r放電,c兩端的放電電壓波動(dòng)不會(huì)超過門的關(guān)閉電壓,因此,門的輸出也不會(huì)改變??傊?,只要r1、r2和c的時(shí)間常數(shù)選取得當(dāng),確保電容c有穩(wěn)態(tài)電壓充電到開啟電壓,或放電到關(guān)閉電壓的延遲時(shí)間等于或大于10ms,該電路就能消除抖動(dòng)影響。圖3-13單片機(jī)與數(shù)碼管連接電路軟件防抖方法:當(dāng)?shù)谝淮螜z測到有鍵按下時(shí),先用軟件延時(shí)(1020ms),而后再確認(rèn)該鍵電平是否仍維持閉合狀態(tài)電平。若保持閉合狀態(tài)電平,則確認(rèn)此鍵一按下,從而消除了抖動(dòng)的影響。4 軟件設(shè)計(jì)方案硬件電路是一切的基礎(chǔ),在其基礎(chǔ)上軟件設(shè)
45、計(jì)是關(guān)鍵的部分,它是單片機(jī)工作的重點(diǎn),就是讓各部分協(xié)調(diào)工作的命令,軟件程序的重要性是毋庸置疑的,是整個(gè)控制系統(tǒng)的命脈,根據(jù)各部分編寫相應(yīng)的驅(qū)動(dòng)程序,才能使得相應(yīng)的芯片有其功能,所以程序設(shè)計(jì)是非常重要的。芯片的工作有著與自己對(duì)應(yīng)的時(shí)序圖,只有根據(jù)時(shí)序準(zhǔn)確的執(zhí)行命令才能達(dá)到想要的目的,實(shí)現(xiàn)芯片的功能。程序的設(shè)計(jì)還要有著一定的思路,根據(jù)系統(tǒng)運(yùn)行的過程要畫出相應(yīng)的程序流程圖,根據(jù)流程圖寫程序是非常方便的,也不容易產(chǎn)生錯(cuò)誤,得到正確的程序。如圖41所示 圖41 系統(tǒng)程序總流程圖4.1 ds18b20驅(qū)動(dòng)程序設(shè)計(jì)ds18b20數(shù)字溫度計(jì)提供9位(二進(jìn)制)溫度讀數(shù),指示器件的溫度。信息經(jīng)過單線接口送入ds1
46、8b20或從ds18b20送出,因此從主機(jī)cpu到ds18b20僅需一條數(shù)據(jù)線和地線,電源可以有數(shù)據(jù)線本身提供而不需要外部電源。ds18b20的測量范圍從55c到125c。溫度傳感器的引腳如表41所示。表4-1 ds18b20管腳連接管腳號(hào)名稱功能電路連接情況1gnd接電源地dgnd2dq數(shù)據(jù)輸出p3.5端3vdd接5v電源vcc每一個(gè)ds18b20包括一個(gè)唯一的64位長的序號(hào),該序號(hào)存放在ds18b20內(nèi)部的rom中。開始8位是產(chǎn)品類型編碼(dsl8b20編碼均為10h)接著的48位是每個(gè)器件唯一的序號(hào)最后8位是前面56位的crc(循環(huán)冗余校驗(yàn))碼dsl820中還有用于貯存測得的溫度值的兩個(gè)
47、8位存貯器ram編號(hào)為0號(hào)和1號(hào)1號(hào)存貯器存放溫度值的符號(hào)如果溫度為負(fù),則1號(hào)存貯器8位全為1,否則全為00號(hào)存貯器用于存放溫度值的補(bǔ)碼lsb(最低位)的1表示0.5。ds18b20用9位存貯溫度值,最高位為符號(hào)位下表為ds18b20的溫度存儲(chǔ)方式負(fù)溫度s=1正溫度s=0。表42 ds18b20溫度存儲(chǔ)bit7bit6bit5bit4bit3bit2bit1bit0lsbbit15bit14bit13bit12bit11bit10bit9bit8msbssssssss4.2串行ad轉(zhuǎn)換器adc0832程序設(shè)計(jì)由于微機(jī)只能處理數(shù)字化的信息,而在實(shí)際應(yīng)用中被控對(duì)象常常是連續(xù)變化的物理量,因此,微機(jī)
48、用于控制系統(tǒng)是需要有能把模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)的接口,以便能對(duì)被控制對(duì)象進(jìn)行處理和控制。a/d轉(zhuǎn)換器就是承擔(dān)這樣的任務(wù),a/d轉(zhuǎn)換就是把模擬量轉(zhuǎn)化成為二進(jìn)制的數(shù)字量,一般的a/d轉(zhuǎn)換過程是通過采樣、保持,量化,編碼4個(gè)步驟完成的,這些往往是合并運(yùn)行的。輸入配置可在多路器尋址時(shí)序中進(jìn)行。多路器地址可通過di端移入轉(zhuǎn)換器。多路器地址選擇模擬輸入通道可決定輸入是單端輸入還是差分輸入。當(dāng)輸入是差分時(shí),應(yīng)分配輸入通道的極性,并應(yīng)將差分輸入分配到相鄰的輸入通道對(duì)中。例如通道0和通道可被選為一對(duì)差分輸入。另外,在選擇差分輸入方式時(shí),極性也可以選擇。一對(duì)輸入通道的兩個(gè)輸入端的任何一個(gè)都可以作為正極或負(fù)極。通常
49、adc0832在輸出以最高位(msb)開頭的數(shù)據(jù)流后,會(huì)以最低位(lsb)開頭重輸出一遍(前面的數(shù)據(jù)流)。(因此,編程時(shí)要發(fā)兩輪脈沖,第一次取數(shù)據(jù),第二次若不要從低到高的數(shù)據(jù),也要發(fā)一輪8 個(gè)脈沖將adc0832中寄存器的數(shù)據(jù)移出。其工作時(shí)序如下所示:圖42 adc0832讀寫時(shí)序圖adc0832有8只引腳,ch0和ch1為模擬輸入端,cs為片選引腳,只有cs置0才能對(duì)adc0832進(jìn)行配置和啟動(dòng)轉(zhuǎn)換。clk為adc0832的時(shí)鐘輸入端。cs在整個(gè)轉(zhuǎn)換過程中都必須為低,當(dāng)cs為低時(shí),在數(shù)據(jù)輸入端di(數(shù)據(jù)輸入端)加一個(gè)高電平(這個(gè)高電平是算在送到di的一位之中,那么后面就只要再送兩位。這個(gè)高電
50、平是作為起始標(biāo)志),接著在clk上加一個(gè)時(shí)鐘,di上的邏輯1就會(huì)使adc0832的di脫離高阻態(tài),然后通道配置數(shù)據(jù)伴隨著時(shí)鐘通過di端移入多路器,當(dāng)最后一位數(shù)據(jù)移入多路器時(shí)(數(shù)據(jù)是三位,前一位標(biāo)志輸入開始,后兩位是用來作通道設(shè)置和選擇),di變?yōu)楦咦钁B(tài),在這以前do(數(shù)據(jù)輸出端)都為高阻態(tài)(就是cs從高跳到低到現(xiàn)在)。在經(jīng)過一個(gè)時(shí)鐘(是指在最后一個(gè)數(shù)據(jù)從di移入后,還要再經(jīng)過一個(gè)時(shí)鐘,當(dāng)最后一位數(shù)據(jù)移入di,需要再加一個(gè)時(shí)鐘使do脫離高阻態(tài)),do脫離高阻狀態(tài)并啟動(dòng)轉(zhuǎn)換。接著從處理器接收時(shí)鐘信號(hào),每經(jīng)過一個(gè)時(shí)鐘,轉(zhuǎn)換后的數(shù)據(jù)就會(huì)從高位到低位逐次從do移出,經(jīng)過8個(gè)時(shí)鐘后,數(shù)據(jù)又以從低位到高位的
51、形式從do移出(也是每個(gè)時(shí)鐘移一位)。當(dāng)最后一位數(shù)據(jù)移出時(shí)轉(zhuǎn)換完成。當(dāng)cs從低變?yōu)楦邥r(shí),adc0832內(nèi)部所有寄存器清零。如想要進(jìn)行下一次轉(zhuǎn)換,cs必須做一個(gè)從高到低跳變,后跟著地此配置數(shù)據(jù)重復(fù)上面的過程。表4-3 ds18b20通道選擇多路轉(zhuǎn)換器地址通道sgl/odd/sign0100+-01-+10+11+根據(jù)上述adc0832的相關(guān)轉(zhuǎn)換時(shí)序,進(jìn)行單片機(jī)和adc0832的連接時(shí),因?yàn)閐i和do并不是同時(shí)使用,所以di和do可以共用單片機(jī)的一條i/o線,再加上一條時(shí)鐘線和一條片選線就可以實(shí)現(xiàn)單片機(jī)和adc0832的連接,流程圖如圖43所示圖43 adc0832工作流程圖4.3 按鍵控制程序設(shè)
52、計(jì)按鍵是外部命令的體現(xiàn),一個(gè)按鍵從沒有按下到按下以及釋放是一個(gè)完整的過程,也就是說,當(dāng)我們按下一個(gè)按鍵時(shí),總希望某個(gè)命令只執(zhí)行一次,而在按鍵按下的過程中,不要有干擾進(jìn)來,因?yàn)椋诎聪碌倪^程中,一旦有干擾過來,可能造成誤觸發(fā)過程,這并不是我們所想要的。因此在按鍵按下的時(shí)候,要把我們手上的干擾信號(hào)以及按鍵的機(jī)械接觸等干擾信號(hào)濾除掉,一般情況下,我們可以采用電容來濾除掉這些干擾信號(hào),但實(shí)際上,會(huì)增加硬件成本及硬件電路的體積,這是我們不希望,總得有個(gè)辦法解決這個(gè)問題,因此我們可以采用軟件濾波的方法去除這些干擾信號(hào),一般情況下,一個(gè)按鍵按下的時(shí)候,總是在按下的時(shí)刻存在著一定的干擾信號(hào),按下之后就基本上進(jìn)
53、入了穩(wěn)定的狀態(tài)。具體的一個(gè)按鍵從按下到釋放的全過程的信號(hào)圖如下圖所示:圖44按鍵理想波形圖 圖45 按鍵實(shí)際的波形從圖中可以看出,由于按鍵的機(jī)械特性,當(dāng)按鍵閉合時(shí),并不能馬上保存良好的接觸,而是來回彈跳。這個(gè)時(shí)間很短,我們的手根本感覺不出來。但是對(duì)于一秒鐘執(zhí)行百萬條指令的單片機(jī)而言,這個(gè)時(shí)間是相當(dāng)?shù)拈L了。那么在這段抖動(dòng)的時(shí)間內(nèi),單片機(jī)可能讀到多次高低電平的變化。如果不加任何處理的話,就會(huì)認(rèn)為已經(jīng)按下,或者松開很多次了。而事實(shí)上,我們的手一直按在按鍵上,并沒有重復(fù)按動(dòng)很多次。要想能夠正確的判斷按鍵是否按下就要避開這段抖動(dòng)的時(shí)間。我們在程序設(shè)計(jì)時(shí),從按鍵被識(shí)別按下之后,延時(shí)10ms以上,從而避開了
54、干擾信號(hào)區(qū)域,我們再來檢測一次,看按鍵是否真得已經(jīng)按下,若真得已經(jīng)按下,這時(shí)肯定輸出為低電平,若這時(shí)檢測到的是高電平,證明剛才是由于干擾信號(hào)引起的誤觸發(fā),cpu就認(rèn)為是誤觸發(fā)信號(hào)而舍棄這次的按鍵識(shí)別過程。從而提高了系統(tǒng)的可靠性。由于要求每按下一次,命令被執(zhí)行一次,直到下一次再按下的時(shí)候,再執(zhí)行一次命令,因此從按鍵被識(shí)別出來之后,我們就可以執(zhí)行這次的命令,所以要有一個(gè)等待按鍵釋放的過程,顯然釋放的過程,就是使其恢復(fù)成高電平狀態(tài)。程序設(shè)計(jì)過程中按鍵識(shí)別過程的框圖如下圖所示:圖46 按鍵檢測框圖4.4 led數(shù)碼管顯示程序設(shè)計(jì)將所得到的結(jié)果用led數(shù)碼管顯示出來,給人直觀的了解當(dāng)前系統(tǒng)的狀態(tài),數(shù)碼管
55、要顯示當(dāng)前系統(tǒng)的值,就要有一定的端口往數(shù)碼管送入數(shù)據(jù),還要有點(diǎn)亮數(shù)碼管的信號(hào)為,我們要將09這十個(gè)數(shù)字的碼字定義成一個(gè)數(shù)組,通過檢驗(yàn)輸出的數(shù)據(jù)查斷碼表,就能顯示相應(yīng)的數(shù)字。表4-4 7段led的字型碼顯示字符共陽極字型碼共陰極字型碼顯示字符共陽極字型碼共陰極字型碼03fhc0h56dh92h106hf9h67dh82h25bha4h707hf8h34fhb0h87fh80h466h99h96fh90h由于在硬件電路中,是將p0口和數(shù)碼管的段碼位相連,位選信號(hào)p2口與數(shù)碼管亮滅有關(guān),掌握著是哪個(gè)數(shù)碼管亮,接下來程序就要定義相關(guān)端口:(1)定義字位和字型口#define sled_dm_port
56、p0 /*定義數(shù)碼管段碼的控制腳*/#define sled_wm_port p2 /*定義數(shù)碼管位碼的控制腳*/(2)定義字型編碼表(數(shù)字09)uchar code du_char=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,;(3)顯示:得到字型和字位口的地址后,向不同的字位送數(shù)據(jù),進(jìn)行顯示。(4)動(dòng)態(tài)掃描:由于使用動(dòng)態(tài)顯示法,在led顯示程序中,需要不停地進(jìn)行掃描字位口,從而實(shí)現(xiàn)不同字位的數(shù)據(jù)的動(dòng)態(tài)掃描結(jié)果。圖47 led顯示程序流程圖5 硬件電路仿真結(jié)果5.1 溫度仿真通過硬件電路和軟件的結(jié)合,測試程序的正確性,需要仿真溫度的顯示和可控制加熱方面是否達(dá)到要求,需要通過proteus軟件做以下仿真:5.1.1 溫度顯示仿真仿真結(jié)果表明,顯示的溫度和數(shù)字溫度傳感器ds18b20上顯示的數(shù)據(jù)相同,表明程序?qū)囟葌鞲衅鱠s18b20中的溫度數(shù)據(jù)正確的讀出,達(dá)到了讀取溫度和顯示溫度的目的。圖5
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)校建設(shè)乒乓球臺(tái)協(xié)議書
- 房屋認(rèn)購合同轉(zhuǎn)讓協(xié)議書
- 房屋買賣協(xié)議擔(dān)保協(xié)議書
- 勞動(dòng)合同安全生產(chǎn)協(xié)議書
- 室內(nèi)裝修合同分包協(xié)議書
- 合伙企業(yè)份額分紅協(xié)議書
- 合同甲方名稱變更協(xié)議書
- 公司借用股東車輛協(xié)議書
- 防滑透水磚訂購協(xié)議書
- T/SAQ 0003-2023高端裝備智能制造生產(chǎn)現(xiàn)場管理實(shí)施指南
- 2025-2030中國養(yǎng)老行業(yè)市場深度分析及前景趨勢與投資研究報(bào)告
- 醫(yī)院基建部面試題及答案
- 2025年中考物理模擬試卷猜題卷 3套(含答案)
- 2024-2025學(xué)年滬教版七年級(jí)數(shù)學(xué)上冊復(fù)習(xí):分式(7大題型)(42道壓軸題專練)解析版
- 恒溫烙鐵焊接溫度驗(yàn)證報(bào)告
- 湖北省松滋市老城鎮(zhèn)八一小學(xué)2024-2025學(xué)年小學(xué)六年級(jí)第二學(xué)期小升初數(shù)學(xué)試卷含解析
- 企業(yè)經(jīng)營管理的基本理論知識(shí)90P
- 石墨產(chǎn)品設(shè)計(jì)與生產(chǎn)中的質(zhì)量控制與優(yōu)化
- 郵政郵件內(nèi)部處理業(yè)務(wù)外包服務(wù)投標(biāo)方案(技術(shù)方案)
- 申請(qǐng)軟著流程
- 食品公司配送路線優(yōu)化流程
評(píng)論
0/150
提交評(píng)論