




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、基于 ds18b20 芯片溫度檢測設計 摘要 ds18b20是一種可組網(wǎng)的高精度數(shù)字式溫度傳感器,由于其具有單總線的獨特優(yōu)點,可 以使用戶輕松地組建起傳感器網(wǎng)絡,并可使多點溫度測量電路變得簡單、可靠。本文結(jié)合實 際使用經(jīng)驗,介紹了ds18b20數(shù)字溫度傳感器在單片機下的硬件連接及軟件編程,并給出了 軟件流程圖。 該系統(tǒng)由上位機和下位機兩大部分組成。下位機實現(xiàn)溫度的檢測并提供標準rs232通信 接口,芯片使用了atmel公司的at89c51單片機和dallas公司的ds18b20數(shù)字溫度傳感器。上 位機部分使用了通用pc。該系統(tǒng)可應用于倉庫測溫、樓宇空調(diào)控制和生產(chǎn)過程監(jiān)控等領域。 關鍵字:關鍵字
2、:溫度測量 ds18b20 數(shù)字溫度傳感器 單片機 ds18b20 temperature detection system design 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 applic
3、ation 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
4、 in such domains as warehouse detecting temperature;air-conditioner controlling system in building and supervisory productive process etc. key words:temperature measure;ds18b20;digital thermometer;single chip processor 目錄 摘要.i abstract.ii 第一章 緒論.1 1.1 系統(tǒng)背景 .1 1.2 系統(tǒng)概述.1 第二章 ds18b20 與設計關鍵.2 2.1 ds18b
5、20 數(shù)字化溫度傳感器 .2 2.2 傳感器部分.3 2.3 主控制部分.3 2.4 系統(tǒng)方案.4 第三章 硬件電路設計.5 3.1 電源以及看門狗電路.5 3.2.1 鍵盤電路.5 3.2.2 溫度顯示電路.5 3.2 鍵盤以及顯示電路 .6 3.2.1 鍵盤電路.6 3.2.2 溫度顯示電路.7 3.2 溫度測試電路 .8 3.2.1 ds18b20 內(nèi)部結(jié)構(gòu) .9 3.2.2 高速暫存存儲器.10 3.3 串口通訊電路.11 3.4 整體電路.13 第四章 軟件設計.14 4.1 概述.14 4.2 主程序方案 .14 4.3 各模塊子程序設計.16 4.3.1 溫度測試子程序設計.16
6、 4.3.2 中斷控制程序設計.17 4.3.3 串口通信程序設計.17 第五章系統(tǒng)調(diào)試.19 5.1 分步調(diào)試.19 5.1.1 測試環(huán)境及工具.19 5.1.2 測試方法.19 5.1.3 測試結(jié)果分析.19 5.2 統(tǒng)一調(diào)試.19 結(jié)語.20 參考文獻.21 致謝.22 第一章 緒論 1.11.1 系統(tǒng)背景系統(tǒng)背景 在工、農(nóng)業(yè)生產(chǎn)和日常生活中,對溫度的測量及控制占據(jù)著極其重要地位。首先了解一 下多點溫度檢測系統(tǒng)在各個方面的應用領域:消防電氣的非破壞性溫度檢測,電力、電訊設 備之過熱故障預知檢測,空調(diào)系統(tǒng)的溫度檢測,各類運輸工具之組件的過熱檢測,保全與監(jiān) 視系統(tǒng)之應用,醫(yī)療與健診的溫度測試
7、,化工、機械等設備溫度過熱檢測。由此可見,溫度 檢測系統(tǒng)應用十分廣闊。 1.21.2 系統(tǒng)概述系統(tǒng)概述 本設計運用主從分布式思想,由上位機(pc微型計算機) ,下位機(單片機)多點溫度 數(shù)據(jù)采集,組成兩級分布式多點溫度測量的巡回檢測系統(tǒng)。該系統(tǒng)采用 rs-232串行通訊標 準,通過上位機(pc)控制下位機(單片機)進行現(xiàn)場溫度采集。溫度值既可以送回主控pc 進行數(shù)據(jù)處理,由顯示器顯示。也可以由下位機單獨工作,實時顯示當前各點的溫度值,對 各點進行控制。 下位機采用的是單片機基于數(shù)字溫度傳感器ds18b20的系統(tǒng)。ds18b20利用單總線的特點 可以方便的實現(xiàn)多點溫度的測量,輕松的組建傳感器網(wǎng)絡
8、,系統(tǒng)的抗干擾性好、設計靈活、 方便,而且適合于在惡劣的環(huán)境下進行現(xiàn)場溫度測量。本系統(tǒng)可以應用在大型工業(yè)及民用常 溫多點監(jiān)測場合。如糧食倉儲系統(tǒng)、樓宇自動化系統(tǒng)、溫控制程生產(chǎn)線之溫度影像檢測、醫(yī) 療與健診的溫度測試、空調(diào)系統(tǒng)的溫度檢測、石化、機械 第二章 ds18b20 與設計關鍵 溫度檢測原則上有其共同的特點:測量點多、環(huán)境復雜、布線分散、現(xiàn)場離監(jiān)控室遠等。 若采用一般溫度傳感器采集溫度信號,則需要設計信號調(diào)理電路、a/d 轉(zhuǎn)換及相應的接口電 路,才能把傳感器輸出的模擬信號轉(zhuǎn)換成數(shù)字信號送到計算機去處理。這樣,由于各種因素 會造成檢測系統(tǒng)較大的偏差,會使檢測系統(tǒng)的穩(wěn)定性和可靠性下降 。而ds
9、18b20溫度檢測系 統(tǒng)則補全上述缺陷。本次ds18b20溫度檢測系統(tǒng)的設計的關鍵在于兩部分:溫度傳感器的選 擇和主控單元的設計。 2.12.1 ds18b20ds18b20 數(shù)字化溫度傳感器數(shù)字化溫度傳感器 美國 dallas 半導體公司的數(shù)字化溫度傳感器 ds18b20 是支持 一線總線接口的溫度傳 感器,在其內(nèi)部使用了在板(on-b0ard)專利技術。全部傳感元件及轉(zhuǎn)換電路集成在形如一 只三極管的集成電路內(nèi)。一線總線獨特而且經(jīng)濟的特點,使用戶可輕松地組建傳感器網(wǎng)絡, 為測量系統(tǒng)的構(gòu)建引入全新概念?,F(xiàn)在,新一代的 ds18b20 體積更小、更經(jīng)濟、更靈活。使 你可以充分發(fā)揮“一線總線”的優(yōu)
10、點。 ds18b20 支持一線總線接口,測量溫度范圍為-55c+125c,在-10+85c 范圍內(nèi), 精度為0.5c。ds1822 的精度較差為2c?,F(xiàn)場溫度直接以一線總線的數(shù)字方式傳輸,大 大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設備或過程控 制、測溫類消費電子產(chǎn)品等。與前一代產(chǎn)品不同,新的產(chǎn)品支持 3v5.5v 的電壓范圍,使 系統(tǒng)設計更靈活、方便。而且新一代產(chǎn)品更便宜,體積更小。 ds18b20 的主要特性: (1)適應電壓范圍更寬,電壓范圍:3.05.5v,在寄生電源方式下可由數(shù)據(jù)線供電 (2)獨特的單線接口方式,ds18b20 在與微處理器連接時僅需要一條
11、口線即可實現(xiàn)微處 理器與 ds18b20 的雙向通訊 (3)ds18b20 支持多點組網(wǎng)功能,多個 ds18b20 可以并聯(lián)在唯一的三線上,實現(xiàn)組網(wǎng)多 點測溫 (4)ds18b20 在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只 三極管的集成電路內(nèi) (5)溫范圍55125,在-10+85時精度為0.5 (6)可編程的分辨率為 912 位,對應的可分辨溫度分別為 0.5、0.25、0.125 和 0.0625,可實現(xiàn)高精度測溫 (7)在 9 位分辨率時最多在 93.75ms 內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12 位分辨率時最多在 750ms 內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快 (8)測量結(jié)果直
12、接輸出數(shù)字溫度信號,以一線總線串行傳送給 cpu,同時可傳送 crc 校驗碼,具有極強的抗干擾糾錯能力 (9)負壓特性:電源極性接反時,芯片不會因發(fā)熱而燒毀,但不能正常工作。 2.22.2 傳感器部分傳感器部分 與ds18b20測溫系統(tǒng)相比,傳統(tǒng)的測溫方法是將模擬信號遠距離采樣進行ad轉(zhuǎn)換,而為 了獲得較高的測溫精度,就必須采用措施解決由長線傳輸,多點測量切換及放大電路零點漂 移等造成的誤差補償問題。采用數(shù)字溫度芯片ds18b20測量溫度,輸出信號全數(shù)字化。便于 單片機處理及控制,省去傳統(tǒng)的測溫方法的很多外圍電路。且該芯片的物理化學性很穩(wěn)定, 它能用做工業(yè)測溫元件,此元件線形較好。在0100攝
13、氏度時,最大線形偏差小于1攝氏度。 ds18b20的最大特點之一采用了單總線的數(shù)據(jù)傳輸,由數(shù)字溫度計ds1820和微控制器at89c51 構(gòu)成的溫度測量裝置,它直接輸出溫度的數(shù)字信號,可直接與計算機連接。這樣,測溫系統(tǒng)的 結(jié)構(gòu)就比較簡單,體積也不大,且由于at89c51可以帶多個dsb1820,因此可以非常容易實現(xiàn)多 點測量.輕松的組建傳感器網(wǎng)絡。 采用溫度芯片ds18b20測量溫度,可以體現(xiàn)系統(tǒng)芯片化這個趨勢。部分功能電路的集成, 使總體電路更簡潔,搭建電路和焊接電路時更快。而且,集成塊的使用,有效地避免外界的 干擾,提高測量電路的精確度。所以集成芯片的使用將成為電路發(fā)展的一種趨勢。本方案應
14、 用這一溫度芯片,也是順應這一趨勢。 2.32.3 主控制部分主控制部分 本設計采用at89c51八位單片機實現(xiàn)。單片機軟件編程的自由度大,可通過編程實現(xiàn)各 種各樣的算術算法和邏輯控制。而且體積小,硬件實現(xiàn)簡單,安裝方便。既可以單獨對多 ds18b20控制工作,還可以與pc機通信.運用主從分布式思想,由一臺上位機(pc微型計算機) ,下位機(單片機)多點溫度數(shù)據(jù)采集,組成兩級分布式多點溫度測量的巡回檢測系統(tǒng),實 現(xiàn)遠程控制。另外at89c51在工業(yè)控制上也有著廣泛的應用,編程技術及外圍功能電路的配 合使用都很成熟。 2.42.4 系統(tǒng)方案系統(tǒng)方案 系統(tǒng)采用針對傳統(tǒng)溫度測溫系統(tǒng)測溫點少,系統(tǒng)兼容
15、性及擴展性較差的特點,運用分布 式通訊的思想。設計一種可以用于大規(guī)模多點溫度測量的巡回檢測系統(tǒng)。該系統(tǒng)采用的是 rs-232串行通訊的標準,通過下位機(單片機)進行現(xiàn)場的溫度采集,溫度數(shù)據(jù)既可以由下 位機模塊實時顯示,也可以送回上位機進行數(shù)據(jù)處理,具有巡檢速度快,擴展性好,成本低 的特點。 本次設計實際采用電路方案如下圖: 圖 2-1 電路實際方案 第三章 硬件電路設計 系統(tǒng)底層電路的功能主要包括:溫度測試及其相關處理,實時顯示溫度信息,與上位機 通訊傳輸溫度數(shù)據(jù)。硬件設計主要包括以下幾個模塊:電源以及看門狗電路, 鍵盤以及顯 示電路,溫度測試電路,串口通訊電路。 3.13.1 電源以及看門狗
16、電路電源以及看門狗電路 3.1.1 電源電路 因為單片機工作電源為+5v,且底層電路功耗很小。采用7805三端穩(wěn)壓片即可滿足要求。 具體電路圖如下: 3.1.2 看門狗電路 考慮到底層電路板的工作環(huán)境相對惡劣,單片機會受到周圍環(huán)境的干擾,而出現(xiàn)程序跑 飛,死機等一些不可預知的不正常工作現(xiàn)象。工作人員也不可能到現(xiàn)場對單片機重起,本 設計為單片機電路添加一個外部看門狗電路。定時查詢單片機的工作狀態(tài),一但發(fā)現(xiàn)異常即 對單片機延時重起。保證系統(tǒng)安全可靠的運行。 ne56604能為多種微處理器和邏輯系統(tǒng)提供復位信號,其門限電平為4.2v 。在電源突然 掉電或電源電壓下降到低于門限電平時。ne56604將
17、產(chǎn)生精確的復位信號。ne56604內(nèi)置一個 看門狗定時器,用于監(jiān)控微處理器,以確保微處理器的正常運行??撮T狗能產(chǎn)生一個系統(tǒng)復 位信號用來終止任何由于微處理器故障而引發(fā)的不正常的系統(tǒng)操作。ne56604的看門狗的監(jiān) 控周期為100ms(典型值) 。 特性: 1、正負雙邏輯輸出的有效復位信號。 2、精準的門限電平監(jiān)測。 3、上電復位內(nèi)部延時。 4、可利用外部電阻調(diào)節(jié)的內(nèi)部看門狗定時器。 圖 3-1 硬件電源電路圖 5、看門狗定時器的監(jiān)控周期為100ms 典型值。 6、vcc=0.8vdc時產(chǎn)生有效的復位信號典型值,僅需很少的外圍元件。 具體電路圖如下: 3.23.2 鍵盤以及顯示電路鍵盤以及顯示電
18、路 3.2.1 鍵盤電路 單片機應用系統(tǒng)中除了復位按鍵有專門的復位電路,以及專一的復位功能外,其它的按鍵 或鍵盤都是以開關狀態(tài)來設置控制功能或輸入數(shù)據(jù)。鍵盤有編碼和非編碼兩種。非編碼鍵盤 硬件電路極為簡單。故本系統(tǒng)采用撥碼開關來控制。 具體電路如下: 圖 3-2 硬件看門狗電路圖 圖 3-3 硬件鍵盤電路圖 表 3-1 撥碼開關值及其含義表 a、開關狀態(tài)的可靠輸入 鍵開關狀態(tài)的可靠輸入有兩種解決方法。一種是軟件去抖動:它是在檢測到有鍵按下時, 執(zhí)行一個10ms的延時程序后,再確認該鍵電平是否仍保持閉合狀態(tài)電平,如保持閉合狀態(tài)電 平則確認為真正鍵按下狀態(tài),從而消除了抖動影響。另一種為硬件去抖動:
19、即為按鍵添加一 個鎖存器。兩種方法都簡單易行,本設計采用的是硬件去抖。 b、對按鍵進行編碼給定鍵值或給出鍵號 對于按鍵無論有無編碼,以及采用什么編碼,最后都要轉(zhuǎn)換成為與累加器中數(shù)值相對應 的鍵值,以實現(xiàn)按鍵功能程序的散轉(zhuǎn)轉(zhuǎn)移。為使編碼間隔小,散轉(zhuǎn)入口地址安排方便,常采 用依次序排列的鍵號。 撥碼開關值撥碼開關值含義含義 0000 實時顯示通道一的溫度值 0001實時顯示通道二的溫度值 0010實時顯示通道三的溫度值 0011實時顯示通道四的溫度值 0100實時顯示通道五的溫度值 0101實時顯示通道六的溫度值 0110實時顯示通道七的溫度值 0111實時顯示通道八的溫度值 1*自動循環(huán)顯示所有
20、通道的溫度 c、選擇鍵盤監(jiān)測方法 對是否有鍵按下的信息輸入方式有中斷方式與查詢方式兩種。本設計采用的查詢法,即 在在cpu空閑時調(diào)用鍵盤掃描子程序。 3.2.2 溫度顯示電路 設計采用的是共陰極七段數(shù)碼管。顯示方式有動態(tài)掃描和靜態(tài)顯示,兩種方法在本設計 中皆可。由于靜態(tài)掃描要用到多片串入并出芯片,考慮到電路板成本計算。本人采用是節(jié)約 硬件資源的動態(tài)掃描方式。即用兩塊芯片就可以完成顯示功能。顯示數(shù)據(jù)由4511譯碼器輸出, uln2003為位驅(qū)動掃描信號。 具體電路圖如下: 3.23.2 溫度測試電路溫度測試電路 這里我們用到溫度芯片ds18b20。ds18b20是dallas公司生產(chǎn)的一線式數(shù)字
21、溫度傳感器, 具有3引腳to92小體積封裝形式。測溫分辨率可達0.0625,被測溫度用符號擴展的16位 數(shù)字量方式串行輸出。其工作電源既可在遠端引入,也可采用寄生電源方式產(chǎn)生。cpu只需 一根端口線就能與諸多ds18b20通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯 電路。 ds18b20支持“一線總線”接口,測量溫度范圍為 -55至+125,在-10至+85范圍內(nèi),精 度為0.5c?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合 于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設備或過程控制、測溫類消費電子產(chǎn)品等。 圖 3-4 溫度顯示電路圖 表 3-2 寄存器分辨
22、率轉(zhuǎn)換數(shù)值及含義表 表 3-3 配置寄存器與分辨率表 3.2.1 ds18b20 內(nèi)部結(jié)構(gòu) ds18b20有4個主要的數(shù)據(jù)部件: 1、64位激光rom。64位激光rom從高位到低位依次為8位crc、48位序列號和8位家族 代碼(28h)組成。 2、溫度靈敏元件。 3、非易失性溫度報警觸發(fā)器th和tl??赏ㄟ^軟件寫入用戶報警上下限值。 4、配置寄存器。配置寄存器為高速暫存存儲器中的第五個字節(jié)。ds18b20在0工作時 按此寄存器中的分辨率將溫度轉(zhuǎn)換成相應精度的數(shù)值,其各位定義如下表: tmr1r011111 其中,tm:測試模式標志位,出廠時被寫入0,不能改變;r0、r1:溫度計分辨率設置 位,
23、其對應四種分辨率如下表所列,出廠時r0、r1置為缺省值:r0=1,r1=1(即12位分辨率) ,用戶可根據(jù)需要改寫配置寄存器以獲得合適的分辨率。 r0r1溫度計分辨率/bit最大裝換時間/us 00993.75 0110187.5 1 011375 1112750 圖 3-5 ds18b20 內(nèi)部結(jié)構(gòu)圖 表 3-4 高速暫存存儲器字節(jié)表 表 3-5 溫度值格式圖 ds18b20 溫度數(shù)據(jù)表 表 3-6 典型對應的溫度值表 3.2.2 高速暫存存儲器 高速暫存存儲器由9個字節(jié)組成,其分配如表3-4所示。當溫度轉(zhuǎn)換命令發(fā)布后,經(jīng)轉(zhuǎn)換 所得的溫度值以二字節(jié)補碼形式存放在高速暫存存儲器的第0和第1個字
24、節(jié)。單片機可通過單 線接口讀到該數(shù)據(jù),讀取時低位在前,高位在后,數(shù)據(jù)格式如圖所示。對應的溫度計算:當 符號位s=0時,直接將二進制位轉(zhuǎn)換為十進制;當s=1時,先將補碼變?yōu)樵a,再計算十進制 值。 溫度低位溫度高位 thtl 配置保留保留保留8位crc 溫度/二進制表示十六進制表示 +125 +25.0625 +10.125 +0.5 00000111 11010000 00000001 10010001 00000000 10100010 00000000 00001000 7d0h 0191h 00a2h 0008h 0 -0.5 -10.125 -25.0625 -55 00000000
25、00000000 11111111 11111000 11111111 01011110 11111110 01101111 11111100 10010000 0000h fff8h ff5eh fe6fh fc90h ds18b20最大的特點是單總線數(shù)據(jù)傳輸方式,ds18b20的數(shù)據(jù)i/o均由同一條線來完成。 硬件連接電路如下: 本系統(tǒng)是基于ds18b20溫度芯片的溫度測試。ds18b20采用外部供電方式,理論上可以在 一根數(shù)據(jù)總線上掛256個ds18b20,但時間應用中發(fā)現(xiàn),如果掛接25個以上的ds18b20仍舊有 可能產(chǎn)生功耗問題。另外單總線長度也不宜超過80m,否則也會影響到數(shù)據(jù)的傳
26、輸。在這種 情況下我們可以采用分組的方式,用單片機的多個i/o來驅(qū)動多路ds18b20。在實際應用中還 可以使用一個mosfet將i/o口線直接和電源相連,起到上拉的作用。 對ds18b20的設計,需要注意以下問題: (1)對硬件結(jié)構(gòu)簡單的單線數(shù)字溫度傳感器ds18b20 進行操作,需要用較為復雜的程 序完成。編制程序時必須嚴格按芯片數(shù)據(jù)手冊提供的有關操作順序進行,讀、寫時間片程序 要嚴格按要求編寫。尤其在使用ds18b20 的高測溫分辨力時,對時序及電氣特性參數(shù)要求更 高。 (2)有多個測溫點時,應考慮系統(tǒng)能實現(xiàn)傳感器出錯自動指示,進行自動ds18b20 序 列號和自動排序,以減少調(diào)試和維護
27、工作量。 (3)測溫電纜線建議采用屏蔽4 芯雙絞線,其中一對線接地線與信號線,另一組接vcc 和地線,屏蔽層在源端單點接地。ds18b20 在三線制應用時,應將其三線焊接牢固;在兩線 應用時,應將vcc與gnd接在一起,焊接牢固。若vcc脫開未接,傳感器只送85.0 的溫度值。 (4)實際應用時,要注意單線的驅(qū)動能力,不能掛接過多的ds18b20,同時還應注意最 遠接線距離。另外還應根據(jù)實際情況選擇其接線拓撲結(jié)構(gòu)。 圖 3-6 硬件連接電路圖 3.33.3 串口通訊電路串口通訊電路 at89c51有一個全雙工的串行通訊口,所以單片機和電腦之間可以方便地進行串口通訊。 進行串行通訊時要滿足一定的
28、條件,比如電腦的串口是rs232電平的,而單片機的串口是ttl 電平的,兩者之間必須有一個電平轉(zhuǎn)換電路,我們采用了專用芯片max232進行轉(zhuǎn)換,雖然也 可以用幾個三極管進行模擬轉(zhuǎn)換,但是還是用專用芯片更簡單可靠。 具體電路如下: 我們采用了三線制連接串口,也就是說和電腦的9針串口只連接其中的3根線:第5腳的 gnd、第2腳的rxd、第3腳的txd。這是最簡單的連接方法,但是對本設計來說已經(jīng)足夠使用 了,電路如上圖所示。通信線采用交叉接法,即兩者信號線對應成為rt,tr。 具體連接電路如下: 圖 3-7 串口通訊電路圖 圖 3-8 通訊線交叉接法 3.43.4 整體電路整體電路 電路原理圖 圖
29、3-9 電路原理圖 第四章 軟件設計 4.14.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)的總體功能和鍵盤設置選擇一種最合適的監(jiān)控程序結(jié)構(gòu),然后根據(jù)實時 性的要
30、求,合理地安排監(jiān)控軟件和各執(zhí)行模塊之間地調(diào)度關系。 4.24.2 主程序方案主程序方案 主程序調(diào)用了5個子程序,分別是數(shù)碼管顯示程序、鍵盤掃描以及按鍵處理程序、溫度 測試程序、中斷控制程序、單片機與pc機串口通訊程序。 鍵盤掃描電路及按鍵處理程序:實現(xiàn)鍵盤的輸入按鍵的識別及相關處理。 溫度測試程序:對溫度芯片送過來的數(shù)據(jù)進行處理,進行判斷和顯示。 數(shù)碼管顯示程序:向數(shù)碼的顯示送數(shù),控制系統(tǒng)的顯示部分。 中斷控制程序:實現(xiàn)循環(huán)顯示功能。 串口通訊程序:實現(xiàn)pc機與單片機通訊,將溫度數(shù)據(jù)傳送給pc機。 主程序結(jié)構(gòu)圖如下: 圖 4-1 主程序結(jié)構(gòu)圖 主程序流程圖如下: 將各個功能程序以子程序的形式寫
31、好,當寫主程序的時候,只需要調(diào)用子程序,然后在 寄存器的分配上作一下調(diào)整,消除寄存器沖突和i/o沖突即可。程序應該盡可能多的使用調(diào) 用指令代替跳轉(zhuǎn)指令。因為跳轉(zhuǎn)指令使得程序難以看懂各程序段之間的結(jié)構(gòu)關系。而調(diào)用指 令則不同,調(diào)用指令使得程序結(jié)構(gòu)清晰,無論是修改還是維護都比較方便。將功能程序段寫 成子程序的形式,除了方便調(diào)用之外,還有一個好處那就是以后寫程序的時候如果要用到, 就可以直接調(diào)用這個單元功能模塊。 4.34.3 各模塊子程序設計各模塊子程序設計 下面對主要幾個子程序的流程圖做介紹 4.3.1 溫度測試子程序設計 圖 4-2 主程序流程圖 溫度測試子程序流程如下圖: 圖 4-3 溫度測
32、試子程序流程圖 4.3.2 中斷控制程序設計 中斷控制程序流程如下圖: 4.3.3 串口通信程序設計 本次通訊中,測控系統(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)點而受到廣泛的 使用,而且visual basic 6.0 版本帶有專門實現(xiàn)串行通
33、訊的mscomm控件。 mscomm控件串口具有完善的串口數(shù)據(jù)的發(fā)送和接收功能。通過此控件,pc機可以利用串 行口與其它設備實現(xiàn)輕松連接,簡單高效地實現(xiàn)設備之間的通訊。此控件的事件響應有兩種 處理方式。事件驅(qū)動方式:由mscomm控件的oncomm事件捕獲并處理通訊錯誤及事件;查詢方 式:通過檢查commevent屬性的值來判斷事件和錯誤。 mscomm控件的主要屬性和方法 a. commport:設置或返回串行端口號,其取值范圍為199,缺省為1 b. setting:設置或返回串行端口的波特率、奇偶校驗位、數(shù)據(jù)位數(shù)、停止位。 c. portopen:打開或關閉串行端口。 圖 4-4 中斷控
34、制程序流程圖 d. rthreshold:該屬性為一閥值,它確定當接收緩沖區(qū)內(nèi)字節(jié)個數(shù)達到或超過該值 后就產(chǎn)生mscomml-oncomm事件。 e. input:從接收緩沖區(qū)移走一串字符。 f. output:向發(fā)送緩沖區(qū)傳送一字符串。 軟件流程圖如下: 參數(shù)設定:通信端口選擇com1,波特率設定為1200b/s mscomm.commport=1 mscomm.setting=“1200, n, 8, 1” 。 start:movsp,#60h movtmod,#20h movth1,#0e6h movtl1,#0e6h;1200b/s,晶振為12mhz mov pcon,#00h mov
35、scon,#50h setbtr1 圖 4-5 pc 通訊程序流程圖 圖 4-6 單片機程序流程圖 第五章 系統(tǒng)調(diào)試 5.15.1 分步調(diào)試分步調(diào)試 5.1.1 測試環(huán)境及工具 測試溫度:0至100攝氏度。 (模擬多點不同溫度值環(huán)境) 。 測試儀器及軟件:數(shù)字萬用表,溫度計0至100攝氏度,串口調(diào)試助手。 測試方法:目測。 5.1.2 測試方法 使系統(tǒng)運行,觀察系統(tǒng)硬件檢測是否正常(包括單片機最小系統(tǒng)、鍵盤電路、顯示電路、 溫度測試電路等) 。系統(tǒng)自帶測試表格數(shù)據(jù),觀察顯示數(shù)據(jù)是否相符合即可。 采用溫度傳感器和溫度計同時測量多點水溫變化情況(取溫度值不同的多點) ,目測顯 示電路是否正常。并記
36、錄各點溫度值,與實際溫度值比較,得出系統(tǒng)的溫度指標。 使用串口調(diào)試助手與單片機通訊,觀察單片機與串口之間傳輸數(shù)據(jù)正確否。 5.1.3 測試結(jié)果分析 自檢正常,各點溫度顯示正常,串口傳輸數(shù)據(jù)正確。 因為芯片是塑料封裝,所以對溫度的感應靈敏度不是相當高,需要一個很短的時間才能 達到穩(wěn)定。 5.25.2 統(tǒng)一調(diào)試統(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)
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 打造安全倉庫文化的方法計劃
- 《貴州金州能鵬礦業(yè)有限公司貴州省晴隆縣老萬場金礦(新建)礦產(chǎn)資源綠色開發(fā)利用方案(三合一)》評審意見
- 腰麻術后護理常規(guī)
- 企業(yè)網(wǎng)絡組織與產(chǎn)業(yè)競爭力
- 統(tǒng)編版小學語文二年級下冊《語文園地二》精美課件
- 航空維修工程師:飛行安全維修達人簡歷
- 能源行業(yè):風能工程師個人簡歷
- 2025年安徽從業(yè)資格貨運資格考試題庫答案解析
- 2025年南寧貨運從業(yè)資格證考試模擬考試答案
- 第六單元課外古詩詞誦讀《無題》李商隱教學設計-2024-2025學年統(tǒng)編版語文九年級上冊標簽標題
- 初中班會 《哪吒 2:勇戰(zhàn)困難伴夢前行》開學第一課主題班會 教案
- 《馬爾科夫過程介紹》課件
- 四川成都歷年中考語文現(xiàn)代文閱讀之非連續(xù)性文本閱讀4篇(截至2024年)
- 中國地圖填色圖(任何顏色可變)
- 交通運輸安全員崗位職責概述
- 2025年上半年廣西宏桂集團匯興資產(chǎn)管理限公司招聘5人易考易錯模擬試題(共500題)試卷后附參考答案
- 2025年安徽中醫(yī)藥高等??茖W校高職單招職業(yè)適應性測試近5年??及鎱⒖碱}庫含答案解析
- 2025年楊凌職業(yè)技術學院高職單招高職單招英語2016-2024歷年頻考點試題含答案解析
- 2025年滬科版八年級生物下冊階段測試試卷
- 2024年08月浙江龍灣農(nóng)商銀行秋季招考筆試歷年參考題庫附帶答案詳解
- 高教社馬工程倫理學(第二版)教學課件10
評論
0/150
提交評論