基于單片機(jī)多路溫度巡回檢測儀設(shè)計(jì)畢業(yè)設(shè)計(jì)_第1頁
基于單片機(jī)多路溫度巡回檢測儀設(shè)計(jì)畢業(yè)設(shè)計(jì)_第2頁
基于單片機(jī)多路溫度巡回檢測儀設(shè)計(jì)畢業(yè)設(shè)計(jì)_第3頁
基于單片機(jī)多路溫度巡回檢測儀設(shè)計(jì)畢業(yè)設(shè)計(jì)_第4頁
基于單片機(jī)多路溫度巡回檢測儀設(shè)計(jì)畢業(yè)設(shè)計(jì)_第5頁
已閱讀5頁,還剩47頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、本科畢業(yè)設(shè)計(jì)論文本科畢業(yè)設(shè)計(jì)論文 題目:題目: 基于單片機(jī)多路溫度巡回基于單片機(jī)多路溫度巡回 檢測儀設(shè)計(jì)檢測儀設(shè)計(jì) 完完 成時間:成時間: 2012 年年 6 月月 10 日日 sout hwest petroleum university 學(xué)生姓名學(xué)生姓名 xxxx 學(xué)學(xué)號號 xxxx 教學(xué)院系教學(xué)院系電氣信息學(xué)院電氣信息學(xué)院 專業(yè)年級專業(yè)年級自動化自動化 2008 級級 指導(dǎo)教師指導(dǎo)教師 xxxxx 單單位位 xxxxxxxxxxxxxx ii graduation thesis designed based on single-chip multi-channel temperature

2、 data loggers grade: 2008 name: liu weijian speciality: automation instructor: zhang peizhi school of electronics and information engineering june 10, 2012 摘要摘要 隨著計(jì)算機(jī)技術(shù)和傳感器的發(fā)展,在生產(chǎn)和日?;顒又?,人們對溫度模擬物 理量的測量要求越來越高。工業(yè)、農(nóng)業(yè)自動化水平也迅速提高,單片機(jī)的應(yīng)用也 iii 越來越廣泛,作用也越來越來顯著。溫度檢測系統(tǒng)在人們的生產(chǎn)生活中的應(yīng)用十 分廣泛。本課題溫度檢測實(shí)際應(yīng)用為出發(fā)點(diǎn),結(jié)合單片機(jī)微處理器

3、技術(shù),提出了 基于單片機(jī)的多路溫度巡回檢測儀設(shè)計(jì)。 本次畢業(yè)設(shè)計(jì)內(nèi)容就是配合系統(tǒng)檢測精度要求,選用相關(guān)控制微處理器;檢 測裝置硬件的結(jié)構(gòu)及連接;檢測程序的編制;完成成品調(diào)試和演示。首先分析和 制定了檢測系統(tǒng)的整體設(shè)計(jì)思想和方案,確保了該檢測系統(tǒng)具備真正的自動化檢 測能力且結(jié)構(gòu)簡單。其次利用 at89c51 單片機(jī)對多個檢測點(diǎn)進(jìn)行巡回檢測,選用 精度高,工作穩(wěn)定的數(shù)字傳感器 ds18b20 進(jìn)行溫度采集。并用 max7219 驅(qū)動 led 顯示所測溫度及上下限。 對各部分的電路也一一進(jìn)行了介紹,該系統(tǒng)可以方便的實(shí)現(xiàn)溫度采集和顯示, 并可根據(jù)需要任意設(shè)定上下限報(bào)警溫度,它使用起來相當(dāng)方便,具有精度

4、高、靈 敏度高、體積小、功耗低等優(yōu)點(diǎn),適合于我們?nèi)粘I詈凸?、農(nóng)業(yè)生產(chǎn)中的溫度 測量,也可以當(dāng)作溫度處理模塊嵌入其它系統(tǒng)中,作為其他主系統(tǒng)的輔助擴(kuò)展。 關(guān)鍵詞關(guān)鍵詞:溫度檢測 ;at89c51;max7219 ;ds18b20 abstract with the development of computer technology and sensors, in production and daily iv activities, people increasingly high temperature analog physical quantity measurement require

5、ments. industry, agriculture level of automation, rapid increase in microcontroller applications are increasingly being used, the role become more and more significant. temperature detection system is widely used in the production life of the people. practical application of the temperature detectio

6、n of this topic as a starting point, combined with the single-chip microprocessor technology, the design of microcontroller-based multi-channel temperature data loggers. the graduation project content with the system measurement accuracy requirements, selection of the relevant control microprocessor

7、; structure and connection of the detection device hardware; the preparation of the testing procedures; to complete the finished debugging and demonstration. first of all analysis and development of ideas and programs of the overall design of the detection system to ensure that the detection system

8、with truly automated testing capability and simple structure. followed by using at89c51 microcontroller circuit testing, multiple test points selection of high accuracy, stable digital sensor ds18b20 temperature acquisition. and max7219 drive led shows the measured temperature and the upper and lowe

9、r limits. various parts of the circuit one by one, the system can facilitate the realization of the temperature acquisition and display, and can be arbitrarily set the upper and lower limit alarm temperature, it is very convenient to use, with high precision, high sensitivity, small sizesuitable for

10、 low power consumption advantages in our daily life and work, the temperature measurement in the agricultural production, can also be used as the temperature processing module is embedded in other systems, and other auxiliary expansion. key words: temperature detection; at89c51; max7219; ds18b20 目錄目

11、錄 1 1 緒論緒論.1 v 1.11.1 設(shè)計(jì)概述設(shè)計(jì)概述 .1 1.21.2 溫度檢測系統(tǒng)設(shè)計(jì)意義溫度檢測系統(tǒng)設(shè)計(jì)意義 .1 2 多路溫度巡回檢測儀設(shè)計(jì)內(nèi)容多路溫度巡回檢測儀設(shè)計(jì)內(nèi)容 .2 2.12.1 任務(wù)要求任務(wù)要求 .2 2.22.2 系統(tǒng)設(shè)計(jì)應(yīng)用要求系統(tǒng)設(shè)計(jì)應(yīng)用要求 .2 2.32.3 設(shè)計(jì)流程設(shè)計(jì)流程 .2 3 設(shè)計(jì)方案設(shè)計(jì)方案.3 3.1 方案對比方案對比 .3 3.1.1 溫度傳感器選擇方案溫度傳感器選擇方案.3 3.1.23.1.2 單片機(jī)選擇方案單片機(jī)選擇方案.3 3.1.33.1.3 顯示電路的選擇方案顯示電路的選擇方案.3 3.23.2 總體方案總體方案 .4 4 4

