智能溫度傳感器設計硬件_第1頁
智能溫度傳感器設計硬件_第2頁
智能溫度傳感器設計硬件_第3頁
智能溫度傳感器設計硬件_第4頁
智能溫度傳感器設計硬件_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

論文題目:智能溫度傳感器設計〔硬件〕摘要溫度傳感器在工業(yè),農業(yè)以及人們的日常生活都有著廣泛的應用。本文主要討論了應用于煤炭礦井中的溫度傳感器的設計。溫度傳感器的技術是在不斷進步的。在滿足根本要求的同時,向著人性化智能化的方向開展。本文所設計的溫度傳感器是以AT89S52為核心,以DS18B20為敏感器件的智能溫度傳感器。此傳感器能應用于煤礦平安生產的多個環(huán)節(jié),實現(xiàn)對溫度的實時顯示,報警以及將溫度數(shù)據(jù)用過串行接口傳送到上位機。通過實踐檢測,說明本文所設計的溫度傳感器結構簡單,系統(tǒng)穩(wěn)定,本錢較低,各個功能實現(xiàn)正常,到達設計要求。關鍵詞:溫度傳感器,DS18B20,串行通信,液晶顯示器Subject:DesignofIntelligentTemperatureSensor(Hardware)ABSTRACTThetemperaturesensorhasawideuseintheindustry,agricultureandoureverydaylife.Inthispaper,wemainlydiscussedthetemperaturesensorusedincoalmineproduction.TheTemperatureSensorTechnologykeepsdevelopingveryquicklyinrecentyears.IthasbecamemoreandmoreIntelligentanduser-Friendlywhilefulfillingitsbasicrequirements.ThesensorwedesignedinthispaperwasanIntelligentTemperatureSensorbasedonAT89S52andusingDS18B20assensitivedevice.Thissensorcanbeusedinmanysituationsinthecoalminesafetyproduction.ItcancompletethetaskofdisplayingthetemperaturedataanddeliveringittothePCandgiveanalarmwhenneeded.Thissensorhasbeenprovedtohavetheadvantageofsimple,stableandmeanwhilecheapinprice.Everyperformanceindicatorshasreachedtherequirement.KEYWORDS:temperaturesensor,DS18B20,serialcommunication,LCD目錄第一章緒論11.1課題的提出與國內外現(xiàn)狀11.2煤礦的溫度監(jiān)測系統(tǒng)21.3本文研究的目的和意義2第二章溫度傳感器42.1溫度傳感器簡介42.2測量對象與環(huán)境確定傳感器的類型42.3溫度傳感器的分類42.4溫度傳感器DS18B20介紹6溫度傳感器DS18B20主要性能62.4.2DS18B20的外部結構72.4.3DS18B20內部結構82.4.4DS18B20供電方式102.4.5DS18B20的ROM命令112.4.6DS18B20的測溫原理12第三章智能溫度傳感器的硬件設計153.1智能溫度傳感器的整體設計及工作原理153.2硬件系統(tǒng)電路圖163.3單片機AT89S52介紹17單片機AT89S52的主要性能17AT89S52封裝圖及方框圖173.3.3AT89S52存儲器配置213.4多路DS18B20測溫253.5LCM1602B液晶顯示介紹253.5.1LCM1602B技術參數(shù)263.5.21602B引腳說明263.5.3針腳引線273.5.4LCD的連接273.5.5液晶LCD顯示電路273.6串行通信電路的設計283.7報警電路設計29第四章智能溫度傳感器軟件設計314.1主程序流程圖314.2測溫子程序流程圖324.3顯示子程序流程圖33第五章智能溫度傳感器系統(tǒng)調試345.1智能溫度傳感器靜態(tài)調試345.2智能溫度傳感器動態(tài)調試345.3智能溫度傳感器系統(tǒng)調試情況35第六章結束語36致謝37參考文獻38附錄一:實物照片39附錄二:溫度傳感器總電路圖40第一章緒論1.1課題的提出與國內外現(xiàn)狀溫度是工業(yè),農業(yè)以及許多日常生活中最重要的和最常見的參數(shù)指標。在工業(yè)中,如冶金,汽車業(yè),機械,各種化工業(yè)等行業(yè),溫度都有著至關重要的作用。在農業(yè)中,大棚蔬菜的恒溫,新品種的培育都離不開溫度的控制。生活中更是如此,每天人們都根據(jù)不同的溫度,協(xié)調自己的衣食住行??梢姕囟仍谌祟惿鐣闹匾潭攘恕C旱V監(jiān)測監(jiān)控系統(tǒng)包括輸送機監(jiān)控系統(tǒng),工作面生產監(jiān)控系統(tǒng),膠輪車運輸監(jiān)測系統(tǒng),環(huán)境平安監(jiān)測系統(tǒng),電力監(jiān)測系統(tǒng),通風檢測系統(tǒng),洗煤檢測系統(tǒng)及工業(yè)電視現(xiàn)場監(jiān)測系統(tǒng)8個子系統(tǒng)[1]。本文所設計的溫度傳感器是用于煤礦的平安生產的。煤礦對于我國而言是目前最重要的能源,也是本國儲量最多的能源。因此,保證煤礦的平安生產關系著過的命運,做為保證煤礦平安生產的一局部。溫度的控制是極為重要的。溫度的采集就由溫度傳感器來完全。溫度傳感器將溫度這個模擬量變成數(shù)字量和,傳送給處理器,再由處理器運算,發(fā)指令給執(zhí)行器,借此完成溫度的檢測與控制。因此溫度傳感器作為第一步是至關重要的。這和當今的現(xiàn)代化信息技術是相統(tǒng)一的?,F(xiàn)代信息技術的三大根底是信息采集(即傳感器技術)、信息傳輸(通信技術)和信息處理(計算機技術)。傳感器屬于信息技術的前沿尖端產品,尤其是溫度傳感器被廣泛用于工農業(yè)生產、科學研究和生活等領域,數(shù)量高居各種傳感器之首。近百年來,溫度傳感器的開展大致經歷了以下三個階段;(1)傳統(tǒng)的分立式溫度傳感器(含敏感元件);(2)模擬集成溫度傳感器/控制器;(3)智能溫度傳感器。目前,國際上新型溫度傳感器正從模擬式向數(shù)字式、由集成化向智能化、網絡化的方向開展。本文設計的智能溫度傳感器屬于第3階段。智能溫度傳感器(亦稱數(shù)字溫度傳感器)是在20世紀90年代中期問世的。它是微電子技術、計算機技術和自動測試技術(ATE)的結晶。目前,國際上已開發(fā)出多種智能溫度傳感器系列產品。智能溫度傳感器內部都包含溫度傳感器、A/D轉換器、信號處理器、存儲器(或存放器)和接口電路。有的產品還帶多路選擇器、中央控制器(cpu)、隨機存取存儲器(RAM)和只讀存儲器(ROM)。智能溫度傳感器的特點是能輸出溫度數(shù)據(jù)及相關的溫度控制量,適配各種微控制器(MCU);并且它是在硬件的根底上通過軟件來實現(xiàn)測試功能的,其智能化程度也取決于軟件的開發(fā)水平。1.2煤礦的溫度監(jiān)測系統(tǒng)在煤礦的生產過程中,有多個局部需要對溫度進行采集和控制。第一,溫度對爆炸極限的影響?;旌蠚怏w的初始溫度越高,爆炸極限范圍越寬,爆炸下限減低,上限增高,爆炸危險性增加。這是因為,在溫度增高的情況下,活化分子數(shù)量增加,分子和原子的動能也增加,使活化分子具有更大的沖擊能量,爆炸反響容易進行,使原來含有過量空氣〔低于爆炸下限〕或可燃物〔高于爆炸上限〕而不能使火焰蔓延的混合物濃度變?yōu)榭梢允够鹧媛拥臐舛?,從而擴大了爆炸范圍。溫度降低,爆炸極限范圍亦減小。因此,工程設計中,可在保證輸氣工藝需要的前提下,盡可能在壓縮機后設置后冷卻器,采用人工冷卻的方法減低輸氣溫度。第二,溫度對井下工人工作的影響?;夭晒ぷ髅鏈囟扰c風速要求如表表1.1所示。表1.1回采工作面溫度與對應風速調整系數(shù)回采工作面空氣溫度〔℃〕采煤工作面風速〔m/s〕<180.3~0.818~200.8~1.020~231.0~1.523~261.5~1.826~281.8~2.528~302.5~3.0煤炭埋深在1000m以下的儲量就有2.95萬億噸。占我國煤炭資源總量的53%。我國深部資源開采的深度定界為:煤礦800~1500米。我國煤礦正在逐步進入深部開采階段,溫度因子在深部礦井開采中的影響權重較淺部開采時明顯增大,因高溫帶來的問題已經成為深部礦井開采中的主要難題之一。1.3本文研究的目的和意義本文智能溫度傳感器以AT89S52單片機為控制核心,由一數(shù)字溫度傳感器DS18B20測量被控溫度。單片機外圍電路包括上位機通信與數(shù)碼顯示電路、多路溫度采集,輸出控制電位。設計出一種新型的煤礦平安溫度監(jiān)測儀器,很好地解決了煤礦平安監(jiān)測系統(tǒng)設備整體價格比擬昂貴這個問題。同時進一步熟悉了AT89S52單片機以及一數(shù)字溫度傳感器DS18B20的原理和使用方法。在整個設計過程中,學習到了許多新的知識,增加的自己對設計熱情,使自己對一個整體的設計過程有了體會和認識。為以后做進一步的設計打下根底。第二章溫度傳感器2.1溫度傳感器簡介溫度傳感器使將溫度這個模擬信號轉變?yōu)閿?shù)字信號的器件。溫度傳感器的開展大致經歷了以下三個階段;(1)傳統(tǒng)的分立式溫度傳感器;(2)模擬集成溫度傳感器及控制器;(3)智能溫度傳感器。目前,國際上新型溫度傳感器正從模擬式向數(shù)字式、由集成化向智能化、網絡化的方向開展[2]。2.2測量對象與環(huán)境確定傳感器的類型測量的對象和環(huán)境決定使用何種溫度傳感器。主要有幾個因素決定:1.被測溫度的范圍,不同的溫度傳感器測量的溫度范圍是不同的,所以只有根據(jù)被測溫度范圍,來決定使用何種溫度范圍的溫度傳感器。2.被測量的頻率范圍,傳感器的頻率響應特性決定了被測量的頻率范圍,傳感器的響應必然是滯后的,作為設計者業(yè)希望這個滯后時間越短越好。3.對靈敏度的要求,一般情況下,在傳感器的線性范圍內,傳感器的靈敏度越高越好。但同時要考慮到,靈敏度越高,受外界的干擾就會越大,從而導致結果誤差較大。4傳感器的穩(wěn)定性,穩(wěn)定性就是傳感器在使用一段時間后,其工作性能是否出現(xiàn)變化的特性。這主要取決于傳感器的內部結構和使用環(huán)境。5.傳感器的測量精度,一般只要滿足設計要求即可。隨著精度的增高,傳感器的價格也月昂貴。所以精度一般以滿足設計要求為準。2.3溫度傳感器的分類本文主要涉及以半導體溫度傳感器為主。半導體溫度傳感器主要分為四類:電流輸出溫度傳感器、電壓輸出溫度傳感器、比率輸出溫度傳感器、數(shù)字輸出溫度傳感器[2]。電流輸出溫度傳感器的主要特點是輸出阻抗高,輸出電流不受傳輸線路電壓降和電壓噪聲的影響,且對電源電壓的脈動和漂移具有很強的抑制能力,常用的有AD592和TMP17。AD592測溫范圍-25~+105℃,封裝形式為TO-92,AD592CN線性誤差典型值±0.1℃。TMP17測溫范圍-40~+105℃,封裝形式為SO-8,TMP17F線性誤差典型值±0.5℃。電壓輸出溫度傳感器的主要特點是電源電壓和電流比擬低,在傳輸線路電壓降和電壓噪聲不是主要考慮因素時,電壓輸出溫度傳感器的輸出可直接成為控制系統(tǒng)和數(shù)據(jù)采集系統(tǒng)的輸入信號,常用的有TMP35/36/37,線性誤差典型值±0.5℃。TMP35測溫范圍+10~+125℃,可用作熱電偶冷端補償;TMP36測溫范圍-40~+125℃;TMP37測溫范圍+5~+100℃。比率輸出溫度傳感器特別適合與基準電壓相關的比率測量或數(shù)據(jù)轉換。常用的有AD22100和AD22103,主要應用于加熱通風與空調系統(tǒng)、儀器儀表、汽車中的溫度監(jiān)測與控制。AD22100線性誤差1%FS,精度2%FS,AD22100S測溫范圍-50~+150℃。AD22103線性誤差0.5%FS,精度2.5%FS,測溫范圍-50~+150℃。數(shù)字輸出溫度傳感器較模擬輸出溫度傳感器有許多優(yōu)點,可采用光隔離使遠端傳感器與測量系統(tǒng)之間實現(xiàn)電隔離,這對于工作環(huán)境惡劣的工控現(xiàn)場十分必要。數(shù)字輸出溫度傳感器有兩種類型,一類是串行數(shù)字輸出溫度傳感器TMP03/04,由溫度傳感器和數(shù)字調制器組成,可以克服時鐘漂移問題。TMP03/04測溫范圍-40~+100℃,線性誤差±1℃,直接與微控制器相連,配適宜當計算軟件很容易解碼。TMP04適用于工業(yè)過程控制、過程監(jiān)控、電源系統(tǒng)監(jiān)測和要求隔離的測溫系統(tǒng)和電子設備溫度監(jiān)測。另一類數(shù)字輸出溫度傳感器是將溫度傳感器與ADC集成在一起,如AD7416、AD7816(10位)和ADM1021(8位)。

