使用AT89C51和LM35的攝氏刻度溫度計(jì)
本項(xiàng)目展示了使用LM35溫度傳感器和AT89C51微控制器的攝氏刻度溫度計(jì)的設(shè)計(jì)、開發(fā)和操作。該電路包含模擬溫度傳感器LM35,它的優(yōu)點(diǎn)是提供與攝氏溫度成正比的輸出,而不需要進(jìn)行校準(zhǔn)。
該項(xiàng)目還包括8位模數(shù)轉(zhuǎn)換器ADC0804,它使用逐次逼近的轉(zhuǎn)換技術(shù)。ADC0804由單片機(jī)控制,單片機(jī)處理其輸出,在LCD顯示器上顯示結(jié)果溫度讀數(shù)。這篇文章詳細(xì)介紹了單片機(jī)程序、電路設(shè)計(jì)和電路操作。
電路背后的原理
該電路的工作原理是模擬到數(shù)字的轉(zhuǎn)換。溫度由模擬溫度傳感器(LM35)感知,這個模擬值通過ADC(ADC0804)轉(zhuǎn)換為數(shù)字值。然后由一個微控制器(AT89C51)處理數(shù)字信號,在顯示屏幕(16×2 LCD)上顯示攝氏溫度讀數(shù)。
攝氏刻度溫度計(jì)的電路圖
所需元件
8051微控制器(AT89C51)
8051開發(fā)板
8051編程器
16 x 2 LCD顯示器
10KΩ電位器
adc0804 - adc ic
10KΩ 電阻器 (1/4 瓦)
150pF電容(陶瓷盤型) - 代碼: 151
LM35 - 溫度傳感器
連接線
電源
Keil μVision IDE
威勒軟件
如果你沒有8051開發(fā)板,你可能需要以下組件
11.0592 MHz 石英晶體
2個33pF電容
2個10KΩ電阻(1/4瓦)
10μF電容(極化)。
按鍵
攝氏刻度溫度計(jì)電路設(shè)計(jì)
電路設(shè)計(jì)主要包括設(shè)計(jì)單片機(jī)電路,將ADC、LM35和LCD與單片機(jī)AT89C51接口。
單片機(jī)電路設(shè)計(jì)
振蕩器電路。振蕩器電路包括一個振蕩頻率為11.0592 MHz的晶體振蕩器和兩個陶瓷電容,每個電容為33pF,以確保穩(wěn)定性。
復(fù)位電路。復(fù)位電路的設(shè)計(jì)是使用一個按鈕,一個10KΩ的電阻和一個10μF的電解質(zhì)電容,以確保復(fù)位脈沖寬度為100ms,復(fù)位電壓為1.2V。
EA引腳:由于我們沒有使用任何外部存儲器,EA引腳使用一個10KΩ電阻被拉高。
連接ADC和LM35
LM35溫度傳感器IC和ADC0804 ADC IC構(gòu)成了電路的輸入部分。LM35由三個引腳組成。LM35的VOUT與ADC0804集成電路的模擬輸入引腳VIN(+)(引腳6)相連。
ADC0804的第20針(VCC)連接到+5V電源。ADC0804的1、2、7、8和10腳(CS'、RD'、VIN(-)、AGND和GND)連接到GND。ADC0804的時鐘引腳CLKR和CLKIN(引腳19和4)之間連接了一個10KΩ電阻。一個150pF的陶瓷電容連接在CLKIN(針腳4)和GND之間。引腳3和5即WR'和INTR'被連接在一起。
ADC0804的8個數(shù)據(jù)輸出引腳DB0-DB7(引腳11-18)被連接到8051微控制器的PORT2引腳。
連接LCD
RS、RW和EN引腳分別連接到端口引腳P3.6、GND和P3.7。數(shù)據(jù)引腳連接到微控制器的PORT1。
攝氏刻度溫度計(jì)電路的工作原理
環(huán)境溫度由LM35溫度傳感器感知,它產(chǎn)生的輸出電壓與溫度成正比,速度為每攝氏度10mV。這個模擬電壓被送入模數(shù)轉(zhuǎn)換器(ADC0804),這是一個基于逐次逼近轉(zhuǎn)換原理的8位ADC。
模數(shù)轉(zhuǎn)換器ADC0804被配置為連續(xù)讀取輸入的模擬信號,并在其數(shù)字輸出引腳連續(xù)產(chǎn)生數(shù)字輸出。為了使ADC0804連續(xù)讀取模擬輸入值,我們需要將INTR'引腳和WR'引腳連接起來。同時,為了使數(shù)字?jǐn)?shù)據(jù)在ADC0804的數(shù)字輸出引腳上持續(xù)可用,CS'和RD'引腳必須被拉低。
模數(shù)轉(zhuǎn)換器不斷地從LM35獲取模擬信號并將其轉(zhuǎn)換為數(shù)字值。ADC0804的數(shù)字輸出是8位二進(jìn)制數(shù)據(jù)的形式,這些數(shù)據(jù)也是連續(xù)可用的。
8051微控制器接受這些數(shù)字?jǐn)?shù)據(jù)并進(jìn)行簡單的數(shù)學(xué)計(jì)算。這個計(jì)算將把從ADC0804收到的數(shù)字?jǐn)?shù)據(jù)轉(zhuǎn)換成攝氏度的溫度。
現(xiàn)在,微控制器將把這個數(shù)據(jù)發(fā)送到LCD上并顯示出來。由于ADC不斷從LM35溫度傳感器中讀取模擬數(shù)據(jù),并通過數(shù)字引腳將其發(fā)送給微控制器,溫度將隨時更新,并在LCD上顯示。
編寫攝氏刻度溫度計(jì)的電路代碼的算法步驟
以下是用C語言編寫代碼時需要遵循的算法。
從ADC0804讀取數(shù)據(jù)。
對收到的數(shù)據(jù)進(jìn)行一個小的計(jì)算。
通過發(fā)送適當(dāng)?shù)拿顏沓跏蓟疞CD。
向LCD發(fā)送包含溫度讀數(shù)的數(shù)據(jù)
攝氏刻度溫度計(jì)電路的應(yīng)用
它可以用在像汽車這樣的移動場所,以保持溫度的跟蹤。
它可以用來控制負(fù)載的開關(guān),如電機(jī),基于溫度的加熱器。
它也可用于家庭,以獲得溫度讀數(shù)。
該電路的局限性
它需要額外的模擬到數(shù)字轉(zhuǎn)換。
這個電路只能測量攝氏度的數(shù)值。
評論