12、 系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì).4 4.14.1 硬件設(shè)計(jì)硬件設(shè)計(jì) .4 4.1.14.1.1 溫度傳感器設(shè)計(jì)溫度傳感器設(shè)計(jì).4 (1 1)ds18b20ds18b20 介紹介紹.4 4.1.24.1.2 單片機(jī)最小系統(tǒng)單片機(jī)最小系統(tǒng).8 4.1.3 顯示電路設(shè)計(jì)顯示電路設(shè)計(jì).10 4.1.4 按鍵電路按鍵電路.13 4.1.5 報(bào)警電路報(bào)警電路.14 4.2 軟件設(shè)計(jì)軟件設(shè)計(jì) .15 4.2.1 主程序主程序.15 4.2.4max7219 顯示子程序顯示子程序.17 4.2.5 按鍵按鍵程序程序.18 4.3 程序編寫程序編寫 .19 4.4 硬件仿真硬件仿真 .19 5 5系統(tǒng)調(diào)試系統(tǒng)調(diào)試.19 5

13、.15.1 最小系統(tǒng)調(diào)試最小系統(tǒng)調(diào)試 .20 5.25.2 顯示電路調(diào)試顯示電路調(diào)試 .20 5.35.3 測量電路調(diào)試測量電路調(diào)試 .21 5.45.4 其他電路調(diào)試其他電路調(diào)試 .21 6 6 小結(jié)小結(jié) .21 vi 致致 謝謝 .23 參考文獻(xiàn)參考文獻(xiàn) .24 附錄一:電路原理圖附錄一:電路原理圖 .25 附錄二:總程序附錄二:總程序.26 1 1 1 緒論緒論 1.11.1 設(shè)計(jì)概述設(shè)計(jì)概述 隨著社會的不斷發(fā)展,各種電子產(chǎn)品的不斷更新?lián)Q代,使得電子產(chǎn)品智能化 的要求越來越高.單片機(jī)就是在一塊半導(dǎo)體硅片上集成了微處理器(cpu) ,存儲 器(ram,rom,eprom)和各種輸入,輸出接

14、口,這樣一塊集成電路芯片具 有一臺計(jì)算機(jī)的屬性,被稱為單片微型計(jì)算機(jī)。單片機(jī)微型計(jì)算機(jī)因其體積小、 價格低、性能靈活、開發(fā)方便的獨(dú)特優(yōu)勢,在機(jī)電一體化產(chǎn)品的開發(fā)和控制中得 到了最廣泛的應(yīng)有,而且越來越向縱深發(fā)展。從簡單的機(jī)電一體化產(chǎn)品深入到數(shù) 控系統(tǒng)、柔性化、智能化系統(tǒng)以及機(jī)器人系統(tǒng)等。而基于單片機(jī)的溫度檢測系統(tǒng) 不斷被開發(fā)革新,為一些系統(tǒng)的溫度檢測提供良好的技術(shù)支持,更快速方便的為 生產(chǎn)提供及時準(zhǔn)確的溫度數(shù)據(jù)。 通過本選題的研究,可以掌握單片機(jī)改造的基礎(chǔ)知識和步驟,對單片機(jī)的應(yīng) 用也有了最基本的了解。單片機(jī)的應(yīng)用,打破了人們的傳統(tǒng)設(shè)計(jì)思想,原來很多 用模擬電路,脈沖數(shù)字電路,邏輯部件來實(shí)現(xiàn)的

15、功能,現(xiàn)在無需增加硬件設(shè)備, 可以通過軟件來完成。正由于這樣,單片機(jī)已成為科技領(lǐng)域的有力工具,人類生 活的得力助手。 1.21.2 溫度檢測系統(tǒng)設(shè)計(jì)意義溫度檢測系統(tǒng)設(shè)計(jì)意義 溫室大棚是為了使植物在任何時期都能正常生長,因此,溫度的大小是很重 要的。溫室大棚中溫度變化范圍一般為 0c60c,精度要求為0.5c。糧食 儲存在糧倉中,糧食儲存時間有長有短,為了保證糧食不致腐爛變質(zhì),就必須保 證糧倉溫度在一定范圍內(nèi)。糧倉內(nèi)溫度范圍一般為:0c30c,精度為: 5c。本次設(shè)計(jì)的溫度巡回檢測儀可用于糧庫和溫室大棚中,可對多個糧倉或 溫室大棚進(jìn)行多點(diǎn)監(jiān)測,從而節(jié)省人力物力,并且可在同一界面檢測溫度和設(shè)置 參

16、數(shù)。這樣可以提升工作效率,而且又能精確得知溫度變化,可以及時準(zhǔn)確地控 制溫度達(dá)到預(yù)期要求,對作物生長和糧食儲藏非常有利,從而達(dá)到農(nóng)作物高生產(chǎn) 糧食高質(zhì)量。 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 2 2 多路溫度巡回檢測儀設(shè)計(jì)內(nèi)容多路溫度巡回檢測儀設(shè)計(jì)內(nèi)容 2.12.1 任務(wù)要求任務(wù)要求 該課題為設(shè)計(jì)一個八路溫度檢測點(diǎn)巡回檢測,各個檢測點(diǎn)按固定時間巡回檢 測,并且要有超限報(bào)警。其設(shè)計(jì)要求: 1、精度誤差小于0.5; 2、用led數(shù)碼管顯示監(jiān)測數(shù)據(jù); 3、用led數(shù)碼管顯示報(bào)警值及巡回時間; 4、具有可以任意設(shè)定溫度的上下限和巡回時間功能。 2.22.2 系統(tǒng)設(shè)計(jì)應(yīng)用要求系統(tǒng)設(shè)計(jì)應(yīng)用要求 本次設(shè)計(jì)主

