【摘要】 本研究主要是設(shè)計(jì)了一種基于單片機(jī)的控制系統(tǒng),目的是提高溫度測(cè)量的精確度,在此基礎(chǔ)上盡量簡(jiǎn)潔。首先對(duì)單片機(jī)進(jìn)行選擇,系統(tǒng)的硬件包括與溫度測(cè)量、鍵盤(pán)、顯示、報(bào)警和指示燈的模塊,設(shè)計(jì)主控制電路與測(cè)溫控制電路,并使用Keil軟件編寫(xiě)C51程序,通過(guò)仿真得出該系統(tǒng)基本符合了要求,并節(jié)省了硬件資源,系統(tǒng)穩(wěn)定可靠。
【關(guān)鍵詞】 單片機(jī) 溫度控制系統(tǒng) 傳感器
單片機(jī)是基于超大規(guī)模集成電路的技術(shù)發(fā)展起來(lái)的,它是集CPU,RAM,ROM,I/0接口和中斷系統(tǒng)等多個(gè)部件于一體的器件,體積小,功能強(qiáng),且性價(jià)比高,只需要外加電源和晶振就可以輕松實(shí)現(xiàn)對(duì)數(shù)字信息的處理和控制。基于單片機(jī)的溫度控制系統(tǒng)受到廣泛的應(yīng)用和重視。
一、硬件系統(tǒng)設(shè)計(jì)
系統(tǒng)核心部分是STC89C52單片機(jī),以8051為基核,8K字節(jié)Flash Rom存儲(chǔ)器,512字節(jié)的RAM存儲(chǔ)器,自帶EEPROM、看門(mén)狗,支持ISP,方便程序的下載和調(diào)試。
1、單片機(jī)的選擇。單片機(jī)AT89C52是INTEL公司生產(chǎn)的5l系列高性能8位單片機(jī),是數(shù)字溫度計(jì)的核心器件,兼容標(biāo)準(zhǔn)的MCS-51指令系統(tǒng);而內(nèi)置的通用8位中央處理器(CPU)和Flash存儲(chǔ)單元?jiǎng)t結(jié)合了HMOS的高速高密度特性及CHMOS的低功耗優(yōu)勢(shì)。AT89C52具有兩種晶振方式,一種是片內(nèi)時(shí)鐘振蕩,需要在XTAL1、XTAL2引腳外接石英晶體和振蕩電容,振蕩電容的值一般取10到30pf;另一種是外部時(shí)鐘方式,即將XTAL1接外部時(shí)鐘,XTAL2懸空。對(duì)于復(fù)位電路,AT89C52有兩種復(fù)位方式,分別是上電復(fù)位和按鍵復(fù)位;本設(shè)計(jì)采用按鍵復(fù)位,即利用一個(gè)復(fù)位電容和按鍵的組合使復(fù)位變得更加直接和簡(jiǎn)單。
2、溫度測(cè)量模塊。采用美國(guó)DALLAS半導(dǎo)體公司生產(chǎn)的DS18B20單總線溫度傳感器,能夠直接傳輸被測(cè)溫度,輸出數(shù)字量,其具有以下特點(diǎn):?jiǎn)慰偩€接口,可串行通訊;多個(gè)DS18B20可共接在一條總線,實(shí)現(xiàn)多點(diǎn)測(cè)溫;不需要任何外圍電路;測(cè)量范圍-55℃~125℃,固有測(cè)溫分辨率為0.5℃。DS18B20主要由四部分組成:64位光刻ROM、溫度傳感器、溫度報(bào)警觸發(fā)器TH和TL以及配置寄存器。
3、鍵盤(pán)、顯示模塊。鍵盤(pán)有編碼和非編碼兩種方式。本系統(tǒng)選用非編碼3*4矩陣鍵盤(pán)控制。鍵盤(pán)的抖動(dòng)可以通過(guò)軟件去抖動(dòng)和硬件去抖動(dòng)來(lái)解決。在按鍵不多的情況下,可以使用硬件去抖動(dòng),即加上RS觸發(fā)器。本系統(tǒng)采用軟件去抖動(dòng)的方法,如果按鍵較多,常用軟件方法消抖,即檢測(cè)按鍵按下為低電平時(shí),加一延時(shí)(5~10rns),等待下降沿的抖動(dòng)消失后,再次確認(rèn)是否為低電平,若是則有按鍵按下;按鍵松開(kāi)時(shí)也用同樣方法消抖。采用六位LED數(shù)碼管顯示所測(cè)溫度值,數(shù)碼管為共陰極七段發(fā)光二極管構(gòu)成。為了節(jié)省硬件資源,采用動(dòng)態(tài)顯T方式,即使用兩個(gè)74HC573鎖存器控制數(shù)碼管的位和段,共同接到單片機(jī)的PO口。
4、報(bào)警及指示燈電路。當(dāng)用戶設(shè)定的目標(biāo)溫度達(dá)到時(shí)需用聲音的形式提醒用戶,此時(shí)蜂鳴器為三聲斷續(xù)的滴答的叫聲。在本系統(tǒng)中我們?yōu)橛脩粼O(shè)計(jì)了越限報(bào)警,當(dāng)溫度低于用戶設(shè)置的目標(biāo)溫度10度或高于10度時(shí)蜂鳴器為連續(xù)不斷的滴答叫聲。當(dāng)單片機(jī)輸出高電平時(shí),三極管導(dǎo)通,蜂鳴器工作發(fā)出報(bào)警聲。
二、主控制電路和測(cè)溫控制電路設(shè)計(jì)
主控制電路由AT89C52及外圍元件構(gòu)成,測(cè)溫電路由DS18B20、預(yù)置數(shù)電路和報(bào)警電路組成。AT89C52是此硬件電路設(shè)計(jì)的核心,通過(guò)AT89C52管腳P1.3與DS18B20相連,控制溫度的讀出和顯示。預(yù)置數(shù)電路由4個(gè)按鍵組成,4個(gè)按鍵分別與AT89C52管腳P3.0和P3.1和P3.2和P3.3相連。報(bào)警電路很簡(jiǎn)單,2個(gè)發(fā)光二極管分別與AT89C52的P1.0和P1.1管腳相連,若實(shí)際測(cè)量溫度值大于預(yù)置溫度值,則發(fā)光二極管亮,還有一個(gè)蜂鳴器與AT89C52的P1.2管腳相連。
三、軟件系統(tǒng)設(shè)計(jì)
根據(jù)設(shè)計(jì)的硬件電路圖,進(jìn)行軟件的設(shè)計(jì),使用Keil軟件編寫(xiě)C51程序。程序的流程如圖1所示。
四、結(jié)語(yǔ)
本系統(tǒng)經(jīng)過(guò)檢測(cè)基本上達(dá)到了設(shè)計(jì)的要求,并且系統(tǒng)硬件、軟件設(shè)計(jì)總體較為簡(jiǎn)單,采用DS18B20傳感器能能夠?qū)崿F(xiàn)數(shù)字信號(hào)的有效傳輸,并且與AT89C52單片機(jī)進(jìn)行通訊,實(shí)現(xiàn)了溫度測(cè)量的精準(zhǔn)。
參 考 文 獻(xiàn)
[1]王麗娟.單片機(jī)在鍋爐溫度控制系統(tǒng)中的應(yīng)用[J].微計(jì)算機(jī)信息,2013年02期
[2]文旭.單片機(jī)原理及應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2008.
[3]李曉穎.傳感器與測(cè)試技術(shù)[M].北京:高等教育出版社,2006.