基于DS18B20的溫度檢測系統(tǒng)_第1頁
基于DS18B20的溫度檢測系統(tǒng)_第2頁
基于DS18B20的溫度檢測系統(tǒng)_第3頁
基于DS18B20的溫度檢測系統(tǒng)_第4頁
基于DS18B20的溫度檢測系統(tǒng)_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

Ⅰ.z---..--總結(jié)資料畢業(yè)設(shè)計報告〔論文〕基于DS18B20的溫度檢測系統(tǒng)設(shè)計所屬系電子工程系專業(yè)自動化學號01208163姓名周何聰指導教師李振東起訖日期2011.42011.5設(shè)計地點東南大學成賢學院.z---..--總結(jié)資料東南大學成賢學院畢業(yè)設(shè)計報告〔論文〕誠信承諾本人承諾所呈交的畢業(yè)設(shè)計報告〔論文〕及取得的成果是在導師指導下完成,引用他人成果的局部均已列出參考文獻。如論文涉及任何知識產(chǎn)權(quán)糾紛,本人將承當一切責任。學生簽名:日期:目錄摘要………………3Abstract…………4第一章緒論……………………5§1.1系統(tǒng)背景………………5§1.2系統(tǒng)概述…………………5第二章方案論證………………6§2.1傳感器局部………………6§2.2主控制局部………………7§2.3系統(tǒng)方案………………7第三章硬件電路設(shè)計………… 8§3.1電源以及看門狗電路………8§3.2鍵盤以及顯示電路………10§3.2溫度測試電路……………12§3.3串口通訊電路……………16§3.4整體電路…………………17第四章 軟件設(shè)計………………17§4.1概述………………………17§4.2主程序方案………………17§4.3各模塊子程序設(shè)計…………19第五章 系統(tǒng)調(diào)試………………21§5.1分步調(diào)試………………21§5.2統(tǒng)一調(diào)試………………21完畢語…………22參考文獻………23附錄一:軟件流程圖……………25附錄二:電路原理圖……………26致謝………………30摘要DS18B20是一種可組網(wǎng)的高精度數(shù)字式溫度傳感器,由于其具有單總線的獨特優(yōu)點,可以使用戶輕松地組建起傳感器網(wǎng)絡(luò),并可使多點溫度測量電路變得簡單、可靠。本文結(jié)合實際使用經(jīng)歷,介紹了DS18B20數(shù)字溫度傳感器在單片機下的硬件連接及軟件編程,并給出了軟件流程圖。該系統(tǒng)由上位機和下位機兩大局部組成。下位機實現(xiàn)溫度的檢測并提供標準RS232通信接口,芯片使用了ATMEL公司的AT89C51單片機和DALLAS公司的DS18B20數(shù)字溫度傳感器。上位機局部使用了通用PC。該系統(tǒng)可應用于倉庫測溫、樓宇空調(diào)控制和生產(chǎn)過程監(jiān)控等領(lǐng)域。關(guān)鍵字:溫度測量;單總線;數(shù)字溫度傳感器;單片機AbstractAsakindofhigh-accuracydigitalnettemperaturesensor,DS18B20canbeusedbuildingasensorneteasily.Itcanalsomakethenetsimpleandreliablewithit'sspecial1-wireinterface.ThispaperintroducestheapplicationofDS18B20withsinglechipprocessor.The systemisconstitutedbytwopartsthetemperaturemeasuredpartanddisplayedpart.ThetemperaturemeasuredparthasaRS232interface.ItusedAT89C51ofATMELpanyandDS18B20ofDALLASpany.ThedisplayedpartusesPC.Thissystemisappliedinsuchdomainsaswarehousedetectingtemperature;air-conditionercontrollingsysteminbuildingandsupervisoryproductiveprocessetc.Keywords:temperaturemeasure;singlebus;digitalthermometer;singlechipprocessor;緒論§1.1系統(tǒng)背景在工、農(nóng)業(yè)生產(chǎn)和日常生活中,對溫度的測量及控制占據(jù)著極其重要地位。首先讓我們了解一下多點溫度檢測系統(tǒng)在各個方面的應用領(lǐng)域:消防電氣的非破壞性溫度檢測,電力、電訊設(shè)備之過熱故障預知檢測,空調(diào)系統(tǒng)的溫度檢測,各類運輸工具之組件的過熱檢測,保全與監(jiān)視系統(tǒng)之應用,醫(yī)療與健診的溫度測試,化工、機械…等設(shè)備溫度過熱檢測。溫度檢測系統(tǒng)應用十分廣闊?!?.2系統(tǒng)概述本設(shè)計運用主從分布式思想,由一臺上位機〔PC微型計算機〕,下位機〔單片機〕多點溫度數(shù)據(jù)采集,組成兩級分布式多點溫度測量的巡回檢測系統(tǒng)。該系統(tǒng)采用RS-232串行通訊標準,通過上位機〔PC〕控制下位機〔單片機〕進展現(xiàn)場溫度采集。溫度值既可以送回主控PC進展數(shù)據(jù)處理,由顯示器顯示。也可以由下位機單獨工作,實時顯示當前各點的溫度值,對各點進展控制。下位機采用的是單片機基于數(shù)字溫度傳感器DS18B20的系統(tǒng)。DS18B20利用單總線的特點可以方便的實現(xiàn)多點溫度的測量,輕松的組建傳感器網(wǎng)絡(luò),系統(tǒng)的抗干擾性好、設(shè)計靈活、方便,而且適合于在惡劣的環(huán)境下進展現(xiàn)場溫度測量。本系統(tǒng)可以應用在大型工業(yè)及民用常溫多點監(jiān)測場合。如糧食倉儲系統(tǒng)、樓宇自動化系統(tǒng)、溫控制程生產(chǎn)線之溫度影像檢測、醫(yī)療與健診的溫度測試、空調(diào)系統(tǒng)的溫度檢測、石化、機械…等。方案論證溫度檢測系統(tǒng)有則共同的特點:測量點多、環(huán)境復雜、布線分散、現(xiàn)場離監(jiān)控室遠等。假設(shè)采用一般溫度傳感器采集溫度信號,則需要設(shè)計信號調(diào)理電路、A/D轉(zhuǎn)換及相應的接口電路,才能把傳感器輸出的模擬信號轉(zhuǎn)換成數(shù)字信號送到計算機去處理。這樣,由于各種因素會造成檢測系統(tǒng)較大的偏差;又因為檢測環(huán)境復雜、測量點多、信號傳輸距離遠及各種干擾的影響,會使檢測系統(tǒng)的穩(wěn)定性和可靠性下降。所以多點溫度檢測系統(tǒng)的設(shè)計的關(guān)鍵在于兩局部:溫度傳感器的選擇和主控單元的設(shè)計。溫度傳感器應用*圍廣泛、使用數(shù)量龐大,也高居各類傳感器之首?!?.1傳感器局部方案一:采用熱敏電阻,可滿足40攝氏度至90攝氏度測量*圍,但熱敏電阻精度、重復性、可靠性較差,對于檢測1攝氏度的信號是不適用的。而且在溫度測量系統(tǒng)中,采用單片溫度傳感器,比方AD590,LM35等.但這些芯片輸出的都是模擬信號,必須經(jīng)過A/D轉(zhuǎn)換后才能送給計算機,這樣就使得測溫裝置的構(gòu)造較復雜.另外,這種測溫裝置的一根線上只能掛一個傳感器,不能進展多點測量.即使能實現(xiàn),也要用到復雜的算法,一定程度上也增加了軟件實現(xiàn)的難度。方案二:在多點測溫系統(tǒng)中,傳統(tǒng)的測溫方法是將模擬信號遠距離采樣進展AD轉(zhuǎn)換,而為了獲得較高的測溫精度,就必須采用措施解決由長線傳輸,多點測量切換及放大電路零點漂移等造成的誤差補償問題。采用數(shù)字溫度芯片DS18B20測量溫度,輸出信號全數(shù)字化。便于單片機處理及控制,省去傳統(tǒng)的測溫方法的很多外圍電路。且該芯片的物理化學性很穩(wěn)定,它能用做工業(yè)測溫元件,此元件線形較好。在0—100攝氏度時,最大線形偏差小于1攝氏度。DS18B20的最大特點之一采用了單總線的數(shù)據(jù)傳輸,由數(shù)字溫度計DS1820和微控制器AT89C51構(gòu)成的溫度測量裝置,它直接輸出溫度的數(shù)字信號,可直接與計算機連接。這樣,測溫系統(tǒng)的構(gòu)造就比擬簡單,體積也不大,且由于AT89C51可以帶多個DSB1820,因此可以非常容易實現(xiàn)多點測量.輕松的組建傳感器網(wǎng)絡(luò)。采用溫度芯片DS18B20測量溫度,可以表達系統(tǒng)芯片化這個趨勢。局部功能電路的集成,使總體電路更簡潔,搭建電路和焊接電路時更快。而且,集成塊的使用,有效地防止外界的干擾,提高測量電路的準確度。所以集成芯片的使用將成為電路開展的一種趨勢。本方案應用這一溫度芯片,也是順應這一趨勢。§2.2主控制局部方案一:此方案采用PC機實現(xiàn)。它可在線編程,可在線仿真的功能,這讓調(diào)試變得方便。且人機交互友好。但是PC機輸出信號不能直接與DS18B20通信。需要通過RS232電平轉(zhuǎn)換兼容,硬件的合成在線調(diào)試,較為繁瑣,很不簡便。而且在一些環(huán)境比擬惡劣的場合,PC機的體積大,攜帶安裝不方便,性能不穩(wěn)定,給工程帶來很多麻煩!方案二:此方案采用AT89C51八位單片機實現(xiàn)。單片機軟件編程的自由度大,可通過編程實現(xiàn)各種各樣的算術(shù)算法和邏輯控制。而且體積小,硬件實現(xiàn)簡單,安裝方便。既可以單獨對多DS18B20控制工作,還可以與PC機通信.運用主從分布式思想,由一臺上位機〔PC微型計算機〕,下位機〔單片機〕多點溫度數(shù)據(jù)采集,組成兩級分布式多點溫度測量的巡回檢測系統(tǒng),實現(xiàn)遠程控制。另外AT89C51在工業(yè)控制上也有著廣泛的應用,編程技術(shù)及外圍功能電路的配合使用都很成熟?!?.3系統(tǒng)方案綜上所述,溫度傳感器以及主控局部都采用第二方案。系統(tǒng)采用針對傳統(tǒng)溫度測溫系統(tǒng)測溫點少,系統(tǒng)兼容性及擴展性較差的特點,運用分布式通訊的思想。設(shè)計一種可以用于大規(guī)模多點溫度測量的巡回檢測系統(tǒng)。該系統(tǒng)采用的是RS-232串行通訊的標準,通過下位機〔單片機〕進展現(xiàn)場的溫度采集,溫度數(shù)據(jù)既可以由下位機模塊實時顯示,也可以送回上位機進展數(shù)據(jù)處理,具有巡檢速度快,擴展性好,本錢低的特點。實際采用電路方案如下列圖:第三章硬件電路設(shè)計 系統(tǒng)底層電路的功能主要包括:多點溫度測試及其相關(guān)處理,實時顯示溫度信息,與上位機通訊傳輸溫度數(shù)據(jù)。硬件設(shè)計主要包括以下幾個模塊:電源以及看門狗電路,鍵盤以及顯示電路,溫度測試電路,串口通訊電路。下面對電路分模塊進展說明§3.1電源以及看門狗電路a.電源電路因為單片機工作電源為+5V,且底層電路功耗很小。采用7805三端穩(wěn)壓片即可滿足要求。具體電路圖如下:b.看門狗電路考慮到底層電路板的工作環(huán)境相對惡劣,單片時機受到周圍環(huán)境的干擾,而出現(xiàn)程序跑飛,死機…等一些不可預知的不正常工作現(xiàn)象。工作人員也不可能到現(xiàn)場對單片機重起,本設(shè)計為單片機電路添加一個外部看門狗電路。定時查詢單片機的工作狀態(tài),一但發(fā)現(xiàn)異常即對單片機延時重起。保證系統(tǒng)平安可靠的運行。NE56604能為多種微處理器和邏輯系統(tǒng)提供復位信號,其門限電平為4.2V。在電源突然掉電或電源電壓下降到低于門限電平時。NE56604將產(chǎn)生準確的復位信號。NE56604內(nèi)置一個看門狗定時器,用于監(jiān)控微處理器,以確保微處理器的正常運行??撮T狗能產(chǎn)生一個系統(tǒng)復位信號用來終止任何由于微處理器故障而引發(fā)的不正常的系統(tǒng)操作。NE56604的看門狗的監(jiān)控周期為100mS〔典型值〕。特性.正負雙邏輯輸出的有效復位信號。.精準的門限電平監(jiān)測。.上電復位內(nèi)部延時。.可利用外部電阻調(diào)節(jié)的內(nèi)部看門狗定時器。.看門狗定時器的監(jiān)控周期為100mS典型值。.VCC=0.8VDC時產(chǎn)生有效的復位信號典型值。.僅需很少的外圍元件。具體電路圖如下:§3.2鍵盤以及顯示電路鍵盤電路單片機應用系統(tǒng)中除了復位按鍵有專門的復位電路,以及專一的復位功能外,其它的按鍵或鍵盤都是以開關(guān)狀態(tài)來設(shè)置控制功能或輸入數(shù)據(jù)。鍵盤有編碼和非編碼兩種。非編碼鍵盤硬件電路極為簡單。故本系統(tǒng)采用撥碼開關(guān)來控制。具體電路如下:A.開關(guān)狀態(tài)的可靠輸入鍵開關(guān)狀態(tài)的可靠輸入有兩種解決方法。一種是軟件去抖動:它是在檢測到有鍵按下時,執(zhí)行一個10ms的延時程序后,再確認該鍵電平是否仍保持閉合狀態(tài)電平,如保持閉合狀態(tài)電平則確認為真正鍵按下狀態(tài),從而消除了抖動影響。另一種為硬件去抖動:即為按鍵添加一個鎖存器。兩種方法都簡單易行,本設(shè)計采用的是硬件去抖。B.對按鍵進展編碼給定鍵值或給出鍵號對于按鍵無論有無編碼,以及采用什么編碼,最后都要轉(zhuǎn)換成為與累加器中數(shù)值相對應的鍵值,以實現(xiàn)按鍵功能程序的散轉(zhuǎn)轉(zhuǎn)移。為使編碼間隔小,散轉(zhuǎn)入口地址安排方便,常采用依次序排列的鍵號。撥碼開關(guān)值含義0000實時顯示通道一的溫度值0001實時顯示通道二的溫度值0010實時顯示通道三的溫度值0011實時顯示通道四的溫度值0100實時顯示通道五的溫度值0101實時顯示通道六的溫度值0110實時顯示通道七的溫度值0111實時顯示通道八的溫度值1***自動循環(huán)顯示所有通道的溫度C.選擇鍵盤監(jiān)測方法對是否有鍵按下的信息輸入方式有中斷方式與查詢方式兩種。本設(shè)計采用的查詢法,即在在CPU空閑時調(diào)用鍵盤掃描子程序。溫度顯示電路設(shè)計采用的是共陰極七段數(shù)碼管。顯示方式有動態(tài)掃描和靜態(tài)顯示,兩種方法在本設(shè)計中皆可。由于靜態(tài)掃描要用到多片串入并出芯片,考慮到電路板本錢計算。本人采用是節(jié)約硬件資源的動態(tài)掃描方式。即用兩塊芯片就可以完成顯示功能。顯示數(shù)據(jù)由4511譯碼器輸出,ULN2003為位驅(qū)動掃描信號。 具體電路圖如下:§3.2溫度測試電路這里我們用到溫度芯片DS18B20。DS18B20是DALLAS公司生產(chǎn)的一線式數(shù)字溫度傳感器,具有3引腳TO-92小體積封裝形式。測溫分辨率可達0.0625℃,被測溫度用符號擴展的16位數(shù)字量方式串行輸出。其工作電源既可在遠端引入,也可采用寄生電源方式產(chǎn)生。CPU只需一根端口線就能與諸多DS18B20通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。DS18B20支持“一線總線〞接口,測量溫度*圍為-55°C~+125°C,在-10~+85°C*圍內(nèi),精度為±0.5°C?,F(xiàn)場溫度直接以“一線總線〞的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設(shè)備或過程控制、測溫類消費電子產(chǎn)品等。DS18B20內(nèi)部構(gòu)造