17、要應(yīng)用于農(nóng)業(yè)、工業(yè)等需要多點(diǎn)測溫場合,如:溫室大棚的溫度 測量與控制、糧倉溫度測量、流水線溫度檢測等。測量上下限要能夠包含測量點(diǎn) 的最高和最低溫度,并留有一定的裕值。多點(diǎn)測量,但是要具有簡捷操作和簡化 顯示,可以讓檢測員快速方便的操作,記錄。報(bào)警功能要簡單快速,要能及時通 知管理員溫度出現(xiàn)異常。巡回時間能隨意設(shè)置,這樣可以根據(jù)季節(jié)的變化或環(huán)境 溫度的變化率決定巡回時間。使得檢測更加及時準(zhǔn)確。 2.32.3 設(shè)計(jì)流程設(shè)計(jì)流程 首先對設(shè)計(jì)整體構(gòu)思,設(shè)計(jì)整體方案。在根據(jù)構(gòu)思查閱相關(guān)資料文獻(xiàn),從而 選出符合要求的元件。然后根據(jù)所選元件構(gòu)建整體電路圖,并考察其合理性。并 且細(xì)致分析選擇參數(shù)合理且精確度高

18、的配件。再者,根據(jù)構(gòu)建的電路圖和元器件 的工作原理編寫程序,并利用軟件仿真模擬,看是否能夠運(yùn)行。最后按照電路圖 焊接硬件電路,下載程序并調(diào)試,根據(jù)調(diào)試出現(xiàn)的問題在調(diào)整電路。整個過程流 程圖如下: 圖圖 2.12.1 設(shè)計(jì)流程設(shè)計(jì)流程 3 3 設(shè)計(jì)方案設(shè)計(jì)方案 3.1 方案對比方案對比 3.1.1 溫度傳感器選擇方案溫度傳感器選擇方案 方案一: 本設(shè)計(jì)為溫度測量電路,可以采用熱敏電阻之類的模擬傳感器,將隨被測溫 度變化的電壓或電流采集,然后進(jìn)行a/d 轉(zhuǎn)換,再送入單片機(jī)進(jìn)行數(shù)據(jù)的處理, 單片機(jī)將輸出信號送入顯示電路,就可以顯示被測溫度,此設(shè)計(jì)需要用到a/d 轉(zhuǎn) 換電路,其中還涉及到電阻與溫度的對

19、應(yīng)值的計(jì)算。而且在對采集的信號進(jìn)行放 大時容易受溫度及周圍電磁的影響,從而產(chǎn)生較大誤差。 方案二: 模擬量溫度傳感器容易受環(huán)境影響,所以可以采用數(shù)字溫度傳感器,此類感 器,可以很容易直接讀取被測溫度值,進(jìn)行轉(zhuǎn)換,電路簡單,精度高,軟硬件都 易于實(shí)現(xiàn),而且節(jié)省使用單片機(jī)的接口便于系統(tǒng)的再擴(kuò)展。 從以上兩種方案,很容易看出,采用方案二,電路比較簡單,費(fèi)用較低,可 靠性高,軟件設(shè)計(jì)也比較簡單,故采用了方案二。 3.1.23.1.2單片機(jī)選擇方案單片機(jī)選擇方案 方案一: 凌陽單片機(jī)順應(yīng)了單片機(jī)技術(shù)的發(fā)展趨勢,其系統(tǒng)芯片具有集成度高、數(shù)/模 混合、功能全、低功耗、低電壓和易于開發(fā)等特點(diǎn),但其可靠性較差,

20、溫度過高 時會影響測量結(jié)果,且價格較高不易于畢業(yè)設(shè)計(jì)。 方案二: 51系列單片機(jī)由于其具有的集成度高、處理功能強(qiáng)、可靠性高、系統(tǒng)結(jié)構(gòu)簡 單、價格低廉等優(yōu)點(diǎn),應(yīng)用資料眾多,在實(shí)際應(yīng)用中得到廣泛的采用,比較實(shí)用 于民用產(chǎn)品的開發(fā)。 從以上兩種方案,很容易看出,采用方案二,費(fèi)用較低,可靠性高,故采用 了方案二。 3.1.33.1.3顯示電路的選擇方案顯示電路的選擇方案 本次設(shè)計(jì)用到七個數(shù)碼管,并要同時顯示,由于單片機(jī)的端口有限,所以要 采用動態(tài)顯示。故此要用到譯碼驅(qū)動器完成動態(tài)顯示。 方案一: 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 4 采用138譯碼器完成動態(tài)顯示,138譯碼器的輸入連接到單片機(jī)三個引

21、腳,led 的位選引腳連接138輸出,但led的端選引腳依然要連接單片機(jī)端口,占有單片機(jī)的 一個端口。并沒有節(jié)省端口。并且還要進(jìn)行軟件譯碼,使得程序復(fù)雜繁多。 方案二: 采用max7219驅(qū)動器,單片機(jī)只需用三根引腳連接7219的串行引腳,連接方 便,簡化電路。7219本身可以進(jìn)行bcd譯碼,我們只需把測量數(shù)據(jù)直接送入即可, 使得程序簡捷。 從以上兩種方案,很容易看出,采用方案二,電路比較簡單,軟件設(shè)計(jì)也比 較簡單,故采用了方案二。 3.23.2總體方案總體方案 由方案對比得更加合理設(shè)計(jì)方案,因此,在此基礎(chǔ)上對系統(tǒng)進(jìn)行整體設(shè)計(jì)。 首先,溫度采集模塊利用溫度傳感器采集現(xiàn)場溫度,然后送入控制處理模

22、塊進(jìn)行 處理??刂铺幚砟K的單片機(jī)將得到的采集信號送進(jìn)行處理,進(jìn)行數(shù)據(jù)的轉(zhuǎn)換得 到要輸出的信號。單片機(jī)將輸出信號送入顯示電路和報(bào)警電路,從而顯示測量結(jié) 果。該溫度巡回檢測系統(tǒng)由控制模塊、顯示模塊、溫度采集模塊組成。測溫范圍 0c100c。整體設(shè)計(jì)框圖如下: 八路數(shù)字溫度 傳感器 單 片 機(jī) 處 理 器 參數(shù)調(diào)整按鍵 led 顯示電路 報(bào)警電路 圖圖 3.13.1 總體設(shè)計(jì)框圖總體設(shè)計(jì)框圖 4 4 系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì) 4.14.1 硬件硬件設(shè)計(jì)設(shè)計(jì) 4.1.14.1.1 溫度傳感器溫度傳感器設(shè)計(jì)設(shè)計(jì) (1 1)ds18b20ds18b20 介紹介紹 5 本設(shè)計(jì)選用數(shù)字傳感器,選用常見的ds18b2