Dallas的半導體溫度傳感器主要分為數(shù)字輸出和模擬輸出兩大類。數(shù)字輸出半導體溫度傳感器輸出直接數(shù)字化,可直接讀出溫度數(shù)值,不需要A/D轉換器。測溫范圍-55~+125℃,分辨率為0.03125~1.0℃,出廠前已進行線性化和校準,這樣可減小電路的復雜程度,簡化設計和降低本錢。數(shù)字輸出傳感器主要有DS1620、DS1720、DS1820和DS1821等。DS1620校準精度為±0.5℃,采用3-wire接口,封裝形式有8腳PDIP和8腳SOIC兩種;DS1720校準精度為±2.5℃,采用3-wire接口,封裝形式為8腳SOIC;DS1820校準精度為±0.5℃,采用1-WireTM接口,封裝形式有PR-35和16腳SSOP兩種;DS1821校準精度為±1.0℃,采用1-WireTM接口,封裝形式有PR-35、8腳SOIC和TO-220三種。Dallas的模擬輸出溫度傳感器測溫范圍-40~+125℃,分辨率為6.2mV/℃。模擬輸出傳感器也在出廠前進行過校準。這類傳感器主要有DS56和DS60兩種型號,校準精度均為±2.0℃。DS56具有兩個溫度設定點,封裝形式為8腳SOICCSP;DS60是線性輸出傳感器,封裝形式為3腳SOT-23。

