




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、等級(jí):湖南工程學(xué)院應(yīng)用技術(shù)學(xué)院課 程 設(shè) 計(jì)課程名稱 單片機(jī)原理與應(yīng)用 課題名稱 數(shù)字溫度計(jì)的設(shè)計(jì) 專 業(yè) 電氣工程及其自動(dòng)化 班 級(jí) 電氣 班 學(xué) 號(hào) 姓 名 指導(dǎo)教師 趙葵銀 2014年 5 月 12 日湖南工程學(xué)院應(yīng)用技術(shù)學(xué)院課程設(shè)計(jì)任務(wù)書課程名稱:?jiǎn)纹瑱C(jī)原理與應(yīng)用 題 目:數(shù)字溫度計(jì)的設(shè)計(jì) 專業(yè)班級(jí): 電氣 班 學(xué)生姓名: 學(xué)號(hào): 指導(dǎo)老師: 趙葵銀 審 批: 任務(wù)書下達(dá)日期 2014 年 05 月12日設(shè)計(jì)完成日期 2014 年05 月23 日設(shè)計(jì)內(nèi)容與設(shè)計(jì)要求設(shè)計(jì)內(nèi)容:以51系列單片機(jī)為核心,以開發(fā)板為平臺(tái);設(shè)計(jì)一個(gè)數(shù)字式溫度計(jì),要求使用溫度傳感器(可以采用DS18B20或采用AD
2、590)測(cè)量溫度,再經(jīng)單片機(jī)處理后,由LED數(shù)碼管顯示測(cè)量的溫度值。測(cè)溫范圍為051,精度誤差在0.5以內(nèi);并要求仿真、調(diào)試。設(shè)計(jì)要求:1)確定系統(tǒng)設(shè)計(jì)方案;2)進(jìn)行系統(tǒng)的硬件設(shè)計(jì);3)完成必要元器件選擇;4)系統(tǒng)軟件設(shè)計(jì)、仿真及調(diào)試;5)系統(tǒng)聯(lián)調(diào)及操作說(shuō)明6)寫說(shuō)明書主 要 設(shè) 計(jì) 條 件1、MCS-51單片機(jī)實(shí)驗(yàn)操作臺(tái)1臺(tái);2、PC機(jī)及單片機(jī)調(diào)試軟件,仿真軟件proteus;3、系統(tǒng)設(shè)計(jì)所需的元器件。4、實(shí)驗(yàn)室提供調(diào)試條件說(shuō) 明 書 格 式1. 封面2. 課程設(shè)計(jì)任務(wù)書3. 目錄4. 系統(tǒng)總體方案設(shè)計(jì)5. 系統(tǒng)硬件設(shè)計(jì)6. 軟件設(shè)計(jì)(包括流程圖)7. 系統(tǒng)的安裝調(diào)試說(shuō)明8、 總結(jié) 9、參考
3、文獻(xiàn)10、附錄11、課程設(shè)計(jì)成績(jī)?cè)u(píng)分表。 進(jìn) 度 安 排第一周星期一、上午:布置課題任務(wù),課題介紹及講課。下午:借閱有關(guān)資料,總體方案討論。星期二、確定總體方案,學(xué)習(xí)與設(shè)計(jì)相關(guān)內(nèi)容。星期三、各部分方案設(shè)計(jì),星期四、各部分設(shè)計(jì)。星期五、設(shè)計(jì)及上機(jī)調(diào)試。星期六、設(shè)計(jì)并調(diào)試第二周星期一:設(shè)計(jì)及上機(jī)調(diào)試。星期二:調(diào)試,中期檢查。星期三:調(diào)試、寫說(shuō)明書。星期四-星期五上午:寫說(shuō)明書、完成電子版并打印成稿。星期五下午:答辯。參 考 文 獻(xiàn)參考文獻(xiàn)1、王迎旭編.單片機(jī)原理與應(yīng)用M.機(jī)械工業(yè)出版社.2004.2、樓然苗編.51系列單片機(jī)設(shè)計(jì)實(shí)例M.北京航空航天大學(xué)出版社.3、黃勤編.計(jì)算機(jī)硬件技術(shù)基礎(chǔ)實(shí)驗(yàn)教程
4、M.重慶大學(xué)出版社4、劉樂(lè)善編.微型計(jì)算機(jī)接口技術(shù)及應(yīng)用M.華中科技大學(xué)出版社.5、陳光東編.單片微型計(jì)算機(jī)原理及接口技術(shù)M.華中科技大學(xué)出版社.目錄第1章 概述1第2章 系統(tǒng)總體方案設(shè)計(jì)32.1 系統(tǒng)設(shè)計(jì)原理32.2數(shù)字溫度計(jì)設(shè)計(jì)的方案3第3章 硬件設(shè)計(jì)53.1 主控器8051 芯片53.2 時(shí)鐘電路63.2復(fù)位電路73.4 溫度傳感器73.5 顯示電路83.6 溫度報(bào)警電路9第4章 程序設(shè)計(jì)114.1 主程序114.2 DS18B20的初始化114.3 讀出溫度子程序134.4溫度轉(zhuǎn)換命令子程序144.5 計(jì)算溫度子程序14第6章 總結(jié)15附錄16附錄A 仿真接線圖16附錄B 程序清單17
5、參考文獻(xiàn)24第1章 概述隨著國(guó)民經(jīng)濟(jì)的發(fā)展,人們需要對(duì)各中加熱爐、熱處理爐、反應(yīng)爐和鍋爐中溫度進(jìn)行監(jiān)測(cè)和控制。采用單片機(jī)來(lái)對(duì)他們控制不僅具有控制方便,簡(jiǎn)單和靈活性大等優(yōu)點(diǎn),而且可以大幅度提高被控溫度的技術(shù)指標(biāo),從而能夠大大的提高產(chǎn)品的質(zhì)量和數(shù)量。在日常生活及工業(yè)生產(chǎn)過(guò)程中,經(jīng)常要用到溫度的檢測(cè)及控制,溫度是生產(chǎn)過(guò)程和科學(xué)實(shí)驗(yàn)中普遍而且重要的物理參數(shù)之一。在生產(chǎn)過(guò)程中,為了高效地進(jìn)行生產(chǎn),必須對(duì)它的主要參數(shù),如溫度、壓力、流量等進(jìn)行有效的控制。溫度控制在生產(chǎn)過(guò)程中占有相當(dāng)大的比例。溫度測(cè)量是溫度控制的基礎(chǔ),技術(shù)已經(jīng)比較成熟。傳統(tǒng)的測(cè)溫元件有熱電偶和二電阻。而熱電偶和熱電阻測(cè)出的一般都是電壓,再轉(zhuǎn)
6、換成對(duì)應(yīng)的溫度,這些方法相對(duì)比較復(fù)雜,需要比較多的外部硬件支持。我們用一種相對(duì)比較簡(jiǎn)單的方式來(lái)測(cè)量。 我們采用美國(guó)DALLAS半導(dǎo)體公司繼DS18B20之后推出的一種改進(jìn)型智能溫度傳感器DS18B20作為檢測(cè)元件,溫度范圍為-55125 ºC,最高分辨率可達(dá)0.0625 ºC。DS18B20可以直接讀出北側(cè)溫度值,而且采用三線制與單片機(jī)相連,減少了外部的硬件電路,具有低成本和易使用的特點(diǎn)。本文介紹一種基于AT89C51單片機(jī)的一種溫度測(cè)量及報(bào)警電路,該電路采用DS18B20作為溫度監(jiān)測(cè)元件,測(cè)量范圍0-+100,使用LED模塊顯示,能設(shè)置溫度報(bào)警上下限。正文著重給出了軟硬件
7、系統(tǒng)的各部分電路,介紹了集成溫度傳感器DS18B20的原理,AT89C51單片機(jī)功能和應(yīng)用。該電路設(shè)計(jì)新穎、功能強(qiáng)大、結(jié)構(gòu)簡(jiǎn)單。24第2章 系統(tǒng)總體方案設(shè)計(jì)2.1 系統(tǒng)設(shè)計(jì)原理采用一只溫度傳感器DS18B20,此傳感器,可以很容易直接讀取被測(cè)溫度值,進(jìn)行轉(zhuǎn)換,就可以滿足設(shè)計(jì)要求。采集之后,通過(guò)使用51系列的單片機(jī),可以對(duì)數(shù)據(jù)進(jìn)行相應(yīng)的處理,再由LED顯示電路對(duì)其數(shù)據(jù)進(jìn)行顯示。該系統(tǒng)利用AT89S51芯片控制溫度傳感器DS18B20進(jìn)行實(shí)時(shí)溫度檢測(cè)并顯示,能夠?qū)崿F(xiàn)快速測(cè)量環(huán)境溫度,并可以根據(jù)需要設(shè)定上下限報(bào)警溫度。該系統(tǒng)擴(kuò)展性非常強(qiáng),它可以在設(shè)計(jì)中加入時(shí)鐘芯片DS1302以獲取時(shí)間數(shù)據(jù),在數(shù)據(jù)處
8、理同時(shí)顯示時(shí)間,并可以利用AT24C16芯片作為存儲(chǔ)器件,以此來(lái)對(duì)某些時(shí)間點(diǎn)的溫度數(shù)據(jù)進(jìn)行存儲(chǔ),利用鍵盤來(lái)進(jìn)行調(diào)時(shí)和溫度查詢,獲得的數(shù)據(jù)可以通過(guò)MAX232芯片與計(jì)算機(jī)的RS232接口進(jìn)行串口通信,方便的采集和整理時(shí)間溫度數(shù)據(jù)。2.2數(shù)字溫度計(jì)設(shè)計(jì)的方案本課題以是80C51單片機(jī)為核心設(shè)計(jì)的一種數(shù)字溫度控制系統(tǒng),系統(tǒng)整體硬件電路包括,傳感器數(shù)據(jù)采集電路,溫度顯示電路,上下限報(bào)警調(diào)整電路,單片機(jī)主板電路等組成。系統(tǒng)框圖主要由主控制器、單片機(jī)復(fù)位、報(bào)警按鍵設(shè)置、時(shí)鐘振蕩、LED顯示、溫度傳感器組成。系統(tǒng)框圖如圖2-2所示。DS18B20溫度傳感器單片機(jī)復(fù)位顯示單片機(jī)報(bào)警系統(tǒng)圖2-2 數(shù)字溫度計(jì)框圖
9、第3章 硬件設(shè)計(jì)3.1 主控器8051 芯片 對(duì)于單片機(jī)的選擇,可以考慮使用8031與8051系列,由于8031沒(méi)有內(nèi)部RAM,系統(tǒng)又需要大量?jī)?nèi)存存儲(chǔ)數(shù)據(jù),因而不適用。AT89C51 以低價(jià)位單片機(jī)可為提供許多高性價(jià)比的應(yīng)用場(chǎng)合,可靈活應(yīng)用于各種控制領(lǐng)域,對(duì)于簡(jiǎn)單的測(cè)溫系統(tǒng)已經(jīng)足夠。單片機(jī)AT89C51具有低電壓供電和體積小等特點(diǎn),四個(gè)端口只需要兩個(gè)口就能滿足電路系統(tǒng)的設(shè)計(jì)需要該器件是INTEL公司生產(chǎn)的MCS一5l系列單片機(jī)中的基礎(chǔ)產(chǎn)品,采用了可靠的CMOS工藝制造技術(shù),具有高性能的8位單片機(jī),屬于標(biāo)準(zhǔn)的MCS51的CMOS產(chǎn)品。其主要特征有如下幾個(gè): 與MCS-51 兼容 4K字節(jié)可編程F
10、LASH存儲(chǔ)器 壽命:1000寫/擦循環(huán) 數(shù)據(jù)保留時(shí)間:10年 全靜態(tài)工作:0Hz-24MHz 三級(jí)程序存儲(chǔ)器鎖定 128×8位內(nèi)部RAM 32可編程I/O線 兩個(gè)16位定時(shí)器/計(jì)數(shù)器 5個(gè)中斷源 可編程串行通道 · 低功耗的閑置和掉電模式 片內(nèi)振蕩器和時(shí)鐘電路AT8951的管腳如下圖所示:圖3.1 AT89C51芯片管腳圖3.2 時(shí)鐘電路80C51時(shí)鐘有兩種方式產(chǎn)生,即內(nèi)部方式和外部方式。80C51中有一個(gè)構(gòu)成內(nèi)部震蕩器的高增益反向放大器,引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。本次采用內(nèi)部震蕩電路,瓷片電容采用22PF,晶振為12MHZ。圖3.1.1
11、震蕩電路圖3.2 復(fù)位電路單片機(jī)系統(tǒng)的復(fù)位電路在這里采用的是上電+按鈕復(fù)位電路形式,其中電阻R采用10K的阻值 ,電容采用10F的電容值。圖3.1.2 復(fù)位電路3.4 溫度傳感器DS18B20 最大的特點(diǎn)是單總線數(shù)據(jù)傳輸方式,DS18B20 的數(shù)據(jù)I/O 均由同一條線來(lái)完成。DS18B20 的電源供電方式有2 種: 外部供電方式和寄生電源方式。工作于寄生電源方式時(shí), VDD 和GND 均接地, 他在需要遠(yuǎn)程溫度探測(cè)和空間受限的場(chǎng)合特別有用, 原理是當(dāng)1 W ire 總線的信號(hào)線DQ 為高電平時(shí), 竊取信號(hào)能量給DS18B20 供電, 同時(shí)一部分能量給內(nèi)部電容充電, 當(dāng)DQ為低電平時(shí)釋放能量為D
12、S18B20 供電。但寄生電源方式需要強(qiáng)上拉電路, 軟件控制變得復(fù)雜(特別是在完成溫度轉(zhuǎn)換和拷貝數(shù)據(jù)到E2PROM 時(shí)) , 同時(shí)芯片的性能也有所降低。外部電源供電方式是DS18B20最佳的工作方式,工作穩(wěn)定可靠,抗干擾能力強(qiáng),而且電路也比較簡(jiǎn)單,可以開發(fā)出穩(wěn)定可靠的多點(diǎn)溫度監(jiān)控系統(tǒng)。因此本設(shè)計(jì)采用外部供電方式。如下圖所示:圖3.2 DS18B20管腳圖溫度傳感器DS18B20的測(cè)量范圍為-55+125,在-10+85時(shí)精度為±0.5。因?yàn)楸驹O(shè)計(jì)只用于測(cè)量環(huán)境溫度,所以只顯示0+51。3.5 顯示電路對(duì)于數(shù)字溫度的顯示,我們采用4位LED數(shù)碼管。足夠顯示0100中各位數(shù),并且還能顯示
13、一位小數(shù)部分。圖3.3 4位LED數(shù)碼顯示管3.6 溫度報(bào)警電路 對(duì)于數(shù)字溫度計(jì)的設(shè)計(jì),除了溫度的數(shù)字顯示功能外還加入了報(bào)警系統(tǒng),如果我們所設(shè)計(jì)的系統(tǒng)用來(lái)監(jiān)控某一設(shè)備,當(dāng)設(shè)備的溫度超過(guò)我們所設(shè)定的溫度值時(shí),系統(tǒng)會(huì)產(chǎn)生報(bào)警。我們便能很好的對(duì)設(shè)備進(jìn)行處理,就不會(huì)應(yīng)溫度的變化而造成不必要的損失。當(dāng)溫度高于100度時(shí),報(bào)警時(shí)由單片機(jī)產(chǎn)生一定頻率的脈沖,由P3.7引腳輸出,P3.7外接一只NPN的三極管來(lái)驅(qū)動(dòng)楊聲器發(fā)出聲音,以便操作員來(lái)維護(hù),從而達(dá)到報(bào)警的目的。其電路圖如下所示。圖3.4(a) 揚(yáng)聲器報(bào)警系統(tǒng)電路圖當(dāng)溫度低于0度時(shí),亮紅燈報(bào)警,以便操作員來(lái)維護(hù),從而達(dá)到報(bào)警的目的。其電路圖如下所示。圖3
14、.4(b) 紅燈報(bào)警系統(tǒng)電路圖 第4章 程序設(shè)計(jì)4.1 主程序主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處理DS18B20的測(cè)量的當(dāng)前溫度值,溫度測(cè)量每1s進(jìn)行一次。這樣可以在一秒之內(nèi)測(cè)量一次被測(cè)溫度。初始化設(shè)置調(diào)用顯示程序溫度采集并作計(jì)算處理溫度轉(zhuǎn)換延時(shí)是否開始圖4.1 主程序流程4.2 DS18B20的初始化DS18B20的初始化: 1. 先將數(shù)據(jù)線置高電平“1”。2. 延時(shí)(該時(shí)間要求的不是很嚴(yán)格,但是盡可能的短一點(diǎn))。3. 數(shù)據(jù)線拉到低電平“0”。4. 延時(shí)750微秒(該時(shí)間的時(shí)間范圍可以從480到960微秒)。5.數(shù)據(jù)線拉到高電平“1”。6. 延時(shí)等待(如果初始化成功則在15到60
15、毫秒時(shí)間之內(nèi)產(chǎn)生一個(gè)由DS18B20所返回的低電平“0”。據(jù)該狀態(tài)可以來(lái)確定它的存在,但是應(yīng)注意不能無(wú)限的進(jìn)行等待,不然會(huì)使程序進(jìn)入死循環(huán),所以要進(jìn)行超時(shí)控制7. 若CPU讀到了數(shù)據(jù)線上的低電平“0”后,還要做延時(shí),其延時(shí)的時(shí)間從發(fā)出的高電平算起(第(5)步的時(shí)間算起)最少要480微秒。8.將數(shù)據(jù)線再次拉高到高電平“1”后結(jié)束。 DS18B20的寫操作: 1. 數(shù)據(jù)線先置低電平“0”。2. 延時(shí)確定的時(shí)間為15微秒。3. 按從低位到高位的順序發(fā)送字節(jié)(一次只發(fā)送一位)。4. 延時(shí)時(shí)間為45微秒。 5. 將數(shù)據(jù)線拉到高電平。6. 重復(fù)上(1)到(6)的操作直到所有的字節(jié)全部發(fā)送完為止。7. 最后
16、將數(shù)據(jù)線拉高。 DS18B20的讀操作:1. 將數(shù)據(jù)線拉高“1”。2. 延時(shí)2微秒。3. 將數(shù)據(jù)線拉低“0”。4. 延時(shí)15微秒。5. 將數(shù)據(jù)線拉高“1”。6. 延時(shí)15微秒。7. 讀數(shù)據(jù)線的狀態(tài)得到1個(gè)狀態(tài)位,并進(jìn)行數(shù)據(jù)處理。8. 延時(shí)30微秒。4.3 讀出溫度子程序溫度的讀?。篋S18B20在出廠時(shí)以配置為12位,讀取溫度時(shí)共讀取16位,所以把后11位的2進(jìn)制轉(zhuǎn)化為10進(jìn)制后在乘以0.0625便為所測(cè)的溫度,還需要判斷正負(fù)。前5個(gè)數(shù)字為符號(hào)位,當(dāng)前5位為1時(shí),讀取的溫度為負(fù)數(shù);當(dāng)前5位為0時(shí),讀取的溫度為正數(shù)。讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時(shí)需進(jìn)行CRC校驗(yàn),檢驗(yàn)有
17、錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫。其程序流程圖如圖4.2所示。發(fā)DS18B20復(fù)位命令發(fā)跳過(guò)ROM命令發(fā)讀取溫度命令 移入溫度暫存器結(jié)束 圖4.2 讀出溫度子程序流程圖4.4 溫度轉(zhuǎn)換命令子程序溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當(dāng)采用12位分辨率時(shí)轉(zhuǎn)換時(shí)間約為750ms,在本程序設(shè)計(jì)中采用1s顯示程序延時(shí)法等待轉(zhuǎn)換的完成。4.5 計(jì)算溫度子程序計(jì)算溫度子程序?qū)AM值進(jìn)行BCD碼的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正負(fù)的判定,其程序流程圖如圖4.3所示。開始溫度零下?置“+”標(biāo)志NY溫度值取補(bǔ)碼置“”標(biāo)志計(jì)算小數(shù)位溫度BCD計(jì)算整數(shù)位溫度BCD結(jié)束圖4.3 計(jì)算溫度子程序流程圖第6章 總結(jié)在這次基于80
18、C51單片機(jī)的數(shù)字溫度計(jì)控制系統(tǒng)的課程設(shè)計(jì),對(duì)整個(gè)硬件電路和軟件程序設(shè)計(jì)做了徹底的學(xué)習(xí),掌握了仿真軟件proteus及keil的基本知識(shí),學(xué)習(xí)了proteus的仿真方法和步驟,加深了51單片機(jī)的知識(shí)了解,并學(xué)習(xí)了數(shù)字溫度傳感器DS18B20,設(shè)計(jì)軟件仿真,更直觀的反應(yīng)設(shè)計(jì)的正確性。通過(guò)這次課程設(shè)計(jì)我才體會(huì)到老師在課堂上講學(xué)的重要性。我之前上單片機(jī)課時(shí)沒(méi)認(rèn)真聽(tīng)過(guò)一節(jié)課,導(dǎo)致我在做課程設(shè)計(jì)時(shí)無(wú)從下手,硬著頭皮看對(duì)單片機(jī)基礎(chǔ)知識(shí)進(jìn)行了一個(gè)星期的復(fù)習(xí),但是收益甚少,最后還是東部西湊,做出了雛形,其中一些功能還沒(méi)能達(dá)到,以后在單片機(jī)上還要下更大的功夫了。從這次的課程設(shè)計(jì)中,我真真正正的意識(shí)到,在以后的學(xué)
19、習(xí)中,要理論聯(lián)系實(shí)際,把我們所學(xué)的理論知識(shí)用到實(shí)際當(dāng)中,學(xué)習(xí)單機(jī)片機(jī)更是如此,程序只有在經(jīng)常的寫與讀的過(guò)程中才能提高,這就是我在這次課程設(shè)計(jì)中的最大附錄附錄A 仿真接線圖附錄B 程序清單DQ BITP3.0 ;從DS18B20向8051傳送的數(shù)據(jù)端口FLAG BIT00HFLAG_NEGBIT01H ;溫度正負(fù)值標(biāo)志位TEMP_LEQU 30H ;所設(shè)報(bào)警最低值溫度值TEMP_HEQU31H ;所設(shè)報(bào)警最高值溫度值TEMP_INTEQU 32HTEMP_DPEQU 33H ;TEMP_10EQU34HTEMP_1EQU35HC0BIT P3.1 ;負(fù)溫度標(biāo)志位C1BIT P3.2 ;超過(guò)10
20、標(biāo)志位 C2BIT P3.3 ;超過(guò)1 標(biāo)志位C3BIT P3.4 ;*;*主函數(shù)*ORG 0000HLJMP STARTORG 1000HSTART:MOV SP,#60HMAIN: LCALL READ_TEMP ;調(diào)用函數(shù)讀DS18B20所示溫度 LCALL PROC_TEMP ;調(diào)用函數(shù)對(duì)溫度進(jìn)行處理 LJMP MAIN;*;*READ_TEMP:LCALL INI_DQJB FLAG,RE_0 RETRE_0:MOV A,#0CCHLCALL WRITE_DQ ;讀出傳感器所示溫度MOV A,#44HLCALL WRITE_DQLCALL DISP_LED;調(diào)用LED顯示程序LCAL
21、L INI_DQMOV A,#0CCHLCALL WRITE_DQMOV A,#0BEHLCALL WRITE_DQLCALL READ_DQRET;*DS18B20初始化程序*INI_DQ:SETBDQNOP ;NOP ;空操作 PC值加2CLRDQMOV R1,#3INI_0: MOV R0,#80 DJNZ R0,$ DJNZ R1,INI_0SETB DQNOP ;NOP ;NOP ;空操作 PC值加3MOVR7,#25INI_1: JNB DQ,INI_2 ;DQ為0則轉(zhuǎn) DJNZ R7,INI_1 ;延時(shí) LJMP INI_3INI_2: SETB FLAG ;標(biāo)志位 LJMP I
22、NI_4INI_3: CLR FLAG LJMP INI_5INI_4: MOV R0,#80 DJNZ R0,$ ;時(shí)序要求延時(shí)一段時(shí)間INI_5: SETB DQ RET;*DS18B20寫命令*WRITE_DQ:MOVR6,#8 CLR CTloop:CLRDQMOV R2,#6DJNZ R2,$RRCA;最低位移到C中MOV DQ,CMOV R2,#23DJNZ R2,$SETB DQNOPDJNZ R6,TloopSETB DQRET;*讀DS18B20數(shù)據(jù)函數(shù)*READ_DQ:MOV R5,#2MOV R0,#30HREAD_0:MOV R6,#8READ_1:CLRCSETB D
23、QNOPNOPCLRDQNOPNOPNOPNOPSETBDQMOV R2,#9DJNZ R2,$MOV C,DQMOV R3,#23DJNZ R3,$RRCADJNZR6,READ_1MOV R0,AINC R0DJNZ R5,READ_0SETB DQRET;*溫度數(shù)據(jù)處理程序*PROC_TEMP:CLR FLAG_NEGMOV A,TEMP_LSWAP A ; A中高低四位互換ORL A,#0F0HMOV TEMP_INT,AMOV A,TEMP_HSWAP AORL A,#0FHANL TEMP_INT,AMOV A,TEMP_H CLR P3.6 CLR P3.7 JB ACC.7,B
24、AOJING1 ;低于零度亮紅燈報(bào)警;JBACC.7,NEGTIVEMOV A,TEMP_LANL A,#0FHMOV DPTR,#TAB3MOVC A,A+DPTRMOV TEMP_DP,ALJMP PRO_0;*報(bào)警函數(shù)*BAOJING1: SETB P3.7 RET;NEGTIVE: ;溫度值為負(fù)時(shí)處理程序,按實(shí)際情況,處理過(guò)程比較復(fù)雜;SETB FLAG_NEG;MOV A,TEMP_L;CPL A;ANL A,#0FH;MOV R1,A;CJNE R1,#0FH,PRO_1 ;低于0°則調(diào)用報(bào)警函數(shù) ; ;PUSH ACC;MOV A,TEMP_INT;SUBB A,#1;
25、MOV TEMP_INT,A;POP ACC;MOV TEMP_DP,#00H ; LJMP PRO_2PRO_1: ADD A,#1MOV DPTR,#TAB3MOVC A,A+DPTRMOV TEMP_DP,APRO_2:MOV A,TEMP_INTCPL AMOV TEMP_INT,APRO_0:MOV A,TEMP_INT MOV B,#100DIV ABMOV A,BMOV B,#10DIV ABMOV TEMP_10,AMOV TEMP_1,B RET;*LED初始化*CLR_LED:CLR C0CLR C1CLR C2CLR C3RET;*LED顯示*DISP_LED:LCALL CLR_LEDSETB C0JNB FLAG_NEG,DL_0MOV P1,#0BFH LCALL DELAY_10MSLJMP DL_1DL_0: MOV P1,#0FFHLCALL DELAY_10MSDL_1:LCALL CLR_LED SETB C1 ;顯示十位 MOV A,TEMP_10 MOV DPTR,#TAB4MOVC A,A+DPTRMOV P1,A CJNE A,#092H,CESHI ;超過(guò)50啟動(dòng)揚(yáng)聲器報(bào)警 LCALL BAOJING2 CESHI:LCALL DELAY_10MSLCALL CLR_LEDSETB C2 MOV A,TEMP_1;顯
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 會(huì)計(jì)邏輯測(cè)試題及答案
- 大學(xué)語(yǔ)文群文閱讀階段性工作總結(jié)
- 上崗培訓(xùn)流程
- 外幣反假培訓(xùn)
- 2025年中國(guó)磨刀棒行業(yè)市場(chǎng)全景分析及前景機(jī)遇研判報(bào)告
- 兒科危重癥??谱o(hù)士培訓(xùn)匯報(bào)
- 產(chǎn)后母嬰護(hù)理教程
- 機(jī)打發(fā)票培訓(xùn)
- 轉(zhuǎn)正制度培訓(xùn)
- 旅游度假村場(chǎng)地合作運(yùn)營(yíng)協(xié)議
- 中國(guó)全部城市名及拼音
- 未成年人紋身治理-主題班會(huì)
- 中國(guó)紅色文化精神學(xué)習(xí)通超星課后章節(jié)答案期末考試題庫(kù)2023年
- 平方差公式公開課一等獎(jiǎng)?wù)n件市公開課一等獎(jiǎng)?wù)n件省賽課獲獎(jiǎng)?wù)n件
- 2023年公司商業(yè)機(jī)密保密管理
- 2023山西焦煤集團(tuán)有限責(zé)任公司井下操作工招聘2000人筆試模擬試題及答案解析
- 中國(guó)西部國(guó)際汽車城可行性研究報(bào)告(上)
- 通信工程施工組織方案
- 火災(zāi)報(bào)警系統(tǒng)操作及維護(hù)保養(yǎng)規(guī)程(保得威爾)
- 靜脈輸液工具合理選擇
- GB/T 9634.2-2002鐵氧體磁心表面缺陷極限導(dǎo)則第2部分:RM磁心
評(píng)論
0/150
提交評(píng)論