23、0溫度傳感器。ds18b20 溫度傳 感器是美國dallas 半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng) 的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實(shí)際要求通過 簡單的編程實(shí)現(xiàn)912位的數(shù)字值讀數(shù)方式。其實(shí)物圖如下: 圖圖4.14.1 ds18b20ds18b20 ds18b20 的性能特點(diǎn)如下: 1、獨(dú)特的單線接口僅需要一個端口引腳進(jìn)行通信; 2、多個ds18b20 可以并聯(lián)在惟一的三線上,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能 3、無須外部器件; 4、可通過數(shù)據(jù)線供電,電壓范圍為3.05.5; 5、零待機(jī)功耗; 6、溫度以9或12位數(shù)字; 7、用戶可定義報(bào)警設(shè)置; 8、報(bào)警搜索命令識別

24、并標(biāo)志超過程序限定溫度(溫度報(bào)警條件)的器件; 9、負(fù)電壓特性,電源極性接反時,溫度計(jì)不會因發(fā)熱而燒毀,但不能正常工 作; 10、精度 5c。 (2)ds18b20 工作原理工作原理 ds18b20 的讀寫時序和測溫原理與 ds1820 相同,只是得到的溫度值的位 數(shù)因分辨率不同而不同,且溫度轉(zhuǎn)換時的延時時間由 2s 減為 750ms。 ds18b20 測溫原理如圖 4.2 所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于 產(chǎn)生固定頻率的脈沖信號送給計(jì)數(shù)器 1。高溫度系數(shù)晶振隨溫度變化其振蕩率明 顯改變,所產(chǎn)生的信號作為計(jì)數(shù)器 2 的脈沖輸入。計(jì)數(shù)器 1 和溫度寄存器被預(yù)置 在55所對應(yīng)

25、的一個基數(shù)值。計(jì)數(shù)器 1 對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 6 減法計(jì)數(shù),當(dāng)計(jì)數(shù)器 1 的預(yù)置值減到 0 時,溫度寄存器的值將加 1,計(jì)數(shù)器 1 的 預(yù)置將重新被裝入,計(jì)數(shù)器 1 重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計(jì) 數(shù),如此循環(huán)直到計(jì)數(shù)器 2 計(jì)數(shù)到 0 時,停止溫度寄存器值的累加,此時溫度寄 存器中的數(shù)值即為所測溫度。圖中的斜率累加器用于補(bǔ)償和修正測溫過程中的非 線性,其輸出用于修正計(jì)數(shù)器 1 的預(yù)置值。ds18b20 輸出的二進(jìn)制的高字節(jié)的低 半字節(jié)和低字節(jié)的高半字節(jié)組成一個字節(jié),這個字節(jié)轉(zhuǎn)換位十進(jìn)制為所測溫度值 的百、十、個位,低字節(jié)的低半

26、字節(jié)為小數(shù)部分。 圖圖 4.24.2 ds18b20ds18b20 測溫原理框圖測溫原理框圖 表表 3.1ds18b20 溫度與測得值對應(yīng)表溫度與測得值對應(yīng)表 溫度/二進(jìn)制值十六進(jìn)制值 +12500000111 1101000007d0h +8500000101 010100000550h +25.062500000001 100100010191h +10.12500000000 1010001000a2h +0.500000000 000010000008h 000000000 000000000000h -0.511111111 11111000fff8h (3)ds18b20 的供電方

27、式的供電方式 ds18b20 可以采用兩種方式供電,一種是采用電源供電方式,此時 ds18b20 的 1 腳接地,2 腳作為信號線,3 腳接電源。另一種是寄生電源供電 方式,單片機(jī)端口接單線總線,為保證在有效的 ds18b20 時鐘周期內(nèi)提供足夠 的電流,可用一個 mosfet 管來完成對總線的上拉。當(dāng) ds18b20 處于寫存儲器 操作和溫度 a/d 轉(zhuǎn)換操作時,總線上必須有強(qiáng)的上拉,上拉開啟時間最大為 10us。采用寄生電源供電方式時 vdd 端接地。由于單線制只有一根線,因此發(fā) 送接口必須是三態(tài)的。 7 (4)ds18b20 工作時序工作時序 圖圖 4.3 ds18b20 初始化初始化

28、圖圖 4.4 ds18b20 寫時序?qū)憰r序 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 8 圖圖 4.5 ds18b20 讀時序讀時序 (5)測量電路設(shè)計(jì))測量電路設(shè)計(jì) 本次設(shè)計(jì)設(shè)計(jì)了八路溫度采集點(diǎn),共有八個 ds18b20,選擇了單片機(jī)的 p1 口為采集量輸入端,p0.1p0.7 分別為 18 號測量點(diǎn)。ds18b20 的 vdd 接高電 平,gnd 接地,dq 接單片機(jī)的 p1 口。如下圖: 圖圖 4.6ds18b20 連接圖連接圖 4.1.24.1.2 單片機(jī)單片機(jī)最小系統(tǒng)最小系統(tǒng) (1 1)5151單片機(jī)簡介單片機(jī)簡介 本次設(shè)計(jì)選用c51系列的單片機(jī),選擇目前市場上性價比較高的單片機(jī) 9 at

29、89c51作為該系統(tǒng)的控制核心。at89c51提供以下標(biāo)準(zhǔn)功能: 4k 字節(jié) flash 閃速存儲器, 128字節(jié)內(nèi)部ram,32 個i/o 口線,兩個 16位定時/ 計(jì)數(shù)器,一個 5向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器 及時鐘電路。同時, at89c51可降至0hz的靜態(tài)邏輯操作,并支持兩種軟 件可選的節(jié)電工作模式??臻e方式停止 cpu的工作,但允許 ram,定時/ 計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存ram中的內(nèi)容, 但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復(fù)位。 圖圖 4.7 at89c51 引腳圖引腳圖 (2)單片機(jī)最小系統(tǒng))單片機(jī)最小系統(tǒng) at

30、89c51 的最小系統(tǒng)中,復(fù)位電路采用按鍵復(fù)位,sb1 按下單片機(jī)復(fù)位。其 連接如下: 圖圖4.8 復(fù)位電路復(fù)位電路 最小系統(tǒng)中晶振電路的晶振采用12mhz,兩個電容均為22pf。連接如下: 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 10 圖圖4.9 晶振電路晶振電路 4.1.3 顯示電路顯示電路設(shè)計(jì)設(shè)計(jì) 我們采用七段數(shù)碼管作為顯示工具,它分為靜態(tài)和動態(tài)顯示。靜態(tài)驅(qū)動是指 每個數(shù)碼管的每一個段碼都由一個高,缺點(diǎn)是占用i/o端口多。動態(tài)顯示驅(qū)動是 將所有數(shù)碼管通過分時輪流控制各個數(shù)碼管的的com端,就使各個數(shù)碼管輪流受 控顯示。為了電路簡化,軟件設(shè)計(jì)方便,我們選用led驅(qū)動芯片max7219驅(qū)動 顯示