Maxim提供多種半導體溫度傳感器以滿足不同的應用需要。主要有MAX6501、MAX1617、MAX1618、MAX1619和MAX6575。MAX6501是恒溫開關,集成了溫度傳感器和比擬器。應用于電腦、儀器、充電器和工業(yè)設備中,當溫度超過設定值時可發(fā)出報警信號,觸發(fā)系統(tǒng)關機和啟動風扇散熱。MAX6501測溫范圍-45~+115℃,封裝形式為5腳SOT-23。MAX1617是“遠端結”溫度傳感器,適用于高性能(Pentium以上)CPU的溫度監(jiān)測。MAX1617采用SMBusTM2-wire串行接口,封裝形式為16腳QSOP。MAX1618也是遠端結溫度傳感器,Maxim溫度傳感器部產品經理PatriciaSmith介紹說:“MAX1618是世界上最小的遠端結溫度傳感器,其封裝形式為10腳MICROMAX外表貼裝,非常適合于有小體積需求的場合。”

NationalSemiconductor的溫度傳感器分為數(shù)字和模擬兩類。其數(shù)字溫度傳感器主要有LM75、LM84、LM77、LM74和LM76等,應用于PC、外設、無線應用設備、HVAC、系統(tǒng)溫度管理、測試設備和生物統(tǒng)計儀器,具有1~3℃的精確度,9位到13位的分辨率,內部和遠程二極管溫度感測,SO8、SOT23及更小的封裝,I2C和SPI接口。NationalSemiconductor的模擬溫度傳感器主要有LM20、LM34、LM45和LM66等,應用于HDD、PC外設、蜂窩式移動和電源管理器、尋呼系統(tǒng)、HVAC、打印機、機以及Write-Goods裝置等,有微型SMD、SC70、SOT23和SO8等多種封裝形式可供選擇。

TelComSemiconductor生產的半導體溫度傳感器主要有TC74、TCN75、TC1066和TC622。TC74是高集成度、小封裝的串行數(shù)字輸出溫度傳感器,封裝形式為5腳SOT-23。TCN75是采用2-wire串行接口的溫度傳感器,工作溫度范圍-55~+125℃,封裝形式有8腳的SOIC和MSOP兩種;TC1066是采用符合ACPI標準的SMBus2-wire串行接口的溫度傳感器,外接二極管輸入,用硬件方式實現(xiàn)過熱保護,工作溫度范圍-55~+125℃,封裝形式為16腳QSOP。該溫度傳感器后向兼容Maxim的MAX1617,在未用的管腳上增加硬件方式實現(xiàn)的過熱保護功能。TC622是低價溫度傳感器,只需一個外接電阻,便可設定控制溫度,工作溫度范圍-40~+125℃,最高結溫+150℃,封裝有8腳PDIP、8腳SOIC和5腳TO-220三種形式[3]。2.4溫度傳感器DS18B20介紹溫度傳感器DS18B20主要性能溫度傳感器是美國DALLAS半導體公司最新推出的一種改良型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)9~12位的數(shù)字值讀數(shù)方式。DS18B20的性能特點如下:

●獨特的單線接口僅需要一個端口引腳進行通信;

●多個DS18B20可以并聯(lián)在惟一的三線上,實現(xiàn)多點組網功能;

●無須外部器件;

●可通過數(shù)據(jù)線供電,電壓范圍為3.0~5.5V;

●零待機功耗;

●溫度以9或12位數(shù)字;

●用戶可定義報警設置;

●報警搜索命令識別并標志超過程序限定溫度〔溫度報警條件〕的器件;

