




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、環(huán)境溫度監(jiān)測系統(tǒng)課題三、環(huán)境溫度監(jiān)測系統(tǒng)一、設(shè)計要求環(huán)境溫度監(jiān)測系統(tǒng)廣泛地用于住宅小區(qū)、樓 宇建筑和設(shè)備內(nèi)部等。其主要功能和指標如下:1、可以監(jiān)測 8 點環(huán)境溫度信號,可以擴充;2、測量范圍為 0.00 C99.9 C,可以擴充 到一55C+ 125 C,精度為土 0.5 C;3、用 4位數(shù)碼管進行循環(huán)顯示, 其中最高位 顯示通道提示符 AH,低 3 位顯示實際溫度值, 每秒切換一個通道進行輪流顯示;4、 可以隨時查看指定通道的溫度值(擴充 功能)。二、設(shè)計指導(dǎo)1、方案選擇該系統(tǒng)主要由溫度檢測和數(shù)據(jù)采集兩部分組成。下面列舉兩種實現(xiàn)方案:方案一:溫度檢測可以使用低溫熱偶或鉑電 阻,數(shù)據(jù)采集部分則
2、使用帶有 A/D 通道的單片機。考慮到一般的 A/D 輸入通道都只能接收大信號, 所以還應(yīng)設(shè)計相應(yīng)的放大電路。此方案的軟件簡 單,但硬件復(fù)雜,且檢測點數(shù)追加時,成本會有 較大增長幅度。方案二:使用單片機和單總線溫度傳感器構(gòu) 成。單總線溫度傳感器可以采用 DALLAS司生產(chǎn) 的DS18B20 系列,這類溫度傳感器直接輸出數(shù)字 信號,且多路溫度傳感器可以掛在1 條總線上,共同占用單片機的 1 條 I/O 線即可實現(xiàn)接口。在 提升單片機 I/O 線驅(qū)動能力的前提下,理論上可 以任意擴充檢測的溫度點數(shù)。比較兩個方案后可以發(fā)現(xiàn),方案二更適合于 用作本系統(tǒng)的實施方案。盡管方案二不需要A/D,但考慮到系統(tǒng)擴
3、充等因素,單片機可以選用 ADuc812以便于在需要的時候擴充參數(shù)存儲、 D/A 輸出、溫度控制等功能。2、硬件設(shè)計采用方案二的硬件設(shè)計比較簡單,系統(tǒng)構(gòu)成 如圖1 所示,原理圖如圖 5 所示。單片機的 P0 口 用作 4 位數(shù)碼管的段碼線,P3.4P3.7 用作 4 位數(shù)碼管的位選線(ADuc812 的 P3 有允許 8mA 的灌 電流,可以不加驅(qū)動)。P2.4 用作 DS18B20 的數(shù)據(jù)輸入/輸出 線。DS18B20的引腳定義和封裝形式之一如圖 2 所示。 DQ 為數(shù) 字信號輸入/輸出端;GND 為電源地;VDD 為外接 電源。DS18B20 的光刻 ROM 中存有 64 位序列號,它可以
4、 看作是該 DS18B2 啲地址序 列碼。64位光刻 ROM 勺排列 是:開始 8位 (28H) 是產(chǎn) 品類型標號, 接著的 48 位是該 DS18B20自身的序 列號, 最后 8 位是前面 56 位的循環(huán)冗余校驗碼(CRC=X8+X5+X4+1。光刻 ROM 勺作用是使每一個 DS18B20 擁有惟一的地址序列碼,以確保在一 根總線上掛接多個 DS18B20DS18B2C 內(nèi)部集成了暫存寄存器(或稱為暫 存1數(shù)ADuc812叫DQ按說DS18B20DSJ8B20DS18B20DALLAS18B20123圖 2 DS18B20 引腳與封裝圖 i 溫度監(jiān)測系統(tǒng)組成框圖(BOT1ON1VH1W)R
5、AM 和 EEPRO 兩類存儲器。暫存 RAM 為 9 個 字節(jié),其地址分配及其相關(guān)說明如表 1 所示。單片機通過命令實現(xiàn)對 DS18B20 的控制,其 支持的主要命令如表 2 所示。DS18B20 的復(fù)位操 作、讀寫操作都必須遵從嚴格的時序,其復(fù)位時 序、讀寫時序分別如圖 3 和圖 4 所示。關(guān)于 DS18B20 的詳細介紹和使用方法可以參考其數(shù)據(jù)手冊。表 1 DS18B20 暫存 RAM 地址分配及其說明寄存器名稱地址說明溫度低字節(jié)溫度測量值的低 8 位,即 b7 b60 b5 b4 b3 b2 bl b0溫度高字節(jié)溫度測量值的高3 位及符號1位,即 S S S S S b10 b9 b8
6、溫度高限溫度報警上限,也可以用作自 定義字節(jié)溫度高3溫度報警下限,也可以用作自限定義字節(jié)配置寄存器格式為 0 R1 R0 1 1 1 1 1,R1 和 R0 為 00、01、10、11 對應(yīng)的 4分辨率分別為 9、 10、 11 和 12 位 (包 括符號位)保留5 未定義保留6 未定義保留7 未定義校驗碼按 X8+ X5+ X4+ 1 對前 8 個字節(jié)8進行 CRC 校驗表 2 DS18B20 主要命令及其功能說明命令功能說明命令碼功能說明碼33H3讀 ROM中的 64位地址序列碼EEH賣 9 字節(jié)暫存寄存器5H只有地址碼匹配的 DS18B2 才能接受后續(xù)的命令4EH寫入溫度上/下 限,緊隨
7、其后是 2字節(jié)數(shù)據(jù),對 應(yīng)上限和下限值1OH鎖定總線上DS18B20 的個數(shù) 和識別其 ROM 中 的64 位地址序列 碼48H將 9 字節(jié)暫存寄 存器的第 3 和 4 字節(jié)復(fù)制到EEPRO 中1CH只有溫度超過上 三限或下限的DS18B20 才做出響應(yīng)E8H將 EEPROM 的內(nèi)容恢復(fù)到暫存寄存器的第 3 和 4 字節(jié)44H1 啟動 DS18B20 進行溫度轉(zhuǎn)換,結(jié)E4H; 讀供電模式, 寄 生供電時果存入 9 字節(jié)的 暫存寄存器DS18B2C 發(fā)送 0,外接電源時DS18B20 發(fā)送 1CH忽略地址序列C碼,適合單片DS18B20LINE TYPE LEGEND (Figure 2 and
8、 Figure 3BUBmaster pulling InwDS 18x2D/DS 1B22 pulling low- Resistor pullup圖 3 DS18B20 復(fù)位時序DS15x2051322 SamplesSTARTOF SLOTSTARTOF S-LOTHpu .i“_i.1-WIRE BUSGNDWRITE V SLOTWRITEUT,SSLOT 11tis TjcDGNDDGNDXTAL15TTAL2P卅/23P35/24P3fi/PJ7/mI負DSISE-ZO-IDgjgB20-2JIrSISE20_3EPGNDDQVPDSNDDQTODNDDQTODGND gTODG
9、wgQVD:DGhTDDQVDDESET/VppJSEITCOOl.I con2oom3CCBfrf12 P349P35GhTDDQVWTGNDDQVDL-時器 T1(p 3.5)中斷函 數(shù)每隔 50ms 中斷 1 次,每中斷20 次(1 秒)即 讀取 1 路 DS18B20 的溫度代碼,轉(zhuǎn)換為溫度值, 再拆分成單個數(shù)碼后送入顯示緩沖區(qū)。DS18B20 接口程序主要由復(fù)位函數(shù)、讀位函數(shù)、讀字節(jié)函 數(shù)、寫位函數(shù)、寫字節(jié)函數(shù)、讀溫度函數(shù)等組成。2、參考程序#include #include vintrinshsbit led0=P3A4;P3.4P3.7用作4位LED的位選線sbit led仁P3
10、A5;sbit led2=P3A6;sbit led3=P3A7;sbit DQ = P2A4;P2.4用作DS18B20的數(shù)據(jù)線DQfloat data TMP2=0,0;讀取后的2個溫度值,將其除以2即可得出實際溫度;??unsigned char data f2=0,0; /結(jié) 果是否 為負溫,0為正溫,1為負溫。unsigned char data disp_buf4=0,0,0,0;410位數(shù)碼管對應(yīng)的值放入該緩沖區(qū)unsigned char data dot_position=0;unsigned char data chno=0; /對 應(yīng)某路DS18B20存各路DS18B20的
11、地址序列號,為便于調(diào) 試,只設(shè)計了2路,可以擴充到8路或更多unsigned char code SN28=16,62,148,60,0,0,0, 247,16,229,146,60,0,0,0, 87 ;/數(shù)字09和通道提示符AH的段碼unsignedcharcodeseg_table =0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d ,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x39,0 x5e,0 x79,0 x71,0 x6f,0 x76;unsignedcharcodeCH =10,11,12,13,14,15,16,17;
12、/通道 提示符 的段碼偏移量 將0.00999之間的浮點數(shù)轉(zhuǎn)為單個數(shù)碼, 并送顯示緩沖區(qū)和返回小數(shù)點的位置void ftochar(float valp)iiif(valp=10.0)&(valp=100.0)&(valp1000.0)dot_position=3;disp_buf1=(int)valp/100;disp_buf2=(int)valp%100)/10;disp_buf3=(int)valp%100)%10;延時15微妙的函數(shù)void delay(unsigned char n)12do_nop_();_nop_();_nop_();_nop_();_nop_()
13、;_nop_();_nop_()的頭文件為intrins h_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();n-;while(n);/DS18B20復(fù)位函數(shù),按復(fù)位時序進行設(shè)計voidow_reset(void)DQ = 0;/ DQ置為低電平delay(36); /保持480卩sDQ = 1;/ DQ置為高電平delay(24); /延時,等DS18B20輸出低 電平/DS18B20讀位函數(shù),按讀位時序進行設(shè)計unsigned char read_bit(void)unsigned char i;13DQ = 0;/ DQ置為低
14、電平DQ = 1;/ DQ置為高電平for (i=0; i5; i+);/延時15卩sreturn(DQ);/返回DQ線的電平狀態(tài)/ DS18B20寫位函數(shù),按寫位時序進行設(shè)計void write_bit(char bitval)DQ = 0;/ DQ置為低電平if(bitval=1) DQ =1;/如果寫1則DQ置為高電平delay(6); /延時以維持電平狀態(tài)DQ = 1;/ DQ置為高電平/從DS18B20讀取字節(jié)的函數(shù)unsigned charread_byte(void) unsigned char i;unsigned char value = 0;14for (i=0;i8;i+
15、)if(read_bit() value|=0 x01vi; II調(diào)用讀位 函數(shù),讀出的8個位移位成1個字節(jié)delay(11);延時以讀余下的位return(value);II寫字節(jié)到DS18B20的函數(shù)void write_byte(char val)unsigned char i;unsigned char temp;for (i=0; i8; i+)/每次寫1位,1個字節(jié)分8次完成temp = vali;temp &= 0 x01;write_bit(temp);/調(diào)用寫位函數(shù)delay(10);/延時15/從DS18B20讀物溫度代碼void read_temp ()unsigned char i,j;unsigned char a,b;int mr;for(j=0;j2;j+)為便于調(diào)試,僅以2路為例,改循環(huán)次數(shù)即可擴充到8路或更多,ow_reset();/調(diào)用復(fù)位函數(shù)delay(20);write_byte (0 x55);發(fā)送ROM匹配命令for(i=0;i=20) /中斷20次即為1秒count=0;ftochar(TMPchno); /當前通道對應(yīng)的溫度 值轉(zhuǎn)換為單個數(shù)碼送顯示緩沖區(qū)disp_buf0=CHchno; /當前通道的提示符 的段碼偏移量送顯示緩沖區(qū)首地址chno+;if(chno= =2) chno=0; /修改此判斷對應(yīng)的數(shù)值,即
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 書柜銷售合同樣本
- 絲網(wǎng)合同樣本合同樣本
- 業(yè)務(wù)中介傭金合同范例
- 公司大樓安裝施工合同樣本
- 優(yōu)惠寄遞服務(wù)合同標準文本
- 2025全新裝修辦公樓租賃合同
- 2024年檔案管理員考試新政策解讀試題及答案
- 月度調(diào)酒師考試試題集錦及答案
- 2025二手房買賣購房合同
- 《2025年度勞動合同續(xù)簽通知書》
- 【妙可藍多:新消費品牌抖音營銷發(fā)展策略探析案例(論文)2500字】
- 20以內(nèi)的加法口算練習題4000題 210
- 2024年廣東省廣州市市中考英語試卷真題(含答案解析)
- 貴州省語文中考2024-2025學(xué)年仿真試卷及答案解析
- 2024年國家林業(yè)和草原局華東調(diào)查規(guī)劃設(shè)計院招聘高校畢業(yè)生10人歷年(高頻重點復(fù)習提升訓(xùn)練)共500題附帶答案詳解
- 武漢2024年湖北武漢音樂學(xué)院非事業(yè)編崗位招聘筆試歷年典型考題及考點附答案解析
- 新人教小學(xué)數(shù)學(xué)六年級下冊《用比例解決問題(二)》教學(xué)設(shè)計
- 交響音樂賞析智慧樹知到期末考試答案章節(jié)答案2024年西安交通大學(xué)
- 2024年廣東省惠州市惠城區(qū)中考二模物理試卷
- 2024年山東省青島市部分學(xué)校九年級中考二模數(shù)學(xué)試題(含答案)
- 河南省鄭州市中原區(qū)2023-2024學(xué)年三年級下學(xué)期期中考試數(shù)學(xué)試卷
評論
0/150
提交評論