31、,所以選擇共陰極led數(shù)碼管。 (1)max7219的簡介的簡介 max7219是一種集成化的串行輸入/輸出共陰極顯示驅(qū)動器,它連接微處理器 與八位數(shù)字的七段數(shù)字led顯示,也可以連接條線圖顯示器或64個獨(dú)立的led。其 上包括一個片上的b型bcd編碼器、多路掃描回路,段字驅(qū)動器,而且還有一個 8*8的靜態(tài)ram用來存儲每一個數(shù)據(jù)。只有一個外部寄存器用來設(shè)置各個led的段 電流。整個設(shè)備包含一個150ua的低功耗關(guān)閉模式,模擬和數(shù)字亮度控制,一個 掃描限制寄存器允許用戶顯示18位數(shù)據(jù),還有一個讓所有l(wèi)ed發(fā)光的檢測模式。 圖圖4.104.10 ledled和和max7219max7219引腳圖

32、引腳圖 max7219功能特點(diǎn) 11 10mhz連續(xù)串行口 獨(dú)立的led段控制 數(shù)字的譯碼和非譯碼選擇 150ua的低功耗關(guān)閉模式 亮度的數(shù)字和模擬控制 高電壓中斷顯示 共陰極led顯示驅(qū)動 (2 2)max7219max7219的工作原理的工作原理 max7219采用24腳雙列直插式封裝,其引腳排列如圖4.10所示,segasegg 和segdp為led 7段驅(qū)動線和小數(shù)點(diǎn)線,供給顯示器源電流;dig0dig7為8位數(shù) 字驅(qū)動線,輸出位選信號,從每位led共陰極吸人電流。max7219能夠接受的數(shù)據(jù) 和命令格式為16位數(shù)據(jù)包(格式如下表),din 是串行數(shù)據(jù)輸人端,由l6位數(shù)據(jù) 包發(fā)送到di

33、n端的串行數(shù)據(jù)在每個clk的上升沿被移入到內(nèi)部l6位移位寄存器中; load用來裝載數(shù)據(jù),在load的上升沿,l6位數(shù)據(jù)被鎖存到數(shù)據(jù)或控制寄存器中, load必須在第l6個時鐘上升沿的同時或之后,在下一個時鐘上升沿之前變高,否 則數(shù)據(jù)會丟失。 表表4.24.2串行數(shù)據(jù)格式串行數(shù)據(jù)格式 d15d14d13d12d11d10d9d8d7d6d5d4d3d2d1d0 xxxx 地址msb 數(shù)據(jù) lsb 圖圖4.114.11 時序圖時序圖 max7219的l6位串行數(shù)據(jù)包標(biāo)記為d15do,其中d15 d12位未定義,dlld8 位尋址內(nèi)部8個靜態(tài)ram和6個功能寄存器的地址,d7do位存放功能寄存器的

34、數(shù) 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 12 據(jù)和led數(shù)碼管待顯示的數(shù)據(jù)。編程時,程序先送控制命令字,后向數(shù)據(jù)寄存器 送顯示數(shù)據(jù)。 max7219的所有功能與多樣化操作模式都是通過內(nèi)部寄存器的設(shè)定來實(shí)現(xiàn)的, 其內(nèi)部l4個可尋址寄存器的功能及地址如表所示。 表表4.34.3寄存器功能表寄存器功能表 功能d15-d12 d11d10d9d8 十六進(jìn)制編 碼 空操作 x0000x0 dig0x0001x1 dig1x0010x2 dig2x0011x3 dig3x0100x4 dig4x0101x5 dig5x0110x6 dig6x0111x7 dig7x1000x8 譯碼模式 x1001x9

35、顯示亮度 x1010xa 掃描界限 x1010xb 停機(jī) x1100xc 待測模式 x1111xf (3 3)各內(nèi)部寄存器含義如下:)各內(nèi)部寄存器含義如下: 1)空操作寄存器(地址xoh)。用于多片max7219級聯(lián),在不改變顯示或不影響 任意功能寄存器的條件下,它允許數(shù)據(jù)從din傳送到dout。 2)譯碼模式寄存器(地址x9h)。該寄存器的8位二進(jìn)制數(shù)的各位分別控制8個 led顯示器的譯碼模式。當(dāng)高電平時,選擇硬件譯碼模式(bcdb碼譯碼),當(dāng)?shù)?電平時選擇軟件譯碼模式(即送來數(shù)據(jù)為字型碼)。 3)顯示亮度寄存器(地址xah)顯示亮度可以用硬件和軟件2種方法調(diào)節(jié)通 13 過對亮度寄存器中d3

36、 do位寫入不同的數(shù)值可實(shí)現(xiàn)對led顯示亮度的控制,從xoh 到xfh共l6級可調(diào)。 4)掃描界限寄存器(地址xbh)。用于設(shè)置led顯示器的實(shí)際掃描個數(shù),由該寄 存器的d2do位設(shè)定,當(dāng)設(shè)定值為000blllb時,表示顯示器動態(tài)掃描個數(shù)為 l8。 5)停機(jī)寄存器(地址xch)。當(dāng)do=0時,max7219處于停機(jī)狀態(tài),所有顯示器消 隱,寄存器數(shù)據(jù)保持不變;當(dāng)do=l時,處于正常工作狀態(tài)6)顯示測試寄存器 (地址 )。當(dāng)do=0時,正常工作;當(dāng)do=l時,處于測試狀態(tài),在該狀態(tài)下,不管 max7219處于什么模式,全部led將按最大亮度顯示。 7)內(nèi)部ram地址xlhx8h分別對應(yīng)于dig0d

37、ig7。 (4)7219電路設(shè)計(jì)電路設(shè)計(jì) 顯示單元利用max7219驅(qū)動7個共陰極led,max7219的三根串行線連接單 片機(jī)的p2.0p2.1p2.2端口,并且三根連線上分別接有20pf電容,起到濾波作用, 使串行信號更加準(zhǔn)確。iest連接47k電阻。顯示內(nèi)容為測量溫度值、測量通道、 循環(huán)時間、報(bào)警限值。 圖圖4.12 顯示電路顯示電路 4.1.4 按鍵電路按鍵電路 電路設(shè)計(jì)圖: 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 14 圖圖4.13 按鍵電路按鍵電路 按鍵部分的功能為:按下stop后測量停止在當(dāng)前的通道,并且測量值保留 顯示。按下return后繼續(xù)檢測。按下set鍵后,可以設(shè)置參數(shù),設(shè)置

