邵陽學(xué)院信息工程系 付藝豪 許建明 李 忠
?
基于DS18B20的數(shù)字溫度計設(shè)計
邵陽學(xué)院信息工程系付藝豪許建明李忠
【摘要】文章介紹了基于單片機(jī)的溫度檢測及其顯示系統(tǒng)設(shè)計,主要是以DS18B20溫度傳感器作為基礎(chǔ)進(jìn)行溫度檢查,利用單片機(jī)模塊的處理功能,在液晶顯示器上顯示相應(yīng)的檢查溫度。本系統(tǒng)主要由三個模塊組成:單片機(jī)核心控制模塊、DS18B20溫度檢測模塊、液晶屏顯示模塊。硬件部分介紹了系統(tǒng)中各個單元模塊的原理,軟件部分介紹了系統(tǒng)的軟件結(jié)構(gòu)和系統(tǒng)的程序?qū)崿F(xiàn)。本設(shè)計有著成本低、功耗低、實用性強(qiáng)等優(yōu)點(diǎn),具有很好的應(yīng)用價值。
【關(guān)鍵詞】單片機(jī);液晶顯示器;溫度傳感器
在現(xiàn)代工業(yè)生產(chǎn)過程中,電量或非電量是重要的被控參數(shù),其中溫度是最常見的被控量,在各種生產(chǎn)和生活的領(lǐng)域中,人們經(jīng)常要對鍋爐、加熱爐、熱處理裝置等各種設(shè)備進(jìn)行溫度的檢測和控制。由于智能電子技術(shù)的發(fā)展,微處理器已經(jīng)替代了傳統(tǒng)技術(shù)的溫度測量和控制方法,特別利用單片機(jī)測溫和控溫的裝置不僅具有數(shù)碼顯示、簡單靈活、電路簡單、成本低廉等優(yōu)點(diǎn),而且可以提高被控溫度的測量精度,提高設(shè)備的性能。本文介紹一種基于單總線、數(shù)字化的溫度控制系統(tǒng),并利用Proteus仿真軟件和Keil軟件對系統(tǒng)電路進(jìn)行綜合的虛擬仿真,實現(xiàn)溫度實時測量和數(shù)碼顯示。
系統(tǒng)主要由硬件和軟件兩大部分構(gòu)成,系統(tǒng)框圖如圖1所示。由于DS18B20是單總線A/D器件,先由主控制器對其發(fā)送溫度轉(zhuǎn)換的命令后,DS18B20開始采集被測溫度物理量進(jìn)行溫度轉(zhuǎn)換為電信號操作,在內(nèi)部進(jìn)行A/D轉(zhuǎn)換形成數(shù)字量并存放到內(nèi)部16位寄存器中,再由單片機(jī)對DS18B20進(jìn)行讀取串行數(shù)字量。最后由單片機(jī)對讀出數(shù)字量進(jìn)行處理,在LCD1602液晶顯示器上進(jìn)行顯示。假設(shè)溫度值超過設(shè)定溫度范圍,則單片機(jī)會控制報警裝置進(jìn)行報警。
圖1 系統(tǒng)框圖
2.1單片機(jī)系統(tǒng)
AT89C51單片機(jī)是ATMEL公司研制生產(chǎn)的,具有低電壓、高性能、8位CMOS結(jié)構(gòu)等特點(diǎn)。片內(nèi)包含4k字節(jié)的PEROM和128字節(jié)的RAM,采用ATMEL公司的非易失性存儲、高密度生產(chǎn)技術(shù),兼容MCS-51指令系統(tǒng),內(nèi)置通用8位中央處理器和Flash存儲單元,功能強(qiáng)大的AT89C51單片機(jī)可應(yīng)用在各種要求高性能的應(yīng)用領(lǐng)域和場合。
2.2DS18B20溫度傳感器
DS18B20是DALLAS公司生產(chǎn)的單總線的溫度傳感器,具有3引腳TO-92小體積封裝形式;測量溫度范圍為-55℃到+125℃,利用程序控制可以改變?yōu)?到12位A/D轉(zhuǎn)換精度,溫度測量分辨率可達(dá)0.0625℃,被測溫度利用16位串行數(shù)字量輸出。單片機(jī)只需要一根I/O線就能與多個DS18B20進(jìn)行串行通信,占用微處理器的I/O口線較少,可節(jié)省大量的引腳和電路資源。
2.3LCD1602液晶顯示器
由于液晶顯示器LCD比陰極射線管顯示器CRT、數(shù)碼顯示器LED顯示穩(wěn)定,不閃爍,顯示內(nèi)容多的特點(diǎn),在應(yīng)用過程中采用LCD顯示器更加普遍。單片機(jī)可以直接用數(shù)據(jù)口連接LCD的數(shù)據(jù)口,系統(tǒng)會更加簡單可靠,更加方便操作。本系統(tǒng)采用LCD1602液晶顯示器進(jìn)行溫度顯示,單片機(jī)P2.0-P2.2作為液晶顯示器的控制端口,P0口作為數(shù)據(jù)口,顯示效果完全達(dá)到設(shè)計要求。
圖2 系統(tǒng)仿真圖
系統(tǒng)軟件的設(shè)計關(guān)鍵在于DS18B20的時序控制。DS18B20屬于單總線溫度傳感器,利用一根數(shù)據(jù)線對數(shù)據(jù)的雙向傳輸,數(shù)據(jù)的傳輸時序或協(xié)議就非常重要,對數(shù)據(jù)讀寫提出嚴(yán)格的時序規(guī)定,而單片機(jī)AT89C51并不能直接進(jìn)行數(shù)據(jù)單線傳輸,必須利用程序進(jìn)行模擬單總線的時序工作。系統(tǒng)的主程序主要通過初始化,發(fā)送啟動指令,獲取溫度,顯示溫度,報警等子程序?qū)崿F(xiàn)。通過一個循環(huán)設(shè)置,使系統(tǒng)不斷地進(jìn)行對溫度的檢測。對電路進(jìn)行仿真測試圖如2所示。
本設(shè)計采用了單片機(jī)控制的溫度檢測系統(tǒng)。采用DS18B20單總線溫度傳感器測量精度高、互換性很好,能直接將溫度的模擬量轉(zhuǎn)換成串行數(shù)字量,只需要一根I/O口線就能夠傳輸溫度數(shù)據(jù),比普通的并行總線要方便簡單,且抗干擾能力強(qiáng)。這種控制系統(tǒng)具有電路簡單、性能穩(wěn)定、成本低廉、擴(kuò)展性強(qiáng)等優(yōu)勢,是現(xiàn)代工業(yè)控制中溫度檢測和控制的優(yōu)良的方案,具有廣泛的實用價值。
參考文獻(xiàn)
[1]江世明,許建明,朱群峰,申壽云.單片機(jī)原理及應(yīng)用[M].上海:上海交通大學(xué)出版社,2013.
[2]郁有文,常健,程繼紅.傳感器原理及工程應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2008.
[3]黃同成.程序設(shè)計基礎(chǔ)教程(c語言)[M].長沙:湖南人民出版社,2011.
付藝豪(1994—),男,貴州貴陽人,大學(xué)本科,現(xiàn)就讀于邵陽學(xué)院信息工程系電子科學(xué)與技術(shù)專業(yè)。
許建明(1977—),男,湖南武岡人,碩士,副教授,主要從事電子技術(shù)研究。
通信作者:
作者簡介: