【文章內(nèi)容簡(jiǎn)介】
System Based on SCM AT89S52,”CONTROLamp。 AUTOMATION, vol. 25, no. 11, pp. 125, 2009 (in Chinese).基于52單片機(jī)的地下煤礦溫度控制裝置設(shè)計(jì)Qingdong WANGSchool of Mechanical and Electrical EngineeringHebei University of EngineeringHandan, China2009 2nd International Conference on Power Electronics and Intelligent Transportation System摘要:煤礦下的溫度是一個(gè)非常重要的技術(shù)指標(biāo),特別是對(duì)于礦井下工作人員來(lái)說(shuō)。人們有必要設(shè)計(jì)一種溫度控制和調(diào)節(jié)的系統(tǒng)去有效地監(jiān)控溫度。溫度值依行在LED液晶屏上顯示。當(dāng)溫度值達(dá)到額定最大溫度時(shí),由MCU控制,并與調(diào)節(jié)裝置連接的繼電器將工作。溫度信號(hào)和控制信息將由nRF9O5無(wú)線電信號(hào)傳輸模塊傳送。系統(tǒng)由傳感器控制部分和溫度值顯示部分組成??刂频某绦?qū)⒒趥鞲衅鞯膫鬏攨f(xié)議編寫(xiě)。無(wú)線電數(shù)據(jù)傳輸?shù)某绦驅(qū)⒈辉诟鱾€(gè)數(shù)據(jù)傳輸模塊之間調(diào)試。如果煤礦下的溫度不正常,報(bào)警系統(tǒng)將會(huì)給工作人員提供可靠的信息。這樣,煤礦溫度的監(jiān)控將得以實(shí)現(xiàn)。關(guān)鍵詞:溫度傳感器 DS18B2O、AT89S52單片機(jī)、nRF9O煤礦溫度控制1 簡(jiǎn)介礦井下的環(huán)境非常惡劣,任何意外隨時(shí)都可能發(fā)生。因此,為了保證礦井下的安全生產(chǎn),人們需要隨時(shí)監(jiān)測(cè)井下的各種參數(shù),例如:溫度、壓力、瓦斯?jié)舛取L(fēng)速等。及時(shí)的監(jiān)控溫度是保證井下安全作業(yè)和生產(chǎn)的重要因素。此外,為了保證測(cè)量的準(zhǔn)確性,超聲波測(cè)距技術(shù)常常被應(yīng)用在煤礦作業(yè)中。這同樣也需要相當(dāng)準(zhǔn)確的溫度監(jiān)測(cè)技術(shù)。傳統(tǒng)溫度監(jiān)測(cè)技術(shù)僅僅由獨(dú)立的傳感器完成,其缺陷如下:較慢的反應(yīng)速度、較高的監(jiān)測(cè)錯(cuò)誤率、復(fù)雜的安裝過(guò)程和程序調(diào)式,以及長(zhǎng)距離信息傳輸。本文將用DS18B2O溫度傳感器和AT89S52單片機(jī)實(shí)現(xiàn)智能溫度監(jiān)測(cè)和調(diào)節(jié)。兩者結(jié)合可實(shí)現(xiàn)以下功能:數(shù)字計(jì)算,直接輸出監(jiān)測(cè)溫度的數(shù)字信號(hào),低溫度監(jiān)測(cè)錯(cuò)誤率、高溫度分辨率、較強(qiáng)的抗干擾能力、長(zhǎng)距離信息傳輸精確。相比于傳統(tǒng)的溫度監(jiān)測(cè)技術(shù),單片機(jī)溫度監(jiān)測(cè)技術(shù)將實(shí)現(xiàn)溫度數(shù)據(jù)的儲(chǔ)存與分析,遠(yuǎn)程信息傳輸?shù)鹊裙δ?。DS18B2O系列溫度傳感器是美國(guó)達(dá)拉斯公司成產(chǎn)的數(shù)字溫度傳感器。2 單片機(jī)介紹單片機(jī)也被稱(chēng)為微控制器(Microcontroller),是因?yàn)樗钤绫挥迷诠I(yè)控制領(lǐng)域。單片機(jī)由芯片內(nèi)僅有CPU的專(zhuān)用處理器發(fā)展而來(lái)。最早的設(shè)計(jì)理念是通過(guò)將大量外圍設(shè)備和CPU集成在一個(gè)芯片中,使計(jì)算機(jī)系統(tǒng)更小,更容易集成復(fù)雜的而對(duì)提及要求嚴(yán)格的控制設(shè)備當(dāng)中。INTEL的Z80是最早按照這種思想設(shè)計(jì)出的處理器,從此以后,單片機(jī)和專(zhuān)用處理器的發(fā)展便分道揚(yáng)鑣。 早期的單片機(jī)都是8位或4位的。其中最成功的是INTEL的8031,因?yàn)楹?jiǎn)單可靠而性能不錯(cuò)獲得了很大的好評(píng)。此后在8031上發(fā)展出了MCS51系列單片機(jī)系統(tǒng)?;谶@一系統(tǒng)的單片機(jī)系統(tǒng)直到現(xiàn)在還在廣泛使用。隨著工業(yè)控制領(lǐng)域要求的提高,開(kāi)始出現(xiàn)了16位單片機(jī),但因?yàn)樾詢(xún)r(jià)比不理想并未得到很廣泛的應(yīng)用。90年代后隨著消費(fèi)電子產(chǎn)品大發(fā)展,單片機(jī)技術(shù)得到了巨大的提高。隨著INTEL i960系列特別是后來(lái)的ARM系列的廣泛應(yīng)用,32位單片機(jī)迅速取代16位單片機(jī)的高端地位,并且進(jìn)入主流市場(chǎng)。而傳統(tǒng)的8位單片機(jī)的性能也得到了飛速提高,處理能力比起80年代提高了數(shù)百倍。目前,高端的32位單片機(jī)主頻已經(jīng)超過(guò)300MHz,性能直追90年代中期的專(zhuān)用處理器,而普通的型號(hào)出廠價(jià)格跌落至1美元,最高端的型號(hào)也只有10美元。當(dāng)代單片機(jī)系統(tǒng)已經(jīng)不再只在裸機(jī)環(huán)境下開(kāi)發(fā)和使用,大量專(zhuān)用的嵌入式操作系統(tǒng)被廣泛應(yīng)用在全系列的單片機(jī)上。而在作為掌上電腦和手機(jī)核心處理的高端單片機(jī)甚至可以直接使用專(zhuān)用的Windows和Linux操作系統(tǒng)。 8051單片機(jī)由運(yùn)算器、控制器、寄存器等組成。運(yùn)算器以完成二進(jìn)制的算術(shù)/邏輯運(yùn)算部件ALU為核心,再加上暫存器TMP、累加器ACC、寄存器B、程序狀態(tài)標(biāo)志寄存器PSW及布爾處理器。累加器ACC是一個(gè)八位寄存器,它是CPU中工作最頻繁的寄存器。在進(jìn)行算術(shù)、邏輯運(yùn)算時(shí),累加器ACC往往在運(yùn)算前暫存一個(gè)操作數(shù)(如被加數(shù)),而運(yùn)算后又保存其結(jié)果(如代數(shù)和)。寄存器B主要用于乘法和除法操作。標(biāo)志寄存器PSW也是一個(gè)八位寄存器,用來(lái)存放運(yùn)算結(jié)果的一些特征,如有無(wú)進(jìn)位、借位等。其每位的具體含意如下所示。PSW CY AC FO RS1 RS0 OV—P對(duì)用戶(hù)來(lái)講,最關(guān)心的是以下四點(diǎn)。1. 進(jìn)位標(biāo)志CY(PSW7)。它表示了運(yùn)算是否有進(jìn)位(或借位)。如果操作結(jié)果在最高位有進(jìn)位(加法)或者借位(減法),則該位為1,否則為0。2.2. 輔助進(jìn)位標(biāo)志AC。又稱(chēng)半進(jìn)位標(biāo)志,它反映了兩個(gè)八位數(shù)運(yùn)算低四位是否有半進(jìn)位,即低四位相加(或減)有否進(jìn)位(或借位),如有則AC為1狀態(tài),否則為0。3. 溢出標(biāo)志位OV。MCS—1反映帶符號(hào)數(shù)的運(yùn)算結(jié)果是否有溢出,有溢出時(shí),此位為1,否則為0。4. 奇偶標(biāo)志P。反映累加器ACC內(nèi)容的奇偶性,如果ACC中的運(yùn)算結(jié)果有偶數(shù)個(gè)1(如11001100B,其中有4個(gè)1),則P為0,否則,P=1。PSW的其它位,將在以后再介紹。由于PSW存放程序執(zhí)行中的狀態(tài),故又叫程序狀態(tài)字,運(yùn)算器中還有一個(gè)按位(bit)進(jìn)行邏輯運(yùn)算的邏輯處理機(jī)(又稱(chēng)布爾處理機(jī))。其功能在介紹位指令時(shí)再說(shuō)明。關(guān)于控制器,控制器是CPU的神經(jīng)中樞,它包括定時(shí)控制邏輯電路、指令寄存器、譯碼器、地址指針DPTR及程序計(jì)數(shù)器PC、堆棧指針SP等。這里程序計(jì)數(shù)器PC是由16位寄存器構(gòu)成的計(jì)數(shù)器。要單片機(jī)執(zhí)行一個(gè)程序,就必須把該程序按順序預(yù)先裝入存儲(chǔ)器ROM的某個(gè)區(qū)域。單片機(jī)動(dòng)作時(shí)應(yīng)按順序一條條取出指令來(lái)加以執(zhí)行。因此,必須有一個(gè)電路能找出指令所在的單元地址,該電路就是程序計(jì)數(shù)器PC。當(dāng)單片機(jī)開(kāi)始執(zhí)行程序時(shí),給PC裝入第一條指令所在地址,它每取出一條指令(如為多字節(jié)指令,則每取出一個(gè)指令字節(jié)),PC的內(nèi)容就自動(dòng)加1,以指向下一條指令的地址,使指令能順序執(zhí)行。只有當(dāng)程序遇到轉(zhuǎn)移指令、子程序調(diào)用指令,或遇到中斷時(shí),PC才轉(zhuǎn)到所需要的地方去。8051 CPU指定的地址,從ROM相應(yīng)單元中取出指令字節(jié)放在指令寄存器中寄存,然后,指令寄存器中的指令代碼被譯碼器譯成各種形式的控制信號(hào),這些信號(hào)與單片機(jī)時(shí)鐘振蕩器產(chǎn)生的時(shí)鐘脈沖在定時(shí)與控制電路中相結(jié)合,形成按一定時(shí)間節(jié)拍變化的電平和時(shí)鐘,即所謂控制信息,在CPU內(nèi)部協(xié)調(diào)寄存器之間的數(shù)據(jù)傳輸、運(yùn)算等操作。再來(lái)介紹一下存儲(chǔ)器,存儲(chǔ)器是單片機(jī)的又一個(gè)重要組成部分,有一種存儲(chǔ)容量為256個(gè)單元的存儲(chǔ)器結(jié)構(gòu)。其中每個(gè)存儲(chǔ)單元對(duì)應(yīng)一個(gè)地址,256個(gè)單元共有256個(gè)地址,用兩位16進(jìn)制數(shù)表示,即存儲(chǔ)器的地址(00H~FFH)。存儲(chǔ)器中每個(gè)存儲(chǔ)單元可存放一個(gè)八位二進(jìn)制信息,通常用兩位16進(jìn)制數(shù)來(lái)表示,這就是存儲(chǔ)器的內(nèi)容。存儲(chǔ)器的存儲(chǔ)單元地址和存儲(chǔ)單元的內(nèi)容是不同的兩個(gè)概念,不能混淆。單片機(jī)還包括程序存儲(chǔ)器。程序是控制計(jì)算機(jī)動(dòng)作的一系列命令,單片機(jī)只認(rèn)識(shí)由“0”和“1”代碼構(gòu)成的機(jī)器指令。如前述用助記符編寫(xiě)的命令MOV A,20H,換成機(jī)器認(rèn)識(shí)的代碼74H、20H:(寫(xiě)成二進(jìn)制就是01110100B和00100000B)。在單片機(jī)處理問(wèn)題之前必須事先將編好的程序、表格、常數(shù)匯編成機(jī)器代碼后存入單片機(jī)的存儲(chǔ)器中,該存儲(chǔ)器稱(chēng)為程序存儲(chǔ)器。程序存儲(chǔ)器可以放在片內(nèi)或片外,亦可片