〔1〕DS18B20的內(nèi)部構(gòu)造如下列圖所示。

DS18B20內(nèi)部構(gòu)造圖DS18B20有4個主要的數(shù)據(jù)部件:

①64位激光ROM。64位激光ROM從高位到低位依次為8位CRC、48位序列號和8位家族代碼(28H)組成。②溫度靈敏元件。③非易失性溫度報警觸發(fā)器TH和TL。可通過軟件寫入用戶報警上下限值。④配置存放器。配置存放器為高速暫存存儲器中的第五個字節(jié)。DS18B20在0工作時按此存放器中的分辨率將溫度轉(zhuǎn)換成相應精度的數(shù)值,其各位定義如下圖。TMR1R011111MSB

DS18B20配置存放器構(gòu)造圖LSB其中,TM:測試模式標志位,出廠時被寫入0,不能改變;R0、R1:溫度計分辨率設(shè)置位,其對應四種分辨率如下表所列,出廠時R0、R1置為缺省值:R0=1,R1=1〔即12位分辨率〕,用戶可根據(jù)需要改寫配置存放器以獲得適宜的分辨率。配置存放器與分辨率關(guān)系表:R0R1溫度計分辨率/bit最大轉(zhuǎn)換時間/us00993.750110187.510113751112750〔2〕高速暫存存儲器高速暫存存儲器由9個字節(jié)組成,其分配如下列圖所示。當溫度轉(zhuǎn)換命令發(fā)布后,經(jīng)轉(zhuǎn)換所得的溫度值以二字節(jié)補碼形式存放在高速暫存存儲器的第0和第1個字節(jié)。單片機可通過單線接口讀到該數(shù)據(jù),讀取時低位在前,高位在后,數(shù)據(jù)格式如下圖。對應的溫度計算:當符號位S=0時,直接將二進制位轉(zhuǎn)換為十進制;當S=1時,先將補碼變?yōu)樵a,再計算十進制值。溫度低位溫度高位THTL配置保存保存保存8位CRCLSBDS18B20存儲器映像圖MSB溫度值格式圖DS18B20溫度數(shù)據(jù)表:232221202-12-22-32-4MSBLSBSSSSS262524典型對應的溫度值表:溫度/℃二進制表示十六進制表示+125