38、方法如下: 按下tiadd鍵增加循環(huán)時間,按下timdec鍵減小循環(huán)時間,按下low鍵是顯示 底限報(bào)警值,按下high鍵是顯示高限報(bào)警值,按下bjadd鍵是增加當(dāng)前顯示報(bào) 警值,按下bjdec鍵是減小當(dāng)前顯示報(bào)警值。 4.1.5報(bào)警電路報(bào)警電路 報(bào)警電路作用是當(dāng)測量溫度超出上限或低于下限時,發(fā)出報(bào)警信號。通過 9011三極管的通斷控制蜂鳴器,當(dāng)p2.7輸出報(bào)警信號時為高電平,三極管導(dǎo)通, 蜂鳴器發(fā)出報(bào)警聲。如圖: 圖圖4.14 報(bào)警電路報(bào)警電路 最終將各個部分電路有機(jī)的連接在一起,完成整體電路設(shè)計(jì),整體電路見附 錄一。為方便管理員檢測和操作,設(shè)計(jì)了監(jiān)控操作界面,各個按鍵的作用在按鍵 電路部分已

39、經(jīng)說明,如下圖: 15 圖圖4.5 界面界面 表表4.4 元件清單元件清單 元件型號數(shù)量 單片機(jī)at89c511 傳感器ds18b208 驅(qū)動器max72191 顯示器led7 三極管90111 蜂鳴器1 晶振12mhz1 47k1 10k1電阻 1k9 瓷電容22pf5電容 電解電容10uf1 4.2 軟件設(shè)計(jì)軟件設(shè)計(jì) 4.2.1主程序主程序 主程序的功能為讀取ds18b20的測量值、測量值轉(zhuǎn)換為顯示值、顯示測量結(jié) 果、由按鍵對數(shù)據(jù)調(diào)整。根據(jù)系統(tǒng)的工作原理,編寫其工作程序,其流程圖: 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 16 圖圖4.15 主程序流程圖主程序流程圖 4.2.2 ds18b20

40、測溫度子程序測溫度子程序 根據(jù)ds18b20的工作原理,及其時序圖編寫ds18b20的工作程序,程序功能 為:對ds18b20初始化、發(fā)送數(shù)據(jù)轉(zhuǎn)換命令、讀取溫度,其流程圖: 17 圖圖4.16 ds18b20測溫度子程序測溫度子程序 4.2.34.2.3數(shù)據(jù)轉(zhuǎn)換數(shù)據(jù)轉(zhuǎn)換 由于ds18b20的測量數(shù)據(jù)為正數(shù)和小數(shù)的組合形式,所以要先將小數(shù)和正數(shù) 拆開,中間八位為正數(shù)部分,后四位是小數(shù)部分,按后將得到的小數(shù)和正數(shù)進(jìn)行 十進(jìn)制轉(zhuǎn)換,得到顯示的數(shù)據(jù),如果為負(fù)數(shù)還要進(jìn)行求補(bǔ)。流程圖: 圖圖1.17 數(shù)據(jù)轉(zhuǎn)換數(shù)據(jù)轉(zhuǎn)換 4.2.4max7219顯示子程序顯示子程序 根據(jù)max7219的工作原理及時序圖,編寫

41、顯示子程序,其功能為:初始化 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 18 max7219、尋找對應(yīng)寄存器、送入顯示數(shù)據(jù)、啟動顯示。其流程圖如下: 圖圖4.18 max7219顯示子程序顯示子程序 4.2.5按鍵按鍵程序程序 按鍵程序功能:通過外部按鍵作用,單片機(jī)根據(jù)程序作出相應(yīng)的處理,改變 各項(xiàng)參數(shù)。 圖圖4.19 按鍵流程圖按鍵流程圖 19 4.3程序編寫程序編寫 本次設(shè)計(jì)的程序編寫利用keil軟件編寫,keil是一套windows環(huán)境下,8051 單芯片整合性開發(fā)i接口軟件,它具備完善的項(xiàng)目管理系統(tǒng),提供編輯器以寫程序 及說明文件,可以協(xié)助編寫、翻譯(包括c語言的編譯器 c51 compli

42、er 以及 a51 組譯器) 、除錯和測試嵌入式系統(tǒng)程序(embedded programs) 。開發(fā)操作步 驟: 1 新建項(xiàng)目;在project中選擇new project。 2 在項(xiàng)目中加入程序文件;首先新建一個.c文件,保存后添加在項(xiàng)目中,這 樣便可對新工程進(jìn)行編程。 3 編輯/修改程序; 4 編譯與連接;若有錯誤會顯示error(s) ,arning(s) 。 系統(tǒng)程序見附錄二。 4.4硬件仿真硬件仿真 整個電路包括控制單元、測量單元、顯示電源、報(bào)警電路、按鍵部分。其整 體仿真連接如下圖: 圖圖4.20 整體連接圖整體連接圖 程序編寫完且仿真成功,進(jìn)行硬件的焊接,焊接時注意虛焊、連接短

43、路、焊 錫過多、電路板或元件由于過熱損壞等問題。所以要認(rèn)真仔細(xì)焊接。 5 5系統(tǒng)調(diào)試系統(tǒng)調(diào)試 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 20 最終硬件電路板焊接完畢,進(jìn)行硬件調(diào)試,整個電路分為最小系統(tǒng)、顯示 電路、測量電路、按鍵電路、報(bào)警電路,對這些電路分步按以上順序調(diào)試進(jìn)行調(diào) 試。調(diào)試過程中需要用到萬用表、直流電源、數(shù)字示波器等 5.15.1最小系統(tǒng)調(diào)試最小系統(tǒng)調(diào)試 先檢查最小系統(tǒng)的晶振是否起振,方法:用萬用表測量晶振兩端的電壓是 否為2.5v(電源電壓位5v),因?yàn)榫д衿鹫窈?,其占空比?0%,所以兩端電壓 為2.5v?;蛘哂檬静ㄆ鳈z查其波形,看其頻率是否為12mhz。若符合以上兩者之 一,說明