●負電壓特性,電源極性接反時,溫度計不會因發(fā)熱而燒毀,但不能正常工作;2.4.2DS18B20的外部結構圖2.1DS18B20的外部結構DS18B20的外形如一只三極管,引腳名稱及作用如下:GND:接地端。DQ:數(shù)據(jù)輸入輸出腳,與TTL電平兼容。VDD:可接電源,也可以接地。因為DS18B20可以設置成兩種供電方式,即數(shù)據(jù)總線供電方式和外部供電方式。采用數(shù)據(jù)總線供電方式時VDD接地,可以節(jié)省一根傳輸線,但完成數(shù)據(jù)測量的時間會因此而延長;采用外部供電方式那么VDD接+5V,多用一根導線,但測量速度比擬快。2.4.3DS18B20內部結構64位ROM和單線接口64位ROM和單線接口存儲和控制邏輯高速緩存器溫度傳感器高溫觸發(fā)器TH低溫觸發(fā)器TL匹配存放器8位CRC發(fā)生器電源檢測CDQVDD內部電源VDD圖2.2上圖出示了DS18B20的主要內部部件,下面對DS18B20內部局部進行的描述:2.4.3.164位ROM。64位ROM是由廠家使用激光刻錄的一個64位二進制ROM代碼,是該芯片的標識號,如下所示。8位循環(huán)冗余檢驗8位循環(huán)冗余檢驗48位序列號8位分類編號〔10H〕MSBLSBMSBLSBMSBLSB第1個8位表示產品分類編號,DS18B20的分類號為10H;接著為48位序列號。它是一個大于281*1012的十進制編碼,作為該芯片的唯一標示代碼;最后8位為前56位的CRC循環(huán)冗余校驗碼,由于每個芯片的64位ROM代碼不同,因此在單總線上能夠并接多個DS18B20進行多點溫度實習檢驗。2.4.3.2溫度傳感器。溫度傳感器是DS18B20大的核心局部,該功能部件可完成對溫度的測量通過軟件編程可將-55~125℃范圍內的溫度值按9位、10位、11位、12位的分辨率進行量化,以上的分辨率都包括一個符號位,因此對應的溫度量化值分別為0.5℃、0.25℃、0.125℃、0.0625℃,即最高分辨率為0.0625℃。芯片出廠時默認為12位的轉換精度。當接收到溫度轉換命令〔44H〕后,開始轉換,轉換完成后的溫度以16位帶符號擴展的的二進制補碼形式表示,存儲在高速緩存器RAM的第0,1字節(jié)中,二進制數(shù)的前5位是符號位。如果測得的溫度大于0,這5位為0,只要將測得的數(shù)值乘上0.0625即可得到實際溫度;如果溫度小于0,這5位為1,測得的數(shù)值需要取反加1再乘上0.0625即可得到實際溫度。2.4.3.3高速緩存器。DS18B20內部的高速緩存器包括一個高速暫存器RAM和一個非易失性可電擦除的EEPROM。非易失性可點擦除EEPROM用來存放高溫觸發(fā)器TH、低溫觸發(fā)器TL和配置存放器中的信息。2.4.3.4配置存放器。配置存放器的內容用于確定溫度值的數(shù)字轉換率。DS18B20工作是按此存放器的分辨率將溫度轉換為相應精度的數(shù)值,它是高速緩存器的第5個字節(jié),該字節(jié)定義如下。TMTMR0R111111TM是測試模式位,用于設置DS18B20在工作模式還是在測試模式。在DS18B20出廠時該位被設置為0,用戶不要去改動;R1和R0用來設置分辨率;其余5位均固定為1.DS18B20分辨率的設置如下表2.1所示。表2.1DS18B20分辨率R1R10011R00101分辨率9位10位11位12位最大轉換時間/ms93.75187.5375750DS18B20依靠一個單線端口通訊。在單線端口條件下,必須先建立ROM操作協(xié)議,才能進行存儲器和控制操作。因此,控制器必須首先提供下面5個ROM操作命令之一:1〕讀ROM;2〕匹配ROM;3〕搜索ROM;4〕跳過ROM;5〕報警搜索。這些命令對每個器件的激光ROM局部進行操作,在單線總線上掛有多個器件時,可以區(qū)分出單個器件,同時可以向總線控制器指明有多少器件或是什么型號的器件。成功執(zhí)行完一條ROM操作序列后,即可進行存儲器和控制操作,控制器可以提供6條存儲器和控制操作指令中的任一條。一條控制操作命令指示DS18B20完成一次溫度測量。測量結果放在DS18B20的暫存器里,用一條讀暫存器內容的存儲器操作命令可以把暫存器中數(shù)據(jù)讀出。溫度報警觸發(fā)器TH和TL各由一個EEPROM字節(jié)構成。如果沒有對DS18B20使用報警搜索命令,這些存放器可以做為一般用途的用戶存儲器使用??梢杂靡粭l存儲器操作命令對TH和TL進行寫入,對這些存放器的讀出需要通過暫存器。所有數(shù)據(jù)都是以最低有效位在前的方式進行讀寫。2.4.4DS18B20供電方式DS18B20可以采用外部電源供電和寄生電源供電兩種模式。外部電源供電模式是將DS18B20的GND直接接地,DQ與但單總線相連作為信號線,VDD與外部電源正極相連。如圖2.3所示。單片機單片機DS18B20外部+5V電源VDDDQ4.7K+5V其它單線器件圖2.3DS18B20外部供電方式寄生電源供電模式如圖2.4所示。從圖中可知,DS18B20的GND和VDD均直接接地,DQ與單總線相連,單片機其中一個I/O口與DS18B20的DQ相連。+5V單片機+5V單片機DS18B20GND4.7K圖2.4DS18B20寄生電源供電方式+5V2.4.5DS18B20的ROM命令1.DeadROM〔讀ROM〕.命令代碼為33H,允許主設備讀出DS18B20的64位二進制ROM代碼。該命令只適用于總線上存在單個DS18B20.2.MatchROM〔匹配ROM〕。命令代碼為55H,假設總線上有多個從設備時,適用該命令可選中某一指定的DS18B20,即只有和64位二進制ROM代碼完全匹配的DS18B20才能響應其操作。3.SkipROM(跳過ROM)。命令代碼為CCH,在啟動所有DS18B20轉換之前或系統(tǒng)只有一個DS18B20時,該命令將允許主設備不提供64位二進制ROM代碼就適用存儲器操作命令。4.SearchROM(搜索ROM)。命令代碼為F0H,當系統(tǒng)初次啟動時,主設備可能不知縱向上有多少個從設備或者它們的ROM代碼,適用該命令可確定系統(tǒng)中的從設備個數(shù)及其RON代碼。5.AlarmROM〔報警搜索ROM〕。命令代碼為ECH,該命令用于鑒別和定位系統(tǒng)中超出程序設定的報警溫度值。6.Writescratchpad(寫暫存器)。命令代碼為4EH,允許主設備向DS18B20的暫存器寫入兩個字節(jié)的數(shù)據(jù),其中第一個字節(jié)寫入TH中,第二個字節(jié)寫入TL中。可以在任何時刻發(fā)出復位命令終止數(shù)據(jù)的寫入。7.Readscratchpad(讀暫存器)。命令代碼為BEH,允許主設備讀取暫存器中的內容。從第一個字節(jié)開始直到讀完第九個字節(jié)CRC讀完。也可以在任何時刻發(fā)出復位命令中止數(shù)據(jù)的讀取操作。8.Copyscratchpad(復制暫存器)。命令代碼為48H,將溫度報警觸發(fā)器TH和TL中的字節(jié)復制到非易失性EEPROM。假設主機在該命令之后又發(fā)出讀操作,而DS18B20又忙于將暫存器中的內容復制到EEPROM時,DS18B20就會輸出一個“0”,假設復制結束,那么DS18B20輸出一個“1”。9.ConvertT(溫度轉換)。命令代碼為44H,啟動一次溫度轉換,假設主機在該命令之后又發(fā)出其它操作,而DS18B20又忙于溫度轉換,DS18B20就會輸出一個“0”,假設轉換結束,那么DS18B20輸出一個“1”。10.RecallE2(拷回暫存器)。命令代碼為B8H。將溫度報警觸發(fā)器TH和TL中的字節(jié)從EEPROM中拷回到暫存器中。該操作是在DS18B20上電時自動執(zhí)行,假設執(zhí)行該命令后又發(fā)出讀操作,DS18B20會輸出溫度轉換忙標識:0為忙,1完成。11.Readpowersupply(讀電源使用模式)。命令代碼為B4H。主設備將該命令發(fā)給DS18B20后發(fā)出讀操作,DS18B20會返回它的電源使用模式:0為寄生電源,1為外部電源。2.4.6DS18B20的測溫原理DS18B20的測溫原理如圖2.5所示。其主要由斜率累加器、溫度系數(shù)振蕩器、減法計數(shù)器、溫度存儲器等功能部件組成。DS1820是這樣測溫的:用一個高溫度系數(shù)的振蕩器確定一個門周期,內部計數(shù)器在這個門周期內對一個低溫度系數(shù)的振蕩器的脈沖進行計數(shù)來得到溫度值。計數(shù)器被預置到對應于-55℃的一個值。如果計數(shù)器在門周期結束前到達0,那么溫度存放器〔同樣被預置到-55℃〕的值增加,說明所測溫度大于-55℃。同時,計數(shù)器被復位到一個值,這個值由斜坡式累加器電路確定,斜坡式累加器電路用來補償感溫振蕩器的拋物線特性。然后計數(shù)器又開始計數(shù)直到0,如果門周期仍未結束,將重復這一過程。斜坡式累加器用來補償感溫振蕩器的非線性,以期在測溫時獲得比擬高的分辨率。這是通過改變計數(shù)器對溫度每增加一度所需計數(shù)的值來實現(xiàn)的。因此,要想獲得所需的分辨力,必須同時知道在給定溫度下計數(shù)器的值和每一度的計數(shù)值。圖2.5DS18B20的測溫原理DS18B20內部對此計算的結果可提供0.5℃的分辨率。溫度以16bit帶符號位擴展的二進制補碼形式讀出,表1給出了溫度值和輸出數(shù)據(jù)的關系。數(shù)據(jù)通過單線接口以串行方式傳輸。DS18B20測溫范圍-55℃~+125℃,以0.5℃遞增。溫度/數(shù)據(jù)關系〔見表2.2〕表2.2DS18B20溫度/數(shù)據(jù)關系溫度溫度℃數(shù)據(jù)輸出〔二進制〕+125+25+0.50-0.5-25-55000000001111101000000000001100100000000000000001000000000000000011111111111111111111111111001110111111111001001000FA003200010000FFFFFFCEFF92數(shù)據(jù)輸出〔十六進制〕DS18B20遵循單總線協(xié)議,每次測溫時都必須有4個過程:?初始化;?傳送ROM操作命令;?傳送ROM操作命令;?數(shù)據(jù)交換;第三章智能溫度傳感器的硬件設計3.1智能溫度傳感器的整體設計及工作原理智能溫度傳感器設計是由硬件和軟件兩局部組成。硬件局部主要由單片機AT89S52,多路溫度傳感器DS18B20,1602液晶顯示器,聲光報警電路,串行通信電路組成。其硬件總體結構圖如圖3.1所示。AT89S52溫度傳感器按鍵設定溫度顯示超溫報警計算機圖3.1溫度傳感器結構圖本設計主要由單片機、溫度采集模塊、溫度顯示模塊、按鍵設定模塊和超溫報警模塊組成。本系統(tǒng)能實現(xiàn)多路溫度實時測量,同時顯示在1602液晶顯示器上;能實現(xiàn)設定溫度,超溫報警;通過串行通信電路,將溫度采集數(shù)據(jù)傳送到上位機。3.2硬件系統(tǒng)電路圖圖3.2系統(tǒng)電路圖系統(tǒng)主要組成局部:主要由單總線數(shù)字溫度傳感器DS18B20組成的溫度采集模塊,它通過溫度信號采集并經溫度轉換后把信號輸入單片機,然后送1602進行顯示。同時由單片機控制是否進行報警。單片機同時可以將溫度采集數(shù)據(jù)通過串行通信電路傳送到上位機。也可以輸出控制點頻信號。3.3單片機AT89S52介紹3.3.1單片機AT89S52的主要性能〔1〕與MCS-51單片機產品兼容

