![基于AT89C2051單片機(jī)的溫度測(cè)控器(共67頁(yè))_第1頁(yè)](http://file4.renrendoc.com/view/0df2699265b32acb5fd43dac43d63933/0df2699265b32acb5fd43dac43d639331.gif)
![基于AT89C2051單片機(jī)的溫度測(cè)控器(共67頁(yè))_第2頁(yè)](http://file4.renrendoc.com/view/0df2699265b32acb5fd43dac43d63933/0df2699265b32acb5fd43dac43d639332.gif)
![基于AT89C2051單片機(jī)的溫度測(cè)控器(共67頁(yè))_第3頁(yè)](http://file4.renrendoc.com/view/0df2699265b32acb5fd43dac43d63933/0df2699265b32acb5fd43dac43d639333.gif)
![基于AT89C2051單片機(jī)的溫度測(cè)控器(共67頁(yè))_第4頁(yè)](http://file4.renrendoc.com/view/0df2699265b32acb5fd43dac43d63933/0df2699265b32acb5fd43dac43d639334.gif)
![基于AT89C2051單片機(jī)的溫度測(cè)控器(共67頁(yè))_第5頁(yè)](http://file4.renrendoc.com/view/0df2699265b32acb5fd43dac43d63933/0df2699265b32acb5fd43dac43d639335.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、PAGE PAGE 74鄭州科技(kj)學(xué)院?jiǎn)纹瑱C(jī)原理(yunl)及應(yīng)用課程設(shè)計(jì) TOC o 1-3 h z u HYPERLINK l _Toc432675854 摘 要 PAGEREF _Toc432675854 h 3 HYPERLINK l _Toc432675855 引言(ynyn) PAGEREF _Toc432675855 h 3 HYPERLINK l _Toc432675856 1. 方案(fng n)論證 PAGEREF _Toc432675856 h 5 HYPERLINK l _Toc432675857 1.1 系統(tǒng)功能(gngnng)定義 PAGEREF _Toc43
2、2675857 h 5 HYPERLINK l _Toc432675858 1.2 總體方案 PAGEREF _Toc432675858 h 5 HYPERLINK l _Toc432675859 2. 系統(tǒng)硬件電路設(shè)計(jì) PAGEREF _Toc432675859 h 6 HYPERLINK l _Toc432675860 2.1 系統(tǒng)硬件框圖 PAGEREF _Toc432675860 h 6 HYPERLINK l _Toc432675861 2.2 測(cè)溫模塊 PAGEREF _Toc432675861 h 7 HYPERLINK l _Toc432675862 2.2.1 DS18B20
3、的主要特征有以下幾點(diǎn) PAGEREF _Toc432675862 h 7 HYPERLINK l _Toc432675863 2.2.2 DS18B20的工作原理 PAGEREF _Toc432675863 h 9 HYPERLINK l _Toc432675864 2.3 主控模塊 PAGEREF _Toc432675864 h 12 HYPERLINK l _Toc432675865 2.3.1 主控模塊功能分析 PAGEREF _Toc432675865 h 12 HYPERLINK l _Toc432675866 2.3.2 AT89C2051芯片的功能特性 PAGEREF _Toc4
4、32675866 h 12 HYPERLINK l _Toc432675867 2.4 顯示模塊 PAGEREF _Toc432675867 h 14 HYPERLINK l _Toc432675868 2.5 報(bào)警模塊 PAGEREF _Toc432675868 h 15 HYPERLINK l _Toc432675869 2.6 電路原理圖的繪制和電路的焊接 PAGEREF _Toc432675869 h 17 HYPERLINK l _Toc432675870 2.6.1 PROTEL簡(jiǎn)介 PAGEREF _Toc432675870 h 17 HYPERLINK l _Toc432675
5、871 2.6.2 電路的焊接 PAGEREF _Toc432675871 h 18 HYPERLINK l _Toc432675872 3. 系統(tǒng)軟件設(shè)計(jì) PAGEREF _Toc432675872 h 18 HYPERLINK l _Toc432675873 3.1 主控程序設(shè)計(jì) PAGEREF _Toc432675873 h 18 HYPERLINK l _Toc432675874 3.2 溫度信息的采集 PAGEREF _Toc432675874 h 19 HYPERLINK l _Toc432675875 3.3 溫度的顯示操作 PAGEREF _Toc432675875 h 20
6、HYPERLINK l _Toc432675876 4調(diào)試與總結(jié) PAGEREF _Toc432675876 h 21 HYPERLINK l _Toc432675877 致 謝 PAGEREF _Toc432675877 h 22 HYPERLINK l _Toc432675878 參考文獻(xiàn) PAGEREF _Toc432675878 h 24 HYPERLINK l _Toc432675879 附 錄 PAGEREF _Toc432675879 h 24 HYPERLINK l _Toc432675880 附錄一 電路原理圖 PAGEREF _Toc432675880 h 24 HYPER
7、LINK l _Toc432675881 附錄二 實(shí)物圖 PAGEREF _Toc432675881 h 26 HYPERLINK l _Toc432675882 附錄(fl)三 系統(tǒng)(xtng)主程序 PAGEREF _Toc432675882 h 27摘 要: 本次實(shí)習(xí)中選擇了單片機(jī)89C2051并和DS18B20傳感器搭建硬件電路,最終(zu zhn)實(shí)現(xiàn)了基于89C2051的單片機(jī)溫度控制器的設(shè)計(jì)。DS18B20是新型數(shù)字溫度傳感器,采用它與單片機(jī)連接測(cè)量溫度可簡(jiǎn)化溫度控制器的電路,提高可靠性。關(guān)鍵詞: 89C2051 單片機(jī);DS18B20 溫度(wnd)控制器引言(ynyn)計(jì)算機(jī)
8、的發(fā)展日新月異,其技術(shù)也突飛猛進(jìn),而嵌入式計(jì)算機(jī)這種專用計(jì)算機(jī)在當(dāng)今科學(xué)的發(fā)展過程中更是不可或缺的。 嵌入式系統(tǒng)是近年來發(fā)展很快的計(jì)算機(jī)方面的學(xué)科(xuk)方向,并迅速滲透到控制、自動(dòng)化、儀器儀表等學(xué)科。 嵌入式方向包括了軟硬件協(xié)同設(shè)計(jì)、嵌入式體系結(jié)構(gòu)、實(shí)時(shí)操作系統(tǒng)、嵌入式產(chǎn)品設(shè)計(jì)等方面的知識(shí),需要掌握嵌入式系統(tǒng)設(shè)計(jì)的典型開發(fā)工具,培訓(xùn)學(xué)生具備嵌入式系統(tǒng)軟、硬件的開發(fā)能力,對(duì)于特定行業(yè)領(lǐng)域(如移動(dòng)終端、數(shù)字家庭、信息家電以及對(duì)傳統(tǒng)產(chǎn)業(yè)信息化改造)已經(jīng)逐步形成了特定的嵌入式開發(fā)方法與手段。 隨著現(xiàn)代化信息技術(shù)的飛速發(fā)展,能獨(dú)立工作的溫度檢測(cè)系統(tǒng)已廣泛應(yīng)用與諸多的領(lǐng)域。傳統(tǒng)的溫度檢測(cè)大多以熱敏電阻
9、為傳感器,但熱敏電阻可靠性差、測(cè)量溫度準(zhǔn)確率低,且必須經(jīng)過專門的接口電路轉(zhuǎn)換成數(shù)字信號(hào)后才能進(jìn)行處理。它具有微型化、低功耗、高性能、抗干擾能力強(qiáng)等優(yōu)點(diǎn),特別適合于構(gòu)成溫度檢測(cè)系統(tǒng),可直接將溫度轉(zhuǎn)化成串行數(shù)字信號(hào)進(jìn)行處理。DS18B20的單片機(jī)溫度控制器具有電路簡(jiǎn)單、可靠性高的優(yōu)點(diǎn)。本溫度控制器對(duì)溫度進(jìn)行實(shí)時(shí)測(cè)量并顯示,用戶(yngh)可設(shè)定最高限報(bào)警溫度值和最低限報(bào)警溫度值,有一定的溫度控制功能。溫度是農(nóng)業(yè)生產(chǎn)中常見的工藝參數(shù)之一,任何物理變化和化學(xué)反應(yīng)過程都與溫度密切相關(guān),因此溫度 控制是工業(yè)現(xiàn)代化的重要任務(wù)。對(duì)于不同生產(chǎn)情況和工藝要求下的溫度控制,所采用的加熱方式(fngsh)、燃料、控制
10、方案也有所不同。單片機(jī)又稱單片微控制器,是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上,它的體積小、質(zhì)量輕、價(jià)格便宜,應(yīng)用和開發(fā)十分便利。本文選用AT89C2051芯片做為控制器,并采用ds18b20數(shù)碼管顯示及12M晶振產(chǎn)生時(shí)鐘信號(hào),分析了系統(tǒng)硬件各組成之間的通訊協(xié)議。1. 方案(fng n)論證1.1 系統(tǒng)功能(gngnng)定義根據(jù)設(shè)計(jì)要求,可以(ky)先大致勾勒出要完成設(shè)計(jì),需要幾個(gè)模塊具有如下圖所示的的功能, 圖1.1功能模塊框圖 1.2 總體方案 通過對(duì)系統(tǒng)功能的定義,可以將基于單片機(jī)的數(shù)字溫度計(jì)采用溫度傳感器DS18B20作為測(cè)溫元件用來滿足溫度測(cè)量,并將溫度信號(hào)經(jīng)由其本身所具有的A/D轉(zhuǎn)換
11、功能,轉(zhuǎn)換成數(shù)字信號(hào)經(jīng)單片機(jī)處理顯示于數(shù)碼管顯示器,從而完成溫度的測(cè)量和顯示。 整個(gè)系統(tǒng)控制將由AT89C2051單片機(jī)芯片為核心構(gòu)成。選用(xunyng)DS18B20作為測(cè)溫元件,數(shù)碼管作為顯示器件,各個(gè)檢測(cè)信號(hào)、顯示信號(hào)可由單片機(jī)的I/O口進(jìn)行。 設(shè)計(jì)任務(wù)(rn wu):用單片機(jī)設(shè)計(jì)一個(gè)測(cè)溫范圍在55125的數(shù)字(shz)溫度計(jì)。 設(shè)計(jì)要求:完成該系統(tǒng)的軟硬件設(shè)計(jì),學(xué)習(xí)掌握單片機(jī)采集溫度的設(shè)計(jì)方法提高學(xué)習(xí)新知識(shí)、新技能的能力,培養(yǎng)獨(dú)立設(shè)計(jì)的能力2. 系統(tǒng)硬件電路設(shè)計(jì)2.1 系統(tǒng)硬件框圖 根據(jù)系統(tǒng)功能要求,可以先大致勾勒出完成任務(wù)所需的系統(tǒng)硬件框圖如下: 圖2.1 硬件結(jié)構(gòu)(jigu)框圖
12、 主控模塊采用性價(jià)比較高的單片機(jī)芯片,在其內(nèi)部(nib)將預(yù)設(shè)好的程序儲(chǔ)存,可通過程序的運(yùn)行控制測(cè)溫模塊進(jìn)行測(cè)溫,測(cè)溫模塊主要是由DS18B20構(gòu)成,將其與所測(cè)對(duì)象進(jìn)行接觸即可獲取被測(cè)對(duì)象的溫度數(shù)據(jù),報(bào)警模塊只有當(dāng)溫度超出預(yù)定值時(shí)才會(huì)工作,而所測(cè)得的溫度將通過顯示模塊的液晶顯示器以數(shù)字形式顯示。2.2 測(cè)溫模塊(m kui) 本設(shè)計(jì)的測(cè)溫元件采用的是DS18B20測(cè)溫元件,DS18B20是由DALLAS(達(dá)拉斯)公司生產(chǎn)的一種溫度傳感器。超小的體積,超低的硬件開消,抗干擾能力強(qiáng),精度高,附加功能強(qiáng),使得DS18B20很受歡迎。這是世界上第一片支持“一線總線”接口的溫度傳感器。DS18B20數(shù)字
13、溫度計(jì)提供9位(二進(jìn)制)溫度讀數(shù),指示器件的溫度。信息經(jīng)過單線接口送入DS18B20或從DS18B20送出,因此從單片機(jī)到DS18B20僅需一條線連接即可。它可在1秒鐘(典型值)內(nèi)把溫度變換成數(shù)字。2.2.1 DS18B20的主要(zhyo)特征有以下幾點(diǎn)全數(shù)字溫度轉(zhuǎn)換(zhunhun)及輸出; 先進(jìn)(xinjn)的單總線數(shù)據(jù)通信; 最高12位分辨率,精度可達(dá)土0.5; 12位分辨率時(shí)的最大工作周期為750毫秒; 可選擇寄生工作方式; 檢測(cè)溫度范圍為55+125; 內(nèi)置EEPROM,限溫報(bào)警功能; 64位光刻ROM,內(nèi)置產(chǎn)品序列號(hào),方便多機(jī)掛接; 多樣封裝形式,適應(yīng)不同硬件系統(tǒng)。 圖2.2 D
14、S18B20管腳排列(pili)及封裝結(jié)構(gòu)圖 圖2.3 DS18B20實(shí)物圖 由其引腳可看出(kn ch),其3 個(gè)引腳: GND為電壓地直接接地(jid);DQ為單數(shù)據(jù)總線用來與單片機(jī)相連接,本系統(tǒng)中DQ與單片機(jī)P3.5接口連接,僅此一個(gè)連接就能保證DS18B20與單片機(jī)之間的數(shù)據(jù)交換;VDD引腳接電源電壓12。 圖2.4 DS18B20寄生電源工作(gngzu)方式 圖2.5 DS18B20 外接電源工作(gngzu)方式2.2.2 DS18B20的工作(gngzu)原理 DS18B20的溫度檢測(cè)與數(shù)字?jǐn)?shù)據(jù)輸出全集成于一個(gè)芯片之上,從而抗干擾力更強(qiáng)。一個(gè)工作周期可分為兩個(gè)部分,即溫度檢測(cè)和
15、數(shù)據(jù)處理。18B20共有三種形態(tài)的存儲(chǔ)器資源,分別是:ROM 只讀存儲(chǔ)器,用于存放DS18B20ID編碼 ,其前8位是單線系列編碼(DS18B20 的編碼是19H),后面48位是芯片唯一的序列號(hào),最后8位是以上56的位的CRC碼(冗余校驗(yàn))。數(shù)據(jù)在出產(chǎn)時(shí)設(shè)置不由用戶更改。DS18B20共64位ROM, RAM 數(shù)據(jù)暫存器,用于內(nèi)部計(jì)算和數(shù)據(jù)存取,數(shù)據(jù)在掉電后丟失,DS18B20共9個(gè)字節(jié)RAM,每個(gè)字節(jié)為 8位。第1、2個(gè)字節(jié)是溫度轉(zhuǎn)換后的數(shù)據(jù)值信息,第3、4個(gè)字節(jié)是用戶 EEPROM(常用于溫度報(bào)警值儲(chǔ)存)的鏡像。在上電復(fù)位時(shí)其值將被刷新。第5個(gè)字節(jié)則是用戶第3個(gè)EEPROM的鏡像。第6、7
16、、8個(gè)字節(jié)為計(jì)數(shù)寄存器,是為了讓用戶得到更高的溫度分辨率而設(shè)計(jì)的,同樣也是內(nèi)部溫度轉(zhuǎn)換、計(jì)算的暫存單元。第9個(gè)字節(jié)為前8 個(gè)字節(jié)的CRC碼。EEPROM 非易失性記憶體,用于存放長(zhǎng)期需要保存的數(shù)據(jù),上下限溫度報(bào)警值和校驗(yàn)數(shù)據(jù),DS18B20共3位EEPROM,并在RAM都存在鏡像,以方便用戶操作。我們?cè)诿恳淮巫x溫度之前都必須進(jìn)行復(fù)雜的且精準(zhǔn)時(shí)序的處理,因?yàn)镈S18B20的硬件簡(jiǎn)單結(jié)果就會(huì)導(dǎo)致軟件的巨大開消。 圖2.6 DS18B20的內(nèi)部結(jié)構(gòu)框圖(kungt) 低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器 1 ,為計(jì)數(shù)器提供一頻率穩(wěn)定的計(jì)數(shù)脈沖。高溫度系數(shù)
17、晶振隨溫度變化其震蕩頻率明顯改變,很敏感的振蕩器,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器 2 的脈沖輸入,為計(jì)數(shù)器 2 提供一個(gè)頻率隨溫度變化的計(jì)數(shù)脈沖。圖中還隱含著計(jì)數(shù)門,當(dāng)計(jì)數(shù)門打開(d ki)時(shí), DS18B20 就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖后進(jìn)行計(jì)數(shù),進(jìn)而完成溫度測(cè)量。計(jì)數(shù)門的開啟時(shí)間由高溫度系數(shù)振蕩器來決定,每次測(cè)量前,首先將 -55 所對(duì)應(yīng)的基數(shù)分別置入減法(jinf)計(jì)數(shù)器 1 和溫度寄存器中,減法計(jì)數(shù)器 1 和溫度寄存器被預(yù)置在 -55 所對(duì)應(yīng)的一個(gè)基數(shù)值。減法計(jì)數(shù)器 1 對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器 1 的預(yù)置值減到 0 時(shí)溫度寄存器的值將加 1 ,減法
18、計(jì)數(shù)器 1 的預(yù)置將重新被裝入,減法計(jì)數(shù)器 1 重新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到減法計(jì)數(shù)器 2 計(jì)數(shù)到 0 時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測(cè)溫度。斜率累加器用于補(bǔ)償和修正測(cè)溫過程中的非線性,其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)門仍未關(guān)閉就重復(fù)上述過程,直至溫度寄存器值達(dá)到被測(cè)溫度值。 圖2.7 DS18B20的內(nèi)部測(cè)溫電路(dinl)框圖2.3 主控模塊(m kui)2.3.1 主控模塊(m kui)功能分析 在本系統(tǒng)中,主控模塊居于非常重要的地位。它是整個(gè)系統(tǒng)的中樞,系統(tǒng)運(yùn)行所需的每個(gè)操作指令都要由其發(fā)出。它一方面控制著測(cè)溫模塊進(jìn)行
19、溫度信息的采集,另一方面也控制著顯示模塊的工作。最重要的是,由測(cè)溫模塊所采集到的溫度信息必須經(jīng)由主控模塊的處理才能在顯示模塊上顯示,從而使整個(gè)系統(tǒng)進(jìn)行正常的運(yùn)轉(zhuǎn)和工作。針對(duì)以上分析本系統(tǒng)主控模塊中的單片機(jī)芯片采用了AT89C2051芯片,此芯片功能強(qiáng)大,能夠完全滿足系統(tǒng)運(yùn)行的需求。2.3.2 AT89C2051芯片的功能特性 AT89C2051是美國(guó)Atmel公司生產(chǎn)的低電壓、高性能CMOS 8位單片機(jī)6-7,片內(nèi)含有 2 KB 的反復(fù)擦寫的只讀程序存儲(chǔ)器和128 B 的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM)。美國(guó)DALLAS半導(dǎo)體公司生產(chǎn)的DS18B20 型單線智能溫度傳感器,屬于新一代適配微處理器的
20、智能傳感器。數(shù)字溫度計(jì)是以 DS18B20 為檢測(cè)元件, 由AT89C2051 作為主控制器的溫度計(jì),具有功耗低、結(jié)構(gòu)簡(jiǎn)單、讀數(shù)方便、測(cè)溫范圍廣、測(cè)溫準(zhǔn)確的特點(diǎn)。 AT89C2051是MCS-51產(chǎn)品(chnpn)的兼容型,它具有2k的 HYPERLINK /stock-ic/FLASH.html t _blank FLASH ROM、128字ROM,15根I/O HYPERLINK /product/searchfile/11629.html t _blank 引線(ynxin)、兩個(gè)(lin )16位定時(shí)/ HYPERLINK /product/searchfile/3037.html t
21、 _blank 計(jì)數(shù)器、一個(gè)五向量?jī)杉?jí)中斷結(jié)構(gòu)、一個(gè)全雙工串行口、一個(gè)精密模擬 HYPERLINK /product/searchfile/4176.html t _blank 比較器以及片內(nèi) HYPERLINK /info/4152.html t _blank 振蕩電路和時(shí)鐘電路。它的 P1口和P3口是雙向I/O口,其中P1.2P1.7、P3.0P3.5和P3.7帶有內(nèi)部上拉 HYPERLINK /product/searchfile/294.html t _blank 電阻。在AT89C2051用作輸入端時(shí),將首先向 HYPERLINK /product/searchfile/10231.
22、html t _blank 引腳寫“1”而使內(nèi)部 HYPERLINK /data/iccompany/detail243.html t _blank MOS管截止以便引腳處于懸浮狀態(tài),從而可獲得高阻抗輸入。 其主要性能如下:與MCS-51單片機(jī)產(chǎn)品兼容2K字節(jié)在系統(tǒng)可編程Flash存儲(chǔ)器1000次擦寫周期全靜態(tài)操作:0Hz24Hz兩級(jí)加密程序存儲(chǔ)器15個(gè)可編程I/O口線兩個(gè)16位定時(shí)器/計(jì)數(shù)器六個(gè)中斷源可編串行UART通道1288位內(nèi)部(nib)RAM 直接(zhji)LED驅(qū)動(dòng)輸出 低功耗空載(kn zi)和掉電方式 片內(nèi)模擬比較器2.7V6V的操作范圍 圖2.8 AT89C2051的引腳結(jié)
23、構(gòu)2.4 顯示模塊 本系統(tǒng)最突出的特點(diǎn)就是能方便直觀地對(duì)所測(cè)溫度進(jìn)行讀取,因此顯示模塊的選取極為重要,由三位共陽(yáng)數(shù)碼管(溫度值顯示)作為顯示模塊。采用動(dòng)態(tài)掃描的方法,其中P3.0,P3.1,P3.2,P3.3控制位選,P1控制段選。由P3.0,P3.1,P3.2,P3.3向各位輪流輸出掃描信號(hào),使每一瞬間只有一個(gè)數(shù)碼管被選通,然后由 P1送入該位所要顯示的字形碼,點(diǎn)亮該位字形段顯示的字形。在P1送出的碼段和P3.0,P3.1,P3.2,P3.3送出的位段的配合控制下,使各個(gè)數(shù)碼管輪流點(diǎn)亮顯示各自的字形。 注:下為三位共陽(yáng)數(shù)碼管圖,顯示(xinsh)攝氏度符號(hào)的一位共陽(yáng)數(shù)碼管倒置焊接即可。 圖2
24、.9 三位共陽(yáng)數(shù)碼管圖圖2.10 七段數(shù)碼管引腳圖2.5 報(bào)警(bo jng)模塊 本系統(tǒng)采用3 mm的發(fā)光(f un)二極管作為報(bào)警裝置,發(fā)光(f un) HYPERLINK /view/1016.htm t _blank 二極管簡(jiǎn)稱為L(zhǎng)ED。由鎵(Ga)與砷(AS)、磷(P)的化合物制成的二極管,當(dāng)電子與 HYPERLINK /view/194378.htm t _blank 空穴復(fù)合時(shí)能輻射出 HYPERLINK /view/68621.htm t _blank 可見光,因而可以用來制成發(fā)光二極管。在電路及 HYPERLINK /view/56517.htm t _blank 儀器中作為
25、指示燈,或者組成文字或數(shù)字顯示。磷 HYPERLINK /view/34646.htm t _blank 砷化鎵二極管發(fā)紅光, HYPERLINK /view/158655.htm t _blank 磷化鎵二極管發(fā)綠光, HYPERLINK /view/9636.htm t _blank 碳化硅二極管發(fā)黃光。 發(fā)光二極管的核心部分是由 HYPERLINK /view/84698.htm t _blank P型半導(dǎo)體和N型半導(dǎo)體組成的 HYPERLINK /view/1201023.htm t _blank 晶片,在P型半導(dǎo)體和N型半導(dǎo)體之間有一個(gè)過渡層,稱為PN結(jié)。在某些半導(dǎo)體材料的PN結(jié)中,
26、注入的少數(shù) HYPERLINK /view/394083.htm t _blank 載流子與多數(shù)載流子復(fù)合時(shí)會(huì)把多余的能量以光的形式釋放出來,從而把電能直接轉(zhuǎn)換為光能。PN結(jié)加 HYPERLINK /view/2979173.htm t _blank 反向電壓,少數(shù)載流子難以注入,故不發(fā)光。這種利用 HYPERLINK /view/2243347.htm t _blank 注入式電致發(fā)光原理制作的二極管 叫發(fā)光二極管,通稱LED 。 當(dāng)它處于正向 HYPERLINK /view/670206.htm t _blank 工作狀態(tài)時(shí)(即兩端加上正向電壓),電流從LED HYPERLINK /vie
27、w/767315.htm t _blank 陽(yáng)極流向陰極時(shí),半導(dǎo)體 HYPERLINK /view/51869.htm t _blank 晶體就發(fā)出從紫外到紅外不同顏色的光線,光的強(qiáng)弱與電流有關(guān)。圖2.11 發(fā)光(f un)二極管的構(gòu)造圖 選用發(fā)光(f un)二極管的好處: 1.效能(xionng): 消耗能量較同光效的 HYPERLINK /view/23342.htm t _blank 白熾燈減少80% 2.適用性: 體積很小,每個(gè)單元LED小片是3-5mm的正方形,所以可以制備成各種形狀的器件,并且適合于易變的環(huán)境 3.穩(wěn)定性: 10萬小時(shí),光衰為初始的50% 4.響應(yīng)時(shí)間: 其白熾燈的
28、 HYPERLINK /view/84619.htm t _blank 響應(yīng)時(shí)間為毫秒級(jí), HYPERLINK /view/59252.htm t _blank LED 燈的響應(yīng)時(shí)間為納秒級(jí)對(duì)環(huán)境污染 無有害金屬汞 2.6 電路原理圖的繪制和電路的焊接 在硬件的設(shè)計(jì)前期,根據(jù)框圖對(duì)電路中可能出現(xiàn)的電路,進(jìn)行了模擬實(shí)驗(yàn),并根據(jù)實(shí)驗(yàn)結(jié)果對(duì)后期的硬件設(shè)計(jì)進(jìn)行了合理化的修改完善。在第一章中已分析了系統(tǒng)并繪制了框圖,并根據(jù)框圖分別設(shè)計(jì)了各部分電路。由于溫度傳感器 DS18B20集成度較高,所以在硬件電路設(shè)計(jì)時(shí)不需要太多其他元件即可實(shí)現(xiàn)預(yù)期功能。因此在PROTEL上對(duì)原理圖進(jìn)行了繪制,從而得出了最終的完整
29、電路原理圖附錄一。2.6.1 PROTEL簡(jiǎn)介(jin ji) PROTEL是PORTEL公司在80年代末推出的EDA軟件,在電子行業(yè)的CAD軟件中,它當(dāng)之無愧地排在眾多EDA軟件的前面(qin mian),是電子設(shè)計(jì)者的首選軟件,它包含了電原理圖繪制、模擬電路與數(shù)字電路混合信號(hào)仿真、多層印制電路板設(shè)計(jì)(包含印制電路板自動(dòng)布線)、可編程邏輯器件設(shè)計(jì)、圖表生成、電子表格生成、支持宏操作等功能,并具有Client/Server (客戶/服務(wù)器)體系結(jié)構(gòu),同時(shí)還兼容一些其它設(shè)計(jì)軟件的文件格式,如ORCAD,PSPICE,EXCEL等,其多層印制線路板的自動(dòng)布線可實(shí)現(xiàn)高密度PCB的100布通率。Pro
30、tel 99SE采用數(shù)據(jù)庫(kù)的管理方式。該軟件沿襲了Protel以前版本方便易學(xué)的特點(diǎn),內(nèi)部界面與Protel 99大體相同,新增加了一些功能模塊,功能更加強(qiáng)大。新增的層堆棧管理功能,可以設(shè)計(jì)32個(gè)信號(hào)層,16 個(gè)地電層,16個(gè)機(jī)械層。新增的3D功能在加工印制版之前可以看到板的三維效果。其具有的打印功能,可以輕松修改打印設(shè)置控制(kngzh)打印結(jié)果。Protel 99SE容易使用的特性還體現(xiàn)在其幫助功能,按下右上角的小問號(hào),然后輸入你所要的信息,可以很快地看到特性的功能,然后用到設(shè)計(jì)中,按下狀態(tài)欄末端的按鈕,使用幫助顧問。2.6.2 電路(dinl)的焊接 當(dāng)通過PROTEL繪制出完整的電路原
31、理圖后,就可以按照繪制好的原理圖進(jìn)行電路的焊接,焊接時(shí)要注意虛焊和短路情況出現(xiàn)。焊接是要先焊單片機(jī)的主電路,以便于對(duì)各部分電路的測(cè)試。當(dāng)焊完一部分子電路后,要先輸入子程序進(jìn)行檢測(cè),看是否有輸入或輸出。焊完后,就可以進(jìn)行電路總體(zngt)性能測(cè)試了。 在測(cè)試之前,一定要先對(duì)電路檢測(cè),看是否有短路情況出現(xiàn),以免芯片(xn pin)損壞。電源輸入電壓也是關(guān)鍵因素,在供電之前先量量。3. 系統(tǒng)軟件設(shè)計(jì)3.1 主控程序設(shè)計(jì) 通過對(duì)系統(tǒng)工作原理的了解,我們可以大致知道系統(tǒng)軟件運(yùn)行工作的流程圖如下: 圖3.1 系統(tǒng)(xtng)運(yùn)行流程圖 當(dāng)接通電源開始工作后,單片機(jī)中的程序開始運(yùn)行,將對(duì)DS18B20進(jìn)行
32、(jnxng)初始化,以便單片機(jī)芯片和DS18B20達(dá)成通信協(xié)議。完成初始化后,由于本系統(tǒng)只有一個(gè)測(cè)溫元件,單片機(jī)會(huì)向其發(fā)出跳過ROM指令,接下來便可向其發(fā)送操作指令,設(shè)定溫度上下限,啟動(dòng)測(cè)溫程序。測(cè)溫過程完成后,發(fā)出溫度轉(zhuǎn)換指令,從而便可將溫度轉(zhuǎn)化成數(shù)字模式進(jìn)行顯示讀取。 3.2 溫度信息(xnx)的采集 通過DS18B20單線總線的所有執(zhí)行處理都從一個(gè)初始化序列開始。初始化序列包括一個(gè)由總線控制器發(fā)出的復(fù)位脈沖和隨后由從機(jī)發(fā)出的存在脈沖: 1、復(fù)位:首先我們(w men)必須對(duì)DS18B20芯片進(jìn)行(jnxng)復(fù)位,復(fù)位就是由控制器(單片機(jī))給DS18B20單總線至少(zhsho)480
33、uS的低電平信號(hào)。當(dāng)18B20接到此復(fù)位信號(hào)后則會(huì)在1560uS后回發(fā)一個(gè)芯片的存在脈沖。 2、存在脈沖:在復(fù)位電平結(jié)束之后,控制器應(yīng)該將數(shù)據(jù)單總線拉高,以便于在1560uS后接收存在脈沖,存在脈沖為一個(gè)60240uS的低電平信號(hào)。至此,通信雙方已經(jīng)達(dá)成了基本的協(xié)議,接下來將會(huì)是控制器與18B20間的數(shù)據(jù)通信。 3、控制器發(fā)送ROM指令:雙方打完了招呼之后最要將進(jìn)行交流了,ROM指令共有5條,每一個(gè)工作周期只能發(fā)一條,ROM指令分別是讀ROM數(shù)據(jù)、指定匹配芯片、跳躍ROM、芯片搜索、報(bào)警芯片搜索。 4、控制器發(fā)送存儲(chǔ)器操作指令:在ROM指令發(fā)送給18B20之后,緊接著(不間斷)就是發(fā)送存儲(chǔ)器操
34、作指令了。操作指令同樣為8位,共6條,存儲(chǔ)器操作指令分別是寫RAM數(shù)據(jù)、讀RAM數(shù)據(jù)、將RAM數(shù)據(jù)復(fù)制到EEPROM、溫度轉(zhuǎn)換、將EEPROM中的報(bào)警值復(fù)制到RAM、工作方式切換。 5、執(zhí)行或數(shù)據(jù)讀寫:一個(gè)存儲(chǔ)器操作指令結(jié)束后則將進(jìn)行指令執(zhí)行或數(shù)據(jù)的讀寫,這個(gè)操作要視存儲(chǔ)器操作指令而定。3.3 溫度的顯示(xinsh)操作 如電路正常(zhngchng),接通電源后,只顯示“C”符號(hào)(fho),無溫度值;按下AN3,先顯示上次存貯下來的設(shè)定溫度(報(bào)警控制)值,然后再顯示環(huán)境溫度值,并隨環(huán)境溫度的變化而變化;再按一下AN3,溫度數(shù)字閃爍,待調(diào)節(jié);接著按AN1或AN2: 按AN1為報(bào)警溫度值變大,
35、最大為125C;按AN2為報(bào)警溫度值變小 ,最小為-55C;調(diào)好后再按一下AN3,調(diào)好的報(bào)警溫度值被存貯,數(shù)碼管又顯示環(huán)境溫度。當(dāng)溫度達(dá)到存貯的報(bào)警值時(shí),電路發(fā)出報(bào)警信號(hào)和動(dòng)作。4調(diào)試與總結(jié) 在硬件電路焊接和軟件程序設(shè)計(jì)分別完成的基礎(chǔ)之上,進(jìn)行軟硬件的結(jié)合與調(diào)試。通過下載將在電腦上已完成的程序下載到單片機(jī)芯片中。在調(diào)試中發(fā)現(xiàn)軟件中存在的問題,及時(shí)解決問題,確保系統(tǒng)能正常工作并達(dá)到設(shè)計(jì)要求。通過反復(fù)的調(diào)試與實(shí)驗(yàn),可以證明該系統(tǒng)能夠較好地完成設(shè)計(jì)所需的基本要求。即能夠方便準(zhǔn)確的對(duì)被測(cè)對(duì)象進(jìn)行溫度測(cè)量。同時(shí)在完成設(shè)計(jì)要求的前提下,充分考慮到了外觀,成本等問題,在性能和價(jià)格之間作了比較好的平衡。雖然整
36、體性能良好,但尚存在些許不足,系統(tǒng)穩(wěn)定性不夠,需要增強(qiáng)自己的焊接水平以便以后避免出現(xiàn)類似問題。本溫度采集系統(tǒng)實(shí)用性強(qiáng),結(jié)構(gòu)較為簡(jiǎn)單,成本低,外接元件少。在實(shí)際應(yīng)用(yngyng)中工作性能穩(wěn)定,測(cè)量溫度準(zhǔn)確,精度較高。系統(tǒng)在硬件設(shè)計(jì)上充分考慮到了可擴(kuò)展性,經(jīng)過一定的添加或改造,很容易增加功能。本系統(tǒng)適用范圍廣泛,可以單獨(dú)使用作為監(jiān)控儀,應(yīng)用于農(nóng)業(yè)溫室大棚監(jiān)測(cè)植物生長(zhǎng)的環(huán)境變化,工業(yè)廠房測(cè)量各部分的工作溫度等等。也可以作為智能控制系統(tǒng)的一部分,與其它設(shè)備協(xié)同工作。系統(tǒng)移植性強(qiáng),只需改變前端測(cè)量用的傳感器類型,可在此基礎(chǔ)上修改為其 他非電量參數(shù)的測(cè)量系統(tǒng)。致 謝 通過此次畢業(yè)設(shè)計(jì),我學(xué)到了很多知識(shí)
37、。在實(shí)物的設(shè)計(jì)和論文的寫作過程中,通過查資料和搜集有關(guān)的文獻(xiàn),培養(yǎng)了自學(xué)能力。通過對(duì)硬件電路的設(shè)計(jì)和焊接,增強(qiáng)了自己的動(dòng)手能力。并且由原來的被動(dòng)接受知識(shí)轉(zhuǎn)換為主動(dòng)的尋求知識(shí),學(xué)會(huì)了更好地讓所學(xué)知識(shí)與實(shí)踐相結(jié)合,讓書本上的知識(shí)與實(shí)際生活(shnghu)中的具體應(yīng)用相結(jié)合。讓自己切實(shí)感覺到了學(xué)有所用。并在此期間鞏固復(fù)習(xí)了在大學(xué)4年內(nèi)學(xué)過的知識(shí),尤其是單片機(jī)和模電,數(shù)電方面的知識(shí)。同時(shí)通過這次畢業(yè)設(shè)計(jì)提高了自己的單片機(jī)編程的能力,尤其是獲得的軟件調(diào)試經(jīng)驗(yàn),同時(shí)也讓自己知道了自己不足和缺陷,從而(cng r)為自己能更好的改進(jìn)提供了幫助。 在此,首先感謝我的老師,感謝各位老師這四年中在學(xué)習(xí)中、生活上的
38、關(guān)心和照顧;其次感謝各位同學(xué),同學(xué)們?cè)谏钪薪o予很大的幫助,在學(xué)習(xí)上也給極大的鼓舞。指導(dǎo)老師項(xiàng)仕標(biāo)教授和葛明濤講師治學(xué)嚴(yán)謹(jǐn),學(xué)識(shí)淵博,平易近人,在我做設(shè)計(jì)和論文期間對(duì)我的教誨和指導(dǎo)將使我終生受益。無論是在平時(shí)的階段,還是在論文的選題、資料(zlio)查詢、開題、研究、設(shè)計(jì)和撰寫的每一個(gè)環(huán)節(jié),都得到導(dǎo)師的悉心指導(dǎo)和幫助。借此機(jī)會(huì)向項(xiàng)仕標(biāo)教授和葛明濤講師表示衷心的感謝!在畢業(yè)設(shè)計(jì)的這段時(shí)間里,其他老師們也都言傳身教,以他們廣博的知識(shí),敏銳的洞察力,多年的教學(xué)和實(shí)際工作經(jīng)驗(yàn),在畢業(yè)設(shè)計(jì)上給予我很大的幫助。在本次設(shè)計(jì)中我學(xué)到的不僅是科學(xué)知識(shí)和工作方法,更學(xué)到了作為一個(gè)研究人員應(yīng)有的治學(xué)態(tài)度以及為人處世
39、的道理,這一切都將使我終身受益。謹(jǐn)在此向各位老師致以崇高的敬意和衷心的感謝! 感謝幾年來傳授我知識(shí)的老師們,更要感謝我的家人對(duì)我學(xué)業(yè)(xuy)上的支持和鼓勵(lì),感謝所有關(guān)心幫助過我的人。 參考文獻(xiàn)1 譚浩強(qiáng) C程序設(shè)計(jì)(chn x sh j) 清華大學(xué)出版社 1999.122 李群芳 肖看 單片機(jī)原理(yunl),接口及應(yīng)用 清華大學(xué)出版社 2005.33 張義和 王敏男 例說51單片機(jī) 人民郵電出版社 2008.4 4 蔡美琴 張為民 MCS-51系列(xli)單片機(jī)系統(tǒng)及其應(yīng)用 高等教育出版社 19925 高峰(gofng) 單片微機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)及實(shí)用技術(shù) 機(jī)械工程出版社 20046 楊全勝
40、 現(xiàn)代微機(jī)原理(yunl)與接口技術(shù) 電子工業(yè)出版社 20047 全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)賽組委會(huì) 全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)賽獲 獎(jiǎng)作品精選 (19941999) 北京理工大學(xué)出版社 2003.8 謝淑如 鄭光欽 楊渝生 Protel PCB 99SE電路版設(shè)計(jì) 清華大學(xué)出版社9 何立民 單片機(jī)應(yīng)用技術(shù)選編 北京航空航天大學(xué)出版社,1993.210 段九洲 放大電路實(shí)用設(shè)計(jì)手冊(cè) 遼寧科學(xué)技術(shù)出版社,2002.511 李炎清 畢業(yè)論文寫作與范例 廈門大學(xué)出版社 2006.10附 錄附錄一 電路原理圖 附錄(fl)二 實(shí)物圖附錄(fl)三 系統(tǒng)(xtng)主程序/*溫度(wnd)控制器V1.5顯示為三個(gè)共
41、陽(yáng)極LED溫度傳感器用單總線DS18B20CPU為2051,三個(gè)按鍵,分別為UP,DOWN,SET溫度調(diào)節(jié)上限為125度,下限為-55度只能用于單只18B20*/#include #include #define Key_UP P3_0 /上調(diào)溫度#define Key_DOWN P3_1 /下調(diào)溫度#define Key_SET P1_7 /設(shè)定鍵(溫度設(shè)定,長(zhǎng)按開電源)#define RelayOutPort P3_5 /繼電器輸出#define LEDPort P1 /LED控制口#define LEDOneC P3_2 /LED DS1控制(百位)#define LEDTwoC P3_
42、3 /LED DS2控制(十位)#define LEDThreeC P3_4 /LED DS3控制(kngzh)(個(gè)位)#define TMPortP3_7/DS1820 DataPortunsigned char code LEDDis=0 xC0,0 xF9,0 xA4,0 xB0,0 x99,0 x92,0 x82,0 xF8,0 x80,0 x90,0 xFF,0 xBF; /0-9的LED筆劃(b hu),0 xFF為空,0 xF7為負(fù)號(hào)static unsigned char bdata StateREG;/可位尋址的狀態(tài)(zhungti)寄存器sbit DS1820ON = St
43、ateREG0; /DS1820是否存在sbit SetTF = StateREG1; /是否是在溫度設(shè)置狀態(tài)sbit KeySETDown = StateREG2; /是否已按過SET鍵標(biāo)識(shí)sbit PowTF = StateREG3; /電源電源標(biāo)識(shí)sbit KeyTF = StateREG4;/鍵盤是否允許/sbit KeySETDowning = StateREG5;/SET是否正在按下static unsigned char bdata TLV _at_ 0 x0029; /溫度變量(binling)高低位static unsigned char bdata THV _at_ 0 x
44、0028;static signed char TMV; /轉(zhuǎn)換(zhunhun)后的溫度值static unsigned char KeyV,TempKeyV; /鍵值static signed char TMRomV _at_ 0 x0027; /高溫(gown)限制static signed char TMSetV _at_ 0 x0026; /溫度設(shè)定值static unsigned char KSDNum; /SET鍵連按時(shí)的采集次數(shù)static unsigned char IntNum,IntNum2,IntNum3; /中斷發(fā)生次數(shù),IntNum用于SET長(zhǎng)按檢測(cè),IntNum2
45、用于設(shè)定狀態(tài)時(shí)LED閃爍static signed char LED_One,LED_Two,LED_Three; /LED的顯示位 LED_One為十位,LED_Two為個(gè)位static unsigned char Sign; /負(fù)號(hào)標(biāo)識(shí)void main(void)void InitDS1820(void); /定義(dngy)函數(shù)void ROMDS1820(void);void TMVDS1820(void);void TMRDS1820(void);void TMWDS1820(void);void TMREDS1820(void);void TMERDS1820(void);voi
46、d ReadDS1820(void);void WriteDS1820(void);void Delay_510(void);void Delay_110(void);void Delay_10ms(void);void Delay_4s(void);void V2ToV(void);StateREG = 0; /初始化變量(binling)SetTF = 1;PowTF = 1;/關(guān)電源(dinyun)THV = 0;TLV = 0;TMV = 0;KeyV = 0;TempKeyV = 0;KSDNum = 0;IntNum = 0;IntNum2 = 0;IntNum3 = 0;LED_
47、One = 0;LED_Two= 0;InitDS1820(); /初始化ROMDS1820(); /跳過ROMTMERDS1820(); /E2PRAM中溫度(wnd)上限值調(diào)入RAMInitDS1820(); /初始化ROMDS1820(); /跳過ROMTMRDS1820(); /讀出溫度(wnd)指令ReadDS1820(); /讀出溫度(wnd)值和上限值TMSetV = TMRomV; /拷貝保存在DS18B20ROM里的上限值到TMSetVEA = 1;/允許CPU中斷ET0 = 1; /定時(shí)器0中斷打開TMOD = 0 x1;/設(shè)定時(shí)器0為模式1,16位模式TH0=0 xB1;
48、TL0=0 xDF;/設(shè)定時(shí)值為20000us(20ms)TR0 = 1;/開始定時(shí)while(1);/定時(shí)器0中斷(zhngdun)外理中鍵掃描和顯示void KeyAndDis_Time0(void) interrupt 1 using 2 TH0=0 xB1;TL0=0 xDF;/設(shè)定(sh dn)時(shí)值為20000us(20ms)LEDPort = 0 xFF; if (!Key_UP) KeyV = 1; if (!Key_DOWN) KeyV = 2; if (!Key_SET) KeyV = 3;/KeySETDowning = 0; /清除(qngch) if (KeyV !=
49、0) /有鍵按下 Delay_10ms(); /延時(shí)防抖 按下10ms再測(cè) if (!Key_UP) TempKeyV = 1; if (!Key_DOWN) TempKeyV = 2; if (!Key_SET) TempKeyV = 3; if (KeyV = TempKeyV) /兩次值相等(xingdng)為確定接下了鍵 if (KeyV = 3) /按下SET鍵,如在SET狀態(tài)(zhungti)就退出,否則進(jìn)入 /KeySETDowning = 1; /表明(biomng)SET正在按下 PowTF = 0; /電源(dinyun)標(biāo)識(shí)開if (!KeyTF) if (SetTF)
50、SetTF = 0; /標(biāo)識(shí)(biozh)位標(biāo)識(shí)退出設(shè)定InitDS1820(); /初始化 ROMDS1820(); /跳過ROM TMWDS1820(); /寫溫度上限指令WriteDS1820(); /寫溫度上限到DS18B20ROMWriteDS1820(); /寫溫度上限到DS18B20ROMWriteDS1820(); /寫溫度(wnd)上限到DS18B20ROMInitDS1820(); /初始化 ROMDS1820(); /跳過ROM TMREDS1820(); /溫度(wnd)上限值COPY回E2PRAM else SetTF = 1; if (!KeySETDown) /沒
51、有(mi yu)第一次按下SET時(shí),KeySETDown標(biāo)識(shí)置1 KeySETDown = 1; else KSDNum = KSDNum + 1; /前一秒內(nèi)有按過SET則開始計(jì)數(shù) if (SetTF) /在SET狀態(tài)(zhungti)下 if (KeyV = 1) & (!KeyTF) TMSetV = TMSetV + 1; /上調(diào)(shn dio)溫度 if (KeyV = 2) & (!KeyTF) TMSetV = TMSetV - 1; /下調(diào)(xi dio)溫度 if (TMSetV = 125) TMSetV = 125; if (!KeyTF) & (IntNum3 = 0
52、) KeyTF = 1; /當(dāng)鍵盤處于可用時(shí),鎖定 if (KeySETDown) /在2秒內(nèi)按下了SET則計(jì)中斷(zhngdun)發(fā)生次數(shù)用于長(zhǎng)按SET時(shí)計(jì)時(shí)用 IntNum = IntNum + 1; if (IntNum 55) /中斷發(fā)生(fshng)了55次時(shí)(大約1.2秒)75為1.5秒左右 IntNum = 0;KeySETDown = 0; if (KSDNum = 55) /如一直(yzh)長(zhǎng)按了SET1.2秒左右 RelayOutPort = 1; /關(guān)閉繼電器輸出 PowTF = 1; /電源標(biāo)識(shí)關(guān) LEDOneC = 0; LEDTwoC = 0; LEDThreeC
53、= 0; LEDPort = 0 xBF; /顯示- Delay_4s(); /延時(shí) LEDOneC = 1; LEDTwoC = 1; /關(guān)顯示(xinsh) LEDThreeC = 1; Delay_4s(); IntNum = 0; IntNum2 = 0; IntNum3 = 0; KSDNum = 0; KeyV = 0; TempKeyV = 0; /清空(qn kn)變量準(zhǔn)備下次鍵掃描 if (!PowTF) InitDS1820();/初始化 ROMDS1820(); /跳過ROM TMVDS1820(); /溫度轉(zhuǎn)換(zhunhun)指令 Delay_510(); Delay
54、_510(); /延時(shí)等待轉(zhuǎn)換(zhunhun)完成 InitDS1820(); /初始化 ROMDS1820(); /跳過ROM TMRDS1820(); /讀出溫度(wnd)指令 ReadDS1820(); /讀出溫度值 V2ToV(); /轉(zhuǎn)換顯示值 if (TMV TMSetV) /根據(jù)采集到的溫度值控制繼電器 RelayOutPort = 0; else RelayOutPort = 1; if (SetTF) IntNum2 = IntNum2 + 1; /用于閃爍(shn shu)計(jì)數(shù) if (IntNum2 50 ) IntNum2 = 0;if (KeyTF) IntNum3
55、 = IntNum3 + 1; /用于防止(fngzh)按鍵連按if (IntNum3 25) IntNum3 = 0;KeyTF = 0; if (SetTF) & (IntNum2 4; THV = THV 7; /取符號(hào) else Sign = TMV 7;if (Sign) if (SetTF | !Key_SET) LED_One = (TMSetV-1) / 100; /SET狀態(tài)(zhungti)下顯示設(shè)定值 LED_Two = (TMSetV-1) - LED_One * 100)/10; LED_Three = (TMSetV-1) - LED_One * 100 - LED
56、_Two * 10; else LED_One = (TMV) / 100;/轉(zhuǎn)換(zhunhun)百位值 LED_Two = (TMV) - LED_One * 100)/10; LED_Three = (TMV) - LED_One * 100 - LED_Two * 10;else if (SetTF | !Key_SET) LED_One = (TMSetV) / 100; /SET狀態(tài)(zhungti)下顯示設(shè)定值 LED_Two = (TMSetV - LED_One * 100)/10; LED_Three = TMSetV - LED_One * 100 - LED_Two *
57、 10; else LED_One = (TMV) / 100;/轉(zhuǎn)換(zhunhun)百位值 LED_Two = (TMV - LED_One * 100)/10; LED_Three = TMV - LED_One * 100 - LED_Two * 10; /轉(zhuǎn)LED字段if (LED_One) /超過(chogu)百時(shí)十位的處理LED_Two = LEDDisLED_Two;elseif (LED_Two = 0)LED_Two = LEDDis10;elseLED_Two = LEDDisLED_Two;if (Sign)LED_One = LEDDis11;elseif (LED_
58、One = 0)LED_One = LEDDis10;elseLED_One = LEDDisLED_One;LED_Three = LEDDisLED_Three;void InitDS1820(void)/初始化DS1820TMPort = 1;/拉高TMPort_nop_(); /保持(boch)一個(gè)周期TMPort = 0;/拉低TMPort Delay_510(); /延時(shí) DS1820復(fù)位(f wi)時(shí)間要500us的低電平 TMPort = 1; /拉高TMPort_nop_(); /保持(boch) _nop_();_nop_(); Delay_110(); /延時(shí)110us
59、等待DS1820回應(yīng) if (!TMPort) /回應(yīng)信號(hào)為低電平 DS1820ON = 1; else DS1820ON = 0; Delay_110(); /延時(shí) Delay_110(); TMPort = 1; /拉高TMPortvoid ROMDS1820(void) /跳過ROM匹配(ppi)#pragma asm MOV A,#0CCH MOV R2,#8 CLR C WR1: CLR P3_7 MOV R3,#6 DJNZ R3,$ RRC A MOV P3_7,C MOV R3,#23 DJNZ R3,$ SETB P3_7 NOP DJNZ R2,WR1 SETB P3_7#pragma endasmvoid TMVDS1820(void) /溫度(wnd)轉(zhuǎn)換指令#pragma asm MOV A,#44H MOV R2,#8 CLR C WR2: CLR P3_7 MOV R3,#6 DJNZ R3,$ RRC A MOV P3_7,C MOV R3,#23 DJNZ R3,$ SETB P3_7 NOP DJNZ R
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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è)與員工勞動(dòng)協(xié)議示范文本
- 2025年策劃合作項(xiàng)目合作方解除協(xié)議書
- 2025年建筑行業(yè)策劃合伙人合同樣本
- 2025年預(yù)防用生物制品項(xiàng)目規(guī)劃申請(qǐng)報(bào)告
- 2025年中等職業(yè)技術(shù)學(xué)校教務(wù)主任合同
- 2025年倉(cāng)儲(chǔ)短期租賃策劃合同范本
- 2025年公共交通改善合同協(xié)議
- 2025年公司員工股權(quán)合作合同指南
- 2025年標(biāo)準(zhǔn)融資協(xié)調(diào)合同
- 2025年醫(yī)院醫(yī)師綜合雇傭協(xié)議
- 01 H5入門知識(shí)課件
- 2024年安全生產(chǎn)網(wǎng)絡(luò)知識(shí)競(jìng)賽題庫(kù)及答案(共五套)
- 2024年實(shí)驗(yàn)小學(xué)大隊(duì)委競(jìng)選筆試試題題庫(kù)
- 學(xué)校辦公室衛(wèi)生制度
- 醫(yī)學(xué)生理學(xué)智慧樹知到答案2024年德州學(xué)院
- GB/T 44412-2024船舶與海上技術(shù)液化天然氣燃料船舶加注規(guī)范
- 小學(xué)三年級(jí)數(shù)學(xué)上冊(cè)口算題卡(加換算)
- 小學(xué)數(shù)學(xué)二年級(jí)《數(shù)圖形》練習(xí)題
- 機(jī)械制造HSE協(xié)議書
- 2024-2030年中國(guó)靜脈血栓栓塞癥(VTE)防治行業(yè)市場(chǎng)全景監(jiān)測(cè)及投資策略研究報(bào)告
- 財(cái)務(wù)審計(jì)服務(wù)投標(biāo)方案(技術(shù)方案)
評(píng)論
0/150
提交評(píng)論