多點測溫系統(tǒng)(論文資料).doc_第1頁
多點測溫系統(tǒng)(論文資料).doc_第2頁
多點測溫系統(tǒng)(論文資料).doc_第3頁
多點測溫系統(tǒng)(論文資料).doc_第4頁
多點測溫系統(tǒng)(論文資料).doc_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

目 錄摘要2ABSTRACT3第一章緒 論41.1系統(tǒng)背景41.2 系統(tǒng)概述4第二章方案論證52.1 傳感器部分52.2主控制部分62.3 系統(tǒng)方案6第三章 硬件電路設(shè)計73.1 電源以及看門狗電路73.2鍵盤以及顯示電路93.2溫度測試電路113.3 串口通訊電路153.4 整體電路16第四章軟件設(shè)計164.1 概述164.2 主程序方案164.3 各模塊子程序設(shè)計18第五章系統(tǒng)調(diào)試205.1 分步調(diào)試205.2 統(tǒng)一調(diào)試20結(jié)束語21參考文獻22附錄一:軟件流程圖24附錄二:電路原理圖25致 謝27多點溫度檢測系統(tǒng)設(shè)計作者:譚詩煒(電信200201班) 指導(dǎo)老師:馮杰摘要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)可應(yīng)用于倉庫測溫、樓宇空調(diào)控制和生產(chǎn)過程監(jiān)控等領(lǐng)域。關(guān)鍵字:溫度測量;單總線;數(shù)字溫度傳感器;單片機Abstract As a kind of high-accuracy digital net temperature sensor,DS18 B20 can be used building a sensor net easily. It can also make the net simple and reliable with its special 1-wire interface .This paper introduces the application of DS18B20 with single chip processor.Thesystem is constituted by two parts the temperature measured part and displayed part. The temperature measured part has a RS232 interface. It used AT89C51 of ATMEL company and DS18B20 of DALLAS company .The displayed part uses PC .This system is applied in such domains as warehouse detecting temperature;air-conditioner controlling system in building and supervisory productive process etc.Key words:temperature measure;single bus;digital thermometer;single chip processor;第一章緒 論1.1系統(tǒng)背景在工、農(nóng)業(yè)生產(chǎn)和日常生活中,對溫度的測量及控制占據(jù)著極其重要地位。首先讓我們了解一下多點溫度檢測系統(tǒng)在各個方面的應(yīng)用領(lǐng)域:消防電氣的非破壞性溫度檢測,電力、電訊設(shè)備之過熱故障預(yù)知檢測,空調(diào)系統(tǒng)的溫度檢測,各類運輸工具之組件的過熱檢測,保全與監(jiān)視系統(tǒng)之應(yīng)用,醫(yī)療與健診的溫度測試,化工、機械等設(shè)備溫度過熱檢測。溫度檢測系統(tǒng)應(yīng)用十分廣闊。1.2 系統(tǒng)概述本設(shè)計運用主從分布式思想,由一臺上位機(PC微型計算機),下位機(單片機)多點溫度數(shù)據(jù)采集,組成兩級分布式多點溫度測量的巡回檢測系統(tǒng)。該系統(tǒng)采用 RS-232串行通訊標準,通過上位機(PC)控制下位機(單片機)進行現(xiàn)場溫度采集。溫度值既可以送回主控PC進行數(shù)據(jù)處理,由顯示器顯示。也可以由下位機單獨工作,實時顯示當(dāng)前各點的溫度值,對各點進行控制。下位機采用的是單片機基于數(shù)字溫度傳感器DS18B20的系統(tǒng)。DS18B20利用單總線的特點可以方便的實現(xiàn)多點溫度的測量,輕松的組建傳感器網(wǎng)絡(luò),系統(tǒng)的抗干擾性好、設(shè)計靈活、方便,而且適合于在惡劣的環(huán)境下進行現(xiàn)場溫度測量。本系統(tǒng)可以應(yīng)用在大型工業(yè)及民用常溫多點監(jiān)測場合。如糧食倉儲系統(tǒng)、樓宇自動化系統(tǒng)、溫控制程生產(chǎn)線之溫度影像檢測、醫(yī)療與健診的溫度測試、空調(diào)系統(tǒng)的溫度檢測、石化、機械等。第二章方案論證溫度檢測系統(tǒng)有則共同的特點:測量點多、環(huán)境復(fù)雜、布線分散、現(xiàn)場離監(jiān)控室遠等。若采用一般溫度傳感器采集溫度信號,則需要設(shè)計信號調(diào)理電路、A/D 轉(zhuǎn)換及相應(yīng)的接口電路,才能把傳感器輸出的模擬信號轉(zhuǎn)換成數(shù)字信號送到計算機去處理。這樣,由于各種因素會造成檢測系統(tǒng)較大的偏差;又因為檢測環(huán)境復(fù)雜、測量點多、信號傳輸距離遠及各種干擾的影響,會使檢測系統(tǒng)的穩(wěn)定性和可靠性下降 。所以多點溫度檢測系統(tǒng)的設(shè)計的關(guān)鍵在于兩部分:溫度傳感器的選擇和主控單元的設(shè)計。溫度傳感器應(yīng)用范圍廣泛、使用數(shù)量龐大,也高居各類傳感器之首。2.1 傳感器部分方案一:采用熱敏電阻,可滿足40攝氏度至90攝氏度測量范圍,但熱敏電阻精度、重復(fù)性、可靠性較差,對于檢測1攝氏度的信號是不適用的。而且在溫度測量系統(tǒng)中,采用單片溫度傳感器,比如AD590,LM35等.但這些芯片輸出的都是模擬信號,必須經(jīng)過A/D轉(zhuǎn)換后才能送給計算機,這樣就使得測溫裝置的結(jié)構(gòu)較復(fù)雜.另外,這種測溫裝置的一根線上只能掛一個傳感器,不能進行多點測量.即使能實現(xiàn),也要用到復(fù)雜的算法,一定程度上也增加了軟件實現(xiàn)的難度。方案二:在多點測溫系統(tǒng)中,傳統(tǒng)的測溫方法是將模擬信號遠距離采樣進行AD轉(zhuǎn)換,而為了獲得較高的測溫精度,就必須采用措施解決由長線傳輸,多點測量切換及放大電路零點漂移等造成的誤差補償問題。采用數(shù)字溫度芯片DS18B20測量溫度,輸出信號全數(shù)字化。便于單片機處理及控制,省去傳統(tǒng)的測溫方法的很多外圍電路。且該芯片的物理化學(xué)性很穩(wěn)定,它能用做工業(yè)測溫元件,此元件線形較好。在0100攝氏度時,最大線形偏差小于1攝氏度。DS18B20的最大特點之一采用了單總線的數(shù)據(jù)傳輸,由數(shù)字溫度計DS1820和微控制器AT89C51構(gòu)成的溫度測量裝置,它直接輸出溫度的數(shù)字信號,可直接與計算機連接。這樣,測溫系統(tǒng)的結(jié)構(gòu)就比較簡單,體積也不大,且由于AT89C51可以帶多個DSB1820,因此可以非常容易實現(xiàn)多點測量.輕松的組建傳感器網(wǎng)絡(luò)。采用溫度芯片DS18B20測量溫度,可以體現(xiàn)系統(tǒng)芯片化這個趨勢。部分功能電路的集成,使總體電路更簡潔,搭建電路和焊接電路時更快。而且,集成塊的使用,有效地避免外界的干擾,提高測量電路的精確度。所以集成芯片的使用將成為電路發(fā)展的一種趨勢。本方案應(yīng)用這一溫度芯片,也是順應(yī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è)控制上也有著廣泛的應(yīng)用,編程技術(shù)及外圍功能電路的配合使用都很成熟。2.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)程序跑飛,死機等一些不可預(yù)知的不正常工作現(xiàn)象。工作人員也不可能到現(xiàn)場對單片機重起,本設(shè)計為單片機電路添加一個外部看門狗電路。定時查詢單片機的工作狀態(tài),一但發(fā)現(xiàn)異常即對單片機延時重起。保證系統(tǒng)安全可靠的運行。NE56604能為多種微處理器和邏輯系統(tǒng)提供復(fù)位信號,其門限電平為4.2V 。在電源突然掉電或電源電壓下降到低于門限電平時。NE56604將產(chǎn)生精確的復(fù)位信號。NE56604內(nèi)置一個看門狗定時器,用于監(jiān)控微處理器,以確保微處理器的正常運行??撮T狗能產(chǎn)生一個系統(tǒng)復(fù)位信號用來終止任何由于微處理器故障而引發(fā)的不正常的系統(tǒng)操作。NE56604的看門狗的監(jiān)控周期為100mS(典型值)。特性.正負雙邏輯輸出的有效復(fù)位信號。.精準的門限電平監(jiān)測。.上電復(fù)位內(nèi)部延時。.可利用外部電阻調(diào)節(jié)的內(nèi)部看門狗定時器。.看門狗定時器的監(jiān)控周期為100mS 典型值。.VCC=0.8VDC時產(chǎn)生有效的復(fù)位信號典型值。.僅需很少的外圍元件。具體電路圖如下:3.2鍵盤以及顯示電路鍵盤電路單片機應(yīng)用系統(tǒng)中除了復(fù)位按鍵有專門的復(fù)位電路,以及專一的復(fù)位功能外,其它的按鍵或鍵盤都是以開關(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ù)值相對應(yīng)的鍵值,以實現(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引腳TO92小體積封裝形式。測溫分辨率可達0.0625,被測溫度用符號擴展的16位數(shù)字量方式串行輸出。其工作電源既可在遠端引入,也可采用寄生電源方式產(chǎn)生。CPU只需一根端口線就能與諸多DS18B20通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。DS18B20支持“一線總線”接口,測量溫度范圍為 -55C+125C,在-10+85C范圍內(nèi),精度為0.5C?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設(shè)備或過程控制、測溫類消費電子產(chǎn)品等。DS18B20內(nèi)部結(jié)構(gòu)(1) DS18B20的內(nèi)部結(jié)構(gòu)如下圖所示。DS18B20內(nèi)部結(jié)構(gòu)圖DS18B20有4個主要的數(shù)據(jù)部件: 64位激光ROM。64位激光ROM從高位到低位依次為8位CRC、48位序列號和8位家族代碼(28H)組成。 溫度靈敏元件。 非易失性溫度報警觸發(fā)器TH和TL??赏ㄟ^軟件寫入用戶報警上下限值。 配置寄存器。配置寄存器為高速暫存存儲器中的第五個字節(jié)。DS18B20在0工作時按此寄存器中的分辨率將溫度轉(zhuǎn)換成相應(yīng)精度的數(shù)值,其各位定義如圖所示。TMR1R011111MSB DS18B20配置寄存器結(jié)構(gòu)圖LSB其中,TM:測試模式標志位,出廠時被寫入0,不能改變;R0、R1:溫度計分辨率設(shè)置位,其對應(yīng)四種分辨率如下表所列,出廠時R0、R1置為缺省值:R0=1,R1=1(即12位分辨率),用戶可根據(jù)需要改寫配置寄存器以獲得合適的分辨率。配置寄存器與分辨率關(guān)系表 :R0R1溫度計分辨率/bit最大轉(zhuǎn)換時間/us00993.750110187.510113751112750(2) 高速暫存存儲器高速暫存存儲器由9個字節(jié)組成,其分配如下圖所示。當(dāng)溫度轉(zhuǎn)換命令發(fā)布后,經(jīng)轉(zhuǎn)換所得的溫度值以二字節(jié)補碼形式存放在高速暫存存儲器的第0和第1個字節(jié)。單片機可通過單線接口讀到該數(shù)據(jù),讀取時低位在前,高位在后,數(shù)據(jù)格式如圖所示。對應(yīng)的溫度計算:當(dāng)符號位S=0時,直接將二進制位轉(zhuǎn)換為十進制;當(dāng)S=1時,先將補碼變?yōu)樵a,再計算十進制值。溫度低位溫度高位THTL配置保留保留保留8位CRCLSB DS18B20 存儲器映像圖MSB溫度值格式圖DS18B20 溫度數(shù)據(jù)表:232221202-12-22-32-4MSBLSBSSSSS262524典型對應(yīng)的溫度值表:溫度/二進制表示十六進制表示+125 +25.0625+10.125+0.50-0.5-10.125-25.0625-5500000111 1101000000000001 1001000100000000 1010001000000000 0000100000000000 0000000011111111 1111100011111111 0101111011111110 0110111111111100 1001000007D0H0191H00A2H0008H0000HFFF8HFF5EHFE6FHFC90HDS18B20最大的特點是單總線數(shù)據(jù)傳輸方式,DS18B20的數(shù)據(jù)I/O均由同一條線來完成。硬件連接電路如下圖:本系統(tǒng)為多點溫度測試。DS18B20采用外部供電方式,理論上可以在一根數(shù)據(jù)總線上掛256個DS18B20,但時間應(yīng)用中發(fā)現(xiàn),如果掛接25個以上的DS18B20仍舊有可能產(chǎn)生功耗問題。另外單總線長度也不宜超過80M,否則也會影響到數(shù)據(jù)的傳輸。在這種情況下我們可以采用分組的方式,用單片機的多個I/O來驅(qū)動多路DS18B20。在實際應(yīng)用中還可以使用一個MOSFET將I/O口線直接和電源相連,起到上拉的作用。對DS18B20的設(shè)計,需要注意以下問題(1)對硬件結(jié)構(gòu)簡單的單線數(shù)字溫度傳感器DS18B20 進行操作,需要用較為復(fù)雜的程序完成。編制程序時必須嚴格按芯片數(shù)據(jù)手冊提供的有關(guān)操作順序進行,讀、寫時間片程序要嚴格按要求編寫。尤其在使用DS18B20 的高測溫分辨力時,對時序及電氣特性參數(shù)要求更高。(2)有多個測溫點時,應(yīng)考慮系統(tǒng)能實現(xiàn)傳感器出錯自動指示,進行自動DS18B20 序列號和自動排序,以減少調(diào)試和維護工作量。(3)測溫電纜線建議采用屏蔽4 芯雙絞線,其中一對線接地線與信號線,另一組接VCC和地線,屏蔽層在源端單點接地。DS18B20 在三線制應(yīng)用時,應(yīng)將其三線焊接牢固;在兩線應(yīng)用時,應(yīng)將VCC與GND接在一起,焊接牢固。若VCC脫開未接,傳感器只送85.0 的溫度值。(4)實際應(yīng)用時,要注意單線的驅(qū)動能力,不能掛接過多的DS18B20,同時還應(yīng)注意最遠接線距離。另外還應(yīng)根據(jù)實際情況選擇其接線拓撲結(jié)構(gòu)。3.3 串口通訊電路AT89C51有一個全雙工的串行通訊口,所以單片機和電腦之間可以方便地進行串口通訊。進行串行通訊時要滿足一定的條件,比如電腦的串口是RS232電平的,而單片機的串口是TTL電平的,兩者之間必須有一個電平轉(zhuǎn)換電路,我們采用了專用芯片MAX232進行轉(zhuǎn)換,雖然也可以用幾個三極管進行模擬轉(zhuǎn)換,但是還是用專用芯片更簡單可靠。具體電路如下:我們采用了三線制連接串口,也就是說和電腦的9針串口只連接其中的3根線:第5腳的GND、第2腳的RXD、第3腳的TXD。這是最簡單的連接方法,但是對本設(shè)計來說已經(jīng)足夠使用了,電路如上圖所示。通信線采用交叉接法,即兩者信號線對應(yīng)成為RT,TR。 具體連接電路如下:3.4 整體電路 見附件二(電路原理圖)第四章軟件設(shè)計4.1 概述整個系統(tǒng)的功能是由硬件電路配合軟件來實現(xiàn)的,當(dāng)硬件基本定型后,軟件的功能也就基本定下來了。從軟件的功能不同可分為兩大類:一是監(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)控程序結(jié)構(gòu),然后根據(jù)實時性的要求,合理地安排監(jiān)控軟件和各執(zhí)行模塊之間地調(diào)度關(guān)系。4.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機。將各個功能程序以子程序的形式寫好,當(dāng)寫主程序的時候,只需要調(diào)用子程序,然后在寄存器的分配上作一下調(diào)整,消除寄存器沖突和I/O沖突即可。程序應(yīng)該盡可能多的使用調(diào)用指令代替跳轉(zhuǎn)指令。因為跳轉(zhuǎn)指令使得程序難以看懂各程序段之間的結(jié)構(gòu)關(guān)系。而調(diào)用指令則不同,調(diào)用指令使得程序結(jié)構(gòu)清晰,無論是修改還是維護都比較方便。將功能程序段寫成子程序的形式,除了方便調(diào)用之外,還有一個好處那就是以后寫程序的時候如果要用到,就可以直接調(diào)用這個單元功能模塊。主程序流程圖如右圖:4.3 各模塊子程序設(shè)計下面對主要幾個子程序的流程圖做介紹:(1)溫度測試子程序設(shè)計見附錄一:溫度測試子程序流程圖(2)中斷控制程序設(shè)計如右圖:(3)串口通信程序設(shè)計 本次通訊中,測控系統(tǒng)分位上位機和下位機之間的通信,系統(tǒng)中單片機負責(zé)數(shù)據(jù)采集、處理和控制,上位機進行現(xiàn)場可視化檢測,通信協(xié)議采用半雙工異步串行通信方式,通過RS232的RTS信號進行收發(fā)轉(zhuǎn)換,傳輸數(shù)據(jù)采用二進制數(shù)據(jù),上位機與下位機之間采用主從式通訊。本人采用的VB環(huán)境下PC機與單片機之間實現(xiàn)串行通訊的軟硬件方案。VB是Microsoft公司推出的Windows應(yīng)用程序開發(fā)工具,因其具有界面友好,編程簡便等優(yōu)點而受到廣泛的使用,而且Visual Basic 6.0 版本帶有專門實現(xiàn)串行通訊的MSCOMM控件。MSComm控件串口具有完善的串口數(shù)據(jù)的發(fā)送和接收功能。通過此控件,PC機可以利用串行口與其它設(shè)備實現(xiàn)輕松連接,簡單高效地實現(xiàn)設(shè)備之間的通訊。此控件的事件響應(yīng)有兩種處理方式。事件驅(qū)動方式:由MSComm控件的OnComm事件捕獲并處理通訊錯誤及事件;查詢方式:通過檢查CommEvent屬性的值來判斷事件和錯誤。 1) MSComm控件的主要屬性和方法 a. CommPort:設(shè)置或返回串行端口號,其取值范圍為199,缺省為1 b. Setting:設(shè)置或返回串行端口的波特率、奇偶校驗位、數(shù)據(jù)位數(shù)、停止位。 c. PortOpen:打開或關(guān)閉串行端口。 d. RThreshold:該屬性為一閥值,它確定當(dāng)接收緩沖區(qū)內(nèi)字節(jié)個數(shù)達到或超過該值后就產(chǎn)生MSComml-OnComm事件。 e. Input:從接收緩沖區(qū)移走一串字符。 f. Output:向發(fā)送緩沖區(qū)傳送一字符串。 軟件流程圖如下:單片機程序流程圖PC通訊程序流程圖參數(shù)設(shè)定:通信端口選擇COM1,波特率設(shè)定為1200B/SMSCOmm.CommPort=1MSComm.Setting=“1200, n, 8, 1”。 START:MOVSP,#60HMOVTMOD,#20HMOVTH1,#0E6HMOVTL1,#0E6H ;1200B/S,晶振為12MHZMOV PCON,#00HMOVSCON,#50HSETBTR1第五章系統(tǒng)調(diào)試5.1 分步調(diào)試1、測試環(huán)境及工具測試溫度:0100攝氏度。(模擬多點不同溫度值環(huán)境)測試儀器及軟件:數(shù)字萬用表,溫度計0100攝氏度,串口調(diào)試助手。測試方法:目測。2、測試方法使系統(tǒng)運行,觀察系統(tǒng)硬件檢測是否正常(包括單片機最小系統(tǒng),鍵盤電路,顯示電路,溫度測試電路等)。系統(tǒng)自帶測試表格數(shù)據(jù),觀察顯示數(shù)據(jù)是否相符合即可。采用溫度傳感器和溫度計同時測量多點水溫變化情況(取溫度值不同的多點),目測顯示電路是否正常。并記錄各點溫度值,與實際溫度值比較,得出系統(tǒng)的溫度指標。使用串口調(diào)試助手與單片機通訊,觀察單片機與串口之間傳輸數(shù)據(jù)正確否。3、測試結(jié)果分析自檢正常,各點溫度顯示正常,串口傳輸數(shù)據(jù)正確。因為芯片是塑料封裝,所以對溫度的感應(yīng)靈敏度不是相當(dāng)高,需要一個很短的時間才能達到穩(wěn)定。5.2 統(tǒng)一調(diào)試將硬件及軟件結(jié)合起來進行系統(tǒng)的統(tǒng)一調(diào)試。實現(xiàn)PC機與單片機通訊,兩者可以實時更新顯示各點溫度值。結(jié)束語AT89C51的時鐘為12M,I/O口可達32個,高的時鐘頻率和豐富的I/O,都為實現(xiàn)電路功能提供了非常有利的條件。同時也AT89C51內(nèi)含4KB FLASH ROM,開發(fā)環(huán)境友好,易用,方便,大大加快本系統(tǒng)設(shè)計開發(fā)。撥碼開關(guān)的使用,使操作更為簡潔,易懂。實時顯示電路的設(shè)計,使溫度信息更迅速,直觀地發(fā)布。本制作的設(shè)計中使用了傳感器的只是插座電路,因此,該系統(tǒng)的可擴展性很強。整個系統(tǒng)硬件簡單、可靠,系統(tǒng)成本低。致此本人設(shè)計基本完成了預(yù)期的目標,系統(tǒng)在硬件自動測試,鍵盤操作,實時顯示方面做的比較好。但是由于時間倉促、條件有限,設(shè)計成果并不是很完美,還存在下面問題:串口通訊不穩(wěn)定,未對溫度數(shù)值統(tǒng)計處理以及存儲。我準備在今后的工作過程中進一步完善此設(shè)計。 參考文獻1. 賈振國. DS1820 及高精度溫度測量的實現(xiàn)J.電子技術(shù)應(yīng)用,2000(1):58 - 59.2. 余永權(quán). 單片機原理及應(yīng)用. 北京:電子工業(yè)出版社, 1997 3. 邦田. 電子電路實用

溫馨提示

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

評論

0/150

提交評論