〔2〕8K字節(jié)在系統(tǒng)可編程Flash存儲器

〔3〕1000次擦寫周期

〔4〕全靜態(tài)操作:0Hz~33MHz

〔5〕三級加密程序存儲器〔6〕32個可編程I/O口線

〔7〕三個16位定時器/計數(shù)器

〔8〕八個中斷源

〔9〕全雙工UART串行通道

〔10〕低功耗空閑和掉電模式

〔11〕掉電后中斷可喚醒

〔12〕看門狗定時器

〔13〕雙數(shù)據(jù)指針

〔14〕掉電標識符

AT89S52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲器。使用Atmel公司高密度非易失性存儲器技術制造,與工業(yè)80C51產品指令和引腳完全兼容[5]。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,使得AT89S52為眾多嵌入式控制應用系統(tǒng)提供高靈活、超有效的解決方案。AT89S52具有以下標準功能:8k字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時器,2個數(shù)據(jù)指針,三個16位定時器/計數(shù)器,一個6向量2級中斷結構,全雙工串行口,片內晶振及時鐘電路。另外,AT89S52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。3.3.2AT89S52封裝圖及方框圖圖3.3AT89S52封裝圖圖3.4AT89S52方框圖·GND:接地。

·P0口:P0口為一個8位漏級開路的雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。

·P1口:P1口是一個內部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收?!2口:P2口為一個內部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能存放器的內容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。

·P3口:P3口管腳是8個帶內部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流〔ILL〕這是由于上拉的緣故。

P3口也可作為一些特殊功能口,如表3.1所示。表3.1P3口第2功能表引腳第2功能P3.0RXD〔串行口輸入端〕P3.1TXD〔串行口輸出端〕P3.2INT0〔外部中斷0請求輸入端,低電平有效〕P3.3INT1〔外部中斷1請求輸入端,低電平有效〕P3.4T0〔定時器/記時器0計數(shù)脈沖輸入端〕P3.5T1〔定時器/記時器1計數(shù)脈沖輸入端〕P3.6WR〔外部數(shù)據(jù)存儲器寫選通信號輸出端,低電平有效〕P3.7RD〔外部數(shù)據(jù)存儲器讀選通信號輸出端,低電平有效〕·RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。

·ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的低8位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時,ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。

·PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的PSEN信號將不出現(xiàn)。

·/EA/VPP:當/EA保持低電平時,那么在此期間外部程序存儲器〔0000H-FFFFH〕,不管是否有內部程序存儲器。注意加密方式1時,/EA將內部鎖定為RESET;當/EA端保持高電平時,此間內部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源〔VPP〕。

·XTAL1:反向振蕩放大器的輸入及內部時鐘工作電路的輸入。

·XTAL2:來自反向振蕩器的輸出。圖3.5為單片機復位參考電路。圖3.5單片機復位參考電路[4]圖3.6為MCS-51單片機時鐘參考電路圖3.6單片機時鐘參考電路[4]3.3.3AT89S52存儲器配置3.3.3.1存儲器結構程序存儲器:如果EA引腳接地,程序讀取只從外部存儲器開始。對于89S52,如果EA接VCC,程序讀寫先從內部存儲器〔地址為0000H~1FFFH〕開始,接著從外部尋址,尋址地址為:2000H~FFFFH。數(shù)據(jù)存儲器:AT89S52有256字節(jié)片內數(shù)據(jù)存儲器。高128字節(jié)與特殊功能存放器重疊。也就是說高128字節(jié)與特殊功能存放器有相同的地址,而物理上是分開的。當一條指令訪問高于7FH的地址時,尋址方式決定CPU訪問高128字RAM還是特殊功能存放器空間。直接尋址方式訪問特殊功能存放器〔SFR〕。3.3.3.2看門狗定時器WDT是一種需要軟件控制的復位方式。WDT由13位計數(shù)器和特殊功能存放器中的看門狗定時器復位存儲器〔WDTRST〕構成。WDT在默認情況下無法工作;為了激活WDT,用戶必須往WDTRST存放器〔地址:0A6H〕中依次寫入01EH和0E1H。當WDT激活后,晶振工作,WDT在每個機器周期都會增加。WDT計時周期依賴于外部時鐘頻率。除了復位〔硬件復位或WDT溢出復位〕,沒有方法停止WDT工作。當WDT溢出,它將驅動RSR引腳一個高個電平輸出。WDT的使用:為了激活WDT,用戶必須向WDTRST存放器〔地址為0A6H的SFR〕依次寫入0E1H和0E1H。當WDT激活后,用戶必須向WDTRST寫入01EH和0E1H喂狗來防止WDT溢出。當計數(shù)到達8191(1FFFH)時,13位計數(shù)器將會溢出,這將會復位器件。晶振正常工作、WDT激活后,每一個機器周期WDT都會增加。為了復位WDT,用戶必須向WDTRST寫入01EH和0E1H〔WDTRST是只讀存放器〕。WDT計數(shù)器不能讀或寫。當WDT計數(shù)器溢出時,將給RST引腳產生一個復位脈沖輸出,這個復位脈沖持續(xù)96個晶振周期〔TOSC〕,其中TOSC=1/FOSC。為了很好地使用WDT,應該在一定時間內周期性寫入那局部代碼,以防止WDT復位。掉電和空閑方式下的WDT:在掉電模式下,晶振停止工作,這意味這WDT也停止了工作。在這種方式下,用戶不必喂狗。有兩種方式可以離開掉電模式:硬件復位或通過一個激活的外部中斷。通過硬件復位退出掉電模式后,用戶就應該給WDT喂狗,就如同通常AT89S52復位一樣。通過中斷退出掉電模式的情形有很大的不同。中斷應持續(xù)拉低很長一段時間,使得晶振穩(wěn)定。當中斷拉高后,執(zhí)行中斷效勞程序。為了防止WDT在中斷保持低電平的時候復位器件,WDT直到中斷拉低后才開始工作。這就意味著WDT應該在中斷效勞程序中復位。為了確保在離開掉電模式最初的幾個狀態(tài)WDT不被溢出,最好在進入掉電模式前就復位WDT。在進入待機模式前,特殊存放器AUXR的WDIDLE位用來決定WDT是否繼續(xù)計數(shù)。默認狀態(tài)下,在待機模式下,WDIDLE=0,WDT繼續(xù)計數(shù)。為了復位AT89S52,用戶應該建立一個定時器,定時離開待機模式,喂狗,再重新進入待機模式。3.3.3.3定時器定時器0和定時器1:定時器0和定時器1與AT89C21和AT89C52一樣.定時器2:定時器2是一個16位定時/計數(shù)器,它既可以做定時器,又可以做事件計數(shù)器。其工作方式由特殊存放器T2CON中的C/T2位選擇〔如表2所示〕。定時器2有三種工作模式:捕捉方式、自動重載〔向下或向上計數(shù)〕和波特率發(fā)生器。如表3所示,工作模式由T2CON中的相關位進行選擇。定時器2有2個8位存放器:TH2和TL2。在定時工作方式中,每個機器周期,TL2存放器都會加1。由于一個機器周期由12個晶振周期構成,因此,計數(shù)頻率就是晶振頻率的1/12。TF2EXF2RCLKTCLKEXEN2TR2C/T2CP/RL276543210表3.2T2CON:定時器/計數(shù)器2控制存放器表3.3定時器2的工作模式符號功能TF2定時器2溢出標志位,必須軟件清0,RCLK=1或TCLK=1,TF2不用置位EXF2定時器2外部標志位,EXEN2=1時,T2EX上的負跳變出現(xiàn)或者重載時,EXEF2會被硬件置位。定時器2翻開。EXF2=1,將引導CPU執(zhí)行定時器2中斷程序。RCLK串行口接收數(shù)據(jù)時鐘標志位,假設RCLK=1,串行口將使用定時器2溢出脈沖作為串行口工作方式1和工作方式3的串口接收時鐘。TCLK=0將使用定時器1計數(shù)溢出作為串口接收時鐘TCLK串行口發(fā)送數(shù)據(jù)時鐘標志位。當EXEN2=1時,如果定時器2沒有作為串行時鐘,T2EX的負跳變引起定時器2捕捉和重載,假設EXEN2=0,定時器2將視T2EX為無效。EXEN2定時器2外部允許標志位,當EXEN2=1時,如果定時器2沒有用作T2EX的負跳變引起定時器2捕捉和重載,假設EXEN2=0,定時器2將視T2EX為無效。TR2開始/停止控制定時器2,假設TR2=1,定時器2開始工作C/T2定時器2定時/計數(shù)選擇標志位,C/T2=0開始計時,C/T2=1外部事件計數(shù)?!蚕陆笛赜|發(fā)〕CP/RL2捕捉重載標志位,當EXEN2=1時,如果定時器2沒有作為串行時鐘,T2EX的負跳變引起定時器2捕捉和重載,假設EXEN2=0,定時器2將視T2EX為無效。定時器2強制自動重載。表3.4定時器2的工作模式RCLK+TCLKCP/RL2TR2MODE00116位自動重載01116位捕捉1X1波特率發(fā)生器XX0〔不用〕在計數(shù)工作方式下,存放器在相關外部輸入角T2發(fā)生1至0的下降沿時增加1。在這種方式下,每個機器周期的S5P2期間采樣外部輸入。一個機器周期采樣到高電平,而下一個周期采樣到低電平,計數(shù)器將加1。在檢測到跳變的這個周期的S3P1期間,新的計數(shù)值出現(xiàn)在存放器中。因為識別1-0的跳變需要2個機器周期〔24個晶振周期〕,所以,最大的計數(shù)頻率不高于晶振頻率的1/24。為了確保給定的電平在改變前采樣到一次,電平應該至少在一個完整的機器周期內保持不變。3.3.3.4中斷AT89S52有6個中斷源:兩個外部中斷〔INT0和INT1〕,三個定時中斷〔定時器0、1、2〕和一個串行中斷。每個中斷源都可以通過置位或去除特殊存放器IE中的相關中斷允許控制位分別使得中斷源有效或無效。IE還包括一個中斷允許總控制位EA,它能一次禁止所有中斷[5]。如表3.5所示,IE.6位是不可用的。對于AT89S52,IE.5位也是不能用的。用戶軟件不應給這些位寫1。它們?yōu)锳T89系列新產品預留定時器2可以被存放器T2CON中的TF2和EXF2的或邏輯觸發(fā)。程序進入中斷效勞后,這些標志位都可以由硬件清0。實際上,中斷效勞程序必須判定是否是TF2或EXF2激活中斷,標志位也必須由軟件清0。定時器0和定時器1標志位TF0和TF1在計數(shù)溢出的那個周期的S5P2被置位。它們的值一直到下一個周期被電路捕捉下來。然而,定時器2的標志位TF2在計數(shù)溢出的那個周期的S2P2被置位,在同一個周期被電路捕捉下來。EA—ET2ESET1EX1ET0EX0中斷允許控制位=1允許中斷中斷允許控制位=0禁止中斷表3.5符號地址位功能EAIE.7中斷允許總控制位。EA=0,中斷總禁止:EA=1,各中斷由各自的控制位設定-IE.6預留ET2IE.5定時器2中斷允許控制位ESIE.4串行口中斷允許控制位ET1IE.3定時器1中斷允許控制位EX1IE.2外部中斷1允許控制位ET0IE.1定時器0中斷允許控制位EX0IE.0外部中斷1允許控制位3.4多路DS18B20測溫本設計的溫度采集使用的是DS18B20,且是一個多路采集系統(tǒng)?!苍诒疚牡牡诙鹿?jié)已經重點介紹DS18B20,在此就不重復介紹了〕采用外部供電的方式,只需在DS18B20的DQ數(shù)據(jù)輸入/輸出端接入4.7K的上拉電阻到VCC即可實現(xiàn)供電方式[5]。多路測溫電路圖如圖3.7所示。圖3.7多路DS18B20測溫電路圖3.5LCM1602B液晶顯示介紹液晶顯示模塊具有體積小、功耗低、顯示內容豐富等特點,現(xiàn)在字符型液晶顯示模塊已經是單片機應用設計中最常用的信息顯示器件了。本設計以常見的LCM1602B字符型LCD模塊為例,介紹該模塊的簡單使用。LCM1602B可以顯示2行16個字符,有8位數(shù)據(jù)總線D0-D7,和RS、R/W、EP三個控制端口,工作電壓為5V,并且?guī)в凶址日斩日{節(jié)和背光。該模塊也可以只用D4-D7作為四位數(shù)據(jù)分兩次傳送,這樣的話可以節(jié)省MCU的I/O口資源。LCM1602B外觀如下列圖3.8所示。圖3.8LCM1602B液晶顯示模塊3.5.1LCM1602B技術參數(shù)顯示容量:32個字符,每個字符為5*7點陣,分2行,每行16列芯片工作電壓:4.5~5.5V工作電流:2mA〔5.0V〕模塊最正確工作電壓:5.0V字符尺寸:2.95*4.35〔W*H〕mm3.5.21602B引腳說明表3.61602B引腳說明編號符號引腳說明編號符號引腳說明1VSS電源地9D2雙向數(shù)據(jù)口2VDD電源正極10D3雙向數(shù)據(jù)口3VL比照度調節(jié)11D4雙向數(shù)據(jù)口4RS數(shù)據(jù)/命令選擇12D5雙向數(shù)據(jù)口5R/W讀/寫選擇13D6雙向數(shù)據(jù)口6EP模塊使能端14D7雙向數(shù)據(jù)口7D0雙向數(shù)據(jù)口15BLA背光源正極8D1雙向數(shù)據(jù)口16BLK背光源地考前須知:從該模塊的正面看,引腳排列從右向左為:15腳、16腳,然后才是1~14腳(線路板上已經標明)。VDD:電源正極,4.5~5.5V,通常使用5V電壓;VL:LCD比照度調節(jié)端,電壓調節(jié)范圍為0~5V。接正電源時比照度最弱,接地電源時比照度最高,但比照度過高時會產生“鬼影”,因此通常使用一個10K的電位器來調整比照度,或者直接串接一個電阻到地;RS:MCU寫入數(shù)據(jù)或者指令選擇端。MCU要寫入指令時,使RS為低電平;MCU要寫入數(shù)據(jù)時,使RS為高電平;R/W:讀寫控制端。R/W為高電平時,讀取數(shù)據(jù);R/W為低電平時,寫入數(shù)據(jù);EP:LCD模塊使能信號控制端。寫數(shù)據(jù)時,需要下降沿觸發(fā)模塊;D0~D7:8位數(shù)據(jù)總線,三態(tài)雙向。如果MCU的I/O口資源緊張的話,該模塊也可以只使用4位數(shù)據(jù)線D4~D7接口傳送數(shù)據(jù)。本充電器就是采用4位數(shù)據(jù)傳送方式;BLA:LED背光正極。需要背光時,BLA串接一個限流電阻接VDD,BLK接地,實測該模塊的背光電流為50mA左右;BLK:LED背光地端。3.5.3針腳引線1,2,3針:根據(jù)上面的表格,把第一針(VSS),第二(VDD),第三(VL)叫做電源接線。第一根是地線,必須把它接到地上;第二根是+5V的電源線。第三根線(VL)是LCD比照對的調整,本設計使用一個電位器來調節(jié)LCD的比照度。4,5,6針:Pin4〔RS〕,Pin5〔R/W〕,Pin6〔EP〕是用來控制LCD的。Pin4是選擇存放器,如果該針是低電平,那么LCD通過發(fā)送命令可以感知到數(shù)據(jù);如果是高電平,那么LCD可以發(fā)送或者接收8/4位的字符數(shù)據(jù)。Pin5讀寫線,如果該針是低電平,可以向LCD寫字符,如果是高電平可以讀取字符數(shù)據(jù)或者狀態(tài)信息。7,8,9,10,11,12,13,14針:這8條線是數(shù)據(jù)線,可以從LCD傳輸或者獲取數(shù)據(jù),每次8位或者4位。15,16針:這兩根針是為了LCD的背光設計的,背光非常適合于用在昏暗的環(huán)境,我們經??梢钥吹蕉喾N背光顏色的LCD。3.5.4LCD的連接大局部的LCD都有14根連線,他們是D0-D7(數(shù)據(jù)線),EP(使能信號),R/W(讀寫信號),RS(存放器選擇),VL(比照度),VDD或者VCC(+5伏電源),VSS(地線)。因此對于一個標準的無背光LCD有8條數(shù)據(jù)線,3條電源線和3條控制線。如果LCD擁有背光,那么需要附加2條線,分別是(BLA)和(BLK或者地線)。3.5.5液晶LCD顯示電路圖3.9液晶LCD顯示電路3.6串行通信電路的設計RS232C接口特性:MAX232具有驅動能力,所以不需要外加驅動電路。鑒于AT89S52單片機的串口采用TTL電平,與PC機串行接口的電氣標準不一致,通信中采用RS232C標準接口。該接口具有使用方便,連接線少等優(yōu)點[7]。RS232C接口電氣特性見表3.7。表3.7RS232C接口電氣特性驅動器輸出電平(3~7kΩ)1:-5~-15V0:+5~+15V不帶負載時的驅動器輸出電平-25~+25V驅動器時的輸出阻抗>300Ω輸出短路電流<0.5A驅動器轉換速率<30V/μs接收器輸入阻抗3~7kΩ接收器輸入電壓的允許范圍-25~+25V輸入開路時接收器的輸出邏輯1輸入經3008接地時接收器的輸出邏輯1+3V輸入時接收器的輸出邏輯0-3V輸入時接收器的輸出邏輯1最大負載電容2500pFTTL與RS232C電平轉換:RS232C電平采用負邏輯,即邏輯1:-3~-15V,邏輯0:+3~+15V,而單片機使用的TTL電平中,高電平(3.5~5V)為邏輯1,低電平(0~0.8V)為邏輯0。單片機要外接電平轉換電路芯片把TTL高電平表示的1轉換成RS232C的負電壓信號,把低電平表示的0轉換成RS232C的正電壓信號[8]。RS232C的邏輯電平與TTL的邏輯電平關系比擬見表3.8。表3.8RS232C的邏輯電平與TTL的邏輯電平比擬邏輯電平RS232CTTL0+3~+15V≤+0.4V1-3~-15V≥+2.4V可見,要使得AT89S52與RS232C正常通信的關鍵是要解決電平轉換問題,本系統(tǒng)采用MAXIM公司的單一+5V供電的MAX232C電平轉換芯片來實現(xiàn),傳輸速率為120kb/s。該芯片具有使用簡單等優(yōu)點,僅需外接幾個電容即可完成從TTL電平到RS232C電平的轉換,同時也防止了供電電源的復雜性[9]。硬件接線圖如下列圖3.9所示。圖3.10串行通信電路3.7報警電路設計在煤礦生產過程中,最重要的就是平安。本文所設計的溫度傳感器具有實時報警功能。本設計的報警功能是由蜂鳴器來實現(xiàn)的。當溫度傳感器測得溫度高于設定的值,那么單片機P25就會輸出高電平,蜂鳴器就開始工作,進行報警。本報警電路本錢十分低廉,且功能運行十分穩(wěn)定。報警電路圖如圖3.10。圖3.11報警電路圖[10]第四章智能溫度傳感器的軟件設計本系統(tǒng)軟件設計主要包括主程序以及各個模塊程序:溫度采集模塊、溫度顯示模塊、按鍵設定模塊、超溫報警模塊和上位機通信等,以及擴展功能的假設干個控制子程序。主程序分別調用這些子程序實現(xiàn)對液晶顯示器、溫度報警、按鍵控制和上位機通信的操作控制。4.1主程序流程圖開始開始初始化數(shù)據(jù)采集并進行高精度A/D轉換CPU計算并得到溫度值輸入值大于設定值進行鈴聲報警程序啟動控制系統(tǒng)結束顯示當前溫度值NY圖4.1主程序流程圖主程序開始運行,先由DS18B20進行溫度數(shù)據(jù)采集以及A\D轉換,然后將數(shù)據(jù)傳送給單片機。由單片機進行處理,然后進入循環(huán)程序,調用測溫函數(shù)進行測溫,調用顯示函數(shù)實現(xiàn)顯示。并且在溫度到達設定的報警值時進行蜂鳴器報警。4.2測溫子程序流程圖開始開始設置DQ為1初始化DS18B20是否成功寫DS18B20命令,跳過ROM命令設置長時間延遲初始化DS18B20是否成功寫DS18B20命令,開始測溫循環(huán)取得溫度返回主程序YNYN圖4.2測溫子程序流程圖準備測溫時首先要將DS18B20的DQ設置為高電平,接著初始化DS18B20,初始化成功后,DS18B20接收單片機的命令,然后再次初始化DS18B20在成功后啟動測溫,然后將溫度保存起來,返回。在測得溫度后,DS18B20會將溫度數(shù)據(jù)轉換為十進制數(shù)的溫度表示,然后再通過查表〔在C語言中是一個數(shù)組〕調用液晶1602顯示在液晶上,數(shù)據(jù)處理類似于由二進制轉換為十進制,再由十進制轉換為ASCII碼。測溫子程序流程圖如圖4.2。4.3顯示子程序流程圖入口入口初始化1602延時5ms檢測忙信號SAT7=0?獲得顯示RAM地址延時5ms寫入相應的數(shù)據(jù)數(shù)據(jù)顯示完畢返回主程序NYNY圖4.3顯示子程序第五章智能溫度傳感器系統(tǒng)調試系統(tǒng)調試是對所設計的系統(tǒng)進行硬件調試,軟件調試以及綜合調試。系統(tǒng)調試可分靜態(tài)調試和動態(tài)條是兩步進行。5.1智能溫度傳感器靜態(tài)調試靜態(tài)調試是在用戶系統(tǒng)未工作時的一種硬件檢查。在硬件的檢查過程中,一般分三個步驟:一,

溫馨提示

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

最新文檔

評論

0/150

提交評論