44、晶振電路正常能工作。 第二看單片機(jī)是否能正常工作,方法:編寫一段小程序燒入單片機(jī),如: #include sbit q=p10; void delayms(unsigned int ms) unsigned int i,j; for(i=0;ims;i+)for(j=0;j110;j+); void main() q=0; while(1) q=q;delayms(500) ; 用示波器觀測p1.0端口的波形,是否為一方波,若是則單片機(jī)能正常工作。 5.25.2顯示電路調(diào)試顯示電路調(diào)試 檢查顯示電路能否正常工作,可以編寫一簡單顯示程序?qū)懭雴纹瑱C(jī)加電源觀 測如果顯示正確則沒有問題。如果出現(xiàn)問題,

45、首先用萬用表檢測連接電路有沒有 短路和斷路。若沒有問題,用示波器檢測max7219與單片機(jī)的三根連線的波形, 有波形則單片機(jī)運(yùn)行正常,在檢測max7219的輸出,看是否為正確波形。若全部 正常,要根據(jù)7219工作原理分析程序是否出現(xiàn)問題。再查閱資料看連接的配件參 數(shù)是否有問題。 本項(xiàng)電路調(diào)我試遇到的問題,程序燒寫后進(jìn)行調(diào)試,led沒有反應(yīng),檢查led 全部正常,分析程序也沒有錯誤,最后查閱資料得iest引腳的電阻過小,從而是 21 寄存器總是處于復(fù)位狀態(tài)。原因:max7219通過v+ 和iest 之間所接的外部電阻 (rest)來控制亮度。通常來自驅(qū)動器的峰值電流為iest的100倍,當(dāng)res

46、t 取最小 值 )時,段電流為37ma。在多數(shù)產(chǎn)品中,最初rest取10k電阻,當(dāng)采用rc復(fù)位電 路時,顯示正常;而采用max813l監(jiān)控復(fù)位電路時,在led各段均亮?xí)r復(fù)位有效, 從而使單片機(jī)系統(tǒng)無法工作。 其原因在于的max7219的各個數(shù)字驅(qū)動器的消耗功 率太大,即選定的rest太小而使峰值段電流增大,從而引起單片機(jī)系統(tǒng)的供電電 壓低于max813l的監(jiān)控電壓而使系統(tǒng)長期復(fù)位。換為30k以上電阻后,顯示電路可 正常工作。 找到原因后查看自己所用電阻為10k,電阻太小,正上述原因。改為47k后正 常工作。 5.35.3測量電路調(diào)試測量電路調(diào)試 如同顯示電路調(diào)試一樣,寫一段單個測量程序帶有顯示

47、程序,看是否能檢 測溫度。如能顯示環(huán)境溫度則正常否則存在問題。若出現(xiàn)問題用萬用表檢測dq連 線是否正確,在用示波器觀看其波形檢測單片機(jī)是否發(fā)送命令。如果二者均正常 則是ds18b20的連線出現(xiàn)問題或程序存在問題。然后分析程序檢查電路。 我在該部分的問題是焊接電路時出現(xiàn)了短路連接,修改后正常。 5.45.4其他電路調(diào)試其他電路調(diào)試 按鍵電路、報(bào)警電路調(diào)試只需檢測能否報(bào)警和按鍵是否有效,一般出現(xiàn)問 題大多是硬件問題。注意按鍵的消抖問題,可以采用硬件消抖,也可采用軟鍵消 抖,我采用的是軟件延時消抖。 6 6 小結(jié)小結(jié) 溫度檢測是自動化在工業(yè)、農(nóng)業(yè)、生活中不可缺少的一部分,溫度的變化 直接影響到農(nóng)作物

48、的產(chǎn)量,工業(yè)產(chǎn)品的質(zhì)量,人們生活的質(zhì)量。所以溫度的檢測 至關(guān)重要,對于大多數(shù)生產(chǎn)和種植,都不止一處要用到溫度檢測,大都要有多個 監(jiān)測點(diǎn),那多路溫度檢測的重要性和簡捷性就體現(xiàn)出來了。現(xiàn)在已經(jīng)有很多的場 合用到了多路溫度檢測。本次設(shè)計(jì)的成果: (1)了解了多個應(yīng)用芯片,懂得了其原理并且能運(yùn)用用于實(shí)際。 (2)使用了keil和proteus進(jìn)行系統(tǒng)的仿真,使得實(shí)際制作的成功率大大提 高 (3)對電路的焊接更加熟練,只做了溫度巡回檢測儀電路板。 (4)經(jīng)過多次故障排除及程序調(diào)試,最終基于單片機(jī)的多路溫度巡回檢測 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 22 儀的設(shè)計(jì)制作完成,其測量范圍為-999c,達(dá)到了

49、檢測目的。 任何的儀器都需要不斷地改進(jìn)。對于多路溫度檢測儀的設(shè)計(jì)改進(jìn)思路主要有: 采用精度更高的轉(zhuǎn)換速度跟快的溫度傳感器;簡化控制程序提高運(yùn)算精度;運(yùn)用 遠(yuǎn)程的控制顯示技術(shù)讓儀器更人性化;使用遠(yuǎn)程輸送并且利用抗干擾技術(shù)使得準(zhǔn) 確度提高;改進(jìn)技術(shù)不僅限于此,還有很多新技術(shù)新設(shè)備來改進(jìn)此設(shè)計(jì)。隨著技 術(shù)的發(fā)展和各種設(shè)備的加強(qiáng),我相信該設(shè)計(jì)會不斷地有改進(jìn)。 23 致致 謝謝 時間飛快,轉(zhuǎn)眼四年即將結(jié)束。 回顧四年時光里,老師同學(xué)對我提供了太多的無私幫助和熱情,幫助我能順 利地完成大學(xué)學(xué)業(yè),讓我的知識見識都得到了很大的增長,讓我積累了很多的寶 貴經(jīng)驗(yàn),為今后的學(xué)習(xí)工作打下了堅(jiān)實(shí)的基礎(chǔ)。在此對老師和同學(xué)

