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