版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、本科畢業(yè)設(shè)計(jì)論文本科畢業(yè)設(shè)計(jì)論文題目:基于單片機(jī)多路溫度巡回檢測(cè)儀設(shè)計(jì)完完成時(shí)間:成時(shí)間:2012 年年6 月月 10日日southwest petroleum university 學(xué)生姓名xxxx學(xué)號(hào)xxxx教學(xué)院系電氣信息學(xué)院專(zhuān)業(yè)年級(jí)自動(dòng)化 2008 級(jí)指導(dǎo)教師xxxxx單位xxxxxxxiigraduation thesisdesigned based on single-chip multi-channel temperature data loggersgrade: 2008 name: liu weijianspeciality: automationinstructor: zh
2、ang peizhischool of electronics and information engineeringjune 10, 2012摘要摘要隨著計(jì)算機(jī)技術(shù)和傳感器的發(fā)展,在生產(chǎn)和日?;顒?dòng)中,人們對(duì)溫度模擬物理量的測(cè)量要求越來(lái)越高。工業(yè)、農(nóng)業(yè)自動(dòng)化水平也迅速提高,單片機(jī)的應(yīng)用也iii越來(lái)越廣泛,作用也越來(lái)越來(lái)顯著。溫度檢測(cè)系統(tǒng)在人們的生產(chǎn)生活中的應(yīng)用十分廣泛。本課題溫度檢測(cè)實(shí)際應(yīng)用為出發(fā)點(diǎn),結(jié)合單片機(jī)微處理器技術(shù),提出了基于單片機(jī)的多路溫度巡回檢測(cè)儀設(shè)計(jì)。本次畢業(yè)設(shè)計(jì)內(nèi)容就是配合系統(tǒng)檢測(cè)精度要求,選用相關(guān)控制微處理器;檢測(cè)裝置硬件的結(jié)構(gòu)及連接;檢測(cè)程序的編制;完成成品調(diào)試和演示。首先
3、分析和制定了檢測(cè)系統(tǒng)的整體設(shè)計(jì)思想和方案,確保了該檢測(cè)系統(tǒng)具備真正的自動(dòng)化檢測(cè)能力且結(jié)構(gòu)簡(jiǎn)單。其次利用 at89c51 單片機(jī)對(duì)多個(gè)檢測(cè)點(diǎn)進(jìn)行巡回檢測(cè),選用精度高,工作穩(wěn)定的數(shù)字傳感器 ds18b20 進(jìn)行溫度采集。并用 max7219 驅(qū)動(dòng) led顯示所測(cè)溫度及上下限。對(duì)各部分的電路也一一進(jìn)行了介紹,該系統(tǒng)可以方便的實(shí)現(xiàn)溫度采集和顯示,并可根據(jù)需要任意設(shè)定上下限報(bào)警溫度,它使用起來(lái)相當(dāng)方便,具有精度高、靈敏度高、體積小、功耗低等優(yōu)點(diǎn),適合于我們?nèi)粘I詈凸?、農(nóng)業(yè)生產(chǎn)中的溫度測(cè)量,也可以當(dāng)作溫度處理模塊嵌入其它系統(tǒng)中,作為其他主系統(tǒng)的輔助擴(kuò)展。關(guān)鍵詞關(guān)鍵詞:溫度檢測(cè) ;at89c51;max7
4、219 ;ds18b20 abstractwith the development of computer technology and sensors, in production and daily ivactivities, people increasingly high temperature analog physical quantity measurement requirements. industry, agriculture level of automation, rapid increase in microcontroller applications are in
5、creasingly 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 detection of this topic as a starting point, combined with the single-chip microprocessor technology, the desig
6、n of microcontroller-based multi-channel temperature data loggers.the graduation project content with the system measurement accuracy requirements, selection of the relevant control microprocessor; structure and connection of the detection device hardware; the preparation of the testing procedures;
7、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 with truly automated testing capability and simple structure. followed by using at89c51 microcontroller
8、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 lower limits.various parts of the circuit one by one, the system can facilitate the realization of the tempe
9、rature 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 low power consumption advantages in our daily life and work, the temperature measurement in the agricult
10、ural 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目錄目錄1 1 緒論緒論.1v1.11.1 設(shè)計(jì)概述設(shè)計(jì)概述 .11.21.2 溫度檢測(cè)系統(tǒng)設(shè)計(jì)意義溫度檢測(cè)系統(tǒng)設(shè)計(jì)意義 .12 多路溫度巡回檢測(cè)儀設(shè)計(jì)內(nèi)容多路溫度巡回檢測(cè)儀設(shè)計(jì)內(nèi)容 .22.12.1 任務(wù)要求任務(wù)要求
11、.22.22.2 系統(tǒng)設(shè)計(jì)應(yīng)用要求系統(tǒng)設(shè)計(jì)應(yīng)用要求 .22.32.3 設(shè)計(jì)流程設(shè)計(jì)流程 .23 設(shè)計(jì)方案設(shè)計(jì)方案.33.1 方案對(duì)比方案對(duì)比 .33.1.1 溫度傳感器選擇方案溫度傳感器選擇方案.33.1.23.1.2 單片機(jī)選擇方案單片機(jī)選擇方案.33.1.33.1.3 顯示電路的選擇方案顯示電路的選擇方案.33.23.2 總體方案總體方案 .44 4 系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì).44.14.1 硬件設(shè)計(jì)硬件設(shè)計(jì) .44.1.14.1.1 溫度傳感器設(shè)計(jì)溫度傳感器設(shè)計(jì).4(1 1)ds18b20ds18b20 介紹介紹.44.1.24.1.2 單片機(jī)最小系統(tǒng)單片機(jī)最小系統(tǒng).84.1.3 顯示電路設(shè)計(jì)顯
12、示電路設(shè)計(jì).104.1.4 按鍵電路按鍵電路.134.1.5 報(bào)警電路報(bào)警電路.144.2 軟件設(shè)計(jì)軟件設(shè)計(jì) .154.2.1 主程序主程序.154.2.4max7219 顯示子程序顯示子程序.174.2.5 按鍵按鍵程序程序.184.3 程序編寫(xiě)程序編寫(xiě) .194.4 硬件仿真硬件仿真 .195 5系統(tǒng)調(diào)試系統(tǒng)調(diào)試.195.15.1 最小系統(tǒng)調(diào)試最小系統(tǒng)調(diào)試 .205.25.2 顯示電路調(diào)試顯示電路調(diào)試 .205.35.3 測(cè)量電路調(diào)試測(cè)量電路調(diào)試 .215.45.4 其他電路調(diào)試其他電路調(diào)試 .216 6 小結(jié)小結(jié) .21vi致致 謝謝 .23參考文獻(xiàn)參考文獻(xiàn) .24附錄一:電路原理圖附錄
13、一:電路原理圖 .25附錄二:總程序附錄二:總程序.2611 1 緒論緒論1.11.1 設(shè)計(jì)概述設(shè)計(jì)概述隨著社會(huì)的不斷發(fā)展,各種電子產(chǎn)品的不斷更新?lián)Q代,使得電子產(chǎn)品智能化的要求越來(lái)越高.單片機(jī)就是在一塊半導(dǎo)體硅片上集成了微處理器(cpu) ,存儲(chǔ)器(ram,rom,eprom)和各種輸入,輸出接口,這樣一塊集成電路芯片具有一臺(tái)計(jì)算機(jī)的屬性,被稱(chēng)為單片微型計(jì)算機(jī)。單片機(jī)微型計(jì)算機(jī)因其體積小、價(jià)格低、性能靈活、開(kāi)發(fā)方便的獨(dú)特優(yōu)勢(shì),在機(jī)電一體化產(chǎn)品的開(kāi)發(fā)和控制中得到了最廣泛的應(yīng)有,而且越來(lái)越向縱深發(fā)展。從簡(jiǎn)單的機(jī)電一體化產(chǎn)品深入到數(shù)控系統(tǒng)、柔性化、智能化系統(tǒng)以及機(jī)器人系統(tǒng)等。而基于單片機(jī)的溫度檢測(cè)系
14、統(tǒng)不斷被開(kāi)發(fā)革新,為一些系統(tǒng)的溫度檢測(cè)提供良好的技術(shù)支持,更快速方便的為生產(chǎn)提供及時(shí)準(zhǔn)確的溫度數(shù)據(jù)。通過(guò)本選題的研究,可以掌握單片機(jī)改造的基礎(chǔ)知識(shí)和步驟,對(duì)單片機(jī)的應(yīng)用也有了最基本的了解。單片機(jī)的應(yīng)用,打破了人們的傳統(tǒng)設(shè)計(jì)思想,原來(lái)很多用模擬電路,脈沖數(shù)字電路,邏輯部件來(lái)實(shí)現(xiàn)的功能,現(xiàn)在無(wú)需增加硬件設(shè)備,可以通過(guò)軟件來(lái)完成。正由于這樣,單片機(jī)已成為科技領(lǐng)域的有力工具,人類(lèi)生活的得力助手。1.21.2 溫度檢測(cè)系統(tǒng)設(shè)計(jì)意義溫度檢測(cè)系統(tǒng)設(shè)計(jì)意義溫室大棚是為了使植物在任何時(shí)期都能正常生長(zhǎng),因此,溫度的大小是很重要的。溫室大棚中溫度變化范圍一般為 0c60c,精度要求為0.5c。糧食儲(chǔ)存在糧倉(cāng)中,糧食
15、儲(chǔ)存時(shí)間有長(zhǎng)有短,為了保證糧食不致腐爛變質(zhì),就必須保證糧倉(cāng)溫度在一定范圍內(nèi)。糧倉(cāng)內(nèi)溫度范圍一般為:0c30c,精度為:5c。本次設(shè)計(jì)的溫度巡回檢測(cè)儀可用于糧庫(kù)和溫室大棚中,可對(duì)多個(gè)糧倉(cāng)或溫室大棚進(jìn)行多點(diǎn)監(jiān)測(cè),從而節(jié)省人力物力,并且可在同一界面檢測(cè)溫度和設(shè)置參數(shù)。這樣可以提升工作效率,而且又能精確得知溫度變化,可以及時(shí)準(zhǔn)確地控制溫度達(dá)到預(yù)期要求,對(duì)作物生長(zhǎng)和糧食儲(chǔ)藏非常有利,從而達(dá)到農(nóng)作物高生產(chǎn)糧食高質(zhì)量。西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)22 多路溫度巡回檢測(cè)儀設(shè)計(jì)內(nèi)容多路溫度巡回檢測(cè)儀設(shè)計(jì)內(nèi)容2.12.1 任務(wù)要求任務(wù)要求該課題為設(shè)計(jì)一個(gè)八路溫度檢測(cè)點(diǎn)巡回檢測(cè),各個(gè)檢測(cè)點(diǎn)按固定時(shí)間巡回檢測(cè),
16、并且要有超限報(bào)警。其設(shè)計(jì)要求:1、精度誤差小于0.5;2、用led數(shù)碼管顯示監(jiān)測(cè)數(shù)據(jù);3、用led數(shù)碼管顯示報(bào)警值及巡回時(shí)間;4、具有可以任意設(shè)定溫度的上下限和巡回時(shí)間功能。2.22.2 系統(tǒng)設(shè)計(jì)應(yīng)用要求系統(tǒng)設(shè)計(jì)應(yīng)用要求本次設(shè)計(jì)主要應(yīng)用于農(nóng)業(yè)、工業(yè)等需要多點(diǎn)測(cè)溫場(chǎng)合,如:溫室大棚的溫度測(cè)量與控制、糧倉(cāng)溫度測(cè)量、流水線(xiàn)溫度檢測(cè)等。測(cè)量上下限要能夠包含測(cè)量點(diǎn)的最高和最低溫度,并留有一定的裕值。多點(diǎn)測(cè)量,但是要具有簡(jiǎn)捷操作和簡(jiǎn)化顯示,可以讓檢測(cè)員快速方便的操作,記錄。報(bào)警功能要簡(jiǎn)單快速,要能及時(shí)通知管理員溫度出現(xiàn)異常。巡回時(shí)間能隨意設(shè)置,這樣可以根據(jù)季節(jié)的變化或環(huán)境溫度的變化率決定巡回時(shí)間。使得檢測(cè)
17、更加及時(shí)準(zhǔn)確。2.32.3 設(shè)計(jì)流程設(shè)計(jì)流程 首先對(duì)設(shè)計(jì)整體構(gòu)思,設(shè)計(jì)整體方案。在根據(jù)構(gòu)思查閱相關(guān)資料文獻(xiàn),從而選出符合要求的元件。然后根據(jù)所選元件構(gòu)建整體電路圖,并考察其合理性。并且細(xì)致分析選擇參數(shù)合理且精確度高的配件。再者,根據(jù)構(gòu)建的電路圖和元器件的工作原理編寫(xiě)程序,并利用軟件仿真模擬,看是否能夠運(yùn)行。最后按照電路圖焊接硬件電路,下載程序并調(diào)試,根據(jù)調(diào)試出現(xiàn)的問(wèn)題在調(diào)整電路。整個(gè)過(guò)程流程圖如下:圖圖 2.12.1 設(shè)計(jì)流程設(shè)計(jì)流程33 設(shè)計(jì)方案設(shè)計(jì)方案3.1 方案對(duì)比方案對(duì)比3.1.1 溫度傳感器選擇方案溫度傳感器選擇方案方案一:本設(shè)計(jì)為溫度測(cè)量電路,可以采用熱敏電阻之類(lèi)的模擬傳感器,將隨
18、被測(cè)溫度變化的電壓或電流采集,然后進(jìn)行a/d 轉(zhuǎn)換,再送入單片機(jī)進(jìn)行數(shù)據(jù)的處理,單片機(jī)將輸出信號(hào)送入顯示電路,就可以顯示被測(cè)溫度,此設(shè)計(jì)需要用到a/d 轉(zhuǎn)換電路,其中還涉及到電阻與溫度的對(duì)應(yīng)值的計(jì)算。而且在對(duì)采集的信號(hào)進(jìn)行放大時(shí)容易受溫度及周?chē)姶诺挠绊?,從而產(chǎn)生較大誤差。方案二:模擬量溫度傳感器容易受環(huán)境影響,所以可以采用數(shù)字溫度傳感器,此類(lèi)感器,可以很容易直接讀取被測(cè)溫度值,進(jìn)行轉(zhuǎn)換,電路簡(jiǎn)單,精度高,軟硬件都易于實(shí)現(xiàn),而且節(jié)省使用單片機(jī)的接口便于系統(tǒng)的再擴(kuò)展。從以上兩種方案,很容易看出,采用方案二,電路比較簡(jiǎn)單,費(fèi)用較低,可靠性高,軟件設(shè)計(jì)也比較簡(jiǎn)單,故采用了方案二。3.1.23.1.2
19、單片機(jī)選擇方案單片機(jī)選擇方案方案一:凌陽(yáng)單片機(jī)順應(yīng)了單片機(jī)技術(shù)的發(fā)展趨勢(shì),其系統(tǒng)芯片具有集成度高、數(shù)/?;旌稀⒐δ苋?、低功耗、低電壓和易于開(kāi)發(fā)等特點(diǎn),但其可靠性較差,溫度過(guò)高時(shí)會(huì)影響測(cè)量結(jié)果,且價(jià)格較高不易于畢業(yè)設(shè)計(jì)。 方案二:51系列單片機(jī)由于其具有的集成度高、處理功能強(qiáng)、可靠性高、系統(tǒng)結(jié)構(gòu)簡(jiǎn)單、價(jià)格低廉等優(yōu)點(diǎn),應(yīng)用資料眾多,在實(shí)際應(yīng)用中得到廣泛的采用,比較實(shí)用于民用產(chǎn)品的開(kāi)發(fā)。從以上兩種方案,很容易看出,采用方案二,費(fèi)用較低,可靠性高,故采用了方案二。3.1.33.1.3顯示電路的選擇方案顯示電路的選擇方案本次設(shè)計(jì)用到七個(gè)數(shù)碼管,并要同時(shí)顯示,由于單片機(jī)的端口有限,所以要采用動(dòng)態(tài)顯示。故此
20、要用到譯碼驅(qū)動(dòng)器完成動(dòng)態(tài)顯示。方案一:西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)4采用138譯碼器完成動(dòng)態(tài)顯示,138譯碼器的輸入連接到單片機(jī)三個(gè)引腳,led的位選引腳連接138輸出,但led的端選引腳依然要連接單片機(jī)端口,占有單片機(jī)的一個(gè)端口。并沒(méi)有節(jié)省端口。并且還要進(jìn)行軟件譯碼,使得程序復(fù)雜繁多。方案二:采用max7219驅(qū)動(dòng)器,單片機(jī)只需用三根引腳連接7219的串行引腳,連接方便,簡(jiǎn)化電路。7219本身可以進(jìn)行bcd譯碼,我們只需把測(cè)量數(shù)據(jù)直接送入即可,使得程序簡(jiǎn)捷。從以上兩種方案,很容易看出,采用方案二,電路比較簡(jiǎn)單,軟件設(shè)計(jì)也比較簡(jiǎn)單,故采用了方案二。3.23.2總體方案總體方案由方案對(duì)比得
21、更加合理設(shè)計(jì)方案,因此,在此基礎(chǔ)上對(duì)系統(tǒng)進(jìn)行整體設(shè)計(jì)。首先,溫度采集模塊利用溫度傳感器采集現(xiàn)場(chǎng)溫度,然后送入控制處理模塊進(jìn)行處理??刂铺幚砟K的單片機(jī)將得到的采集信號(hào)送進(jìn)行處理,進(jìn)行數(shù)據(jù)的轉(zhuǎn)換得到要輸出的信號(hào)。單片機(jī)將輸出信號(hào)送入顯示電路和報(bào)警電路,從而顯示測(cè)量結(jié)果。該溫度巡回檢測(cè)系統(tǒng)由控制模塊、顯示模塊、溫度采集模塊組成。測(cè)溫范圍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)ds18b
22、20ds18b20 介紹介紹5 本設(shè)計(jì)選用數(shù)字傳感器,選用常見(jiàn)的ds18b20溫度傳感器。ds18b20 溫度傳感器是美國(guó)dallas 半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn)912位的數(shù)字值讀數(shù)方式。其實(shí)物圖如下:圖圖4.14.1 ds18b20ds18b20ds18b20 的性能特點(diǎn)如下:1、獨(dú)特的單線(xiàn)接口僅需要一個(gè)端口引腳進(jìn)行通信;2、多個(gè)ds18b20 可以并聯(lián)在惟一的三線(xiàn)上,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能3、無(wú)須外部器件;4、可通過(guò)數(shù)據(jù)線(xiàn)供電,電壓范圍為3.05.5;5、零待機(jī)功耗;6、溫度以9或12位
23、數(shù)字;7、用戶(hù)可定義報(bào)警設(shè)置;8、報(bào)警搜索命令識(shí)別并標(biāo)志超過(guò)程序限定溫度(溫度報(bào)警條件)的器件;9、負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作;10、精度 5c。(2)ds18b20 工作原理工作原理ds18b20 的讀寫(xiě)時(shí)序和測(cè)溫原理與 ds1820 相同,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉(zhuǎn)換時(shí)的延時(shí)時(shí)間由 2s 減為 750ms。 ds18b20測(cè)溫原理如圖 4.2 所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給計(jì)數(shù)器 1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號(hào)作為計(jì)數(shù)器 2 的脈沖輸入。計(jì)數(shù)器 1
24、和溫度寄存器被預(yù)置在55所對(duì)應(yīng)的一個(gè)基數(shù)值。計(jì)數(shù)器 1 對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)6減法計(jì)數(shù),當(dāng)計(jì)數(shù)器 1 的預(yù)置值減到 0 時(shí),溫度寄存器的值將加 1,計(jì)數(shù)器 1 的預(yù)置將重新被裝入,計(jì)數(shù)器 1 重新開(kāi)始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到計(jì)數(shù)器 2 計(jì)數(shù)到 0 時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測(cè)溫度。圖中的斜率累加器用于補(bǔ)償和修正測(cè)溫過(guò)程中的非線(xiàn)性,其輸出用于修正計(jì)數(shù)器 1 的預(yù)置值。ds18b20 輸出的二進(jìn)制的高字節(jié)的低半字節(jié)和低字節(jié)的高半字節(jié)組成一個(gè)字節(jié),這個(gè)字節(jié)轉(zhuǎn)換位十進(jìn)制為所測(cè)溫度值的百、十、個(gè)位,
25、低字節(jié)的低半字節(jié)為小數(shù)部分。圖圖 4.24.2 ds18b20ds18b20 測(cè)溫原理框圖測(cè)溫原理框圖 表表 3.1ds18b20 溫度與測(cè)得值對(duì)應(yīng)表溫度與測(cè)得值對(duì)應(yīng)表溫度/二進(jìn)制值十六進(jìn)制值+12500000111 1101000007d0h+8500000101 010100000550h+25.062500000001 100100010191h+10.12500000000 1010001000a2h+0.500000000 000010000008h000000000 000000000000h-0.511111111 11111000fff8h(3)ds18b20 的供電方式的供電
26、方式ds18b20 可以采用兩種方式供電,一種是采用電源供電方式,此時(shí)ds18b20 的 1 腳接地,2 腳作為信號(hào)線(xiàn),3 腳接電源。另一種是寄生電源供電方式,單片機(jī)端口接單線(xiàn)總線(xiàn),為保證在有效的 ds18b20 時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè) mosfet 管來(lái)完成對(duì)總線(xiàn)的上拉。當(dāng) ds18b20 處于寫(xiě)存儲(chǔ)器操作和溫度 a/d 轉(zhuǎn)換操作時(shí),總線(xiàn)上必須有強(qiáng)的上拉,上拉開(kāi)啟時(shí)間最大為10us。采用寄生電源供電方式時(shí) vdd 端接地。由于單線(xiàn)制只有一根線(xiàn),因此發(fā)送接口必須是三態(tài)的。7(4)ds18b20 工作時(shí)序工作時(shí)序圖圖 4.3 ds18b20 初始化初始化圖圖 4.4 ds18b20
27、寫(xiě)時(shí)序?qū)憰r(shí)序西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)8圖圖 4.5 ds18b20 讀時(shí)序讀時(shí)序 (5)測(cè)量電路設(shè)計(jì))測(cè)量電路設(shè)計(jì) 本次設(shè)計(jì)設(shè)計(jì)了八路溫度采集點(diǎn),共有八個(gè) ds18b20,選擇了單片機(jī)的 p1口為采集量輸入端,p0.1p0.7 分別為 18 號(hào)測(cè)量點(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ī)簡(jiǎn)介單片機(jī)簡(jiǎn)介 本次設(shè)計(jì)選用c51系列的單片機(jī),選擇目前市場(chǎng)上性?xún)r(jià)比較高的單片機(jī)9at89c51作為該系統(tǒng)的控制核心。at89c51提供
28、以下標(biāo)準(zhǔn)功能: 4k 字節(jié)flash 閃速存儲(chǔ)器, 128字節(jié)內(nèi)部ram,32 個(gè)i/o 口線(xiàn),兩個(gè) 16位定時(shí)/計(jì)數(shù)器,一個(gè) 5向量?jī)杉?jí)中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,片內(nèi)振蕩器及時(shí)鐘電路。同時(shí), at89c51可降至0hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式停止 cpu的工作,但允許 ram,定時(shí)/計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存ram中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個(gè)硬件復(fù)位。圖圖 4.7 at89c51 引腳圖引腳圖(2)單片機(jī)最小系統(tǒng))單片機(jī)最小系統(tǒng) at89c51 的最小系統(tǒng)中,復(fù)位電路采用按鍵復(fù)位,sb1 按下單片機(jī)
29、復(fù)位。其連接如下:圖圖4.8 復(fù)位電路復(fù)位電路最小系統(tǒng)中晶振電路的晶振采用12mhz,兩個(gè)電容均為22pf。連接如下:西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)10圖圖4.9 晶振電路晶振電路4.1.3 顯示電路顯示電路設(shè)計(jì)設(shè)計(jì)我們采用七段數(shù)碼管作為顯示工具,它分為靜態(tài)和動(dòng)態(tài)顯示。靜態(tài)驅(qū)動(dòng)是指每個(gè)數(shù)碼管的每一個(gè)段碼都由一個(gè)高,缺點(diǎn)是占用i/o端口多。動(dòng)態(tài)顯示驅(qū)動(dòng)是將所有數(shù)碼管通過(guò)分時(shí)輪流控制各個(gè)數(shù)碼管的的com端,就使各個(gè)數(shù)碼管輪流受控顯示。為了電路簡(jiǎn)化,軟件設(shè)計(jì)方便,我們選用led驅(qū)動(dòng)芯片max7219驅(qū)動(dòng)顯示,所以選擇共陰極led數(shù)碼管。(1)max7219的簡(jiǎn)介的簡(jiǎn)介 max7219是一種集成化
30、的串行輸入/輸出共陰極顯示驅(qū)動(dòng)器,它連接微處理器與八位數(shù)字的七段數(shù)字led顯示,也可以連接條線(xiàn)圖顯示器或64個(gè)獨(dú)立的led。其上包括一個(gè)片上的b型bcd編碼器、多路掃描回路,段字驅(qū)動(dòng)器,而且還有一個(gè)8*8的靜態(tài)ram用來(lái)存儲(chǔ)每一個(gè)數(shù)據(jù)。只有一個(gè)外部寄存器用來(lái)設(shè)置各個(gè)led的段電流。整個(gè)設(shè)備包含一個(gè)150ua的低功耗關(guān)閉模式,模擬和數(shù)字亮度控制,一個(gè)掃描限制寄存器允許用戶(hù)顯示18位數(shù)據(jù),還有一個(gè)讓所有l(wèi)ed發(fā)光的檢測(cè)模式。 圖圖4.104.10 ledled和和max7219max7219引腳圖引腳圖max7219功能特點(diǎn)1110mhz連續(xù)串行口獨(dú)立的led段控制數(shù)字的譯碼和非譯碼選擇150ua
31、的低功耗關(guān)閉模式亮度的數(shù)字和模擬控制高電壓中斷顯示共陰極led顯示驅(qū)動(dòng)(2 2)max7219max7219的工作原理的工作原理max7219采用24腳雙列直插式封裝,其引腳排列如圖4.10所示,segasegg和segdp為led 7段驅(qū)動(dòng)線(xiàn)和小數(shù)點(diǎn)線(xiàn),供給顯示器源電流;dig0dig7為8位數(shù)字驅(qū)動(dòng)線(xiàn),輸出位選信號(hào),從每位led共陰極吸人電流。max7219能夠接受的數(shù)據(jù)和命令格式為16位數(shù)據(jù)包(格式如下表),din 是串行數(shù)據(jù)輸人端,由l6位數(shù)據(jù)包發(fā)送到din端的串行數(shù)據(jù)在每個(gè)clk的上升沿被移入到內(nèi)部l6位移位寄存器中;load用來(lái)裝載數(shù)據(jù),在load的上升沿,l6位數(shù)據(jù)被鎖存到數(shù)據(jù)或
32、控制寄存器中,load必須在第l6個(gè)時(shí)鐘上升沿的同時(shí)或之后,在下一個(gè)時(shí)鐘上升沿之前變高,否則數(shù)據(jù)會(huì)丟失。表表4.24.2串行數(shù)據(jù)格式串行數(shù)據(jù)格式d15d14d13d12d11d10d9d8d7d6d5d4d3d2d1d0xxxx地址msb 數(shù)據(jù) lsb圖圖4.114.11 時(shí)序圖時(shí)序圖max7219的l6位串行數(shù)據(jù)包標(biāo)記為d15do,其中d15 d12位未定義,dlld8位尋址內(nèi)部8個(gè)靜態(tài)ram和6個(gè)功能寄存器的地址,d7do位存放功能寄存器的數(shù)西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)12據(jù)和led數(shù)碼管待顯示的數(shù)據(jù)。編程時(shí),程序先送控制命令字,后向數(shù)據(jù)寄存器送顯示數(shù)據(jù)。max7219的所有功能與多
33、樣化操作模式都是通過(guò)內(nèi)部寄存器的設(shè)定來(lái)實(shí)現(xiàn)的,其內(nèi)部l4個(gè)可尋址寄存器的功能及地址如表所示。表表4.34.3寄存器功能表寄存器功能表功能d15-d12d11d10d9d8十六進(jìn)制編碼空操作x0000x0dig0x0001x1dig1x0010x2dig2x0011x3dig3x0100x4dig4x0101x5dig5x0110x6dig6x0111x7dig7x1000x8譯碼模式x1001x9顯示亮度x1010xa掃描界限x1010xb停機(jī)x1100xc待測(cè)模式x1111xf(3 3)各內(nèi)部寄存器含義如下:)各內(nèi)部寄存器含義如下:1)空操作寄存器(地址xoh)。用于多片max7219級(jí)聯(lián),
34、在不改變顯示或不影響任意功能寄存器的條件下,它允許數(shù)據(jù)從din傳送到dout。2)譯碼模式寄存器(地址x9h)。該寄存器的8位二進(jìn)制數(shù)的各位分別控制8個(gè)led顯示器的譯碼模式。當(dāng)高電平時(shí),選擇硬件譯碼模式(bcdb碼譯碼),當(dāng)?shù)碗娖綍r(shí)選擇軟件譯碼模式(即送來(lái)數(shù)據(jù)為字型碼)。3)顯示亮度寄存器(地址xah)顯示亮度可以用硬件和軟件2種方法調(diào)節(jié)通13過(guò)對(duì)亮度寄存器中d3 do位寫(xiě)入不同的數(shù)值可實(shí)現(xiàn)對(duì)led顯示亮度的控制,從xoh到xfh共l6級(jí)可調(diào)。4)掃描界限寄存器(地址xbh)。用于設(shè)置led顯示器的實(shí)際掃描個(gè)數(shù),由該寄存器的d2do位設(shè)定,當(dāng)設(shè)定值為000blllb時(shí),表示顯示器動(dòng)態(tài)掃描個(gè)數(shù)
35、為l8。5)停機(jī)寄存器(地址xch)。當(dāng)do=0時(shí),max7219處于停機(jī)狀態(tài),所有顯示器消隱,寄存器數(shù)據(jù)保持不變;當(dāng)do=l時(shí),處于正常工作狀態(tài)6)顯示測(cè)試寄存器(地址 )。當(dāng)do=0時(shí),正常工作;當(dāng)do=l時(shí),處于測(cè)試狀態(tài),在該狀態(tài)下,不管max7219處于什么模式,全部led將按最大亮度顯示。7)內(nèi)部ram地址xlhx8h分別對(duì)應(yīng)于dig0dig7。 (4)7219電路設(shè)計(jì)電路設(shè)計(jì) 顯示單元利用max7219驅(qū)動(dòng)7個(gè)共陰極led,max7219的三根串行線(xiàn)連接單片機(jī)的p2.0p2.1p2.2端口,并且三根連線(xiàn)上分別接有20pf電容,起到濾波作用,使串行信號(hào)更加準(zhǔn)確。iest連接47k電阻
36、。顯示內(nèi)容為測(cè)量溫度值、測(cè)量通道、循環(huán)時(shí)間、報(bào)警限值。圖圖4.12 顯示電路顯示電路4.1.4 按鍵電路按鍵電路電路設(shè)計(jì)圖:西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)14圖圖4.13 按鍵電路按鍵電路按鍵部分的功能為:按下stop后測(cè)量停止在當(dāng)前的通道,并且測(cè)量值保留顯示。按下return后繼續(xù)檢測(cè)。按下set鍵后,可以設(shè)置參數(shù),設(shè)置方法如下:按下tiadd鍵增加循環(huán)時(shí)間,按下timdec鍵減小循環(huán)時(shí)間,按下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)測(cè)量溫度超出上限或
37、低于下限時(shí),發(fā)出報(bào)警信號(hào)。通過(guò)9011三極管的通斷控制蜂鳴器,當(dāng)p2.7輸出報(bào)警信號(hào)時(shí)為高電平,三極管導(dǎo)通,蜂鳴器發(fā)出報(bào)警聲。如圖:圖圖4.14 報(bào)警電路報(bào)警電路最終將各個(gè)部分電路有機(jī)的連接在一起,完成整體電路設(shè)計(jì),整體電路見(jiàn)附錄一。為方便管理員檢測(cè)和操作,設(shè)計(jì)了監(jiān)控操作界面,各個(gè)按鍵的作用在按鍵電路部分已經(jīng)說(shuō)明,如下圖:15圖圖4.5 界面界面表表4.4 元件清單元件清單元件型號(hào)數(shù)量單片機(jī)at89c511傳感器ds18b208驅(qū)動(dòng)器max72191顯示器led7三極管90111蜂鳴器1晶振12mhz147k110k1電阻1k9瓷電容22pf5電容電解電容10uf14.2 軟件設(shè)計(jì)軟件設(shè)計(jì)4.
38、2.1主程序主程序主程序的功能為讀取ds18b20的測(cè)量值、測(cè)量值轉(zhuǎn)換為顯示值、顯示測(cè)量結(jié)果、由按鍵對(duì)數(shù)據(jù)調(diào)整。根據(jù)系統(tǒng)的工作原理,編寫(xiě)其工作程序,其流程圖:西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)16圖圖4.15 主程序流程圖主程序流程圖4.2.2 ds18b20測(cè)溫度子程序測(cè)溫度子程序根據(jù)ds18b20的工作原理,及其時(shí)序圖編寫(xiě)ds18b20的工作程序,程序功能為:對(duì)ds18b20初始化、發(fā)送數(shù)據(jù)轉(zhuǎn)換命令、讀取溫度,其流程圖:17圖圖4.16 ds18b20測(cè)溫度子程序測(cè)溫度子程序4.2.34.2.3數(shù)據(jù)轉(zhuǎn)換數(shù)據(jù)轉(zhuǎn)換 由于ds18b20的測(cè)量數(shù)據(jù)為正數(shù)和小數(shù)的組合形式,所以要先將小數(shù)和正數(shù)拆開(kāi),
39、中間八位為正數(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的工作原理及時(shí)序圖,編寫(xiě)顯示子程序,其功能為:初始化西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)18max7219、尋找對(duì)應(yīng)寄存器、送入顯示數(shù)據(jù)、啟動(dòng)顯示。其流程圖如下:圖圖4.18 max7219顯示子程序顯示子程序4.2.5按鍵按鍵程序程序按鍵程序功能:通過(guò)外部按鍵作用,單片機(jī)根據(jù)程序作出相應(yīng)的處理,改變各項(xiàng)參數(shù)。圖圖4.19 按鍵流程圖按鍵流程圖194.3程序編寫(xiě)程序編寫(xiě) 本次設(shè)計(jì)的
40、程序編寫(xiě)利用keil軟件編寫(xiě),keil是一套windows環(huán)境下,8051單芯片整合性開(kāi)發(fā)i接口軟件,它具備完善的項(xiàng)目管理系統(tǒng),提供編輯器以寫(xiě)程序及說(shuō)明文件,可以協(xié)助編寫(xiě)、翻譯(包括c語(yǔ)言的編譯器 c51 complier 以及 a51 組譯器) 、除錯(cuò)和測(cè)試嵌入式系統(tǒng)程序(embedded programs) 。開(kāi)發(fā)操作步驟:1 新建項(xiàng)目;在project中選擇new project。 2 在項(xiàng)目中加入程序文件;首先新建一個(gè).c文件,保存后添加在項(xiàng)目中,這樣便可對(duì)新工程進(jìn)行編程。 3 編輯/修改程序; 4 編譯與連接;若有錯(cuò)誤會(huì)顯示error(s) ,arning(s) 。 系統(tǒng)程序見(jiàn)附錄二
41、。4.4硬件仿真硬件仿真整個(gè)電路包括控制單元、測(cè)量單元、顯示電源、報(bào)警電路、按鍵部分。其整體仿真連接如下圖:圖圖4.20 整體連接圖整體連接圖 程序編寫(xiě)完且仿真成功,進(jìn)行硬件的焊接,焊接時(shí)注意虛焊、連接短路、焊錫過(guò)多、電路板或元件由于過(guò)熱損壞等問(wèn)題。所以要認(rèn)真仔細(xì)焊接。5 5系統(tǒng)調(diào)試系統(tǒng)調(diào)試西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)20 最終硬件電路板焊接完畢,進(jìn)行硬件調(diào)試,整個(gè)電路分為最小系統(tǒng)、顯示電路、測(cè)量電路、按鍵電路、報(bào)警電路,對(duì)這些電路分步按以上順序調(diào)試進(jìn)行調(diào)試。調(diào)試過(guò)程中需要用到萬(wàn)用表、直流電源、數(shù)字示波器等5.15.1最小系統(tǒng)調(diào)試最小系統(tǒng)調(diào)試 先檢查最小系統(tǒng)的晶振是否起振,方法:用萬(wàn)用表
42、測(cè)量晶振兩端的電壓是否為2.5v(電源電壓位5v),因?yàn)榫д衿鹫窈螅湔伎毡葹?0%,所以?xún)啥穗妷簽?.5v?;蛘哂檬静ㄆ鳈z查其波形,看其頻率是否為12mhz。若符合以上兩者之一,說(shuō)明晶振電路正常能工作。 第二看單片機(jī)是否能正常工作,方法:編寫(xiě)一段小程序燒入單片機(jī),如:#includesbit 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) ;用示波器觀測(cè)p1.0端口的波形,是否為一方波,若是則
43、單片機(jī)能正常工作。5.25.2顯示電路調(diào)試顯示電路調(diào)試檢查顯示電路能否正常工作,可以編寫(xiě)一簡(jiǎn)單顯示程序?qū)懭雴纹瑱C(jī)加電源觀測(cè)如果顯示正確則沒(méi)有問(wèn)題。如果出現(xiàn)問(wèn)題,首先用萬(wàn)用表檢測(cè)連接電路有沒(méi)有短路和斷路。若沒(méi)有問(wèn)題,用示波器檢測(cè)max7219與單片機(jī)的三根連線(xiàn)的波形,有波形則單片機(jī)運(yùn)行正常,在檢測(cè)max7219的輸出,看是否為正確波形。若全部正常,要根據(jù)7219工作原理分析程序是否出現(xiàn)問(wèn)題。再查閱資料看連接的配件參數(shù)是否有問(wèn)題。本項(xiàng)電路調(diào)我試遇到的問(wèn)題,程序燒寫(xiě)后進(jìn)行調(diào)試,led沒(méi)有反應(yīng),檢查led全部正常,分析程序也沒(méi)有錯(cuò)誤,最后查閱資料得iest引腳的電阻過(guò)小,從而是21寄存器總是處于復(fù)位狀
44、態(tài)。原因:max7219通過(guò)v+ 和iest 之間所接的外部電阻(rest)來(lái)控制亮度。通常來(lái)自驅(qū)動(dòng)器的峰值電流為iest的100倍,當(dāng)rest 取最小值 )時(shí),段電流為37ma。在多數(shù)產(chǎn)品中,最初rest取10k電阻,當(dāng)采用rc復(fù)位電路時(shí),顯示正常;而采用max813l監(jiān)控復(fù)位電路時(shí),在led各段均亮?xí)r復(fù)位有效,從而使單片機(jī)系統(tǒng)無(wú)法工作。 其原因在于的max7219的各個(gè)數(shù)字驅(qū)動(dòng)器的消耗功率太大,即選定的rest太小而使峰值段電流增大,從而引起單片機(jī)系統(tǒng)的供電電壓低于max813l的監(jiān)控電壓而使系統(tǒng)長(zhǎng)期復(fù)位。換為30k以上電阻后,顯示電路可正常工作。找到原因后查看自己所用電阻為10k,電阻太
45、小,正上述原因。改為47k后正常工作。5.35.3測(cè)量電路調(diào)試測(cè)量電路調(diào)試如同顯示電路調(diào)試一樣,寫(xiě)一段單個(gè)測(cè)量程序帶有顯示程序,看是否能檢測(cè)溫度。如能顯示環(huán)境溫度則正常否則存在問(wèn)題。若出現(xiàn)問(wèn)題用萬(wàn)用表檢測(cè)dq連線(xiàn)是否正確,在用示波器觀看其波形檢測(cè)單片機(jī)是否發(fā)送命令。如果二者均正常則是ds18b20的連線(xiàn)出現(xiàn)問(wèn)題或程序存在問(wèn)題。然后分析程序檢查電路。我在該部分的問(wèn)題是焊接電路時(shí)出現(xiàn)了短路連接,修改后正常。5.45.4其他電路調(diào)試其他電路調(diào)試按鍵電路、報(bào)警電路調(diào)試只需檢測(cè)能否報(bào)警和按鍵是否有效,一般出現(xiàn)問(wèn)題大多是硬件問(wèn)題。注意按鍵的消抖問(wèn)題,可以采用硬件消抖,也可采用軟鍵消抖,我采用的是軟件延時(shí)消
46、抖。6 6 小結(jié)小結(jié)溫度檢測(cè)是自動(dòng)化在工業(yè)、農(nóng)業(yè)、生活中不可缺少的一部分,溫度的變化直接影響到農(nóng)作物的產(chǎn)量,工業(yè)產(chǎn)品的質(zhì)量,人們生活的質(zhì)量。所以溫度的檢測(cè)至關(guān)重要,對(duì)于大多數(shù)生產(chǎn)和種植,都不止一處要用到溫度檢測(cè),大都要有多個(gè)監(jiān)測(cè)點(diǎn),那多路溫度檢測(cè)的重要性和簡(jiǎn)捷性就體現(xiàn)出來(lái)了?,F(xiàn)在已經(jīng)有很多的場(chǎng)合用到了多路溫度檢測(cè)。本次設(shè)計(jì)的成果:(1)了解了多個(gè)應(yīng)用芯片,懂得了其原理并且能運(yùn)用用于實(shí)際。(2)使用了keil和proteus進(jìn)行系統(tǒng)的仿真,使得實(shí)際制作的成功率大大提高(3)對(duì)電路的焊接更加熟練,只做了溫度巡回檢測(cè)儀電路板。(4)經(jīng)過(guò)多次故障排除及程序調(diào)試,最終基于單片機(jī)的多路溫度巡回檢測(cè)西南石油
47、大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)22儀的設(shè)計(jì)制作完成,其測(cè)量范圍為-999c,達(dá)到了檢測(cè)目的。任何的儀器都需要不斷地改進(jìn)。對(duì)于多路溫度檢測(cè)儀的設(shè)計(jì)改進(jìn)思路主要有:采用精度更高的轉(zhuǎn)換速度跟快的溫度傳感器;簡(jiǎn)化控制程序提高運(yùn)算精度;運(yùn)用遠(yuǎn)程的控制顯示技術(shù)讓儀器更人性化;使用遠(yuǎn)程輸送并且利用抗干擾技術(shù)使得準(zhǔn)確度提高;改進(jìn)技術(shù)不僅限于此,還有很多新技術(shù)新設(shè)備來(lái)改進(jìn)此設(shè)計(jì)。隨著技術(shù)的發(fā)展和各種設(shè)備的加強(qiáng),我相信該設(shè)計(jì)會(huì)不斷地有改進(jìn)。23致致 謝謝時(shí)間飛快,轉(zhuǎn)眼四年即將結(jié)束?;仡櫵哪陼r(shí)光里,老師同學(xué)對(duì)我提供了太多的無(wú)私幫助和熱情,幫助我能順利地完成大學(xué)學(xué)業(yè),讓我的知識(shí)見(jiàn)識(shí)都得到了很大的增長(zhǎng),讓我積累了很多的寶貴
48、經(jīng)驗(yàn),為今后的學(xué)習(xí)工作打下了堅(jiān)實(shí)的基礎(chǔ)。在此對(duì)老師和同學(xué)表示我衷心的感謝!本次畢業(yè)設(shè)計(jì)自始至終遇到很多問(wèn)題,在老師和同學(xué)們的幫助下一一得到解決。首先感謝我的指導(dǎo)老師張培志老師。張老師對(duì)我的教誨和關(guān)心,他認(rèn)真求實(shí)的工作態(tài)度,讓我受益匪淺。在我遇到問(wèn)題時(shí),張老師認(rèn)真幫助我分析解決。我還要感謝實(shí)驗(yàn)室的增橋老師和楊老師對(duì)我的幫助和指導(dǎo),沒(méi)有他們我不能順利的完成這樣好的畢業(yè)設(shè)計(jì)。同時(shí),感謝實(shí)驗(yàn)室的同學(xué)們,他們也為我提供了大量的幫助,他們不斷地鼓勵(lì)我關(guān)心我,讓我堅(jiān)持不懈的學(xué)習(xí)研究,最終完成畢業(yè)設(shè)計(jì)。在此對(duì)幫助關(guān)心過(guò)我的人表示感謝,謝謝你們!西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)24參考文獻(xiàn)參考文獻(xiàn)1.李建忠.
49、 單片機(jī)原理及應(yīng)用. 西安電子科技大學(xué)出版社,2008.2.孫余凱等. 傳感器應(yīng)用電路 300 例. 電子工業(yè)出版社,2008.3.常喜茂. c51 基礎(chǔ)與應(yīng)用實(shí)例. 電子工業(yè)出版社,20094.謝宜仁. 單片機(jī)硬件接口電路及實(shí)例解析.電子工業(yè)出版社,2009.5.康華光.電子技術(shù)基礎(chǔ)(數(shù)字).高等教育出版社.2006.6.朱善軍等.單片機(jī)接口技術(shù)與應(yīng)用.清華大學(xué)出版社.2005.7.黃迪明.c 語(yǔ)言程序設(shè)計(jì)教程.國(guó)防工業(yè)出版社.200625附錄一:電路原理圖附錄一:電路原理圖西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)26附錄二:總程序附錄二:總程序#include #include #define
50、uchar 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;sbit dq7=p17;/*定義全局變
51、量*/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í)函數(shù)*/void delay(uint t)for (;t0;t-);void delayms(unsigned int ms)unsigned int i,j; for(i=0;ims;i+) for(j=0;
52、j0;j-)dq=1;_nop_();_nop_(); /從高拉倒低dq=0;_nop_();_nop_();_nop_();_nop_(); /5 usdq=val&0 x01; /最低位移出delay(6); /66 usval=val/2; /右移 1 位dq=1;delay(1);/*ds18b20 00 讀 1 字節(jié)函數(shù)*/從總線(xiàn)上取 1 個(gè)字節(jié)uchar read_byte()uchar j;uchar value=0;for(j=8;j0;j-)西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)28dq=1;_nop_();_nop_();value=1;dq=0;_nop_();_nop_()
53、;_nop_();_nop_(); /4 usdq=1;_nop_();_nop_();_nop_();_nop_(); /4 usif(dq)value|=0 x80;delay(6); /66 usdq=1;return(value);/*00 讀出溫度函數(shù)*/read_temp()ow_reset(); /總線(xiàn)復(fù)位delay(200);write_byte(0 xcc); /發(fā)命令write_byte(0 x44); /發(fā)轉(zhuǎn)換命令delayms(800);ow_reset();delay(1);write_byte(0 xcc); /發(fā)命令write_byte(0 xbe);temp_d
54、ata0=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 usdq1=val&0 x01; /最低位移出delay(6); /66 usval=val/2; /右移 1 位dq1=1;delay(1);/*ds18b20 01 讀 1 字節(jié)函數(shù)*/從總線(xiàn)上取 1 個(gè)字節(jié)uchar read_byte1()
55、uchar j;uchar value=0;for(j=8;j0;j-)dq1=1;_nop_();_nop_();value=1;dq1=0;_nop_();_nop_();_nop_();_nop_(); /4 usdq1=1;_nop_();_nop_();_nop_();_nop_(); /4 usif(dq1)value|=0 x80;delay(6); /66 usdq1=1;return(value);/*01 讀出溫度函數(shù)*/read_temp1()西南石油大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)30ow_reset1(); /總線(xiàn)復(fù)位delay(200);write_byte1(0 xcc
56、); /發(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=temp_data1;temp0;j-)31dq2=1;_nop_();_nop_(); /從高拉倒低dq2=0;_nop_();_nop_();_nop_();_nop_(); /5 usdq
57、2=val&0 x01; /最低位移出delay(6); /66 usval=val/2; /右移 1 位dq=1;delay(1);/*ds18b20 02 讀 1 字節(jié)函數(shù)*/從總線(xiàn)上取 1 個(gè)字節(jié)uchar read_byte2()uchar j;uchar value=0;for(j=8;j0;j-)dq2=1;_nop_();_nop_();value=1;dq2=0;_nop_();_nop_();_nop_();_nop_(); /4 usdq2=1;_nop_();_nop_();_nop_();_nop_(); /4 usif(dq2)value|=0 x80;delay(6
58、); /66 usdq2=1;return(value);/*02 讀出溫度函數(shù)*/read_temp2()ow_reset2(); /總線(xiàn)復(fù)位delay(200);write_byte2(0 xcc); /發(fā)命令write_byte2(0 x44); /發(fā)轉(zhuǎn)換命令ow_reset2();delay(1);write_byte2(0 xcc); /發(fā)命令write_byte2(0 xbe);temp_data0=read_byte2(); /讀溫度值的第字節(jié)temp_data1=read_byte2(); /讀溫度值的高字節(jié)display0=temp_data1;temp=temp_data1
59、;temp0;j-)dq3=1;_nop_();_nop_(); /從高拉倒低dq3=0;_nop_();_nop_();_nop_();_nop_(); /5 usdq3=val&0 x01; /最低位移出delay(6); /66 usval=val/2; /右移 1 位dq3=1;delay(1);/*ds18b20 03 讀 1 字節(jié)函數(shù)*/從總線(xiàn)上取 1 個(gè)字節(jié)uchar read_byte3()uchar j;uchar value=0;for(j=8;j0;j-)33dq3=1;_nop_();_nop_();value=1;dq3=0;_nop_();_nop_();_nop_
60、();_nop_(); /4 usdq3=1;_nop_();_nop_();_nop_();_nop_(); /4 usif(dq3)value|=0 x80;delay(6); /66 usdq3=1;return(value);/*03 讀出溫度函數(shù)*/read_temp3()ow_reset3(); /總線(xiàn)復(fù)位delay(200);write_byte3(0 xcc); /發(fā)命令write_byte3(0 x44); /發(fā)轉(zhuǎn)換命令delayms(800);ow_reset3();delay(1);write_byte3(0 xcc); /發(fā)命令write_byte3(0 xbe);te
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 背簍投球教案及反思
- 氧化碳的性質(zhì)說(shuō)課稿
- 化學(xué)的說(shuō)課稿
- 木工包工協(xié)議范本
- 工程監(jiān)理資料管理
- 辦公用品展銷(xiāo)會(huì)管理辦法
- 情侶旅行民宿管理細(xì)則
- 森林資源開(kāi)發(fā)護(hù)林員合同
- 外交用章制度管理辦法
- 倉(cāng)儲(chǔ)物流資產(chǎn)處置操作手冊(cè)
- 25題電控工程師崗位常見(jiàn)面試問(wèn)題含HR問(wèn)題考察點(diǎn)及參考回答
- 雙塔精餾正常停車(chē)雙塔精餾正常停車(chē)
- 安徽省A10聯(lián)盟2023-2024學(xué)年高三上學(xué)期11月期中英語(yǔ)試題(含答案解析)
- 北師大版五年級(jí)數(shù)學(xué)上冊(cè)典型例題系列之第四單元:平行四邊形面積的實(shí)際應(yīng)用專(zhuān)項(xiàng)練習(xí)(原卷版)
- 國(guó)開(kāi)2023秋《電子商務(wù)概論》實(shí)踐任務(wù)B2B電子商務(wù)網(wǎng)站調(diào)研報(bào)告參考答案
- 新人教版高中英語(yǔ)必修二課文原文及翻譯
- 【教學(xué)能力比賽】建筑CAD-教學(xué)實(shí)施報(bào)告
- 第四章-草地類(lèi)型、分布及分區(qū)
- 2023專(zhuān)業(yè)質(zhì)量負(fù)責(zé)人聘用合同正規(guī)范本(通用版)
- 印刷合同協(xié)議書(shū) 完整版doc正規(guī)范本(通用版)
- 胃癌(英文版)課件
評(píng)論
0/150
提交評(píng)論