50、表示我衷心的 感謝! 本次畢業(yè)設(shè)計(jì)自始至終遇到很多問題,在老師和同學(xué)們的幫助下一一得到解 決。首先感謝我的指導(dǎo)老師張培志老師。張老師對我的教誨和關(guān)心,他認(rèn)真 求實(shí)的工作態(tài)度,讓我受益匪淺。在我遇到問題時,張老師認(rèn)真幫助我分析解決。 我還要感謝實(shí)驗(yàn)室的增橋老師和楊老師對我的幫助和指導(dǎo),沒有他們我不能順利 的完成這樣好的畢業(yè)設(shè)計(jì)。同時,感謝實(shí)驗(yàn)室的同學(xué)們,他們也為我提供了大量 的幫助,他們不斷地鼓勵我關(guān)心我,讓我堅(jiān)持不懈的學(xué)習(xí)研究,最終完成畢業(yè)設(shè) 計(jì)。 在此對幫助關(guān)心過我的人表示感謝,謝謝你們! 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 24 參考文獻(xiàn)參考文獻(xiàn) 1.李建忠. 單片機(jī)原理及應(yīng)用. 西安電子

51、科技大學(xué)出版社,2008. 2.孫余凱等. 傳感器應(yīng)用電路 300 例. 電子工業(yè)出版社,2008. 3.常喜茂. c51 基礎(chǔ)與應(yīng)用實(shí)例. 電子工業(yè)出版社,2009 4.謝宜仁. 單片機(jī)硬件接口電路及實(shí)例解析.電子工業(yè)出版社,2009. 5.康華光.電子技術(shù)基礎(chǔ)(數(shù)字).高等教育出版社.2006. 6.朱善軍等.單片機(jī)接口技術(shù)與應(yīng)用.清華大學(xué)出版社.2005. 7.黃迪明.c 語言程序設(shè)計(jì)教程.國防工業(yè)出版社.2006 25 附錄一:電路原理圖附錄一:電路原理圖 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 26 附錄二:總程序附錄二:總程序 #include #include #define uch

52、ar unsigned char #define uint unsigned int /*定義引腳*/ sbit g0=p01; sbit set=p07; sbit badd=p06; sbit bdec=p04; sbit g1=p02; sbit ld=p21; sbit lck=p20; sbit din=p22; sbit bj=p27; sbit h=p05; sbit l=p03; sbit dq=p10; sbit dq1=p11; sbit dq2=p12; sbit dq3=p13; sbit dq4=p14; sbit dq5=p15; sbit dq6=p16; sbi

53、t dq7=p17; /*定義全局變量*/ int temp,i=2,n=1; int high=33;low=7,d=0; uchar coma; uchar comb; uchar idata diss11=0,1,2,3,4,5,6,7,8,9,0 xf; uchar data temp_data2=0 x00,0 x00; int data display5=0 x00,0 x00,0 x00,0 x00,0 x00; /*延時函數(shù)*/ void delay(uint t) for (;t0;t-); void delayms(unsigned int ms) unsigned int

54、 i,j; for(i=0;ims;i+) for(j=0;j0;j-) dq=1;_nop_();_nop_(); /從高拉倒低 dq=0;_nop_();_nop_();_nop_();_nop_(); /5 us dq=val /最低位移出 delay(6); /66 us val=val/2; /右移 1 位 dq=1; delay(1); /*ds18b20 00 讀 1 字節(jié)函數(shù)*/ /從總線上取 1 個字節(jié) uchar read_byte() uchar j; uchar value=0; for(j=8;j0;j-) 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 28 dq=1;_nop

55、_();_nop_(); value=1; dq=0;_nop_();_nop_();_nop_();_nop_(); /4 us dq=1;_nop_();_nop_();_nop_();_nop_(); /4 us if(dq)value|=0 x80; delay(6); /66 us dq=1; return(value); /*00 讀出溫度函數(shù)*/ read_temp() ow_reset(); /總線復(fù)位 delay(200); write_byte(0 xcc); /發(fā)命令 write_byte(0 x44); /發(fā)轉(zhuǎn)換命令 delayms(800); ow_reset();

56、delay(1); write_byte(0 xcc); /發(fā)命令 write_byte(0 xbe); temp_data0=read_byte(); /讀溫度值的第字節(jié) temp_data1=read_byte(); /讀溫度值的高字節(jié) display0=temp_data1; temp=temp_data1; temp0;j-) dq1=1;_nop_();_nop_(); /從高拉倒低 dq1=0;_nop_();_nop_();_nop_();_nop_(); /5 us dq1=val /最低位移出 delay(6); /66 us val=val/2; /右移 1 位 dq1=1

57、; delay(1); /*ds18b20 01 讀 1 字節(jié)函數(shù)*/ /從總線上取 1 個字節(jié) uchar read_byte1() uchar j; uchar value=0; for(j=8;j0;j-) dq1=1;_nop_();_nop_(); value=1; dq1=0;_nop_();_nop_();_nop_();_nop_(); /4 us dq1=1;_nop_();_nop_();_nop_();_nop_(); /4 us if(dq1)value|=0 x80; delay(6); /66 us dq1=1; return(value); /*01 讀出溫度函數(shù)

58、*/ read_temp1() 西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文) 30 ow_reset1(); /總線復(fù)位 delay(200); write_byte1(0 xcc); /發(fā)命令 write_byte1(0 x44); /發(fā)轉(zhuǎn)換命令 delayms(800); ow_reset1(); delay(1); write_byte1(0 xcc); /發(fā)命令 write_byte1(0 xbe); temp_data0=read_byte1(); /讀溫度值的第字節(jié) temp_data1=read_byte1(); /讀溫度值的高字節(jié) display0=temp_data1; temp=te

59、mp_data1; temp0;j-) 31 dq2=1;_nop_();_nop_(); /從高拉倒低 dq2=0;_nop_();_nop_();_nop_();_nop_(); /5 us dq2=val /最低位移出 delay(6); /66 us val=val/2; /右移 1 位 dq=1; delay(1); /*ds18b20 02 讀 1 字節(jié)函數(shù)*/ /從總線上取 1 個字節(jié) uchar read_byte2() uchar j; uchar value=0; for(j=8;j0;j-) dq2=1;_nop_();_nop_(); value=1; dq2=0;_n

60、op_();_nop_();_nop_();_nop_(); /4 us dq2=1;_nop_();_nop_();_nop_();_nop_(); /4 us if(dq2)value|=0 x80; delay(6); /66 us dq2=1; return(value); /*02 讀出溫度函數(shù)*/ read_temp2() ow_reset2(); /總線復(fù)位 delay(200); write_byte2(0 xcc); /發(fā)命令 write_byte2(0 x44); /發(fā)轉(zhuǎn)換命令 ow_reset2(); delay(1); write_byte2(0 xcc); /發(fā)命令

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論