+25.0625

+10.125

+0.5

0

-0.5

-10.125

-25.0625

-550000011111010000

0000000110010001

0000000010100010

0000000000001000

0000000000000000

1111111111111000

1111111101011110

1111111001101111

111111001001000007D0H

0191H

00A2H

0008H

0000H

FFF8H

FF5EH

FE6FH

FC90HDS18B20最大的特點是單總線數(shù)據(jù)傳輸方式,DS18B20的數(shù)據(jù)I/O均由同一條線來完成。硬件連接電路如下列圖:AT89C51AT89C51DS18B201*DS18B202*DS18B203*DS18B2020*VCC=5V4.7K1—WIRE 本系統(tǒng)為多點溫度測試。DS18B20采用外部供電方式,理論上可以在一根數(shù)據(jù)總線上掛256個DS18B20,但時間應用中發(fā)現(xiàn),如果掛接25個以上的DS18B20仍舊有可能產(chǎn)生功耗問題。另外單總線長度也不宜超過80M,否則也會影響到數(shù)據(jù)的傳輸。在這種情況下我們可以采用分組的方式,用單片機的多個I/O來驅(qū)動多路DS18B20。在實際應用中還可以使用一個MOSFET將I/O口線直接和電源相連,起到上拉的作用。對DS18B20的設(shè)計,需要注意以下問題〔1〕對硬件構(gòu)造簡單的單線數(shù)字溫度傳感器DS18B20進展操作,需要用較為復雜的程序完成。編制程序時必須嚴格按芯片數(shù)據(jù)手冊提供的有關(guān)操作順序進展,讀、寫時間片程序要嚴格按要求編寫。尤其在使用DS18B20的高測溫分辨力時,對時序及電氣特性參數(shù)要求更高。〔2〕有多個測溫點時,應考慮系統(tǒng)能實現(xiàn)傳感器出錯自動指示,進展自動DS18B20序列號和自動排序,以減少調(diào)試和維護工作量。〔3〕測溫電纜線建議采用屏蔽4芯雙絞線,其中一對線接地線與信號線,另一組接VCC和地線,屏蔽層在源端單點接地。DS18B20在三線制應用時,應將其三線焊接結(jié)實;在兩線應用時,應將VCC與GND接在一起,焊接結(jié)實。假設(shè)VCC脫開未接,傳感器只送85.0℃的溫度值?!?〕實際應用時,要注意單線的驅(qū)動能力,不能掛接過多的DS18B20,同時還應注意最遠接線距離。另外還應根據(jù)實際情況選擇其接線拓撲構(gòu)造。§3.3串口通訊電路AT89C51有一個全雙工的串行通訊口,所以單片機和電腦之間可以方便地進展串口通訊。進展串行通訊時要滿足一定的條件,比方電腦的串口是RS232電平的,而單片機的串口是TTL電平的,兩者之間必須有一個電平轉(zhuǎn)換電路,我們采用了專用芯片MA*232進展轉(zhuǎn)換,雖然也可以用幾個三極管進展模擬轉(zhuǎn)換,但是還是用專用芯片更簡單可靠。具體電路如下:我們采用了三線制連接串口,也就是說和電腦的9針串口只連接其中的3根線:第5腳的GND、第2腳的R*D、第3腳的T*D。這是最簡單的連接方法,但是對本設(shè)計來說已經(jīng)足夠使用了,電路如上圖所示。通信線采用穿插接法,即兩者信號線對應成為R—T,T—R。具體連接電路如下:§3.4整體電路 見二〔電路原理圖〕軟件設(shè)計§4.1概述整個系統(tǒng)的功能是由硬件電路配合軟件來實現(xiàn)的,當硬件根本定型后,軟件的功能也就根本定下來了。從軟件的功能不同可分為兩大類:一是監(jiān)控軟件〔主程序〕,它是整個控制系統(tǒng)的核心,專門用來協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系。二是執(zhí)行軟件〔子程序〕,它是用來完成各種實質(zhì)性的功能如測量、計算、顯示、通訊等。每一個執(zhí)行軟件也就是一個小的功能執(zhí)行模塊。這里將各執(zhí)行模塊一一列出,并為每一個執(zhí)行模塊進展功能定義和接口定義。各執(zhí)行模塊規(guī)劃好后,就可以規(guī)劃監(jiān)控程序了。首先要根據(jù)系統(tǒng)的總體功能和鍵盤設(shè)置選擇一種最適宜的監(jiān)控程序構(gòu)造,然后根據(jù)實時性的要求,合理地安排監(jiān)控軟件和各執(zhí)行模塊之間地調(diào)度關(guān)系?!?.2主程序方案 主程序調(diào)用了4個子程序,分別是數(shù)碼管顯示程序、鍵盤掃描以及按鍵處理程序、溫度測試程序、中斷控制程序、單片機與PC機串口通訊程序。鍵盤掃描電路及按鍵處理程序:實現(xiàn)鍵盤的輸入按鍵的識別及相關(guān)處理。溫度測試程序:對溫度芯片送過來的數(shù)據(jù)進展處理,進展判斷和顯示。數(shù)碼管顯示程序:向數(shù)碼的顯示送數(shù),控制系統(tǒng)的顯示局部。中斷控制程序:實現(xiàn)循環(huán)顯示功能。串口通訊程序:實現(xiàn)PC機與單片機通訊,將溫度數(shù)據(jù)傳送給PC機。將各個功能程序以子程序的形式寫好,當寫主程序的時候,只需要調(diào)用子程序,然后在存放器的分配上作一下調(diào)整,消除存放器沖突和I/O沖突即可。程序應該盡可能多的使用調(diào)用指令代替跳轉(zhuǎn)指令。因為跳轉(zhuǎn)指令使得程序難以看懂各程序段之間的構(gòu)造關(guān)系。而調(diào)用指令則不同,調(diào)用指令使得程序構(gòu)造清晰,無論是修改還是維護都比擬方便。將功能程序段寫成子程序的形式,除了方便調(diào)用之外,還有一個好處那就是以后寫程序的時候如果要用到,就可以直接調(diào)用這個單元功能模塊。主程序流程圖如右圖:§4.3各模塊子程序設(shè)計下面對主要幾個子程序的流程圖做介紹:〔1〕溫度測試子程序設(shè)計見附錄一:溫度測試子程序流程圖〔2〕中斷控制程序設(shè)計如右圖:〔3〕串口通信程序設(shè)計-.z本次通訊中,測控系統(tǒng)分位上位機和下位機之間的通信,系統(tǒng)中單片機負責數(shù)據(jù)采集、處理和控制,上位機進展現(xiàn)場可視化檢測,通信協(xié)議采用半雙工異步串行通信方式,通過RS232的RTS信號進展收發(fā)轉(zhuǎn)換,傳輸數(shù)據(jù)采用二進制數(shù)據(jù),上位機與下位機之間采用主從式通訊。本人采用的VB環(huán)境下PC機與單片機之間實現(xiàn)串行通訊的軟硬件方案。VB是Microsoft公司推出的Windows應用程序開發(fā)工具,因其具有界面友好,編程簡便等優(yōu)點而受到廣泛的使用,而且VisualBasic6.0版本帶有專門實現(xiàn)串行通訊的MSM控件。MSm控件串口具有完善的串口數(shù)據(jù)的發(fā)送和接收功能。通過此控件,PC機可以利用串行口與其它設(shè)備實現(xiàn)輕松連接,簡單高效地實現(xiàn)設(shè)備之間的通訊。此控件的事件響應有兩種處理方式。事件驅(qū)動方式:由MSm控件的Onm事件捕獲并處理通訊錯誤及事件;查詢方式:通過檢查mEvent屬性的值來判斷事件和錯誤。1)MSm控件的主要屬性和方法a.mPort:設(shè)置或返回串行端口號,其取值*圍為1—99,缺省為1b.Setting:設(shè)置或返回串行端口的波特率、奇偶校驗位、數(shù)據(jù)位數(shù)、停頓位。c.PortOpen:翻開或關(guān)閉串行端口。d.RThreshold:該屬性為一閥值,它確定當接收緩沖區(qū)內(nèi)字節(jié)個數(shù)到達或超過該值后就產(chǎn)生MSml-Onm事件。e.Input:從接收緩沖區(qū)移走一串字符。f.Output:向發(fā)送緩沖區(qū)傳送一字符串。軟件流程圖如下:單片機程序流程圖PC通訊程序流程圖參數(shù)設(shè)定:通信端口選擇1,波特率設(shè)定為1200B/SMSm.mPort=1MSm.Setting=“1200,n,8,1〞。START: MOV SP,*60HMOV TMOD,*20HMOV TH1,*0E6HMOV TL1,*0E6H;1200B/S,晶振為12MHZMOV PCON,*00HMOV SCON,*50HSETBTR1系統(tǒng)調(diào)試§5.1分步調(diào)試1、測試環(huán)境及工具測試溫度:0~100攝氏度。〔模擬多點不同溫度值環(huán)境〕測試儀器及軟件:數(shù)字萬用表,溫度計0~100攝氏度,串口調(diào)試助手。測試方法:目測。2、測試方法使系統(tǒng)運行,觀察系統(tǒng)硬件檢測是否正?!舶▎纹瑱C最小系統(tǒng),鍵盤電路,顯示電路,溫度測試電路等〕。系統(tǒng)自帶測試表格數(shù)據(jù),觀察顯示數(shù)據(jù)是否相符合即可。采用溫度傳感器和溫度計同時測量多點水溫變化情況〔取溫度值不同的多點〕,目測顯示電路是否正常。并記錄各點溫度值,與實際溫度值比擬,得出系統(tǒng)的溫度指標。使用串口調(diào)試助手與單片機通訊,觀察單片機與串口之間傳輸數(shù)據(jù)正確否。3、測試結(jié)果分析自檢正常,各點溫度顯示正常,串口傳輸數(shù)據(jù)正確。因為芯片是塑料封裝,所以對溫度的感應靈敏度不是相當高,需要一個很短的時間才能到達穩(wěn)定?!?.2統(tǒng)一調(diào)試將硬件及軟件結(jié)合起來進展系統(tǒng)的統(tǒng)一調(diào)試。實現(xiàn)PC機與單片機通訊,兩者可以實時更新顯示各點溫度值。完畢語AT89C51的時鐘為12M,I/O口可達32個,高的時鐘頻率和豐富的I/O,都為實現(xiàn)電路功能提供了非常有利的條件。同時也AT89C51內(nèi)含4KBFLASHROM,開發(fā)環(huán)境友好,易用,方便,大大加快本系統(tǒng)設(shè)計開發(fā)。撥碼開關(guān)的使用,使操作更為簡潔,易懂。實時顯示電路的設(shè)計,使溫度信息更迅速,直觀地發(fā)布。本制作的設(shè)計中使用了傳感器的只是插座電路,因此,該系統(tǒng)的可擴展性很強。整個系統(tǒng)硬件簡單、可靠,系統(tǒng)本錢低。致此本人設(shè)計根本完成了預期的目標,系統(tǒng)在硬件自動測試,鍵盤操作,實時顯示方面做的比擬好。但是由于時間倉促、條件有限,設(shè)計成果并不是很完美,還存在下面問題:串口通訊不穩(wěn)定,未對溫度數(shù)值統(tǒng)計處理以及存儲。我準備在今后的工作過程中進一步完善此設(shè)計。-.z參考文獻[1].賈振國.DS1820及高精度溫度測量的實現(xiàn)[J].電子技術(shù)應用,2000〔1〕:58-59.[2].余永權(quán).單片機原理及應用.:電子工業(yè),1997[3].邦田.電子電路實用抗干擾技術(shù).:人民郵電,1994[4].Dallassemiconductorinc,ds18b20programmableresolution1—wiredigitalthermometer2001[Z].[5].曲喜貴.電子元件材料手冊[M].:電子工業(yè),1989.422-430.[6].黃賢武,*筱霞,曲波等.傳感器實際應用電路設(shè)計[M].**:電子科技大學,1997.4-10.[7].*君華.智能傳感器系統(tǒng)[M].**:**電子科技大學,1999.[8].余永權(quán).Flash單片機原理及應用[M].:電子工業(yè),1997.[9].邦田.電子電路實用抗干擾技術(shù)[M].:人民郵電,1994.[10].周云波.由DS18B20單線數(shù)字溫度計構(gòu)成的單線多點溫度測量系統(tǒng).電子技術(shù)應用,1996(2):15-20.[11].吉鵬,馬云峰等.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論