版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 前 言</b></p><p> 單片機(jī)在電子產(chǎn)品中的應(yīng)用已經(jīng)越來(lái)越廣泛,在很多的電子產(chǎn)品中也用到了溫度檢測(cè)和溫度控制。隨著溫度控制器應(yīng)用范圍的日益廣泛和多樣性,各種適用于不同場(chǎng)合的智能溫度控制器應(yīng)運(yùn)而生。電子溫度計(jì)的出現(xiàn),給人類的生活帶來(lái)了很多方便,使人類不管是在生活還是在工業(yè)方面都有了很多便利之處。但是電子溫度計(jì)主要應(yīng)用還是在生產(chǎn)過(guò)程、實(shí)驗(yàn)室及研究所。電
2、子溫度計(jì)本身可由電源提供電壓,用溫度傳感器檢測(cè)溫度,因此電子溫度計(jì)屬溫度系統(tǒng)??刂评碚搹慕?jīng)典理論、現(xiàn)代理論已經(jīng)發(fā)展到更先進(jìn)的控制理論,控制系統(tǒng)也由簡(jiǎn)單的控制系統(tǒng)、大系統(tǒng)發(fā)展到今天的復(fù)雜系統(tǒng)。本文討論的電子溫度計(jì)溫度控制系統(tǒng)AT89C2051單片機(jī)提取DS18B20轉(zhuǎn)化成溫度變化通過(guò)單片機(jī)內(nèi)部A/D轉(zhuǎn)化電路轉(zhuǎn)化成數(shù)值并由數(shù)顯電路顯示出來(lái)。</p><p> 在我們?nèi)粘I罴案鞣N生產(chǎn)中,經(jīng)常要用到溫度的檢測(cè)及控制,
3、傳統(tǒng)的測(cè)溫元件有熱電偶和熱電阻。而熱電偶和熱電阻測(cè)出的一般都是電壓,再轉(zhuǎn)換成對(duì)應(yīng)的溫度,需要比較多的外部硬件支持。其缺點(diǎn)如下:</p><p> 1. 硬件電路復(fù)雜;</p><p> 2. 軟件調(diào)試復(fù)雜;</p><p><b> 3. 制作成本高。</b></p><p> 而傳統(tǒng)的溫度計(jì)也有反應(yīng)速度慢、讀數(shù)
4、麻煩、測(cè)量精度不高、誤差大等缺點(diǎn)而下面利用集成溫度傳感器DS18B20設(shè)計(jì)并制作了一款基于AT89C51的4位數(shù)碼管顯示的數(shù)字溫度計(jì),其電路簡(jiǎn)單,軟硬件結(jié)構(gòu)模塊化,易于實(shí)現(xiàn)。其中溫度傳感器DS18B20,它集溫度測(cè)量、A/D轉(zhuǎn)換于一體,其測(cè)量范圍寬(-55℃~125℃),DS18B20是一款具有單總線結(jié)構(gòu)的器件。 </p><p> 由DS18B20組建的溫度測(cè)量單元體積小,便于攜帶、安裝。同時(shí),DS18B20
5、的輸出為數(shù)字量,可以直接與單片機(jī)連接,無(wú)需后級(jí)A/D轉(zhuǎn)換,控制簡(jiǎn)單。</p><p> 第一章 總體設(shè)計(jì)方案</p><p> 1.1 系統(tǒng)的設(shè)計(jì)原則 </p><p> 一般系統(tǒng)的設(shè)計(jì)原則包含安全性(穩(wěn)定抗干擾性),操作的便利性(人性化),實(shí)時(shí)性,通用性和經(jīng)濟(jì)性。</p><p><b> (1)安全可靠 </b
6、></p><p> 首先要選用高性能的AT89C51單片機(jī),保證在惡劣的工業(yè)環(huán)境下能正常運(yùn)行。其次是設(shè)計(jì)可靠的控制方案,并具有各種安全保護(hù)措施,如報(bào)警、事故預(yù)測(cè)、事故處理和不間斷電源等。</p><p><b> ?。?)操作維護(hù)方便</b></p><p> 操作方便表現(xiàn)在操作簡(jiǎn)單、直觀形象和便于掌握且不強(qiáng)求操作工要掌握計(jì)算機(jī)知識(shí)
7、才能操作。</p><p><b> ?。?)實(shí)時(shí)性強(qiáng)</b></p><p> 選用高性能的AT89C51單片機(jī)的實(shí)時(shí)性,表現(xiàn)在內(nèi)部和外部事件能及時(shí)地響應(yīng),并做出相應(yīng)的處理。</p><p><b> ?。?)通用性好 </b></p><p> 系統(tǒng)設(shè)計(jì)時(shí)應(yīng)考慮能適應(yīng)不同的設(shè)備和各種不同設(shè)備
8、和各種不同控制對(duì)象,并采用積木式結(jié)構(gòu),按照控制要求靈活構(gòu)成系統(tǒng)。主要表現(xiàn)在兩個(gè)方面:一是硬件板設(shè)計(jì)采用標(biāo)準(zhǔn)總線結(jié)構(gòu)(如PC總線),配置各種通用的模板,以便擴(kuò)充功能時(shí),只需增加功能模板就能實(shí)現(xiàn);二是軟件功能模塊或控制算法采用標(biāo)準(zhǔn)模塊結(jié)構(gòu),用戶使用時(shí)不需要二次開(kāi)發(fā),只需各種功能模塊,靈活地進(jìn)行控制系統(tǒng)組態(tài)。</p><p><b> ?。?)經(jīng)濟(jì)效益高 </b></p><p
9、> 1.2 系統(tǒng)的設(shè)計(jì)步驟</p><p> ?。?)系統(tǒng)總體方案設(shè)計(jì)、</p><p> ?。?)方案論證評(píng)審 </p><p> 硬件和軟件的分別細(xì)化設(shè)計(jì) </p><p> 硬件和軟件的分別調(diào)試 </p><p><b> 系統(tǒng)的組裝 </b></p><
10、;p> ?。?)離線仿真和調(diào)試階段 </p><p> 1.3 系體的總體方案設(shè)計(jì)和框圖設(shè)計(jì)</p><p> ?。?)系統(tǒng)的主要功能、技術(shù)指標(biāo)、原理性方框及文字說(shuō)明。</p><p> ?。?)系統(tǒng)的硬件結(jié)構(gòu)幾配置,主要軟件的功能、結(jié)構(gòu)幾框圖。</p><p> ?。?)保證性能指標(biāo)要求的技術(shù)措施。</p><
11、;p> ?。?)抗干擾性和可靠性設(shè)計(jì)。</p><p><b> ?。?)工藝要求</b></p><p><b> 溫度數(shù)碼管顯示。</b></p><p> 調(diào)節(jié)溫度的超調(diào)量小于30%。 </p><p> 實(shí)現(xiàn)溫度閉環(huán)控制,控制溫度誤差范圍≤±0.1℃。</
12、p><p> 溫度范圍:-50℃ ~ 125℃。</p><p> 供電電壓:交流5V。 </p><p> 方案一:方案一:考慮到用溫度傳感器,在單片機(jī)電路設(shè)計(jì)中,大多都是使用傳感器,所以這是非常容易想到的,所以可以使用熱敏電阻之類的器件利用其感溫效應(yīng),感溫電路比較麻煩,進(jìn)行A/D轉(zhuǎn)換,才可以滿足設(shè)計(jì)要求。</p><p> 方案二:由
13、于本設(shè)計(jì)是測(cè)溫電路,首先要選用高性能的AT89C51單片機(jī),保證在惡劣的工業(yè)環(huán)境下能正常運(yùn)行。單片機(jī)AT89C51具有低電壓供電和體積小等特點(diǎn),四個(gè)端口只需要兩個(gè)口就能滿足電路系統(tǒng)的設(shè)計(jì)需要,很適合便攜手持式產(chǎn)品的設(shè)計(jì)使用系統(tǒng)可用二節(jié)電池供電。測(cè)溫傳感器使用二極管結(jié)電壓變化的數(shù)值來(lái)轉(zhuǎn)化成溫度的變化,在將隨被測(cè)溫度變化的電壓或電流采集過(guò)來(lái),進(jìn)行A/D轉(zhuǎn)換后,就可以用單片機(jī)進(jìn)行數(shù)據(jù)的處理,在顯示電路上,就可以將被測(cè)溫度顯示出來(lái)。</p
14、><p> 從以上兩種方案,很容易看出,采用方案二,電路比較簡(jiǎn)單,軟件設(shè)計(jì)也比較簡(jiǎn)單,故采用了方案二。</p><p> 考慮到方案中制作數(shù)字溫度計(jì),在單片機(jī)電路設(shè)計(jì)中,大多都是使用傳感器,這是非常容易想到的,所以可以采用一只溫度傳感器DS18B20,此傳感器,可以很容易直接讀取被測(cè)溫度值,進(jìn)行轉(zhuǎn)換,就可以滿足設(shè)計(jì)要求。</p><p> 溫度計(jì)電路設(shè)計(jì)總體設(shè)計(jì)方
15、框圖如圖1所示,控制器采用單片機(jī)AT89C51,溫度傳感器采用DS18B20,用4位LED數(shù)碼管以串口傳送數(shù)據(jù)實(shí)現(xiàn)溫度顯示。</p><p> 圖1.1 總體設(shè)計(jì)方框圖</p><p><b> 第二章 硬件設(shè)計(jì)</b></p><p><b> 2.1主要器件說(shuō)明</b></p><p>
16、; 2.1.1 主控制器 </p><p> 單片機(jī)AT89S51具有低電壓供電和體積小等特點(diǎn),四個(gè)端口只需要兩個(gè)口就能滿足電路系統(tǒng)的設(shè)計(jì)需要,很適合便攜手持式產(chǎn)品的設(shè)計(jì)使用系統(tǒng)可用二節(jié)電池供電。如圖2.1所示。</p><p> ?。?)主要特性:·與MCS-51 兼容 ·4K字節(jié)可編程閃爍存儲(chǔ)器 壽命:1000寫(xiě)/擦循環(huán)數(shù)據(jù)保留時(shí)間:10年·
17、;全靜態(tài)工作:0Hz-24Hz·三級(jí)程序存儲(chǔ)器鎖定·128*8位內(nèi)部RAM·32可編程I/O線·兩個(gè)16位定時(shí)器/計(jì)數(shù)器·5個(gè)中斷源 ·可編程串行通道·低功耗的閑置和掉電模式·片內(nèi)振蕩器和時(shí)鐘電路 </p><p> ?。?)管腳說(shuō)明: VCC:供電電壓。
18、 GND:接地。 P0口:P0口為一個(gè)8位漏級(jí)開(kāi)路雙向I/O口,每腳可吸收8TTL門(mén)電流。當(dāng)P1口的管腳第一次寫(xiě)1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。
19、0; P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門(mén)電流。P1口管腳寫(xiě)入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門(mén)電流,當(dāng)P2口被寫(xiě)“1”時(shí),其管腳
20、被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它</p><p> EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保
21、持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2:來(lái)自反向振蕩器的輸出。</p><p><b> 2.1.2 顯示器</b></p><p> 顯示電路采用3位共陽(yáng)LED數(shù)碼管,利用動(dòng)態(tài)掃描方式,從P0口輸出段碼,P2口的P2.5、P2.6、P
22、2.7輸出位碼。</p><p> ?。?)LED數(shù)碼有共陽(yáng)和共陰兩種,把這些LED發(fā)光二極管的正極接到一塊(一般是拼成一個(gè)8字加一個(gè)小數(shù)點(diǎn))而作為一個(gè)引腳,為共陽(yáng)管。如下圖2.2、2.3所示:</p><p> 圖2.2 圖2.3</p><p> 2.1.3 溫度傳
23、感器</p><p> DS18B20溫度傳感器是采用美國(guó)DALLAS公司生產(chǎn)的 DS18B20可組網(wǎng)數(shù)字溫度傳感器芯片,經(jīng)焊接,外加不銹鋼保護(hù)管封裝而成,具有耐磨耐碰,體積小,使用方便,封裝形式多樣,適用于各種狹小空間設(shè)備數(shù)字測(cè)溫和控制領(lǐng)域,并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn)9~12位的數(shù)字值讀數(shù)方式。</p><p> ?、?:技術(shù)性能描述* 獨(dú)特的單線接口方式,DS1820在與
24、微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與DS1820的雙向通訊,在使用中不需要任何外圍元件。* 測(cè)溫范圍 -55℃~+125℃,固有測(cè)溫分辨率0.5℃。 -* 支持多點(diǎn)組網(wǎng)功能,多個(gè)DS1820可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)多點(diǎn)測(cè)溫。* 工作電源: 3~5V/DC* 測(cè)量結(jié)果以9位數(shù)字量方式串行傳送。* 不銹鋼保護(hù)管直徑 Φ6
25、* 適用于1/2”, 3/4”, 1”, DN40~DN250各種介質(zhì)工業(yè)管道和狹小空間設(shè)備測(cè)溫②:應(yīng)用范圍 * 該產(chǎn)品適用于冷凍庫(kù),糧倉(cāng),儲(chǔ)罐,電訊機(jī)房,電力機(jī)房,電纜線槽等測(cè)溫和控制領(lǐng)域 * 軸瓦,缸體,紡機(jī),空調(diào),等狹小空間工業(yè)設(shè)備測(cè)溫和控制。 * 汽車空調(diào)、冰箱、冷柜、以及中低溫干燥箱等。 * 供熱/制冷管道熱量計(jì)量,中央空調(diào)分戶
26、熱能計(jì)量和工業(yè)領(lǐng)域測(cè)溫和控制 </p><p> ?、?DS18B20的性能特點(diǎn)如下:</p><p> *獨(dú)特的單線接口僅需要一個(gè)端口引腳進(jìn)行通信;</p><p> *多個(gè)DS18B20可以并聯(lián)在惟一的三線上,實(shí)現(xiàn)多點(diǎn)組網(wǎng)功能;</p><p><b> *無(wú)須外部器件;</b></p>
27、<p> *可通過(guò)數(shù)據(jù)線供電,電壓范圍為3.0~5.5V;</p><p><b> *零待機(jī)功耗;</b></p><p> *溫度以9或12位數(shù)字;</p><p> *用戶可定義報(bào)警設(shè)置;</p><p> *報(bào)警搜索命令識(shí)別并標(biāo)志超過(guò)程序限定溫度(溫度報(bào)警條件)的器件;</p>
28、<p> *負(fù)電壓特性,電源極性接反時(shí),溫度計(jì)不會(huì)因發(fā)熱而燒毀,但不能正常工作; </p><p> DS18B20采用3腳PR-35封裝或8腳SOIC封裝,其內(nèi)部結(jié)構(gòu)框圖如圖2.4所示。</p><p> 圖2.4 DS18B20內(nèi)部結(jié)構(gòu)</p><p> DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:</p><p>
29、 64位光刻ROM、溫度傳感器、非揮發(fā)的</p><p> 溫度報(bào)警觸發(fā)器TH和TL、配置寄存器。</p><p> DS18B20的管腳排列如圖2.5所示: </p><p><b> 圖2.5</b></p><p> DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器還包括一個(gè)高速
30、暫存RAM和一個(gè)非易失性的可電擦除的EERAM。高速暫存RAM的結(jié)構(gòu)為8字節(jié)的存儲(chǔ)器,結(jié)構(gòu)如圖2.6所示。頭2個(gè)字節(jié)包含測(cè)得的溫度信息,第3和第4字節(jié)TH和TL的拷貝,是易失的,每次上電復(fù)位時(shí)被刷新。第5個(gè)字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。DS18B20工作時(shí)寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。該字節(jié)各位的定義如圖2.7所示。低5位一直為1,TM是工作模式位,用于設(shè)置DS18B20在工作模式還是在測(cè)試模式
31、,DS18B20出廠時(shí)該位被設(shè)置為0,用戶要去改動(dòng),R1和R0決定溫度轉(zhuǎn)換的精度位數(shù),來(lái)設(shè)置分辨率。</p><p> 由表2.1可見(jiàn),DS18B20溫度轉(zhuǎn)換的時(shí)間比較長(zhǎng),而且分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時(shí)間越長(zhǎng)。因此,在實(shí)際應(yīng)用中要將分辨率和轉(zhuǎn)換時(shí)間權(quán)衡考慮。</p><p> 表2.1 DS18B20溫度轉(zhuǎn)換時(shí)間表</p><p> 高速暫存RAM的
32、第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前面所有8字節(jié)的CRC碼,可用來(lái)檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。</p><p> 當(dāng)DS18B20接收到溫度轉(zhuǎn)換命令后,開(kāi)始啟動(dòng)轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲(chǔ)在高速暫存存儲(chǔ)器的第1、2字節(jié)。單片機(jī)可以通過(guò)單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時(shí)低位在先,高位在后,數(shù)據(jù)格式以0.0625℃/LSB式表示。</p>&l
33、t;p> 當(dāng)符號(hào)位S=0時(shí),表示測(cè)得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)符號(hào)位S=1時(shí),表示測(cè)得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計(jì)算十進(jìn)制數(shù)值。表2是一部分溫度值對(duì)應(yīng)的二進(jìn)制溫度數(shù)據(jù)。</p><p> DS18B20完成溫度轉(zhuǎn)換后,就把測(cè)得的溫度值與RAM中的TH、TL字節(jié)內(nèi)容作比較。若T>TH或T<TL,則將該器件內(nèi)的報(bào)警標(biāo)志位置位,并對(duì)主機(jī)發(fā)出的報(bào)警搜索命令做出響應(yīng)。因此,可用
34、多只DS18B20同時(shí)測(cè)量溫度并進(jìn)行報(bào)警搜索。</p><p> 在64位ROM的最高有效字節(jié)中存儲(chǔ)有循環(huán)冗余檢驗(yàn)碼(CRC)。主機(jī)ROM的前56位來(lái)計(jì)算CRC值,并和存入DS18B20的CRC值作比較,以判斷主機(jī)收到的ROM數(shù)據(jù)是否正確。</p><p> 另外,由于DS18B20單線通信功能是分時(shí)完成的,它有嚴(yán)格的時(shí)隙概念,因此讀寫(xiě)時(shí)序很重要。系統(tǒng)對(duì)DS18B20的各種操作按協(xié)議進(jìn)
35、行。操作協(xié)議為:初使化DS18B20(發(fā)復(fù)位脈沖)→發(fā)ROM功能命令→發(fā)存儲(chǔ)器操作命令→處理數(shù)據(jù)。分別說(shuō)明如下:</p><p> (1)初始化 單總線的所有處理均從初始化開(kāi)始。初始化過(guò)程是主機(jī)通過(guò)向作為從機(jī)的DS18B20芯片發(fā)一個(gè)有時(shí)間寬度要求的初始化脈沖實(shí)現(xiàn)的。初始化后,才可進(jìn)行讀寫(xiě)操作。</p><p> (2) ROM操作命令 總線主機(jī)檢測(cè)到DS18B20的存在 便可以發(fā)
36、出ROM操作命令之一 這些命令表2.2:</p><p> 表2.2 ROM操作命令</p><p> 存儲(chǔ)器操作 命令如表2.3:</p><p> 表2.3 存儲(chǔ)器操作命令</p><p> (4)時(shí)序 主機(jī)使用時(shí)間隙(time slots)來(lái)讀寫(xiě)DS18B20的數(shù)據(jù)位和寫(xiě)命令字的位</p><p&g
37、t;<b> ?、俪跏蓟?</b></p><p> 圖2.7 初始化時(shí)序</p><p> 時(shí)序見(jiàn)圖2.7,主機(jī)總線to時(shí)刻發(fā)送一復(fù)位脈沖(最短為480us的低電平信號(hào)),接著在tl時(shí)刻釋放總線并進(jìn)入接收狀態(tài)。DS18B20在檢測(cè)到總線的上升沿之后等待15-60us,接著DS18B20在t2時(shí)刻發(fā)出存在脈沖(低電平 持續(xù)60-240 us)。如圖中虛線所示:&
38、lt;/p><p><b> ②寫(xiě)時(shí)間隙 </b></p><p> 圖2.8.1 寫(xiě)0時(shí)序 圖2.8.2 寫(xiě)1時(shí)序</p><p> 當(dāng)主機(jī)總線t o時(shí)刻從高拉至低電平時(shí),就產(chǎn)生寫(xiě)時(shí)間隙見(jiàn)圖2.8.1和圖2.8.2。從to時(shí)刻開(kāi)始15us之內(nèi)應(yīng)將所需寫(xiě)的位送到總線上,DSl820在
39、t o后15-60us間對(duì)總線采樣。若低電平,寫(xiě)入的位是0。見(jiàn)圖2.5.1。若高電平寫(xiě)入的位是1見(jiàn)圖2.5.2。連續(xù)寫(xiě)2位間的間隙應(yīng)大于1us。</p><p><b> ?、圩x時(shí)間隙 </b></p><p> 見(jiàn)圖2.9,主機(jī)總線to時(shí)刻從高拉至低電平時(shí),總線只須保持低電平l us。之后在t1時(shí)刻將總線拉高,產(chǎn)生讀時(shí)間隙,讀時(shí)間隙在t1時(shí)刻后t 2時(shí)刻前有效,t
40、 2距to為15us。也就是說(shuō)t 2時(shí)刻前主機(jī)必須完成讀位,并在t o后的60us一120us內(nèi)釋放總線,讀位子程序(讀得的位到C中)。</p><p><b> 圖2.9 讀時(shí)序</b></p><p> DSl820多路測(cè)量簡(jiǎn)介 </p><p> 圖2.10 DSl820原理框圖</p><p> 每一片
41、DSl820在其ROM中都存有其唯一的48位序列號(hào),出廠前已寫(xiě)入片內(nèi)ROM 中,主機(jī)在進(jìn)入操作程序前必須逐一接入DS18B20用讀ROM(33H)命令將該DS18B20的序列號(hào)讀出并登錄。當(dāng)主機(jī)需要對(duì)眾多在線DS18B20的某一個(gè)進(jìn)行操作時(shí),首先要發(fā)出匹配ROM命令(55H),緊接著主機(jī)提供64位序列(包括該DS18B20的48位序列號(hào))。之后的操作就是針對(duì)該DS18B20的。而所謂跳過(guò)ROM命令即:MOV A,#0CCH。</p
42、><p> 圖2.10中先有跳過(guò)ROM,即是啟動(dòng)所有DS18B20進(jìn)行溫度變換,之后通過(guò)匹配ROM 再逐一地讀回每個(gè)DS18B20的溫度數(shù)據(jù)。在DS18B20組成的測(cè)溫系統(tǒng)中,主機(jī)在發(fā)出跳過(guò)ROM命令之后,再發(fā)出統(tǒng)一的溫度轉(zhuǎn)換啟動(dòng)碼44H,就可以實(shí)現(xiàn)所有DS18B20的統(tǒng)一轉(zhuǎn)換,再經(jīng)過(guò)1s后,就可以用很少的時(shí)間去逐一讀取。這種方式使其T值往往小于傳統(tǒng)方式。(由于采取公用的放大電路和A/D轉(zhuǎn)換器只能逐一轉(zhuǎn)換)。顯然通
43、道數(shù)越多,這種省時(shí)效應(yīng)就越明顯。</p><p> DS1820使用中注意事項(xiàng) </p><p> DS1820雖然具有測(cè)溫系統(tǒng)簡(jiǎn)單、測(cè)溫精度高、連接方便、占用口線少等優(yōu)點(diǎn),但在實(shí)際應(yīng)用中也應(yīng)注意以下幾方面的問(wèn)題: </p><p> (1)較小的硬件開(kāi)銷需要相對(duì)復(fù)雜的軟件進(jìn)行補(bǔ)償,由于DS1820與微處理器間采用串行數(shù)據(jù)傳送,因此,在對(duì)DS1820進(jìn)行讀寫(xiě)編
44、程時(shí),必須嚴(yán)格的保證讀寫(xiě)時(shí)序,否則將無(wú)法讀取測(cè)溫結(jié)果。在使用PL/M、C等高級(jí)語(yǔ)言進(jìn)行系統(tǒng)程序設(shè)計(jì)時(shí),對(duì)DS1820操作部分最好采用匯編語(yǔ)言實(shí)現(xiàn)。 </p><p> (2)在DS1820的有關(guān)資料中均未提及單總線上所掛DS1820數(shù)量問(wèn)題,容易使人誤認(rèn)為可以掛任意多個(gè)DS1820,在實(shí)際應(yīng)用中并非如此。當(dāng)單總線上所掛DS1820超過(guò)8個(gè)時(shí),就需要解決微處理器的總線驅(qū)動(dòng)問(wèn)題,這一點(diǎn)在進(jìn)行多點(diǎn)測(cè)溫系統(tǒng)設(shè)計(jì)時(shí)要加以
45、注意。 </p><p> (3)連接DS1820的總線電纜是有長(zhǎng)度限制的。試驗(yàn)中,當(dāng)采用普通信號(hào)電纜傳輸長(zhǎng)度超過(guò)50m時(shí),讀取的測(cè)溫?cái)?shù)據(jù)將發(fā)生錯(cuò)誤。當(dāng)將總線電纜改為雙絞線帶屏蔽電纜時(shí),正常通訊距離可達(dá)150m,當(dāng)采用每米絞合次數(shù)更多的雙絞線帶屏蔽電纜時(shí),正常通訊距離進(jìn)一步加長(zhǎng)。這種情況主要是由總線分布電容使信號(hào)波形產(chǎn)生畸變?cè)斐傻?。因?在用DS1820進(jìn)行長(zhǎng)距離測(cè)溫系統(tǒng)設(shè)計(jì)時(shí)要充分考慮總線分布電容和阻抗匹配問(wèn)
46、題。 </p><p> (4)在DS1820測(cè)溫程序設(shè)計(jì)中,向DS1820發(fā)出溫度轉(zhuǎn)換命令后,程序總要等待DS1820的返回信號(hào),一旦某個(gè)DS1820接觸不好或斷線,當(dāng)程序讀該DS1820時(shí),將沒(méi)有返回信號(hào),程序進(jìn)入死循環(huán)。這一點(diǎn)在進(jìn)行DS1820硬件連接和軟件設(shè)計(jì)時(shí)也要給予一定的重視。</p><p> 測(cè)溫電纜線建議采用屏蔽4芯雙絞線,其中一對(duì)線接地線與信號(hào)線,另一組接VCC和地
47、線,屏蔽層在源端單點(diǎn)接地。</p><p> 2.1.4 穩(wěn)壓電源7805</p><p> 7805管腳圖如圖2.11所示:</p><p> 2.2各部分電路說(shuō)明</p><p> 2.2.1單片機(jī)控制部分</p><p> 在本設(shè)計(jì)中,采用了AT89C51單片機(jī)作為本電路的核心電路的設(shè)計(jì)。AT89C51
48、是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位C
49、PU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡(jiǎn)版本。AT89C單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。</p><p><b> ?。?)振蕩器特性:</b></p><p> XTAL1和XTAL2的反向放大器的輸入和輸出。</p><p> 該反向放大器
50、可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)器件,XTAL2應(yīng)不接。有余輸入至內(nèi)部時(shí)鐘信號(hào)要通過(guò)一個(gè)二分頻觸發(fā)器,因此對(duì)外部時(shí)鐘信號(hào)的脈寬無(wú)任何要求,但必須保證脈沖的高低電平要求的寬度。</p><p> ?。?)單片機(jī)芯片的擦除:</p><p> 整個(gè)PEROM陣列和三個(gè)鎖定位的電擦除可通過(guò)正確的控制信號(hào)組合,并保持ALE管腳處于低電平10ms 來(lái)完成。在芯
51、片擦操作中,代碼陣列全被寫(xiě)“1”且在任何非空存儲(chǔ)字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。</p><p> AT89C51的穩(wěn)態(tài)邏輯可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時(shí)器,計(jì)數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個(gè)硬件復(fù)位為止。</p><p> ?。?
52、)單片機(jī)的時(shí)鐘電路</p><p> 圖2.12片內(nèi)振蕩電路的時(shí)鐘電路</p><p> AT89C1單片機(jī)內(nèi)部的振蕩電路是一個(gè)高增益反向放大器,引線XTAL1和XTAL2分別是放大器的輸入端和輸出端。單片機(jī)內(nèi)部雖然有振蕩電路,但要形成時(shí)鐘,外部還需附加電路。AT89C51的時(shí)鐘產(chǎn)生方式有兩種:內(nèi)部時(shí)鐘電方式和外部時(shí)鐘方式。由于外部時(shí)鐘方式用于多片單片機(jī)組成的系統(tǒng)中,所以此處選用內(nèi)部時(shí)
53、鐘方式。即利用其內(nèi)部的振蕩電路在XTAL1和XTAL2引線上外接定時(shí)元件,內(nèi)部振蕩電路產(chǎn)生自激振蕩。最常用的是在 XTAL1和XTAL2之間接晶體振蕩器與電路構(gòu)成穩(wěn)定的自激振蕩器,如圖2.13電路所示為單片機(jī)最常用的時(shí)鐘振蕩電路的接法,其中晶振可選用振蕩頻率為6MHz的石英晶體,電容器一般選擇30PF左右。</p><p> ?。?)單片機(jī)的復(fù)位電路</p><p> 本設(shè)計(jì)中AT89C
54、51是采用上電自動(dòng)復(fù)位和按鍵復(fù)位兩種方式。最簡(jiǎn)單的復(fù)位電路如圖2.13所示。上電瞬間,RC電路充電,RST引線端出現(xiàn)正脈沖,只要RST端保持10ms以上的高電平,就能使單片機(jī)有效地復(fù)位。其中R1和R2分別選擇200Ω和1KΩ的電阻,電容器一般選擇22μF。</p><p> ?。?)AT89C51的最小應(yīng)用系統(tǒng)</p><p> AT89C51是片內(nèi)有程序存儲(chǔ)器的單片機(jī),要構(gòu)成最小應(yīng)用系
55、統(tǒng)時(shí)只要將單片機(jī)接上外部的晶體或時(shí)鐘電路和復(fù)位電路即可,如圖2.14所示。這樣構(gòu)成的最小系統(tǒng)簡(jiǎn)單可靠,其特點(diǎn)是沒(méi)有外部擴(kuò)展,有可供用戶使用的大量的I∕O線。</p><p> 圖2.14 AT89C51單片機(jī)構(gòu)成的最小系</p><p> 2.2.2傳感器數(shù)據(jù)采集電路</p><p> 傳感器數(shù)據(jù)采集電路主要指DS18B20溫度傳感器與單片機(jī)的接口電路。DS
56、18B20可以采用兩種方式供電,一種是采用電源供電方式,如圖2.15所示,此時(shí)DS18B20的1腳接地,2腳作為信號(hào)線,3腳接電源。另一種是寄生電源供電方式,如圖2.15所示單片機(jī)端口接單線總線,為保證在有效的DS18B20時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè)MOSFET管來(lái)完成對(duì)總線的上拉。當(dāng)DS18B20處于寫(xiě)存儲(chǔ)器操作和溫度A/D轉(zhuǎn)換操作時(shí),總線上必須有強(qiáng)的上拉,上拉開(kāi)啟時(shí)間最大為10us。采用寄生電源供電方式時(shí)VDD端接地。由于單
57、線制只有一根線,因此發(fā)送接口必須是三態(tài)的??紤]到實(shí)際應(yīng)用中寄生電源供電方式適應(yīng)能力差且易損壞,此處采用電源供電方式,I/O口接單片機(jī)的P2.0口。</p><p> 圖2.15 電源供電方式</p><p> 2.2.3 顯示電路</p><p> 顯示電路是采用P0口輸出段碼至LED,P2口控制位選通的動(dòng)態(tài)掃描顯示方式,三只數(shù)碼管用NPN型三極管驅(qū)動(dòng),這種顯
58、示方式的最大優(yōu)點(diǎn)是顯示清晰,軟件設(shè)計(jì)簡(jiǎn)單。如圖2.16所示:</p><p> 圖2.16 顯示電路</p><p><b> 2.3主板電路</b></p><p> 圖2.17 主板電路</p><p> 系統(tǒng)整體硬件電路包括傳感器數(shù)據(jù)采集電路,溫度顯示電路,上下限報(bào)警調(diào)整電路,單片機(jī)主板電路,電源電路等。
59、如圖2.17所示</p><p> 圖2.17中有四個(gè)獨(dú)立式按鍵可以分別調(diào)整溫度計(jì)的上下限報(bào)警設(shè)置,可以任意調(diào)整報(bào)警上下限。圖中蜂鳴器可以在被測(cè)溫度不在上下限范圍內(nèi)時(shí),發(fā)出報(bào)警鳴叫聲音。LED數(shù)碼管將當(dāng)前被測(cè)溫度值顯示,從而測(cè)出被測(cè)的溫度值。</p><p> 圖2.17中的按健復(fù)位電路是上電復(fù)位加手動(dòng)復(fù)位,使用比較方便,在程序跑飛時(shí),可以手動(dòng)復(fù)位,這樣就不用在重起單片機(jī)電源,就可以實(shí)
60、現(xiàn)復(fù)位。</p><p><b> 第三章 軟件設(shè)計(jì)</b></p><p> 系統(tǒng)程序主要包括主程序,讀出溫度子程序,溫度轉(zhuǎn)換命令子程序,計(jì)算溫度子程序,顯示數(shù)據(jù)刷新子程序等。 </p><p><b> 開(kāi)始</b></p&g
61、t;<p> 溫度比較子程序 </p><p><b> 是否超出上下限</b></p><p><b> 返 回</b></p><p> 圖3.1 主程序流程</p><p><b> 3.1主程序</b></p><p
62、> 主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處理DS18B20的測(cè)量的當(dāng)前溫度值,溫度測(cè)量每1s進(jìn)行一次。這樣可以在一秒之內(nèi)測(cè)量一次被測(cè)溫度,其程序流程見(jiàn)圖3.1所示。</p><p> 3.2讀出溫度子程序</p><p> 讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時(shí)需進(jìn)行CRC校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫(xiě)。其程序流程圖如圖3.2所示</p&g
63、t;<p> 圖3.2 讀出溫度子程序流程</p><p> 3.3溫度轉(zhuǎn)換命令子程序 </p><p> 溫度轉(zhuǎn)換命令子程序主要是發(fā)溫度轉(zhuǎn)換開(kāi)始命令,當(dāng)采用12位分辨率時(shí)轉(zhuǎn)換時(shí)間約為750ms,在本程序設(shè)計(jì)中采用1s顯示程序延時(shí)法等待轉(zhuǎn)換的完成。溫度轉(zhuǎn)換命令子程序流程圖,如圖3.3所示</p><p> 圖3.3 溫度轉(zhuǎn)換流程圖</
64、p><p> 3.4計(jì)算溫度子程序</p><p> 計(jì)算溫度子程序?qū)AM中讀取值進(jìn)行BCD碼的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正負(fù)的判定,其程序流程圖如圖3.4所示。</p><p> 圖3.4 計(jì)算溫度流程圖 </p><p> 3.5 溫度數(shù)據(jù)顯示子程序</p><p> 顯示數(shù)據(jù)子程序主要是對(duì)顯示緩沖器中的顯示
65、數(shù)據(jù)進(jìn)行刷新操作,查表送段碼至LED,開(kāi)位碼顯示,采用動(dòng)態(tài)掃描方式。</p><p> 第四章 實(shí)物制作與調(diào)試說(shuō)明</p><p> 4.1原材料的選擇與采購(gòu)</p><p> 本次設(shè)計(jì)在原材料的選擇與采購(gòu)上做到了設(shè)計(jì)最優(yōu)化,即用最小的開(kāi)支,獲得性價(jià)比較高的元器件和材料。</p><p> 設(shè)計(jì)中,印刷電路板采用單面板,給人看起來(lái)沒(méi)
66、有太復(fù)雜的感覺(jué)。選元器件時(shí),盡量選擇能使電路簡(jiǎn)化的器件。例如,為了不增大電路板的體積及減小功耗,本設(shè)計(jì)采用ATMEL公司的89S51單片機(jī),體積小,工作電壓低。</p><p> 4.2印刷電路板的設(shè)計(jì)與制作</p><p> 電路板的設(shè)計(jì)與制作是整個(gè)電路制作過(guò)程中比較重要的一步,如果電路板做不好,再好的電路設(shè)計(jì)也不行。下面就對(duì)簡(jiǎn)單電路板的設(shè)計(jì)及制作過(guò)程做一個(gè)簡(jiǎn)單的介紹。</p&
67、gt;<p> 1、利用Protel 99SE畫(huà)原理圖。在畫(huà)原理圖的時(shí)候?yàn)榱穗娐钒灞容^好看,要注意布局,同時(shí)還得注意元件封裝,命名等。畫(huà)好原理圖后要對(duì)其進(jìn)行電氣檢測(cè),檢查原理圖是否有錯(cuò),同時(shí)還要?jiǎng)?chuàng)建網(wǎng)絡(luò)表為下一步的工作做好準(zhǔn)備。</p><p> 2、PCB版圖的設(shè)計(jì)。在對(duì)PCB圖設(shè)計(jì)時(shí)首先要添加封裝庫(kù),這樣原理圖中給予的封裝才能有效,然后調(diào)入網(wǎng)絡(luò)表看原理圖的封裝,命名等是否有錯(cuò),如果沒(méi)錯(cuò)便可進(jìn)
68、行下一步操作。對(duì)其進(jìn)行布線,首先先對(duì)布線規(guī)則作一些必要的設(shè)置,如焊盤(pán)的大小,導(dǎo)線的粗細(xì)等。做好這些設(shè)置后便可進(jìn)行自動(dòng)布線,自動(dòng)布線后如果布線不是很理想還可用手動(dòng)布線進(jìn)行手動(dòng)修改,這樣PCB圖就畫(huà)好了。</p><p> 3、電路板的制作。把設(shè)計(jì)布局好的PCB圖打印出來(lái)之后,然后進(jìn)行壓板、腐蝕、鉆孔。注意,腐蝕之前要檢查是否有斷線及焊盤(pán)的脫落等。</p><p> 4、元件的焊接。元件焊
69、接的時(shí)候要先查看跳線,首先焊接所有的跳線,其次再焊接分離元件,最后焊接集成塊和外接的引線。當(dāng)然為了美觀在布線中最好不要出現(xiàn)跳線。</p><p> 5、整體檢查。查看是否有斷線和虛焊等。</p><p><b> 6、燒錄程序</b></p><p><b> 4.3 單片機(jī)測(cè)試</b></p><
70、;p> 判斷單片機(jī)芯片及時(shí)鐘系統(tǒng)是否正常工作有一個(gè)簡(jiǎn)單的辦法,就是用萬(wàn)用表測(cè)量單片機(jī)晶振引腳(18、19腳)的對(duì)地電壓,以正常工作的單片機(jī)用數(shù)字萬(wàn)用表測(cè)量為例:18腳對(duì)地約2.24V,19腳對(duì)地約2.09V。對(duì)于懷疑是復(fù)位電路故障而不能正常工作的單片機(jī)也可以采用模擬復(fù)位的方法來(lái)判斷,單片機(jī)正常工作時(shí)第9腳對(duì)地電壓為零,可以用導(dǎo)線短時(shí)間和+5V連接一下,模擬一下上電復(fù)位,如果單片機(jī)能正常工作了,說(shuō)明這個(gè)復(fù)位電路有問(wèn)題。</p
71、><p> 4.4 硬件及軟件調(diào)試</p><p> 硬件調(diào)試,第一步是目測(cè),在印好電路板之后,先檢查印制線是否有斷線、是否有毛刺、是否與其它線或焊盤(pán)粘連、焊盤(pán)是否有脫落、過(guò)孔是否有未金屬化現(xiàn)象。而在目測(cè)的過(guò)程中,我們發(fā)現(xiàn)有一條印制線斷開(kāi),因此我們用焊錫使這條斷線連在一起。第二步是用萬(wàn)用表測(cè)量。在目測(cè)完之后,利用萬(wàn)用表來(lái)測(cè)量連線和接點(diǎn),檢查它們的通斷狀態(tài)是否和設(shè)計(jì)一樣。再檢查各種電源線和地
72、線是否有短路現(xiàn)象,在檢查的過(guò)程中,發(fā)現(xiàn)不管是連線還是接點(diǎn)都符合設(shè)計(jì)規(guī)定,電源和地線也沒(méi)有短路現(xiàn)象。第三步是加電檢查。給印制板加電時(shí),我們檢查到的器件的電源端符合要求的電壓值+5V,同時(shí)接地端的電壓為0。第四步是聯(lián)機(jī)檢查。利用系統(tǒng)和單片機(jī)開(kāi)發(fā)系統(tǒng)用仿真電纜連接起來(lái),發(fā)現(xiàn)聯(lián)機(jī)檢查完后以上是連接都正確、暢通、可靠。</p><p> 軟件調(diào)試,第一步是在具有匯編軟件的主機(jī)上和用戶系統(tǒng)連接起來(lái),進(jìn)行調(diào)試準(zhǔn)備。第二步是單
73、步運(yùn)行。第三步是系統(tǒng)連調(diào),即進(jìn)行軟件和硬件聯(lián)合調(diào)試。經(jīng)調(diào)試,軟件運(yùn)行良好。</p><p> 4.5整機(jī)的調(diào)試與測(cè)試</p><p> 首先是測(cè)試顯示電路的正確性,根據(jù)硬件寫(xiě)好一段顯示程序,寫(xiě)入單片機(jī)中。安裝好硬件,上電,顯示正常,達(dá)到預(yù)期效果。證明顯示電路正常。按下復(fù)位按鍵,LED無(wú)顯示,松開(kāi),顯示正常,證明復(fù)位電路正常。</p><p> 然后測(cè)試得到溫度
74、程序,將初始化程序,DS18B20正常工作的初始化程序、寫(xiě)DS18B20程序、讀DS18B20程序,得到溫度子程序,溫度轉(zhuǎn)換子程序,數(shù)據(jù)轉(zhuǎn)換子程序,顯示子程序正確編排后寫(xiě)入單片機(jī)中,上電,顯示不正常。重新讀取源程序,經(jīng)檢查后發(fā)現(xiàn)問(wèn)題在于DS18B20初始化程序有錯(cuò),修改后重新編譯并寫(xiě)入單片機(jī)。上電后,顯示當(dāng)前溫度。證明溫度傳感器DS18B20工作正常,各部分子程序運(yùn)行正常。</p><p> 最后是按鍵子程序及
75、報(bào)警子程序的調(diào)試,將按鍵子程序及報(bào)警子程序及上述程序正確編排后,寫(xiě)入單片機(jī)中,上電后,各個(gè)部分工作正常,在測(cè)得當(dāng)前溫度超出設(shè)定溫度上下限后,蜂鳴器發(fā)出報(bào)警聲,調(diào)試基本成功。但后來(lái)發(fā)現(xiàn),按鍵要在按下1S后才反應(yīng),再次研讀程序發(fā)現(xiàn)原因在于按鍵程序采用掃描方式,程序每執(zhí)行一遍才掃描按鍵一次。進(jìn)而到考慮采用中斷方式解決此問(wèn)題,但因?yàn)镈S18B20正常工作有嚴(yán)格的時(shí)序限制,否則不能正常工作,而中斷則在很大可能上會(huì)影響到DS18B20正常工作。在嘗
76、試并采用中斷方式卻失敗后,決定仍采用掃描方式。后來(lái)仔細(xì)排查發(fā)現(xiàn)按鍵反應(yīng)遲緩是由于顯示程序占用時(shí)間過(guò)長(zhǎng)造成的,修改顯示程序并且在主程序和按鍵子程序中增加調(diào)用顯示程序的次數(shù),問(wèn)題得以解決。至此,此次設(shè)計(jì)的調(diào)試部分完成。設(shè)計(jì)的所有功能全部得以實(shí)現(xiàn)。</p><p><b> 第五章 使用說(shuō)明書(shū)</b></p><p> 本電路額定工作直流電壓為+5V,有極性判別保護(hù)功能
77、,采用7805集成穩(wěn)壓芯片以保證電路的供電穩(wěn)定,用戶輸入電源在7-25V均可正常工作。</p><p> 電路中有五個(gè)按鍵,從左到右依次為S1、S2、S3、S4、RESET,介紹如下:</p><p> S1為溫度上下限設(shè)置狀態(tài)的退出或確定按鍵</p><p> S2為設(shè)置溫度上下限的+鍵,每按下一次上下限值加一</p><p> S
78、3為設(shè)置溫度上下限的-鍵,每按下一次上下限值減一</p><p> S4為設(shè)置溫度上下限設(shè)置狀態(tài)進(jìn)入按鍵,第一次按下進(jìn)入低限設(shè)置,按下S4后,再次按下S1進(jìn)入高限設(shè)置。</p><p> RESET為復(fù)位按鍵</p><p> 使用方法及報(bào)警電路說(shuō)明:</p><p> 接通電源,紅色指示燈亮,表明電源正常。此時(shí)數(shù)碼管應(yīng)顯示初值025
79、,由于顯示時(shí)間稍短,一閃即過(guò)。接下來(lái)顯示當(dāng)前溫度,若不顯示則說(shuō)明硬件有問(wèn)題,此時(shí)蜂鳴器將報(bào)警,綠色指示燈也會(huì)點(diǎn)亮。硬件正常,LED就會(huì)顯示當(dāng)前溫度。若此時(shí)檢測(cè)到當(dāng)前環(huán)境溫度不在原來(lái)設(shè)定的上下限范圍之內(nèi),蜂鳴器也將報(bào)警同是綠燈點(diǎn)亮。直到采取措施改變環(huán)境溫度在上下限范圍內(nèi)或調(diào)整溫度上下限。</p><p><b> 第六章 總結(jié)與體會(huì)</b></p><p> 經(jīng)過(guò)這
80、次畢業(yè)設(shè)計(jì),使我覺(jué)得不論從理論知識(shí)還是從實(shí)際操作中都學(xué)到了不少知識(shí)它讓我接觸了很多以前沒(méi)有見(jiàn)過(guò)的元器件以及獲得了相關(guān)的儀器調(diào)試經(jīng)驗(yàn),同時(shí)我也發(fā)現(xiàn)自己在這方面很多不足之處。體會(huì)到理論知識(shí)對(duì)實(shí)踐有很大的指導(dǎo)作用,并且讓我知道,只有在正確的理論指引下,才能做出符合實(shí)際需要的硬件電路。</p><p> 同時(shí),學(xué)會(huì)了高效率的查閱資料、運(yùn)用工具書(shū)、利用網(wǎng)絡(luò)查找資料。我發(fā)現(xiàn),在我們所使用的書(shū)籍上有一些知識(shí)在實(shí)際應(yīng)用中其實(shí)并
81、不是十分理想,各種參數(shù)都需要自己去調(diào)整。偶而還會(huì)遇到錯(cuò)誤的資料現(xiàn)象,這就要求我們應(yīng)更加注重實(shí)踐環(huán)節(jié)。</p><p> 在這次畢業(yè)設(shè)計(jì)中,我們不是一開(kāi)始就很順利就做成功,而是經(jīng)過(guò)失敗,再總結(jié)失敗經(jīng)驗(yàn),不斷地調(diào)整才能取得最后的成功。其中有我們同組同學(xué)之間努力地思考、實(shí)踐的調(diào)試,彼此合作、取長(zhǎng)補(bǔ)短,鑄就了最后的成果。</p><p> 大學(xué)三年,這最后的畢業(yè)設(shè)計(jì)是對(duì)我們這三年所學(xué)知識(shí)的一次
82、運(yùn)用和檢閱,同時(shí)對(duì)自學(xué)能力提出很高的要求,所以平時(shí)的學(xué)習(xí)離開(kāi)思考,就是嚴(yán)重的錯(cuò)誤,我們學(xué)習(xí)不應(yīng)該有偏科現(xiàn)象,各方面的知識(shí)都應(yīng)該要接觸,這樣做才能為畢業(yè)設(shè)計(jì)打下基石。</p><p><b> 第七章 參考文獻(xiàn)</b></p><p> [1]陳權(quán)昌,李興富·單片機(jī)原理與應(yīng)用·華南理工大學(xué)出版社,2007年</p><p>
83、; [2]陳明.protel 99se原理圖與pcb設(shè)計(jì)教程.北京:機(jī)械工業(yè)出版社,2006</p><p> [3]閻石.數(shù)字電子技術(shù)基礎(chǔ)(第四版). 北京:高等教育出版社,1997</p><p> [4]王恩榮.MCS-51單片機(jī)應(yīng)用技術(shù).北京:化學(xué)工業(yè)出版社,2001</p><p> [5]黃河.郭紀(jì)林.單片機(jī)原理及應(yīng)用.大連:大連理工大學(xué)出版社,
84、2006</p><p> [6]周貴連. 電子技術(shù)基礎(chǔ). 機(jī)械工業(yè)出版社,2005</p><p> [7]孫萍·電子技術(shù)專業(yè)英語(yǔ)·機(jī)械工業(yè)出版社,2001年6月</p><p> [8]李廣弟. 單片機(jī)基礎(chǔ). 北京:北京航空航天大學(xué)出版社,1994</p><p> [9]閻石. 數(shù)字電子技術(shù)基礎(chǔ). 北京:高等
85、教育出版社,1989</p><p> [10]欒桂冬·傳感器及其應(yīng)用·西安電子科技大學(xué)出版社,2003</p><p> [11]周荷琴,吳秀清,微型計(jì)算機(jī)原理與接口技術(shù)。合肥,中國(guó)科學(xué)技術(shù)大學(xué)出版社,2004.</p><p> [12]范立南,謝子殿.單片機(jī)原理及應(yīng)用教程.北京大學(xué)出版社,2006.</p><p&
86、gt; [13]沈德金.MCS-51系列單片機(jī)接口電路與應(yīng)用程序?qū)嵗?:北京航空航天大學(xué).2005.</p><p> [14]潘松,趙敏笑·EDA技術(shù)及其應(yīng)用·科學(xué)出版社,2007年</p><p> [15]丁元杰,單片機(jī)原理及應(yīng)用,機(jī)械工業(yè)出版社,1999.3</p><p><b> 第八章 謝詞</b>&l
87、t;/p><p> 在畢業(yè)論文接近末尾之時(shí),我要衷心地感謝我們xx老師,在我整個(gè)畢業(yè)設(shè)計(jì)過(guò)程中,xx老師給了我們很大的幫助和細(xì)心的指導(dǎo)。她讓我們學(xué)會(huì)了以前在課堂上沒(méi)有的東西。</p><p> 另外,我還要特別感謝我的搭檔,是他給了我巨大的勇氣和戰(zhàn)勝困難的信心,在畢業(yè)設(shè)計(jì)中我們合作的很愉快,當(dāng)我們遇到困難時(shí)我們一起去探討和研究,一起去戰(zhàn)勝它大家也一起分享排除問(wèn)題和困難后的喜悅。</p
88、><p> 同時(shí)我們也發(fā)揚(yáng)特別能吃苦,特別能攻關(guān),特別能戰(zhàn)斗,特別能奉獻(xiàn)的精神。以至取得最后的成功!</p><p> 在此我表示真誠(chéng)的感謝!</p><p><b> 附錄</b></p><p><b> 原理圖:</b></p><p><b> PCB
89、圖:</b></p><p><b> 源程序:</b></p><p> TIMEL EQU 0E0H</p><p> TIMEH EQU 0B1H</p><p> TEMPHEAD EQU
90、 36H</p><p><b> ;</b></p><p> BITST DATA 20H</p><p> TIME1SOK BIT BITST.1</p><p> TEMPONEOK BIT BITST.
91、2</p><p> TEMPL DATA 26H</p><p> TEMPH DATA 27H</p><p> TEMPHC DATA 28H</p><p> TEMPLC DATA 29
92、H</p><p><b> ;</b></p><p> TEMPDIN BIT P3.7</p><p><b> ;</b></p><p> ORG 0000H</p><p> LJMP ST
93、ART</p><p> ORG 00BH</p><p> LJMP T0IT</p><p><b> ;</b></p><p> ORG 100H</p><p> START: MOV SP,#6
94、0H</p><p> CLSMEM: MOV R0,#20H</p><p> MOV R1,#60H</p><p> CLSMEM1: MOV @R0,#00H</p><p> INC R0</p><p>
95、; DJNZ R1,CLSMEM1</p><p> MOV TMOD,#00100001B</p><p> MOV TH0,#TIMEL</p><p> MOV TL0,#TIMEH</p><p> SJMP INIT</p><
96、p> ERROR: NOP</p><p> LJMP START</p><p><b> NOP</b></p><p> INIT: NOP</p><p> SETB ET0</p><p> SETB
97、 TR0</p><p> SETB EA</p><p> MOV PSW,#00H</p><p> CLR TEMPONEOK</p><p> LJMP MAIN</p><p><b> ;</b><
98、;/p><p> TOIT: PUSH PSW</p><p> MOV PSW,#10H</p><p> MOV TH0,#TIMEH</p><p> MOV TL0,#TIMEL</p><p> INC
99、R7</p><p> CJNE R7,#32H,T0IT1</p><p> MOV R7,#00H</p><p> SETB TIME1SOK</p><p> T0IT1: POP PSW</p><p><b>
100、 RETI</b></p><p><b> ;</b></p><p> MAIN: LCALL DISP1</p><p> JNB TIME1SOK,MIAN</p><p> CLR TIME1SOK</p>&
101、lt;p> JNB TEMPONEOK,MAIN2</p><p> LCALL READTEMP1</p><p> LCALL CONVTEMP</p><p> LCALL DISPBCD</p><p> LCALL DISP1</p>&l
102、t;p> MIAN: LCALL READTEMP</p><p> SETB TEMPONEOK</p><p><b> ;</b></p><p> INITDS1820: SETB TEMPDIN</p><p><b&g
103、t; NOP</b></p><p><b> NOP</b></p><p> CLR TEMPDIN</p><p> MOV R6,#0A0H</p><p> DJNZ R6,$</p><p> MOV
104、 R6,#0A0H</p><p> DJNZ R6,$</p><p> SETB TEMPDIN</p><p> MOV R6,#32H</p><p> DJNZ R6,$</p><p> MOV R6,#3CH</p&
105、gt;<p> LOOP1820: MOV C,TEMPDIN</p><p> JC INITDS1820OUT</p><p> DJNZ R6,LOOP1820</p><p> MOV R6,#064H</p><p> DJNZ
106、 R6,$</p><p> SJMP INITDS1820</p><p><b> RET</b></p><p> INITDS1820OUT: SETB TEMPDIN</p><p><b> RET</b></p><
107、p><b> ;</b></p><p> READDS1820: MOV R7,#08H</p><p> SETB TEMPDIN</p><p><b> NOP</b></p><p><b> NOP</b>&l
108、t;/p><p> READDS1820LOOP: CLR TEMPDIN</p><p><b> NOP</b></p><p><b> NOP</b></p><p><b> NOP</b></p><p> SETB
109、 TEMPDIN</p><p> MOV R6,#07H</p><p> DJNZ R6,$</p><p> MOV C,TEMPDIN</p><p> MOV R6,#3CH</p><p> DJNZ R6,$
110、</p><p> RRC A</p><p> SETB TEMPDIN</p><p> DJNZ R7,READDS1820LOOP</p><p> MOV R6,#3CH</p><p> DJNZ R6,$</p>
111、;<p><b> RET</b></p><p><b> ;</b></p><p> WRITEDS1820: MOV R7,#08H</p><p> SETB TEMPDIN</p><p><b> NOP</
112、b></p><p><b> NOP</b></p><p> WRITEDS1820LOP: CLR TEMPDIN</p><p> MOV R6,#07H</p><p> DJNZ R6,$</p><p> RRC
113、 A</p><p> MOV TEMPDIN,C</p><p> MOV R6,#34H</p><p> DJNZ R6,$</p><p> SETB TEMPDIN</p><p> DJNZ R7,WRITEDS18
114、20LOP</p><p><b> RET</b></p><p><b> ;</b></p><p> READTEMP: LCALL INITDS1820</p><p> MOV A,#0CCH</p><p>
115、LCALL WRITEDS1820</p><p> MOV R6,#34H</p><p> DJNZ R6,$</p><p> MOV A,#44H</p><p> LCALL WRITEDS1820</p><p> MOV
116、 R6,#34H</p><p> DJNZ R6,$</p><p><b> RET</b></p><p> READTEMP1: LCALL INITDS1820</p><p> MOV A,#0CCH</p><p&g
117、t; LCALL WRITEDS1820</p><p> MOV R6,#34H</p><p> DJNZ R6,$</p><p> MOV A,#0BEH</p><p> LCALL WRITEDS1820</p><p> M
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)設(shè)計(jì)電子溫度計(jì)臺(tái)歷
- 溫度控制系統(tǒng)畢業(yè)設(shè)計(jì)
- 數(shù)字溫度計(jì)控制 畢業(yè)設(shè)計(jì)
- 溫度控制系統(tǒng)畢業(yè)設(shè)計(jì)
- 雞舍溫度控制系統(tǒng)畢業(yè)設(shè)計(jì)上下限溫度控制
- 畢業(yè)設(shè)計(jì)--溫度控制系統(tǒng)設(shè)計(jì)
- 雞舍溫度控制系統(tǒng)畢業(yè)設(shè)計(jì)上下限溫度控制
- 畢業(yè)設(shè)計(jì)---電烤箱溫度計(jì)算機(jī)控制系統(tǒng)設(shè)計(jì)
- 雞舍溫度控制系統(tǒng)畢業(yè)設(shè)計(jì)上下限溫度控制.doc
- 畢業(yè)設(shè)計(jì)----智能溫度控制系統(tǒng)
- 溫度控制系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)論文
- 畢業(yè)設(shè)計(jì)--單片機(jī)畢業(yè)設(shè)計(jì)溫度控制(外文翻譯)
- 溫度控制系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)論文
- 水箱溫度控制系統(tǒng)畢業(yè)設(shè)計(jì)
- 遠(yuǎn)程溫度控制系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)237智能溫度控制系統(tǒng)
- 雞舍溫度控制系統(tǒng)畢業(yè)設(shè)計(jì)上下限溫度控制.doc
- 畢業(yè)設(shè)計(jì)論文-智能溫度控制系統(tǒng)
- 數(shù)字溫度計(jì)畢業(yè)設(shè)計(jì)
- 數(shù)字溫度計(jì)畢業(yè)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論