任才 孔德尉* 沈陽工學(xué)院 劉文宇 國網(wǎng)遼寧省電力有限公司檢修分公司
系統(tǒng)的結(jié)構(gòu)框圖,如圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)框圖
本系統(tǒng)是由STC89C52單片機(jī)、LCD1602液晶顯示模塊、DS18B20溫度檢測(cè)模塊、按鍵模塊、報(bào)警模塊、加熱模塊和冷卻模塊組成的。本系統(tǒng)能完成以下功能:
⑴系統(tǒng)通過DS18B20溫度檢測(cè)模塊對(duì)溫度進(jìn)行檢測(cè)。
⑵可以在LCD1602液晶顯示模塊上實(shí)時(shí)顯示檢測(cè)的溫度。
⑶系統(tǒng)可以用按鍵設(shè)置上限溫度和下限溫度。當(dāng)周圍的溫度超過上限溫度時(shí),系統(tǒng)控制繼電器使冷卻模塊工作。當(dāng)周圍溫度低于下限溫度時(shí),系統(tǒng)控制繼電器使加熱模塊工作。當(dāng)周圍溫度在上限溫度和下限溫度之間時(shí)維持原狀態(tài)。
通過系統(tǒng)要實(shí)現(xiàn)的功能分析,系統(tǒng)需要以下幾個(gè)模塊,分別為:主控模塊、顯示模塊、溫度檢測(cè)模塊,以下就針對(duì)這幾個(gè)模塊進(jìn)行選型。
使用51系列單片機(jī),這個(gè)系列的單片機(jī)是一個(gè)可靠性高,價(jià)格低,性能高的8位單片機(jī),它有32個(gè)I/O口,并且這個(gè)系列的單片機(jī)可以在線編程和調(diào)試,既方便又實(shí)用。
使用LCD液晶顯示屏,LCD液晶顯示屏的顯示功能比較多,它既可以顯示大量的文字,也可以顯示圖形和數(shù)字,顯示的多樣性清晰可見,設(shè)計(jì)一個(gè)家庭溫度控制器,只需要一個(gè)LCD1602的液晶屏就可以了,價(jià)格也比較便宜,但是需要的接口線較多,會(huì)給調(diào)試帶來很多不方便。
DS18B20數(shù)字溫度傳感器接線很方便,可以用在很多的場(chǎng)合,它有很多種外觀,如螺紋式、管道式、不銹鋼封裝式、磁鐵吸附式。它還有很多種型號(hào),如LTM8877,LTM8874等等。封裝后的DS18B20可以用在各種非極限溫度場(chǎng)合。如:機(jī)房測(cè)溫、大棚測(cè)溫等等。它體積小,使用方便,耐磨耐碰,封裝形式多樣,適用各種狹小空間數(shù)字測(cè)溫和控制領(lǐng)域。
單片機(jī)最小系統(tǒng)有單片機(jī)、時(shí)鐘電路、復(fù)位電路組成,時(shí)鐘電路選用了12MHZ的晶振提供時(shí)鐘,作用為給單片機(jī)提供一個(gè)時(shí)間基準(zhǔn),其中執(zhí)行一條基本指令需要的時(shí)間為一個(gè)機(jī)器周期,單片機(jī)的復(fù)位電路,按下復(fù)位按鍵之后可以使單片機(jī)進(jìn)入剛上電的起始狀態(tài)。圖中10K排阻為P0口的上拉電阻,由于P0口跟其他I/O結(jié)構(gòu)不一樣為漏極開路的結(jié)構(gòu),因此要加上拉電阻才能正常使用。
用STC89C52的P0口作為數(shù)據(jù)線,用P1.2、P1.1、P1.0分別作為LCD的EN、R/W、RS。其中EN是下降沿觸發(fā)的片選信號(hào),R/W是讀寫信號(hào),RS是寄存器。設(shè)計(jì)如下:顯示模塊初始化:首先清屏,然后設(shè)置接口的數(shù)據(jù)位為8位,顯示行數(shù)為1行,字型為5*7點(diǎn)陣,整體顯示,再取消光標(biāo)和字體閃爍,最后設(shè)置成正向增量方式且不移位。向顯示器的緩沖區(qū)傳送字符,程序采用的是2個(gè)字符數(shù)組,其中一個(gè)顯示字符,另一個(gè)顯示電壓,要顯示的字符或數(shù)據(jù)傳送到對(duì)應(yīng)的數(shù)組,完成后再統(tǒng)一顯示出來。首先取一個(gè)要顯示的字符或數(shù)據(jù)送到LCD的顯示緩沖區(qū),程序延時(shí)2.5ms,判斷是否夠顯示的個(gè)數(shù),不夠則地址加一取下一個(gè)要顯示的字符或數(shù)據(jù)。
本設(shè)計(jì)帶有一些參數(shù)設(shè)置的功能,用戶可以通過按鍵設(shè)定上限溫度和下限溫度,當(dāng)超過上下限溫度的時(shí)候,單片機(jī)會(huì)驅(qū)動(dòng)蜂鳴器發(fā)聲。
由于蜂鳴器的工作電流一般比較大,以致于單片機(jī)的I/O口是無法直接驅(qū)動(dòng)的,所以要利用三極管開關(guān)電路來驅(qū)動(dòng)。本處選用的是8550三極管,它是一個(gè)PNP型的三極管,當(dāng)基極給低電平的時(shí)候三極管導(dǎo)通,這時(shí)候蜂鳴器發(fā)聲,當(dāng)給高電平的時(shí)候,三極管關(guān)閉,蜂鳴器不發(fā)聲。
[1]劉樹中,孫書膺,王春平.單片機(jī)和液晶顯示驅(qū)動(dòng)器串行接口的實(shí)現(xiàn)[J].微計(jì)算機(jī)信息.
[2]彭偉.單片機(jī)C語言程序設(shè)計(jì)實(shí)訓(xùn)100例[M].北京:電子工業(yè)出版社.