版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、大 慶 石 油 學(xué) 院課 程 設(shè) 計(jì)課 程 單片機(jī)原理及應(yīng)用課程設(shè)計(jì) 題 目 溫度采集報(bào)警系統(tǒng)的設(shè)計(jì) 院 系 電子科學(xué)學(xué)院 專業(yè)班級(jí) 電子05x班 學(xué)生姓名 xxx 學(xué)生學(xué)號(hào) 0 指導(dǎo)教師 2009年2月 日大慶石油學(xué)院課程設(shè)計(jì)任務(wù)書課程 單片機(jī)原理及應(yīng)用課程設(shè)計(jì) 題目 溫度采集報(bào)警系統(tǒng)的設(shè)計(jì) 專業(yè) 電子科學(xué)與技術(shù) 姓名 楊 光 學(xué)號(hào) 9 主要內(nèi)容、基本要求、主要參考資料等1、主要內(nèi)容:根據(jù)單片機(jī)課程所學(xué)內(nèi)容,結(jié)合其他相關(guān)課程知識(shí),設(shè)計(jì)一個(gè)溫度采集報(bào)警系統(tǒng),以加深對(duì)單片機(jī)知識(shí)的理解,鍛煉實(shí)踐動(dòng)手能力,為以后的畢業(yè)設(shè)計(jì)和工作打下堅(jiān)實(shí)基礎(chǔ)。2、基本要求: 本設(shè)計(jì)以MCS-51系列單片機(jī)為核心,采用
2、常用電子器件設(shè)計(jì)。要求可以顯示被測(cè)的溫度并存儲(chǔ),可以設(shè)置報(bào)警溫度,到達(dá)報(bào)警溫度時(shí)聲光報(bào)警。3、主要參考資料: 1 張毅坤,陳善久.單片微型計(jì)算機(jī)原理及應(yīng)用M.西安:西安電子科技大學(xué)出版社,2002. 2 張友德,趙志英,徐時(shí)亮.單片微機(jī)原理應(yīng)用與實(shí)驗(yàn)M.上海:復(fù)旦大學(xué)出版社,2000. 3 蔡美琴,張為民,沈新群,張榮娟.MCS-51系列單片機(jī)系統(tǒng)及其應(yīng)用M.北京:高等教育出版社,1992.完成期限 2007年3月9日 指導(dǎo)教師 專業(yè)負(fù)責(zé)人 2007年3 月2日目 錄第1章 系統(tǒng)設(shè)計(jì)11.1溫度采集報(bào)警系統(tǒng)1第2章 硬件設(shè)計(jì)22.1測(cè)溫和控制電路22.2 顯示控制電路52.3 聲光報(bào)警電路6第
3、3章 軟件設(shè)計(jì)8總結(jié)9參考文獻(xiàn)10附錄1 整體電路圖11附錄2 源程序12第1章 系統(tǒng)設(shè)計(jì)1.1溫度采集報(bào)警系統(tǒng)如圖1.1所示為溫度采集報(bào)警系統(tǒng)框圖。該課程設(shè)計(jì)將以單片機(jī)控制的溫度采集系統(tǒng)為主,利用單片機(jī)完成對(duì)溫度的檢測(cè),實(shí)現(xiàn)安全溫度內(nèi)正常顯示溫度值,超出設(shè)定的溫度上限則進(jìn)行聲光報(bào)警。系統(tǒng)在溫度采集時(shí)主要應(yīng)用了DS18B20芯片,該器件經(jīng)過初始化后單片機(jī)首先進(jìn)行ROM匹配,當(dāng)受到測(cè)溫器件發(fā)回的信號(hào)時(shí)證明該器件正常工作,接著單片機(jī)發(fā)送溫度轉(zhuǎn)換命令進(jìn)行溫度采集,測(cè)溫的精確度很高,可以精確到小數(shù)點(diǎn)后四位。設(shè)計(jì)中還應(yīng)用了HD7279芯片進(jìn)行數(shù)碼管顯示的驅(qū)動(dòng),一共應(yīng)用了6位數(shù)碼管。報(bào)警電路采用由NE55
4、5所組成多諧振蕩電路。聲光報(bào) 警電路控制電路測(cè)溫電路顯示電路顯示控制電路 圖1.1系統(tǒng)框圖第2章 硬件設(shè)計(jì)2.1測(cè)溫和控制電路(1) 測(cè)溫測(cè)溫使用的DS18B20是典型的應(yīng)用單總線技術(shù)的器件。1-wire單總線是Maxim全資子公司Dallas的一項(xiàng)專有技術(shù)。與目前多數(shù)標(biāo)準(zhǔn)串行數(shù)據(jù)通信方式,如SPI/I2C/MICROWIRE不同,它采用單根信號(hào)線,既傳輸數(shù)據(jù)位,又傳輸數(shù)據(jù)位的定時(shí)同步信號(hào),而且數(shù)據(jù)傳輸是雙向的。大多數(shù)1-wire器件不需要額外的供電電源,可直接從單總線上獲得足夠的電源電流(即寄生供電方式)。它具有節(jié)省I/O口線資源、結(jié)構(gòu)簡(jiǎn)單、成本低廉、便于總線擴(kuò)展和維護(hù)等諸多優(yōu)點(diǎn)。1-wir
5、e單總線適用于單個(gè)主機(jī)系統(tǒng),能夠控制一個(gè)或多個(gè)從機(jī)設(shè)備。當(dāng)只有一個(gè)從機(jī)位于總線上時(shí),系統(tǒng)可按照單節(jié)點(diǎn)系統(tǒng)操作;而當(dāng)多個(gè)從機(jī)位于總線上時(shí),則系統(tǒng)按照多節(jié)點(diǎn)系統(tǒng)操作。為了較為全面地介紹單總線系統(tǒng),將系統(tǒng)分為三個(gè)部分討論:硬件結(jié)構(gòu)、命令序列和信號(hào)方式(信號(hào)類型和時(shí)序)。硬件結(jié)構(gòu):顧名思義,單總線只有一根數(shù)據(jù)線。設(shè)備(主機(jī)或從機(jī))通過一個(gè)漏極開路或三態(tài)端口,連接至該數(shù)據(jù)線,這樣允許設(shè)備在不發(fā)送數(shù)據(jù)時(shí)釋放數(shù)據(jù)總線,以便總線被其它設(shè)備所使用。單總線端口為漏極開路,其內(nèi)部等效電路如圖1所示。單總線要求外接一個(gè)約5k的上拉電阻;這樣,單總線的閑置狀態(tài)為高電平。不管什么原因,如果傳輸過程需要暫時(shí)掛起,且要求傳輸
6、過程還能夠繼續(xù)的話,則總線必須處于空閑狀態(tài)。位傳輸之間的恢復(fù)時(shí)間沒有限制,只要總線在恢復(fù)期間處于空閑狀態(tài)(高電平)。如果總線保持低電平超過480s,總線上的所有器件將復(fù)位。另外,在寄生方式供電時(shí),為了保證單總線器件在某些工作狀態(tài)下(如溫度轉(zhuǎn)換期間、EEPROM寫入等)具有足夠的電源電流,必須在總線上提供強(qiáng)上拉1。(2) 控制At89S51是美國(guó)ATMEL公司生產(chǎn)的低電壓、高性能CMOS8位單片機(jī);片內(nèi)含有4k字節(jié)的可反復(fù)擦寫的只讀程序存儲(chǔ)器(PEROM)和128字節(jié)的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM);器件采用AMTEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng);片內(nèi)置通用2位
7、中央處理器(CPU)和Flash存儲(chǔ)單元,功能強(qiáng)大的AT89C51單片機(jī)可為您提供許多高性價(jià)比的應(yīng)用場(chǎng)合,可靈活應(yīng)用于各種控制領(lǐng)域。功能特性概述AT89S51提供以下標(biāo)準(zhǔn)功能:4k字節(jié)Flash閃速存儲(chǔ)器、128字節(jié)內(nèi)部RAM、32個(gè)I/O口線、兩個(gè)16位定時(shí)/計(jì)數(shù)器、1個(gè)5向量?jī)杉?jí)中斷結(jié)構(gòu)、一個(gè)全雙工串行通信口、片內(nèi)振蕩器及時(shí)鐘電路,同時(shí),AT89S51可降至0Hz的靜態(tài)邏輯操作并支持兩種軟件可選的節(jié)電工作模式;空閑方式停止CPU的工作,但允許RAM、定時(shí)/計(jì)數(shù)器、串行通信口及中斷系統(tǒng)繼續(xù)工作;掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作一直到下個(gè)硬件復(fù)位2。引腳功能說(shuō)
8、明 Vcc:電源電壓 GND:地 P0口:P0口是一組8位漏極開路型雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口;作為輸出口用時(shí),每位能吸收電流的方式驅(qū)動(dòng)8個(gè)TTL邏輯門電路,對(duì)端口寫“1”可作為高阻抗輸入端用。在訪問外部數(shù)據(jù)存儲(chǔ)器或者程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復(fù)用;在訪問期間激活內(nèi)部上拉電阻。在Flash編程時(shí),P0口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí)要求外接上拉電阻P1口:P1是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口;P1的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路,對(duì)端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口;作輸入口
9、使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低會(huì)輸出一個(gè)電流。 Flash編程和程序校驗(yàn)期間,P1接收低8位地址P2口:P2口是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口;P2的輸出緩沖級(jí)可驅(qū)動(dòng)個(gè)(吸收或輸出電流)4個(gè)TTL邏輯門電路,對(duì)端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口;作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低會(huì)輸出一個(gè)電流。 在訪問外部程序存儲(chǔ)器或16位地址的外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX DPTR指令)時(shí),P2口送出高8位地址數(shù)據(jù);在訪問8位地址的外部數(shù)據(jù)存儲(chǔ)器(如執(zhí)行MOVX RI)時(shí),P2口線上的內(nèi)容(即特殊功能寄存器(SFR)區(qū)
10、中的R2寄存器的內(nèi)容),在整個(gè)訪問期間不改變; Flash編程或校驗(yàn)時(shí),P2亦接收高位地址和其它控制信號(hào)。 P3口:P3口是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口;P2的輸出緩沖級(jí)可驅(qū)動(dòng)個(gè)(吸收或輸出電流)4個(gè)TTL邏輯門電路,對(duì)端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口;作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低會(huì)輸出一個(gè)電流。 P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能;如下表2-1所示: 表2-1端口引腳第二功能P3.0RXD (串行輸入口)P3.1TXD (串行輸出口)P3.2(外中斷0)P3.3(外中斷1)P3.4T0 (定時(shí)
11、/計(jì)數(shù)器0)P3.5T1 (定時(shí)/計(jì)數(shù)器1)P3.6 (外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 (外部數(shù)據(jù)存儲(chǔ)器讀選通)P3口還接收一些用于Flash閃速存儲(chǔ)器編程和程序校驗(yàn)的控制信號(hào)。RST:復(fù)位輸入;當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位ALE/PROG:當(dāng)訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié);即使不訪問外部存儲(chǔ)器,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的正脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的;要注意的是,每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE脈沖。如有必要,可通過對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單元的
12、D0位置位,可禁止ALE操作,該位置位后,只有一條MOVX和MOVC指令A(yù)LE才會(huì)被激活,此外該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)該置ALE無(wú)效。EA/VPP:外部訪問允許;欲使CPU僅訪問外部程學(xué)存儲(chǔ)器(地址為0000H FFFFH),EA端必須保持低電平(接地)。需要注意的是,如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端的狀態(tài)3。 如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。 Flash存儲(chǔ)編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是該器件是使用12V編程電壓Vpp。XTML1:振蕩器反相放大器的及內(nèi)部時(shí)鐘發(fā)生器的輸入端。XTML2: 振蕩
13、器反相放大器的輸出端。 圖2.1測(cè)溫和控制電路2.2 顯示控制電路HD7279A是一片具有串行接口的,可同時(shí)驅(qū)動(dòng)8位共陰式數(shù)碼管(或64個(gè)LED點(diǎn)陣)的智能顯示驅(qū)動(dòng)芯片,該芯片同時(shí)還可連接多達(dá)64鍵的鍵盤矩陣。該芯片內(nèi)部含有譯碼器,可直接接受16進(jìn)制碼,HD7279A還同時(shí)具有2種譯碼方式,HD7279(A)還具有多種控制指令,如消隱、閃爍、左移、右移、段尋址等。HD7279與單片機(jī)僅需4條接口線,其中CS為片選信號(hào)。當(dāng)MCU訪問HD7279時(shí),應(yīng)將片選端置為低電平。DATA為串行數(shù)據(jù)/輸出端,當(dāng)向HD7279發(fā)送數(shù)據(jù)時(shí),DATA為輸入端;當(dāng)HD7279A輸出鍵盤代碼時(shí),DATA為輸出端。其特
14、點(diǎn)為:-串行接口,無(wú)需外圍元件可直接驅(qū)動(dòng)LED-各位獨(dú)立控制譯碼/不譯碼及消隱和閃爍屬性-(循環(huán))左移/(循環(huán))右移指令-具有段尋址指令,方便控制獨(dú)立LED-64鍵鍵盤控制器,內(nèi)含去抖動(dòng)電路-有DIP和SOIC兩種封裝形式供選擇圖2.2顯示控制電路2.3 聲光報(bào)警電路555集成定時(shí)器是一種模擬和數(shù)字電路相混合的集成電路。它結(jié)構(gòu)簡(jiǎn)單,使用靈活,用途十分廣泛,可以組成多種波形發(fā)生器、多諧振蕩器、定時(shí)延時(shí)電路、雙穩(wěn)觸發(fā)電路、報(bào)警電路、檢測(cè)電路、頻率變換電路等。555定時(shí)器的電路原理圖及管腳排列圖分別如圖2.3和2.4所示。5kW-¥+A1-¥+A2-15kW5kWRD-SD-QQ
15、UCC電源地WR485627圖2.3 555定時(shí)器的原理圖路3OUTGNDDISTLTHVC復(fù)位端輸出端高觸發(fā)端放電端低觸發(fā)端電壓控制端電源端T55512345678圖2.4 555定時(shí)器的引腳圖555含有兩個(gè)比較器A1、A2,其中5端為電壓控制端,通過外接一個(gè)參考電源,可以改變上、下觸發(fā)電位值,不用時(shí),可通過一個(gè)0.01F旁路電容接地。4端為觸發(fā)器復(fù)位端,不用時(shí)應(yīng)接高電平。總之,555相當(dāng)于一個(gè)可用模擬電壓來(lái)控制翻轉(zhuǎn)的R-S觸發(fā)器。圖2.5就是用555構(gòu)成的多諧振蕩電路,產(chǎn)生的振蕩脈沖信號(hào)經(jīng)過三極管放大后驅(qū)動(dòng)揚(yáng)聲器報(bào)警,由單片機(jī)的P1.5端口輸出高電平發(fā)出報(bào)警。 圖2.5 報(bào)警電路第3章 軟
16、件設(shè)計(jì)該課程設(shè)計(jì)中主要利用了DS18B20芯片進(jìn)行測(cè)溫,該芯片是單總線器件,顧名思義單總線只有一根數(shù)據(jù)線,因此在通信時(shí)時(shí)序就顯得十分重要,我們?cè)诰幊虝r(shí)也要十分注意這一點(diǎn)。在程序中測(cè)溫時(shí)首先要對(duì)DS18B20進(jìn)行初始化,初始化過程由單片機(jī)發(fā)出的復(fù)位脈沖和芯片響應(yīng)的應(yīng)答脈沖組成,應(yīng)答脈沖使主機(jī)知道,總線上有從機(jī)設(shè)備,且準(zhǔn)備就緒。由于總線上只掛接了一片測(cè)溫芯片,因此可直接跳過ROM匹配發(fā)出測(cè)溫命令。該設(shè)計(jì)可實(shí)時(shí)顯示溫度值,便于連續(xù)觀測(cè)。系統(tǒng)源程序見附錄2。軟件流程圖如下所示:?jiǎn)?dòng)系統(tǒng)初始化DS18B20跳過ROM發(fā)出溫度轉(zhuǎn)換命令并讀取溫度值顯示溫度值溫度是否大于50度聲光報(bào)警YN圖3.1 軟件流程圖
17、總結(jié)這次課程設(shè)計(jì)使我掌握了很多實(shí)踐知識(shí),在老師和同學(xué)的幫助下對(duì)單片機(jī)有了進(jìn)一步的了解。通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,進(jìn)而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。整個(gè)設(shè)計(jì)過程可以說(shuō)不是很順利,因?yàn)橛泻芏嘀R(shí)已經(jīng)淡忘,還有很多新的東西沒有掌握,所以這次設(shè)計(jì)在不斷的復(fù)習(xí)、學(xué)習(xí)中度過,使我受益匪淺,也使我對(duì)單片機(jī)的運(yùn)用有了進(jìn)一步的了解和掌握,也為今后的學(xué)習(xí)生活和工作打下良好的基礎(chǔ)。最后我要衷心感謝老師的辛勤指導(dǎo),感謝幫助我同學(xué)。參考文獻(xiàn)1 張毅坤,陳善久.單片微型計(jì)算機(jī)原理及應(yīng)用M.西安:西安電子
18、科技大學(xué)出版社,2002.2 張友德,趙志英,徐時(shí)亮.單片微機(jī)原理應(yīng)用與實(shí)驗(yàn)M.上海:復(fù)旦大學(xué)出版社,2000.3 蔡美琴,張為民,沈新群,張榮娟.MCS-51系列單片機(jī)系統(tǒng)及其應(yīng)用M.北京:高等教育出版社,1992.附錄1 整體電路圖附錄2 源程序TEMPH EQU 35HTEMPL EQU 34HDQ EQU P1.2 ;18B20BIT_COUNT EQU 30HTIMER EQU 31HTEN EQU 32HDATA_IN EQU 20H DATA_OUT EQU 21H TIMER1 EQU 33HDAT BIT P1.0CLK BIT P1.1CS BIT P1.3ORG 0000
19、HAJMP STARTORG 0003HLJMP INT0ORG 0030HMAIN:MOV SP,#60HMOV P1,#11011101START:LCALL GET_TEMPERLCALL CHULI_1 ;36H-37H-38H存有溫度值LCALL DELAYLCALL DELAYSETB P1.4 ;報(bào)警燈滅CLR P1.5 ;報(bào)警鈴?fù)JMP START;-GET_TEMPER:SETB DQLCALL INIT_1820 ;復(fù)位MOV A,0CCH ;跳過ROMLCALL WRITE_1820MOV A,#44HLCALL WRITE_1820LCALL DELAYLCALL I
20、NIT_1820 ;復(fù)位MOV A,0CCH ;跳過ROMLCALL WRITE_1820MOV A,#0BEH ;讀取溫度值LCALL WRITE_1820LCALL READ_1820 ;29H(低),28H(高)RET;-INT0:PUSH PSWPUSH ACCMOV DATA_OUT,#15HLCALL SENDLCALL RECEIVESETB CSMOV R2,DATA_INPOP ACCPOP PSWRETI;-發(fā)射子程-SEND:MOV BIT_COUNT,#8CLR CSCALL LONG_DELAYSEND_LOOP:MOV C,DATA_OUT.7MOV DAT,CSE
21、TB CLKMOV A,DATA_OUTRL AMOV DATA_OUT,ACALL SHOUT_DELAYCLR CLKCALL SHOUT_DELAYDJNZ BIT_COUNT,SEND_LOOPCLR DATRET;-RECEIVE:MOV BIT_COUNT,#8SETB DATCALL LONG_DELAYRECEIVE_LOOP:SETB CLKCALL SHOUT_DELAYMOV A,DATA_INRL AMOV DATA_IN,AMOV C,DATMOV DATA_IN.0,CCLR CLKCALL SHOUT_DELAYDJNZ BIT_COUNT,RECEIVE_LOO
22、PCLR DATRET;-LONG_DELAY:MOV TIMER,#25 ;50USDELAY_LOOP:DJNZ TIMER,DELAY_LOOPRETSHOUT_DELAY:MOV TIMER,#4 ;8USDELAY_LOOP1:DJNZ TIMER,DELAY_LOOP1RET;-處理的數(shù)據(jù)從36H 起始-CHULI_1:MOV 36H,#00HMOV 37H,#00HMOV 38H,#00HMOV C,28H.7JC FUSHUMOV TEMPH,28H ;高位MOV TEMPL,29H ;低位INC TEMPH ;修正S1:MOV A,36HADD A,#25HDA AMOV 3
23、6H,AMOV A,37HADDC A,#06HDA AMOV 37H,AMOV A,38HADDC A,#00HDA AMOV 38H,ADJNZ TEMPL,S1DJNZ TEMPH,S1LCALL DISPLAY_1RETFUSHU:MOV TEMPH,28HMOV TEMPL,29HXRL TEMPL,#0FFH ;變?yōu)樵aXRL TEMPH,#0FFHMOV A,TEMPLADD A,#01HMOV TEMPL,AMOV A,TEMPHADDC A,#00HMOV TEMPH,AINC TEMPH ;修正S2:MOV A,36HADD A,#25HDA AMOV 36H,AMOV A
24、,37HADDC A,#06HDA AMOV 37H,AMOV A,38HADDC A,#00HDA AMOV 38H,ADJNZ TEMPL,S2DJNZ TEMPH,S2LCALL DISPLAY_2RET;-復(fù)位子程序- INIT_1820:SETB DQNOPCLR DQ ;主機(jī)發(fā)出延時(shí)480微秒的復(fù)位低脈沖MOV R1,#3 TSR1: MOV R0,#80DJNZ R0,$DJNZ R1,TSR1SETB DQ ;然后拉高數(shù)據(jù)線NOPNOPNOPMOV R0,#25H TSR2:JNB DQ,TSR3 ;等待DS18B20回應(yīng)DJNZ R0,TSR2LJMP TSR4 ;延時(shí) TS
25、R3:SETB F0 ;置標(biāo)志位,表示DS1820存在LJMP TSR5 TSR4:CLR F0 ;清標(biāo)志位,表示DS1820不存在LJMP TSR7 TSR5:MOV R0,#117TSR6:DJNZ R0,TSR6 ;時(shí)序要求延時(shí)一段時(shí)間TSR7:SETB DQRET;-;寫DS18B20的子程序(有具體的時(shí)序要求) WRITE_1820:MOV R2,#8 ;一共8位數(shù)據(jù)CLR C WR1:CLR DQ ;置低電平,開始寫輸出MOV R3,#6DJNZ R3,$RRC AMOV DQ,CMOV R3,#23DJNZ R3,$SETB DQNOPDJNZ R2,WR1SETB DQRET;
26、-;讀DS18B20的程序,從DS18B20中讀出兩個(gè)字節(jié)的溫度數(shù)據(jù) READ_1820:MOV R4,#2 ;將溫度高位和低位從DS18B20中讀出MOV R1,#29H ;低位存入29H(TEMPER_L),高位存入28H(TEMPER_H) RE00:MOV R2,#8 ;數(shù)據(jù)一共有8位 RE01:CLR CSETB DQNOPNOPCLR DQNOPNOPNOPSETB DQMOV R3,#9 RE10:DJNZ R3,RE10MOV C,DQMOV R3,#23 RE20:DJNZ R3,RE20RRC ADJNZ R2,RE01MOV R1,ADEC R1DJNZ R4,RE00R
27、ET;-顯示程序-DISPLAY_1:MOV DATA_OUT ,#0A4H ;復(fù)位LCALL SENDSETB CSMOV A,36HANL A,#0FHMOV R3,AMOV DATA_OUT,#10000000BLCALL SENDMOV DATA_OUT,R3LCALL SENDMOV A,36HSWAP AANL A,#0FHMOV R3,AMOV DATA_OUT,#10000001BLCALL SENDMOV DATA_OUT,R3LCALL SENDMOV A,37HANL A,#0FHMOV R3,AMOV DATA_OUT,#10000010BLCALL SENDMOV D
28、ATA_OUT,R3LCALL SENDMOV A,37HSWAP AANL A,#0FHMOV R3,AMOV DATA_OUT,#10000011BLCALL SENDMOV DATA_OUT,R3LCALL SENDMOV A,38HANL A,#0FHORL A,#80H ;DP=1MOV R3,AMOV DATA_OUT,#84HLCALL SENDMOV DATA_OUT,R3LCALL SENDMOV A,38HSWAP AANL A,#0FHMOV R3,AMOV DATA_OUT,#85HLCALL SENDMOV DATA_OUT,R3LCALL SEND;判斷是否報(bào)警,設(shè)為50度-38HMOV A,38HANL A,#0F0HSWAP AMOV R4,AMOV A,#00HBCD_H:ADD A,#0AHDJNZ R4,BCD_HMOV 40H,AMOV A,38HANL A,#0FHADD A,40HSUBB A,#32HJC JIXU ;判斷溫度CLR P1.4 ;報(bào)警燈亮SETB P1.5 ;報(bào)警JIXU: ;小于50度RET;-DISPLAY
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025公裝合同范本
- 抹墻合同范例
- 企業(yè)中心租房合同范例
- 電子配件采購(gòu)合同范例
- 耗材委托采購(gòu)合同范例
- 銅仁學(xué)院《材料熱力學(xué)基礎(chǔ)》2023-2024學(xué)年第一學(xué)期期末試卷
- 銅陵職業(yè)技術(shù)學(xué)院《紀(jì)錄片創(chuàng)作聲音制作》2023-2024學(xué)年第一學(xué)期期末試卷
- 銅陵學(xué)院《羽毛球選項(xiàng)》2023-2024學(xué)年第一學(xué)期期末試卷
- 完整版100以內(nèi)加減法混合運(yùn)算4000道100
- 完整版100以內(nèi)加減法混合運(yùn)算4000道84
- 《SYT6848-2023地下儲(chǔ)氣庫(kù)設(shè)計(jì)規(guī)范》
- 2024至2030年中國(guó)甲醚化氨基樹脂行業(yè)投資前景及策略咨詢研究報(bào)告
- 行政案例分析-第二次形成性考核-國(guó)開(SC)-參考資料
- 2024-2025學(xué)年人教版八年級(jí)上學(xué)期數(shù)學(xué)期末復(fù)習(xí)試題(含答案)
- 【MOOC】中級(jí)財(cái)務(wù)會(huì)計(jì)-北京交通大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- “感恩老師”教師節(jié)主題班會(huì)教案【三篇】
- 《園林政策與法規(guī)》課件
- 讀書分享《終身成長(zhǎng)》課件
- GB/T 44843-2024在用自動(dòng)扶梯和自動(dòng)人行道安全評(píng)估規(guī)范
- 廣東省廣州市2023-2024學(xué)年六年級(jí)上學(xué)期語(yǔ)文期末試卷(含答案)
- 危險(xiǎn)化學(xué)品經(jīng)營(yíng)單位主要負(fù)責(zé)人考試練習(xí)題(含答案)
評(píng)論
0/150
提交評(píng)論