《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于單片機(jī)的溫度記錄系統(tǒng)
基于單片機(jī)的溫度記錄系統(tǒng)
摘要: 目前檢測溫度一般采用熱電偶或熱敏電阻作為傳感器,。這種傳感器至儀表之間通常都要用專用的溫度補(bǔ)償導(dǎo)線,而溫度補(bǔ)償導(dǎo)線的價格很高,,并且線路太長,,會影響測量精度,,這是直接以模擬量形式進(jìn)行采集的不可避免的問題。
Abstract:
Key words :

  目前檢測溫度一般采用熱電偶或熱敏電阻作為傳感器,。這種傳感器至儀表之間通常都要用專用的溫度補(bǔ)償導(dǎo)線,,而溫度補(bǔ)償導(dǎo)線的價格很高,并且線路太長,,會影響測量精度,這是直接以模擬量形式進(jìn)行采集的不可避免的問題,。在實際應(yīng)用中,,往往需要對較遠(yuǎn)處的溫度信號進(jìn)行監(jiān)視。為此,,設(shè)計了一種用單片機(jī)與數(shù)字溫度傳感器集成的方案,,它可以以更低的成本和更高的精確度實現(xiàn)溫度檢測。

  l 系統(tǒng)綜述

  系統(tǒng)硬件設(shè)計以Atmel公司的AT89S52單片機(jī)為核心,,主要由電源電路,、復(fù)位電路、晶振電路,、串口通訊電路,、溫度傳感器電路、12864液晶顯示電路,、I2C存儲器電路以及按鍵輸入電路構(gòu)成,。溫度采集電路采用單總線數(shù)字溫度傳感器實現(xiàn)溫度采集,可設(shè)計為一路或多路,;溫度存儲電路采用I2C接口E2PRPOM存儲芯片,,以實現(xiàn)數(shù)據(jù)記錄;液晶顯示電路采用圖形點陣液晶顯示器,以實現(xiàn)溫度的即時顯示,。同時配以鍵盤輸入電路,,可以接收用戶指令輸入,隨時改變工作模式,,或查詢?nèi)我鈺r間的溫度數(shù)據(jù),。

  2 硬件系統(tǒng)設(shè)計

  硬件電路設(shè)計總體結(jié)構(gòu)圖如圖1所示。由+5 V電源電路,、手動復(fù)位電路,、晶振電路(11.059 2 MHz)構(gòu)成單片機(jī)最小系統(tǒng),完成單片機(jī)的基本運行需求,。串口電路用于通信,,實現(xiàn)與主機(jī)的交互。溫度采集電路,、1602液晶顯示電路,、I2C存儲器電路為該設(shè)計的三個核心模塊,實現(xiàn)主要設(shè)計功能,,同時實現(xiàn)按鍵輸入電路,。

硬件電路設(shè)計總體結(jié)構(gòu)圖

  2.1 溫度采集電路設(shè)計

  該設(shè)計采用Dallas公司生產(chǎn)的3引腳T0-T2小體積封裝溫度傳感器DSl8820。DSl820是美國Dallas半導(dǎo)體公司推出的第一片支持“單總線”接口的溫度傳感器,。它具有微型化,、低功耗、高性能,,抗干擾能力強(qiáng),,易配微處理器等優(yōu)點,可直接將溫度轉(zhuǎn)化成串行數(shù)字信號,,供微機(jī)處理,。

  溫度測量范圍為-55~+125 ℃,可編程為9~12位A/D轉(zhuǎn)換精度,,被測溫度用符號擴(kuò)展的16位數(shù)字量方式串行輸出,。測溫分辨率可達(dá)O.062 5 ℃,其工作電源既可在遠(yuǎn)端引入,,也可采用寄生電源方式產(chǎn)生,,易于系統(tǒng)集成。多個DSl8820可以并聯(lián)到三根或兩根線上,,CPU只需一根端口線就能與諸多DSl8820通信,,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路,。以上特點使DSl8820非常適用于遠(yuǎn)距離多點溫度檢測系統(tǒng),。溫度傳感器電路圖如圖2所示,。

溫度傳感器電路圖

 

  2.2 I2C存儲器擴(kuò)展電路設(shè)計

  I2C總線(Inter Integrated Circuitbus)包括一條數(shù)據(jù)線(SDA)和一條時鐘線(SCL),是單片機(jī)系統(tǒng)常用的總線結(jié)構(gòu),。這種總線結(jié)構(gòu)盡可能地節(jié)省了單片機(jī)I/O資源,,為多路溫度采集保留了最大的擴(kuò)展空間。

  該設(shè)計中采用的存儲器AT24C16是Atmel公司生產(chǎn)的I2C接口E2PROM芯片,。AT24C16中帶有片內(nèi)尋址寄存器,。每寫入或讀出一個數(shù)據(jù)字節(jié)后,該地址寄存器自動加1,,以實現(xiàn)對下一個存儲單元的操作,,且所有字節(jié)都以單一操作方式讀取。為降低總的寫入時間,,一次操作可寫入多達(dá)8 B的數(shù)據(jù),。I2C存儲器電路圖3所示。

I2C存儲器電路

  2.3 液晶顯示電路設(shè)計

  液晶顯示電路采用1602帶字庫液晶實現(xiàn),。這一液晶模塊,,接口功能明確,操作簡單,,簡化了電路設(shè)計,,自帶字庫極大地方便了顯示操作的實現(xiàn)。

  3 系統(tǒng)功能實現(xiàn)

  系統(tǒng)軟件設(shè)計主要有兩項任務(wù),,是用于不間斷記錄溫度數(shù)據(jù),;二是用于接收用戶輸入,響應(yīng)用戶指令,。

  溫度記錄程序中每隔固定時間間隔采集溫度數(shù)據(jù),,將溫度數(shù)據(jù)與當(dāng)前時間一并記錄。若不擴(kuò)展實時時鐘芯片,,可用軟件方式,依據(jù)時間間隔計算轉(zhuǎn)換得到當(dāng)前時間,,避免使用時鐘芯片增加系統(tǒng)成本,。對于用戶按鍵輸入,以外部中斷方式予以響應(yīng),。

  該設(shè)計中沒有采用操作系統(tǒng),,因此,多任務(wù)的調(diào)度是系統(tǒng)功能實現(xiàn)的關(guān)鍵之一,。該設(shè)計沒有輸入中斷產(chǎn)生時,,為普通單任務(wù)系統(tǒng);中斷產(chǎn)生時,,工作在多任務(wù)模式下,。因此,,中斷產(chǎn)生后,兩個任務(wù)模仿Linux操作,,系統(tǒng)系多線程工作模式實現(xiàn)調(diào)度,。

  由于單片機(jī)工作頻率所限,加之溫度傳感器為單總線串行器件,,讀/寫占用時間周期相對較長,,因此系統(tǒng)應(yīng)考慮環(huán)境溫度變化的劇烈程度。

  4 結(jié)語

  該設(shè)計可以實現(xiàn)溫度數(shù)據(jù)的采集與長時間數(shù)據(jù)記錄,,既可以單獨采樣其中任意一路,,也可以實現(xiàn)多路同時采樣,同時可以與主機(jī)交互,。該系統(tǒng)的整個運行過程在同一地點進(jìn)行集中監(jiān)控,,方便又節(jié)省人力,實現(xiàn)了溫度的采集,、顯示,、存儲于一體的集成記錄功能。設(shè)計使用的外圍元件較少,。具有設(shè)計簡單,,擴(kuò)展靈活,功能較全面等特點,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。