新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于AT89S52單片機(jī)的紅外遙控溫度報(bào)警器的設(shè)計(jì)與實(shí)現(xiàn)

基于AT89S52單片機(jī)的紅外遙控溫度報(bào)警器的設(shè)計(jì)與實(shí)現(xiàn)

作者: 時(shí)間:2012-12-23 來源:網(wǎng)絡(luò) 收藏

1.2 系統(tǒng)硬件實(shí)現(xiàn)
本文以單片機(jī)為CPU進(jìn)行系統(tǒng)搭建,AT89C52是一個(gè)低電壓高性能CMOS8位單片機(jī)。此外,三端穩(wěn)壓器7805將電壓穩(wěn)定在5V左右。
該系統(tǒng)使用紅外接收模塊1838來進(jìn)行紅外信號接收,使用通用遙控器對其進(jìn)行遠(yuǎn)程控制。1838有3個(gè)引腳,包括供電腳,接地和信號輸出腳。1838的信號輸出管腳接的F3.2管腳(外中斷0)。當(dāng)1838接收到信號時(shí),產(chǎn)生申斷,處理遙控?cái)?shù)據(jù),處理完后返回到主程序。
采用高精度溫度傳感器DS18B20,實(shí)現(xiàn)對環(huán)境溫度的實(shí)時(shí)檢測與采集。DALLAS公司的DS18B20是這樣一種獨(dú)特的溫度傳感器,它只需一個(gè)接口引腳即可通信,可用數(shù)據(jù)線供電,并具備多點(diǎn)測溫能力。DS18B20可直接與單片機(jī)通信,讀取測溫?cái)?shù)據(jù),電路簡單。其測溫范圍-55~+125℃,在-10~+85℃時(shí)精度為±0.5℃,可編程的分辨率為9~12位。DS18B20具有測沮系統(tǒng)簡單、測溫精度高、連接方便、占用口線少等優(yōu)點(diǎn),因此在P2.2懸掛該溫度傳感器。
本系統(tǒng)采用蜂鳴器以及三極管作為電路,蜂鳴器的正極性的一端連接到+5 V電源上面,另一端接到三極管的發(fā)射極,三極管的基極由單片機(jī)的P3.5管腳通過一個(gè)保護(hù)電阻R7來控制。當(dāng)采集溫度超過設(shè)置溫度上限值或低于下限值,或者鬧鐘時(shí)間到時(shí),通過軟件控制使P3.5=0,即低電平時(shí),從而使三極管8550導(dǎo)通,蜂鳴器的電流形成回路,發(fā)出聲音報(bào)警或鬧鐘響。當(dāng)P3.5=1,即高電平時(shí),三極管8550截止,蜂鳴器不工作。
采用12864液晶顯示器顯示溫度和萬年歷,12864是一種液晶顯示模塊,其顯示分辨率為128x64,內(nèi)置8192個(gè)16*16點(diǎn)漢字,和128個(gè)16*8點(diǎn)ASCII字符集。液晶模塊多采用并行連接,常以I/O口方式進(jìn)行讀寫訪問,接口由8根數(shù)據(jù)線和3~4根片選/控制線構(gòu)成。其有兩個(gè)控制芯片,分別控制左右半屏。使用P0口直接驅(qū)動12864,由P1.0、P1.1、P1.2這3個(gè)引腳做控制端。
時(shí)鐘模塊采用DS1302時(shí)鐘芯片實(shí)現(xiàn),DS1302是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實(shí)時(shí)時(shí)鐘電路,DS1302與單片機(jī)之間能簡單地采用同步串行的方式進(jìn)行通信,僅需用到3個(gè)接口線:BST(復(fù)位)、I/O(數(shù)據(jù)線)、SCLK(串行時(shí)鐘)。
用軟件VC6.0開發(fā)系統(tǒng),在計(jì)算機(jī)上顯示出時(shí)鐘、溫度計(jì)和視頻界面,構(gòu)成友好的人機(jī)界面,并且可以與下位機(jī)系統(tǒng)保持實(shí)時(shí)通信。
工作界面包括操作提示框、串口、清楚、主頁、打開/關(guān)閉串口、時(shí)間、日期、溫度、用戶碼、紅外編碼、音樂視頻等部分組成。主頁窗口打開是一個(gè)單片機(jī)學(xué)習(xí)、教程、開發(fā)電子主頁,有8個(gè)串口,清除窗口可以清除操作提示框的記錄,選歌窗口可以選擇你想播放的歌曲,視頻界面窗口可以看見音樂效果和歌曲相關(guān)信息。確定鍵(即電源鍵,用戶碼/紅外編碼:38C7/1CE3)、菜單鍵(用戶碼/紅外編碼:38C7/11EE)、加鍵(用戶碼/紅外編碼:38C7/16E9)、減鍵(用戶碼/紅外編碼:38C7/17E8)、上移鍵(用戶碼/紅外編碼:38C7/OCF3)、下移鍵(用戶碼/紅外編碼:38C7/ODF2)、▲鍵(即報(bào)警鬧鐘關(guān)閉鍵,用戶碼/紅外編碼:38C7/1FE0)、鍵(即報(bào)警鬧鐘開啟鍵,用戶碼/紅外編碼:38C7/1EE1)。
與下位機(jī)采用MAX232芯片的第二數(shù)據(jù)通道進(jìn)行串行通信。單片機(jī)的P3.0(RXD),P3.1(TXD)通過電平轉(zhuǎn)換芯片MAX232連接到9針D型插座DB9上,通過DB9和電纜可以與單片機(jī)、PC機(jī)進(jìn)行串行通信。因?yàn)樯衔粰C(jī)與下位機(jī)是實(shí)時(shí)通信的,所以通過上位機(jī)工作界面可以很清晰,很人性化的看見下位機(jī)即時(shí)采集的溫度值和顯示的時(shí)間、日期。

2 系統(tǒng)軟件設(shè)計(jì)
2.1 軟件功能概述
根據(jù)硬件設(shè)計(jì),軟件需要完成以下幾個(gè)功能:
1)溫度讀取功能:軟件可以正確的控制DS18B20進(jìn)行溫度的正常讀取。
2)LCD12864顯示功能:包括時(shí)間顯示,溫度顯示,鬧鐘顯示。
3)功能:使用遙控器控制,修改系統(tǒng)時(shí)間、上下限值,設(shè)置鬧鐘。
4)報(bào)警功能:要求蜂鳴器正常報(bào)警。
5)實(shí)現(xiàn)上位機(jī)與下位機(jī)實(shí)時(shí)通信,實(shí)現(xiàn)在計(jì)算機(jī)上顯示出時(shí)鐘、溫度的視頻界面。


評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