畢業(yè)論文——多點溫度檢測系統(tǒng)設計
《畢業(yè)論文——多點溫度檢測系統(tǒng)設計》由會員分享,可在線閱讀,更多相關《畢業(yè)論文——多點溫度檢測系統(tǒng)設計(27頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、多點溫度檢測系統(tǒng)設計 第 1 頁 共 27 頁 目目 錄錄 摘要2 ABSTRACT3 第一章緒 論4 1.1 系統(tǒng)背景 4 1.2 系統(tǒng)概述4 第二章方案論證 5 2.1 傳感器部分 5 2.2 主控制部分6 2.3 系統(tǒng)方案 6 第三章 硬件電路設計7 3.1 電源以及看門狗電路7 3.2 鍵盤以及顯示電路9 3.2 溫度測試電路11 3.3 串口通訊電路15 3.4 整體電路16 第四章軟件設計 16 4.1 概述16 4.2 主程序方案 16 4.3 各模塊子程序設計 18 第五章系統(tǒng)調(diào)試 20 5.1 分步調(diào)試20 5.2 統(tǒng)一調(diào)試20 結束語21 參考文獻 22 附錄一:軟件流程圖
2、24 附錄二:電路原理圖 25 致 謝27 多點溫度檢測系統(tǒng)設計 第 2 頁 共 27 頁 多點溫度檢測系統(tǒng)多點溫度檢測系統(tǒng) 摘要摘要 DS18B20 是一種可組網(wǎng)的高精度數(shù)字式溫度傳感器,由于其具有單總線的獨特優(yōu)點, 可以使用戶輕松地組建起傳感器網(wǎng)絡,并可使多點溫度測量電路變得簡單、可靠。本文 結合實際使用經(jīng)驗,介紹了 DS18B20 數(shù)字溫度傳感器在單片機下的硬件連接及軟件編 程,并給出了軟件流程圖。 該系統(tǒng)由上位機和下位機兩大部分組成。下位機實現(xiàn)溫度的檢測并提供標準 RS232 通信接口,芯片使用了 ATMEL 公司的 AT89C51 單片機和 DALLAS 公司的 DS18B20 數(shù)字
3、溫度傳感器。上位機部分使用了通用 PC。該系統(tǒng)可應用于倉庫測溫、樓宇空調(diào)控 制和生產(chǎn)過程監(jiān)控等領域。 關鍵字關鍵字:溫度測量;單總線;數(shù)字溫度傳感器;單片機 多點溫度檢測系統(tǒng)設計 第 3 頁 共 27 頁 AbstractAbstract 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 in
4、terface .This paper introduces the application of DS18B20 with single chip processor. The system 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 disp
5、layed 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. KeyKey wordswords:temperature measure;single bus;digital thermometer;single chip processor; 多點溫度檢測系統(tǒng)設計 第 4 頁 共 27 頁 第一章
6、第一章緒緒 論論 1.11.1 系統(tǒng)背景系統(tǒng)背景 在工、農(nóng)業(yè)生產(chǎn)和日常生活中,對溫度的測量及控制占據(jù)著極其重要地位。首先讓 我們了解一下多點溫度檢測系統(tǒng)在各個方面的應用領域:消防電氣的非破壞性溫度檢測, 電力、電訊設備之過熱故障預知檢測,空調(diào)系統(tǒng)的溫度檢測,各類運輸工具之組件的過 熱檢測,保全與監(jiān)視系統(tǒng)之應用,醫(yī)療與健診的溫度測試,化工、機械等設備溫度過 熱檢測。溫度檢測系統(tǒng)應用十分廣闊。 1.2 系統(tǒng)概述系統(tǒng)概述 本設計運用主從分布式思想,由一臺上位機(PC 微型計算機),下位機(單片機) 多點溫度數(shù)據(jù)采集,組成兩級分布式多點溫度測量的巡回檢測系統(tǒng)。該系統(tǒng)采用 RS- 232 串行通訊標準,
7、通過上位機(PC)控制下位機(單片機)進行現(xiàn)場溫度采集。溫度 值既可以送回主控 PC 進行數(shù)據(jù)處理,由顯示器顯示。也可以由下位機單獨工作,實時 顯示當前各點的溫度值,對各點進行控制。 下位機采用的是單片機基于數(shù)字溫度傳感器 DS18B20 的系統(tǒng)。DS18B20 利用單總線 的特點可以方便的實現(xiàn)多點溫度的測量,輕松的組建傳感器網(wǎng)絡,系統(tǒng)的抗干擾性好、 設計靈活、方便,而且適合于在惡劣的環(huán)境下進行現(xiàn)場溫度測量。本系統(tǒng)可以應用在大 型工業(yè)及民用常溫多點監(jiān)測場合。如糧食倉儲系統(tǒng)、樓宇自動化系統(tǒng)、溫控制程生產(chǎn)線 之溫度影像檢測、醫(yī)療與健診的溫度測試、空調(diào)系統(tǒng)的溫度檢測、石化、機械等。 第二章第二章方案
8、論證方案論證 溫度檢測系統(tǒng)有則共同的特點:測量點多、環(huán)境復雜、布線分散、現(xiàn)場離監(jiān)控室遠 等。若采用一般溫度傳感器采集溫度信號,則需要設計信號調(diào)理電路、A/D 轉換及相 應的接口電路,才能把傳感器輸出的模擬信號轉換成數(shù)字信號送到計算機去處理。這樣, 多點溫度檢測系統(tǒng)設計 第 5 頁 共 27 頁 由于各種因素會造成檢測系統(tǒng)較大的偏差;又因為檢測環(huán)境復雜、測量點多、信號傳輸 距離遠及各種干擾的影響,會使檢測系統(tǒng)的穩(wěn)定性和可靠性下降 。所以多點溫度檢測 系統(tǒng)的設計的關鍵在于兩部分:溫度傳感器的選擇和主控單元的設計。溫度傳感器應用 范圍廣泛、使用數(shù)量龐大,也高居各類傳感器之首。 2.1 傳感器部分傳感
9、器部分 方案一:方案一: 采用熱敏電阻,可滿足 40 攝氏度至 90 攝氏度測量范圍,但熱敏電阻精度、重復性、 可靠性較差,對于檢測 1 攝氏度的信號是不適用的。而且在溫度測量系統(tǒng)中,采用單片 溫度傳感器,比如 AD590,LM35 等.但這些芯片輸出的都是模擬信號,必須經(jīng)過 A/D 轉換后 才能送給計算機,這樣就使得測溫裝置的結構較復雜.另外,這種測溫裝置的一根線上只 能掛一個傳感器,不能進行多點測量.即使能實現(xiàn),也要用到復雜的算法,一定程度上也 增加了軟件實現(xiàn)的難度。 方案二:方案二: 在多點測溫系統(tǒng)中,傳統(tǒng)的測溫方法是將模擬信號遠距離采樣進行 AD 轉換,而為 了獲得較高的測溫精度,就必
10、須采用措施解決由長線傳輸,多點測量切換及放大電路零 點漂移等造成的誤差補償問題。采用數(shù)字溫度芯片 DS18B20 測量溫度,輸出信號全數(shù)字 化。便于單片機處理及控制,省去傳統(tǒng)的測溫方法的很多外圍電路。且該芯片的物理化 學性很穩(wěn)定,它能用做工業(yè)測溫元件,此元件線形較好。在 0100 攝氏度時,最大線 形偏差小于 1 攝氏度。DS18B20 的最大特點之一采用了單總線的數(shù)據(jù)傳輸,由數(shù)字溫度 計 DS1820 和微控制器 AT89C51 構成的溫度測量裝置,它直接輸出溫度的數(shù)字信號,可直 接與計算機連接。這樣,測溫系統(tǒng)的結構就比較簡單,體積也不大,且由于 AT89C51 可以 帶多個 DSB1820
11、,因此可以非常容易實現(xiàn)多點測量.輕松的組建傳感器網(wǎng)絡。 采用溫度芯片 DS18B20 測量溫度,可以體現(xiàn)系統(tǒng)芯片化這個趨勢。部分功能電路的 集成,使總體電路更簡潔,搭建電路和焊接電路時更快。而且,集成塊的使用,有效地 避免外界的干擾,提高測量電路的精確度。所以集成芯片的使用將成為電路發(fā)展的一種 趨勢。本方案應用這一溫度芯片,也是順應這一趨勢。 多點溫度檢測系統(tǒng)設計 第 6 頁 共 27 頁 2.2 主控制部分主控制部分 方案一:方案一: 此方案采用 PC 機實現(xiàn)。它可在線編程,可在線仿真的功能,這讓調(diào)試變得方便。 且人機交互友好。但是 PC 機輸出信號不能直接與 DS18B20 通信。需要通過
12、 RS232 電平 轉換兼容,硬件的合成在線調(diào)試,較為繁瑣,很不簡便。而且在一些環(huán)境比較惡劣的場 合,PC 機的體積大,攜帶安裝不方便,性能不穩(wěn)定,給工程帶來很多麻煩! 方案二:方案二: 此方案采用 AT89C51 八位單片機實現(xiàn)。單片機軟件編程的自由度大,可通過編程實 現(xiàn)各種各樣的算術算法和邏輯控制。而且體積小,硬件實現(xiàn)簡單,安裝方便。既可以單 獨對多 DS18B20 控制工作,還可以與 PC 機通信.運用主從分布式思想,由一臺上位機 (PC 微型計算機) ,下位機(單片機)多點溫度數(shù)據(jù)采集,組成兩級分布式多點溫度測 量的巡回檢測系統(tǒng),實現(xiàn)遠程控制。另外 AT89C51 在工業(yè)控制上也有著廣
13、泛的應用,編 程技術及外圍功能電路的配合使用都很成熟。 2.3 系統(tǒng)方案 綜上所述,溫度傳感器以及主控部分都采用第二方案。 系統(tǒng)采用針對傳統(tǒng)溫度測溫系統(tǒng)測溫點少,系統(tǒng)兼容性及擴展性較差的特點,運用 分布式通訊的思想。設計一種可以用于大規(guī)模多點溫度測量的巡回檢測系統(tǒng)。該系統(tǒng)采 用的是 RS-232 串行通訊的標準,通過下位機(單片機)進行現(xiàn)場的溫度采集,溫度數(shù) 據(jù)既可以由下位機模塊實時顯示,也可以送回上位機進行數(shù)據(jù)處理,具有巡檢速度快, 擴展性好,成本低的特點。 實際采用電路方案如下圖: 多點溫度檢測系統(tǒng)設計 第 7 頁 共 27 頁 第三章第三章 硬件電路設計硬件電路設計 系統(tǒng)底層電路的功能主
14、要包括:多點溫度測試及其相關處理,實時顯示溫度信息, 與上位機通訊傳輸溫度數(shù)據(jù)。硬件設計主要包括以下幾個模塊:電源以及看門狗電路, 鍵盤以及顯示電路,溫度測試電路,串口通訊電路。下面對電路分模塊進行說明 3.1 電源以及看門狗電路電源以及看門狗電路 a電源電路 因為單片機工作電源為+5V,且底層電路功耗很小。采用 7805 三端穩(wěn)壓片即可滿足 要求。 具體電路圖如下: 下位機 (AT89C51) 上位機(PC) 下位機 (AT89C51) 傳感器模塊 顯示模塊 控制模塊 傳感器模塊 顯示模塊 控制模塊 上位機(PC) 下位機 (AT89C51) 傳感器模塊 顯示模塊 控制模塊 傳感器模塊 顯示
15、模塊 控制模塊 多點溫度檢測系統(tǒng)設計 第 8 頁 共 27 頁 b看門狗電路 考慮到底層電路板的工作環(huán)境相對惡劣,單片機會受到周圍環(huán)境的干擾,而出現(xiàn)程 序跑飛,死機等一些不可預知的不正常工作現(xiàn)象。工作人員也不可能到現(xiàn)場對單片機 重起,本設計為單片機電路添加一個外部看門狗電路。定時查詢單片機的工作狀態(tài),一 但發(fā)現(xiàn)異常即對單片機延時重起。保證系統(tǒng)安全可靠的運行。 NE56604能為多種微處理器和邏輯系統(tǒng)提供復位信號,其門限電平為4.2V 。在電源 突然掉電或電源電壓下降到低于門限電平時。NE56604將產(chǎn)生精確的復位信號。NE56604 內(nèi)置一個看門狗定時器,用于監(jiān)控微處理器,以確保微處理器的正常
16、運行??撮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)生有效的復位信號典型值。 .僅需很少的外圍元件。 具體電路圖如下: 多點溫度檢測系統(tǒng)設計 第 9 頁 共 27 頁 3.2 鍵盤以及顯示電路鍵盤以及顯示電路 鍵盤電路鍵盤電路 單片機應用系統(tǒng)中除了復位按鍵有專門的復位電路,以及專一的復位功能
17、外,其它 的按鍵或鍵盤都是以開關狀態(tài)來設置控制功能或輸入數(shù)據(jù)。鍵盤有編碼和非編碼兩種。 非編碼鍵盤硬件電路極為簡單。故本系統(tǒng)采用撥碼開關來控制。具體電路如下: A.A. 開關狀態(tài)的可靠輸入開關狀態(tài)的可靠輸入 鍵開關狀態(tài)的可靠輸入有兩種解決方法。一種是軟件去抖動:它是在檢測到有鍵 按下時,執(zhí)行一個 10ms 的延時程序后,再確認該鍵電平是否仍保持閉合狀態(tài)電平,如 保持閉合狀態(tài)電平則確認為真正鍵按下狀態(tài),從而消除了抖動影響。另一種為硬件去 抖動:即為按鍵添加一個鎖存器。兩種方法都簡單易行,本設計采用的是硬件去抖。 B.B. 對按鍵進行編碼給定鍵值或給出鍵號對按鍵進行編碼給定鍵值或給出鍵號 對于按鍵
18、無論有無編碼,以及采用什么編碼,最后都要轉換成為與累加器中數(shù)值相 對應的鍵值,以實現(xiàn)按鍵功能程序的散轉轉移。為使編碼間隔小,散轉入口地址安排方 便,常采用依次序排列的鍵號。 撥碼開關值撥碼開關值含義含義 0000 實時顯示通道一的溫度值 0001 實時顯示通道二的溫度值 0010 實時顯示通道三的溫度值 多點溫度檢測系統(tǒng)設計 第 10 頁 共 27 頁 0011 實時顯示通道四的溫度值 0100 實時顯示通道五的溫度值 0101 實時顯示通道六的溫度值 0110 實時顯示通道七的溫度值 0111 實時顯示通道八的溫度值 1* 自動循環(huán)顯示所有通道的溫度 C.C. 選擇鍵盤監(jiān)測方法選擇鍵盤監(jiān)測方
19、法 對是否有鍵按下的信息輸入方式有中斷方式與查詢方式兩種。本設計采用的查詢法, 即在在 CPU 空閑時調(diào)用鍵盤掃描子程序。 溫度顯示電路溫度顯示電路 設計采用的是共陰極七段數(shù)碼管。顯示方式有動態(tài)掃描和靜態(tài)顯示,兩種方法在 本設計中皆可。由于靜態(tài)掃描要用到多片串入并出芯片,考慮到電路板成本計算。本人 采用是節(jié)約硬件資源的動態(tài)掃描方式。即用兩塊芯片就可以完成顯示功能。顯示數(shù)據(jù)由 4511 譯碼器輸出,ULN2003 為位驅動掃描信號。 具體電路圖如下: 多點溫度檢測系統(tǒng)設計 第 11 頁 共 27 頁 3.2 溫度測試電路溫度測試電路 這里我們用到溫度芯片 DS18B20。DS18B20 是 DA
20、LLAS 公司生產(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)境控制、設備或過程控制、測溫類消 費電子產(chǎn)
21、品等。 多點溫度檢測系統(tǒng)設計 第 12 頁 共 27 頁 DS18B20DS18B20 內(nèi)部結構內(nèi)部結構 (1) DS18B20 的內(nèi)部結構如下圖所示。 DS18B20 內(nèi)部結構圖 DS18B20 有 4 個主要的數(shù)據(jù)部件: 64 位激光 ROM。64 位激光 ROM 從高位到低位依次為 8 位 CRC、48 位序列號和 8 位家 族代碼(28H)組成。 溫度靈敏元件。 非易失性溫度報警觸發(fā)器 TH 和 TL??赏ㄟ^軟件寫入用戶報警上下限值。 配置寄存器。配置寄存器為高速暫存存儲器中的第五個字節(jié)。DS18B20 在 0 工作時 按此寄存器中的分辨率將溫度轉換成相應精度的數(shù)值,其各位定義如圖所示
22、。 TMR1R011111 MSB DS18B20 配置寄存器結構圖 LSB 其中,TM:測試模式標志位,出廠時被寫入 0,不能改變;R0、R1:溫度計分辨率 設置位,其對應四種分辨率如下表所列,出廠時 R0、R1 置為缺省值:R0=1,R1=1(即 12 位分辨率),用戶可根據(jù)需要改寫配置寄存器以獲得合適的分辨率。 配置寄存器與分辨率關系表 : R0R1 溫度計分辨率/bit最大轉換時間/us 多點溫度檢測系統(tǒng)設計 第 13 頁 共 27 頁 00993.75 0110187.5 1011375 1112750 (2) 高速暫存存儲器 高速暫存存儲器由 9 個字節(jié)組成,其分配如下圖所示。當溫
23、度轉換命令發(fā)布后, 經(jīng)轉換所得的溫度值以二字節(jié)補碼形式存放在高速暫存存儲器的第 0 和第 1 個字節(jié)。單 片機可通過單線接口讀到該數(shù)據(jù),讀取時低位在前,高位在后,數(shù)據(jù)格式如圖所示。對 應的溫度計算:當符號位 S=0 時,直接將二進制位轉換為十進制;當 S=1 時,先將補碼 變?yōu)樵a,再計算十進制值。 溫度低位溫度高位 THTL 配置保留保留保留8 位 CRC LSB DS18B20 存儲器映像圖 MSB 溫度值格式圖 DS18B20 溫度數(shù)據(jù)表: 2 23 32 22 22 21 12 20 02 2-1-12 2-2-22 2-3-32 2-4-4 MSBMSBLSBLSB S SS SS
24、SS SS S2 26 62 25 52 24 4 典型對應的溫度值表: 溫度/二進制表示十六進制表示 +125 +25.0625 +10.125 +0.5 0 -0.5 00000111 11010000 00000001 10010001 00000000 10100010 00000000 00001000 00000000 00000000 11111111 11111000 07D0H 0191H 00A2H 0008H 0000H FFF8H 多點溫度檢測系統(tǒng)設計 第 14 頁 共 27 頁 -10.125 -25.0625 -55 11111111 01011110 111111
25、10 01101111 11111100 10010000 FF5EH FE6FH FC90H DS18B20 最大的特點是單總線數(shù)據(jù)傳輸方式,DS18B20 的數(shù)據(jù) I/O 均由同一條線來 完成。 硬件連接電路如下圖: AT89C51 DS18B 20 1# DS18B 20 2# DS18B 20 3# DS18B 20 20# VCC=5V 4.7K 1WIRE 本系統(tǒng)為多點溫度測試。DS18B20 采用外部供電方式,理論上可以在一根數(shù)據(jù)總線 上掛 256 個 DS18B20,但時間應用中發(fā)現(xiàn),如果掛接 25 個以上的 DS18B20 仍舊有可能 產(chǎn)生功耗問題。另外單總線長度也不宜超過
26、80M,否則也會影響到數(shù)據(jù)的傳輸。在這種 情況下我們可以采用分組的方式,用單片機的多個 I/O 來驅動多路 DS18B20。在實際應 用中還可以使用一個 MOSFET 將 I/O 口線直接和電源相連,起到上拉的作用。 對 DS18B20 的設計,需要注意以下問題 (1)對硬件結構簡單的單線數(shù)字溫度傳感器DS18B20 進行操作,需要用較為復雜 的程序完成。編制程序時必須嚴格按芯片數(shù)據(jù)手冊提供的有關操作順序進行,讀、寫時 間片程序要嚴格按要求編寫。尤其在使用DS18B20 的高測溫分辨力時,對時序及電氣特 性參數(shù)要求更高。 (2)有多個測溫點時,應考慮系統(tǒng)能實現(xiàn)傳感器出錯自動指示,進行自動DS1
27、8B20 序列號和自動排序,以減少調(diào)試和維護工作量。 多點溫度檢測系統(tǒng)設計 第 15 頁 共 27 頁 (3)測溫電纜線建議采用屏蔽4 芯雙絞線,其中一對線接地線與信號線,另一組 接VCC和地線,屏蔽層在源端單點接地。DS18B20 在三線制應用時,應將其三線焊接牢 固;在兩線應用時,應將VCC與GND接在一起,焊接牢固。若VCC脫開未接,傳感器只送 85.0 的溫度值。 (4)實際應用時,要注意單線的驅動能力,不能掛接過多的DS18B20,同時還應注 意最遠接線距離。另外還應根據(jù)實際情況選擇其接線拓撲結構。 3.3 串口通訊電路串口通訊電路 AT89C51 有一個全雙工的串行通訊口,所以單片
28、機和電腦之間可以方便地進行串口 通訊。進行串行通訊時要滿足一定的條件,比如電腦的串口是 RS232 電平的,而單片機 的串口是 TTL 電平的,兩者之間必須有一個電平轉換電路,我們采用了專用芯片 MAX232 進行轉換,雖然也可以用幾個三極管進行模擬轉換,但是還是用專用芯片更簡 單可靠。 具體電路如下: C2- 5 C2+ 4 R2O 9 T2IN 10 T1O 14 R1IN 13 C1- 3 C1+ 1 GND 15 VS- 6 R2IN 8 T2O 7 T1IN 11 R1O 12 VS+ 2 VCC 16 U18 MAX232 VCC C32 1u/25V C33 1u/25V C34
29、 1u/25V C35 1u/25V C36 1u/25V 1 6 2 7 3 8 4 9 5 J15 DB9 RXD TXD 我們采用了三線制連接串口,也就是說和電腦的 9 針串口只連接其中的 3 根線:第 5 腳的 GND、第 2 腳的 RXD、第 3 腳的 TXD。這是最簡單的連接方法,但是對本設計來說 已經(jīng)足夠使用了,電路如上圖所示。通信線采用交叉接法,即兩者信號線對應成為 R T,TR。 具體連接電路如下: 多點溫度檢測系統(tǒng)設計 第 16 頁 共 27 頁 1 6 2 7 3 8 4 9 5 J1 DB9 AT89C51 1 6 2 7 3 8 4 9 5 J2 DB9 PC RXD
30、RXD TXDTXD 3.4 整體電路整體電路 見附件二(電路原理圖) 第四章第四章軟件設計軟件設計 4.1 概述概述 整個系統(tǒng)的功能是由硬件電路配合軟件來實現(xiàn)的,當硬件基本定型后,軟件的功 能也就基本定下來了。從軟件的功能不同可分為兩大類:一是監(jiān)控軟件(主程序) ,它 是整個控制系統(tǒng)的核心,專門用來協(xié)調(diào)各執(zhí)行模塊和操作者的關系。二是執(zhí)行軟件(子 程序) ,它是用來完成各種實質(zhì)性的功能如測量、計算、顯示、通訊等。每一個執(zhí)行軟 件也就是一個小的功能執(zhí)行模塊。這里將各執(zhí)行模塊一一列出,并為每一個執(zhí)行模塊進 行功能定義和接口定義。各執(zhí)行模塊規(guī)劃好后,就可以規(guī)劃監(jiān)控程序了。 首先要根據(jù)系統(tǒng)的總體功能和
31、鍵盤設置選擇一種最合適的監(jiān)控程序結構,然后根據(jù) 實時性的要求,合理地安排監(jiān)控軟件和各執(zhí)行模塊之間地調(diào)度關系。 4.2 主程序方案主程序方案 主程序調(diào)用了 4 個子程序,分別是數(shù)碼管顯示程序、鍵盤掃描以及按鍵處理程序、 溫度測試程序、中斷控制程序、單片機與 PC 機串口通訊程序。 鍵盤掃描電路及按鍵處理程序:實現(xiàn)鍵盤的輸入按鍵的識別及相關處理。 溫度測試程序:對溫度芯片送過來的數(shù)據(jù)進行處理,進行判斷和顯示。 多點溫度檢測系統(tǒng)設計 第 17 頁 共 27 頁 數(shù)碼管顯示程序:向數(shù)碼的顯示送數(shù),控制系統(tǒng)的顯示部分。 中斷控制程序:實現(xiàn)循環(huán)顯示功能。 串口通訊程序:實現(xiàn) PC 機與單片機通訊,將溫度數(shù)
32、據(jù)傳送給 PC 機。 將各個功能程序以子程序的形式寫好, 當寫主程序的時候,只需要調(diào)用子程序, 然后在寄存器的分配上作一下調(diào)整,消除 寄存器沖突和 I/O 沖突即可。程序應該盡 可能多的使用調(diào)用指令代替跳轉指令。因 為跳轉指令使得程序難以看懂各程序段之 間的結構關系。而調(diào)用指令則不同,調(diào)用 指令使得程序結構清晰,無論是修改還是 維護都比較方便。將功能程序段寫成子程 序的形式,除了方便調(diào)用之外,還有一個 好處那就是以后寫程序的時候如果要用到, 就可以直接調(diào)用這個單元功能模塊。 主程序流程圖如右圖: 程序結構 LED 顯示 數(shù)碼管 顯示程 序 鍵盤 掃描 程序 中斷 控制 程序 溫度芯片 傳數(shù)據(jù)程
33、序 繼電器控制程序 與當前溫度相比較程序 串口通 訊程序 程序結構 LED 顯示 數(shù)碼管 顯示程 序 鍵盤 掃描 程序 中斷 控制 程序 溫度芯片 傳數(shù)據(jù)程序 繼電器控制程序 與當前溫度相比較程序 串口通 訊程序 開始 系統(tǒng)初始化 系統(tǒng)硬件測試程序 串口通訊子程序 溫度顯示子程序 撥碼開關掃描子程序 溫度測試及處理子程序 開始 系統(tǒng)初始化 系統(tǒng)硬件測試程序 串口通訊子程序 溫度顯示子程序 撥碼開關掃描子程序 溫度測試及處理子程序 多點溫度檢測系統(tǒng)設計 第 18 頁 共 27 頁 4.3 各模塊子程序設計各模塊子程序設計 下面對主要幾個子程序的流程圖做介紹: (1)溫度測試子程序設計 見附錄一:
34、溫度測試子程序流程圖 (2)中斷控制程序設計 如右圖: (3)串口通信程序設計 本次通訊中,測控系統(tǒng)分位上位機和下位 機之間的通信,系統(tǒng)中單片機負責數(shù)據(jù)采集、 處理和控制,上位機進行現(xiàn)場可視化檢測,通 信協(xié)議采用半雙工異步串行通信方式,通過 RS232 的 RTS 信號進行收發(fā)轉換,傳輸數(shù)據(jù)采用二進制數(shù)據(jù),上位機與下位機之間采用 主從式通訊。本人采用的 VB 環(huán)境下 PC 機與單片機之間實現(xiàn)串行通訊的軟硬件方案。VB 是 Microsoft 公司推出的 Windows 應用程序開發(fā)工具,因其具有界面友好,編程簡便等 優(yōu)點而受到廣泛的使用,而且 Visual Basic 6.0 版本帶有專門實現(xiàn)
35、串行通訊的 MSCOMM 控件。 MSComm控件串口具有完善的串口數(shù)據(jù)的發(fā)送和接收功能。通過此控件,PC機可以利 用串行口與其它設備實現(xiàn)輕松連接,簡單高效地實現(xiàn)設備之間的通訊。此控件的事件響 應有兩種處理方式。事件驅動方式:由MSComm控件的OnComm事件捕獲并處理通訊錯誤及 事件;查詢方式:通過檢查CommEvent屬性的值來判斷事件和錯誤。 1) MSComm 控件的主要屬性和方法 a. CommPort:設置或返回串行端口號,其取值范圍為 199,缺省為 1 b. Setting:設置或返回串行端口的波特率、奇偶校驗位、數(shù)據(jù)位數(shù)、停止位。 c. PortOpen:打開或關閉串行端口
36、。 d. RThreshold:該屬性為一閥值,它確定當接收緩沖區(qū)內(nèi)字節(jié)個數(shù)達到或超過該 中斷入口 到否 定時器重新賦值 裝下一個溫度顯示 存儲單元地址 返回 中斷入口 到否 定時器重新賦值 裝下一個溫度顯示 存儲單元地址 返回 多點溫度檢測系統(tǒng)設計 第 19 頁 共 27 頁 值后就產(chǎn)生 MSComml-OnComm 事件。 e. Input:從接收緩沖區(qū)移走一串字符。 f. Output:向發(fā)送緩沖區(qū)傳送一字符串。 軟件流程圖如下: 單片機程序流程圖 PC 通訊程序流程圖 參數(shù)設定:通信端口選擇 COM1,波特率設定為 1200B/S MSCOmm.CommPort=1 MSComm.Se
37、tting=“1200, n, 8, 1” 。 START: MOVSP,#60H MOVTMOD,#20H MOVTH1,#0E6H 開始 自動接收數(shù)據(jù)子程序 讀一個數(shù)據(jù)且存儲 回復55H 接受字節(jié)數(shù)據(jù) 是聯(lián)絡信號AAH? 返回 8個字節(jié)到否? N Y N Y 開始 自動接收數(shù)據(jù)子程序 讀一個數(shù)據(jù)且存儲 回復55H 接受字節(jié)數(shù)據(jù) 是聯(lián)絡信號AAH? 返回 8個字節(jié)到否? N Y N Y 開始 發(fā)聯(lián)絡信號AAH 發(fā)儲存單元數(shù)據(jù) 是聯(lián)絡信號55H? N Y 返回 開始 發(fā)聯(lián)絡信號AAH 發(fā)儲存單元數(shù)據(jù) 是聯(lián)絡信號55H? N Y 返回 多點溫度檢測系統(tǒng)設計 第 20 頁 共 27 頁 MOVTL
38、1,#0E6H ;1200B/S,晶振為12MHZ MOV PCON,#00H MOVSCON,#50H SETBTR1 第五章第五章系統(tǒng)調(diào)試系統(tǒng)調(diào)試 5.1 分步調(diào)試分步調(diào)試 1 1、測試環(huán)境及工具、測試環(huán)境及工具 測試溫度:0100 攝氏度。 (模擬多點不同溫度值環(huán)境) 測試儀器及軟件:數(shù)字萬用表,溫度計 0100 攝氏度,串口調(diào)試助手。 測試方法:目測。 2 2、測試方法、測試方法 使系統(tǒng)運行,觀察系統(tǒng)硬件檢測是否正常(包括單片機最小系統(tǒng),鍵盤電路,顯示 電路,溫度測試電路等) 。系統(tǒng)自帶測試表格數(shù)據(jù),觀察顯示數(shù)據(jù)是否相符合即可。 采用溫度傳感器和溫度計同時測量多點水溫變化情況(取溫度值
39、不同的多點) ,目 測顯示電路是否正常。并記錄各點溫度值,與實際溫度值比較,得出系統(tǒng)的溫度指標。 使用串口調(diào)試助手與單片機通訊,觀察單片機與串口之間傳輸數(shù)據(jù)正確否。 3 3、測試結果分析、測試結果分析 自檢正常,各點溫度顯示正常,串口傳輸數(shù)據(jù)正確。 因為芯片是塑料封裝,所以對溫度的感應靈敏度不是相當高,需要一個很短的時 間才能達到穩(wěn)定。 5.2 統(tǒng)一調(diào)試統(tǒng)一調(diào)試 將硬件及軟件結合起來進行系統(tǒng)的統(tǒng)一調(diào)試。實現(xiàn) PC 機與單片機通訊,兩者可 以實時更新顯示各點溫度值。 多點溫度檢測系統(tǒng)設計 第 21 頁 共 27 頁 結束語結束語 AT89C51 的時鐘為 12M,I/O 口可達 32 個,高的時
40、鐘頻率和豐富的 I/O,都為實現(xiàn) 電路功能提供了非常有利的條件。同時也 AT89C51 內(nèi)含 4KB FLASH ROM,開發(fā)環(huán)境友好, 易用,方便,大大加快本系統(tǒng)設計開發(fā)。撥碼開關的使用,使操作更為簡潔,易懂。實 時顯示電路的設計,使溫度信息更迅速,直觀地發(fā)布。本制作的設計中使用了傳感器的 只是插座電路,因此,該系統(tǒng)的可擴展性很強。整個系統(tǒng)硬件簡單、可靠,系統(tǒng)成本低。 致此本人設計基本完成了預期的目標,系統(tǒng)在硬件自動測試,鍵盤操作,實時顯示 方面做的比較好。但是由于時間倉促、條件有限,設計成果并不是很完美,還存在下面 問題:串口通訊不穩(wěn)定,未對溫度數(shù)值統(tǒng)計處理以及存儲。我準備在今后的工作過程
41、中 進一步完善此設計。 多點溫度檢測系統(tǒng)設計 第 22 頁 共 27 頁 參考文獻參考文獻 1. 賈振國. DS1820 及高精度溫度測量的實現(xiàn)J.電子技術應用,2000(1): 58 - 59. 2. 余永權. 單片機原理及應用. 北京:電子工業(yè)出版社, 1997 3. 邦田. 電子電路實用抗干擾技術. 北京:人民郵電出版社,1994 4. Dallas semiconductor inc,ds18b20 programmable resolution 1wiredigital thermometer 2001Z . 5. 曲喜貴. 電子元件材料手冊 M. 北京:電子工業(yè)出版社,1989.4
42、22-430. 6. 黃賢武,鄭筱霞,曲波等. 傳感器實際應用電路設計M. 成都:電子科技大學 出版社,1997.4-10. 7. 劉君華. 智能傳感器系統(tǒng) M . 西安:西安電子科技大學出版社,1999. 8. 余永權. Flash 單片機原理及應用 M. 北京:電子工業(yè)出版社,1997. 9. 邦田. 電子電路實用抗干擾技術 M . 北京:人民郵電出版社,1994. 10. 周云波. 由DS18B20單線數(shù)字溫度計構成的單線多點溫度測量系統(tǒng). 電子技術 應用,1996(2):15- 20. 11. 吉鵬 ,馬云峰等. 微機原理與接口技術 M. 北京:高等教育出版社,2001. 12. 振國
43、. DS1820 及高精度溫度測量的實現(xiàn) J . 電子技術應用,2000 (1) . 13. 東耀,汪仁煌. 數(shù)字溫度傳感器在倉庫溫度檢測系統(tǒng)的應用J. 傳感器世界, 2001(12):30- 33. 14. 月霞,孫傳友. DS18B20 硬件連接及軟件編程J. 傳感器世界,2001(12): 25- 29. 15. 一線數(shù)字溫度傳感器資料M. 武漢:武漢力源電子有限公司,1996. 16. 賢武,鄭霞,曲波. 傳感器實際應用電路設計M. 成都:電子科技大學出版 社,1997. 17. 偉正. 單線數(shù)字溫度傳感器的原理與應用1. 電子技術應用,2000,6.66-68 18. DALLAS公
44、司.DS18B20數(shù)據(jù)手冊Z 19. 周月霞,孫傳友. DS18B20 硬件連接及軟件編程J. 傳感器世界, 2001, (12). 多點溫度檢測系統(tǒng)設計 第 23 頁 共 27 頁 20. 單線數(shù)字溫度傳感器資料M. 武漢:武漢力源電子有限公司,1996. 21. 賈東耀,汪仁煌. 數(shù)字溫度傳感器在倉庫溫度檢測系統(tǒng)的應用J. 傳感器世界, 2001(12). 22. 余永權. ATMEL 89系列單片機應用技術M. 北京:北京航空航天大學出版社 2002. 23. 胡漢才. 單片機原理及系統(tǒng)設計M. 北京:清華大學出版社,2002 24. 李更祥. 單總線數(shù)字式智能型溫度傳感器在測控領域中的
45、應用J. 計算機自動 測量與控制,1999,7(3):51-53. 25. 忠梅. 單片機的C語言應用程序設計M. 北京:北京航空航天大學出版社, 1997 多點溫度檢測系統(tǒng)設計 第 24 頁 共 27 頁 附錄附錄 附錄一:溫度測試子程序流程圖 初始化 DS18B20 匹配ROM命令 發(fā)一個 DS18B20 序列號 等待1u s 讀當前 DS18B20 溫度 開始 所有 DS18B20 都訪問完畢 ? 存在一個 DS18B20? 發(fā)搜索 ROM命令 讀并存儲當前 DS18B20 序列號 跳過ROM命令 初始化 DS18B20 溫度轉換命令 初始化 DS18B20 Y Y N NY Y N N
46、 初始化 DS18B20 匹配ROM命令 發(fā)一個 DS18B20 序列號 等待1ms轉換結束 讀當前 DS18B20 溫度 開始 所有DS18B20 都訪問完畢? 存在一個 DS18B20? 發(fā)搜索 ROM命令 讀并存儲當前 DS18B20 序列號 跳過ROM命令 初始化 DS18B20 初始化 DS18B20 Y Y N NY Y N N 多點溫度檢測系統(tǒng)設計 第 25 頁 共 27 頁 附錄二:電路原理圖 12345678 A B C D 87654321 D C B A Title NumberRevisionSize A3 Date:22-May-2006Sheet of File:E
47、:.ddbDrawn By: P07 32 P06 33 P05 34 P04 35 P03 36 P02 37 P01 38 P00 39 INT1 13 INT0 12 T1 15 T0 14 EA/VP 31 X1 19 X2 18 RD 17 WD 16 RESET 9 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 RXD 10 TXD 11 ALE/P 30 PSEN 29 VCC 40 GND 20 U3 AT89C51
48、A 7 B 1 C 2 D 6 LT 3 BI 4 LE 5 A 13 B 12 C 11 D 10 E 9 F 15 G 14 U13 4511 1 2 J12 CON2 R2680 2 2 1 1 PTC2 1A IN 1 OUT 2 GND 3 U147805 C25 10u/16V C26 1u/16V VCC C27 470u/25V +5V Y2 20MHz C28 20P C29 20P C30 0.68u C31 1u/16V /RESET 8 VS 7 RCT 6 VCC 5 CT 1 RESET 2 CLK 3 GND 4 U15 NE56604 R8 1K VCC 12
49、U16A 74HC04 R6 300 S2 P-SW D4 LED IN1 1 IN2 2 IN3 3 IN4 4 IN5 5 IN6 6 IN7 7 GND 8 VCC 9 OUT7 10 OUT6 11 OUT5 12 OUT4 13 OUT3 14 OUT2 15 OUT1 16 U17ULN2003 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 RP3 8*10K VCC C2- 5 C2+ 4 R2O 9 T2IN 10 T1O 14 R1IN 13 C1- 3 C1+ 1 GND 15 VS- 6 R2IN 8 T2O 7 T1IN 11 R1O 12 V
50、S+ 2 VCC 16 U18 MAX232 VCC C32 1u/25V C33 1u/25V C34 1u/25V C35 1u/25V C36 1u/25V U19 BUZZER D5 LED VCC R7 300 D0 D1 D2 D3 D4 D5 D6 D0 D1 D2 D3 D4 D5 D6 D0 D1 D2 D3 D4 D5 D6 D0 D1 D2 D3 D4 D5 D6 D0 D1 D2 D3 D4 D5 D6 D7 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 RP4 8*10K SELB SELB C37 0.1U VCC C38 0.1U VCC
51、 C39 0.1U VCC C40 0.1U VCC C41 0.1U VCC C42 0.1U VCC C43 0.1U VCC C44 0.1U VCC C45 0.1U VCC VCC L2 33uH C48 10u/16V C46 0.1U DS0 DS1 DS2 DS3 DS0DS1DS2DS3 1 2 3 4 5 6 7 a b c d e f g 8 dp 9 GND a bf c g d e dp DS10 YELLOWCC 1 2 3 4 5 6 7 a b c d e f g 8 dp 9 GND a bf c g d e dp DS11 YELLOWCC 1 2 3 4
52、5 6 7 a b c d e f g 8 dp 9 GND a bf c g d e dp DS12 YELLOWCC 1 2 3 4 5 6 7 a b c d e f g 8 dp 9 GND a bf c g d e dp DS13 YELLOWCC 1 2 3 4 8 7 6 5 DS14 VCC 8 SDA 5 SCL 6 A0 1 A1 2 A2 3 WP 7 GND 4 U20 AT24C16 +5V C470.1u DS15DS16DS17 DS18 1 2 3 4 5 J13 1 2 3 4 5 J14 YELLOWCC 1 6 2 7 3 8 4 9 5 J15 DB9
53、D6 LED VCCVCC SEL74LS151 SEL0 SEL1 SEL2 SEL0 SEL1 SEL2 SEL74LS151 1 2 3 J16 10K 1 2 3 J17 10K 1 2 3 J18 10K 1 2 3 J19 10K 1 2 3 J20 10K 1 2 3 J21 10K 1 2 3 J22 10K 1 2 3 J23 10K VCC VCC VCC VCC VCC VCC VCC VCC D3 1 D2 2 D1 3 D0 4 Y 5 W 6 STB 7 GND 8 C 9 B 10 A 11 D7 12 D6 13 D5 14 D4 15 VCC 16 U21 7
54、4LS151 VCC T/0 T1 T2 T3 T4 T5 T6 T7 T/0 T1 T2 T3 T4 T5 T6 T7 VCC VCC 1G 1 A1 2 1Y1 18 A2 4 1Y2 16 A3 6 1Y3 14 A4 8 1Y4 12 VCC 20 GND 10 2G 19 B1 11 2Y1 9 B2 13 2Y2 7 B3 15 2Y3 5 B4 17 2Y4 3 U22 74LS244 VCC RESET T0 T0 VCC RESET RXD TXD TXD RXD P01 P02 P03 P04 P05 P06 P07 P00 多點溫度檢測系統(tǒng)設計 第 27 頁 共 27 頁 致致 謝謝 本設計能夠順利的完成得到了院系領導老師的大力支持和幫助,尤其是我的指導老師馮 杰副教授,在百忙之中抽出寶貴的休息時間,仔細耐心為我為我指導。設計過程中,馮老 師一并幫我分析遇到的種種困難。一直支持,鼓勵我要有解決問題的信心,使設計得以順 利的完成。在開發(fā)的同時,和同學們之間的相互探討也使我獲益匪淺。在此,對他們表示 由衷的感謝! 電子信息技術日新月異地飛速發(fā)展,人們總是處在不斷學習階段,再加上我水平有限, 所以本設計肯定存在許多不盡如人意的地方,歡迎廣大老師和同學批評指正。 最后,要感謝物電系所有老師,他們精心的栽培為我以后的學習工作打下了堅實的基 礎。
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。