基于51單片機(jī)與PC機(jī)的遠(yuǎn)程溫度監(jiān)控系統(tǒng)方案_第1頁
基于51單片機(jī)與PC機(jī)的遠(yuǎn)程溫度監(jiān)控系統(tǒng)方案_第2頁
基于51單片機(jī)與PC機(jī)的遠(yuǎn)程溫度監(jiān)控系統(tǒng)方案_第3頁
基于51單片機(jī)與PC機(jī)的遠(yuǎn)程溫度監(jiān)控系統(tǒng)方案_第4頁
基于51單片機(jī)與PC機(jī)的遠(yuǎn)程溫度監(jiān)控系統(tǒng)方案_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

.PAGE.1.本文設(shè)計(jì)的一種溫度控制系統(tǒng),用STC89C52單片機(jī)作為溫控器,選用DS18B20數(shù)字溫度傳感器,可任意設(shè)置上下限報(bào)警溫度,采用數(shù)碼管實(shí)時(shí)顯示溫度,通過串口利用單片機(jī)與上位機(jī)的通信,對(duì)庫房溫度采集并進(jìn)行控制。4.2.具體內(nèi)容及要求內(nèi)容及要求:研究基于單片機(jī)的遠(yuǎn)程溫度監(jiān)控系統(tǒng),可以在PC機(jī)端實(shí)時(shí)監(jiān)控系統(tǒng)溫度,并根據(jù)當(dāng)前的溫度值對(duì)單片機(jī)系統(tǒng)進(jìn)行控制。利用VB/VC/DELPHI編制PC示例程序。主要技術(shù)指標(biāo):〔1、溫度測(cè)量范圍0-70℃;〔2、可以設(shè)置溫度報(bào)警的上、下限;〔3、提供PC機(jī)通訊接口;〔4、PC機(jī)軟件實(shí)現(xiàn)對(duì)溫度數(shù)據(jù)分析、統(tǒng)計(jì)和處理;<5>遠(yuǎn)程傳輸距離為1KM4.3、系統(tǒng)總體方案設(shè)計(jì)4.3.1、設(shè)計(jì)方案論證方案一由于本設(shè)計(jì)是測(cè)溫電路,可以使用熱敏電阻之類的器件利用其感溫效應(yīng),在將隨被測(cè)溫度變化的電壓或電流采集過來,進(jìn)行A/D轉(zhuǎn)換后,就可以用單片機(jī)進(jìn)行數(shù)據(jù)的處理,在顯示電路上,就可以將被測(cè)溫度顯示出來,這種設(shè)計(jì)需要用到A/D轉(zhuǎn)換電路,其中還涉及到電阻與溫度的對(duì)應(yīng)值的計(jì)算,感溫電路比較麻煩。而且在對(duì)采集的信號(hào)進(jìn)行放大時(shí)容易受溫度的影響出現(xiàn)較大的偏差。方案二進(jìn)而考慮到用溫度傳感器,在單片機(jī)電路設(shè)計(jì)中,大多都是使用傳感器,所以這是非常容易想到的,所以可以采用一只溫度傳感器DS18B20,此傳感器,可以很容易直接讀取被測(cè)溫度值,進(jìn)行轉(zhuǎn)換,電路簡單,精度高,軟硬件都以實(shí)現(xiàn),而且使用單片機(jī)的接口便于系統(tǒng)的再擴(kuò)展,滿足設(shè)計(jì)要求。從以上兩種方案,很容易看出,采用方案二,電路比較簡單,費(fèi)用較低,可靠性高,軟件設(shè)計(jì)也比較簡單,故采用了方案二。4.3.2、系統(tǒng)總體構(gòu)成圖如下:89C5289C52MAX232電平轉(zhuǎn)換PC機(jī)鍵盤電路DS18B20溫度傳感器數(shù)碼管顯示蜂鳴器報(bào)警晶振電路下限LED燈上限LED燈4.3.3、硬件設(shè)計(jì):控制部分的選擇較多,但是作為溫度計(jì),在成本上最合適的是單片機(jī),對(duì)于題目要求的控制能力也能勝任,利用STC89S52自身強(qiáng)大的功能和優(yōu)異的可擴(kuò)展性,配上電路實(shí)驗(yàn)箱、四位一體數(shù)碼管和按鍵等少量外圍電路,就能搭建合適本次實(shí)驗(yàn)的小系統(tǒng)。從而大大縮短設(shè)計(jì)流程,把設(shè)計(jì)的重點(diǎn)放在溫度探測(cè)單元,串行通信協(xié)議兩個(gè)部分?,F(xiàn)在PC機(jī)提供的COM1、Com2是采用RS-232接口標(biāo)準(zhǔn)的。而RS-232是用正負(fù)電壓來表示邏輯狀態(tài),與TTL以高低電平來表示邏輯狀態(tài)的規(guī)定不同。因此,為了能夠同計(jì)算機(jī)借口或終端的TTL器件〔如單片機(jī)連接,必須在RS-232與TTL電路之間進(jìn)行電平和邏輯關(guān)系的變換,變換電路選用有XX儀器公司〔TL推出的一款兼容RS-232標(biāo)準(zhǔn)的芯片MAX232.該器件包含2個(gè)驅(qū)動(dòng)器、2個(gè)接收器和一個(gè)電壓發(fā)生器電路提供TIA/EIA-232-F電平轉(zhuǎn)換成5VTTL/CMOS電平。每一個(gè)發(fā)送器將TTL/CMOS電平轉(zhuǎn)換成TIA/EIA-232-F電平。4.3.4、軟件設(shè)計(jì)①單片機(jī)軟件設(shè)計(jì)單片機(jī)程序由主程序和中斷子程序組成的。主程序負(fù)責(zé)對(duì)來自上位機(jī)的命令進(jìn)行解析并執(zhí)行讀溫度值、存儲(chǔ)溫度值、輸出控制等等,中斷服務(wù)程序只負(fù)責(zé)單片機(jī)和上位機(jī)之間的數(shù)據(jù)發(fā)送與接收。②上位機(jī)程序設(shè)計(jì)由單片機(jī)采集的各個(gè)庫房實(shí)時(shí)溫度,通過MAX232傳輸?shù)缴衔粰C(jī)PC,利用在VisualBasic6.0的通信控件Mscomm屬性設(shè)置和事件響應(yīng)的基礎(chǔ)上,實(shí)現(xiàn)與單片機(jī)串行通信,在上位機(jī)中,完成報(bào)警溫度設(shè)置、溫度傳感器64位激光ROM讀取并顯示、實(shí)時(shí)溫度數(shù)據(jù)顯示、數(shù)據(jù)存儲(chǔ)、曲線繪制、歷史數(shù)據(jù)查詢等。4.4、系統(tǒng)各個(gè)模塊設(shè)計(jì):4.4.1單片機(jī)最小系統(tǒng)1、STC89C52單片機(jī)管腳圖如下:2、各引腳功能:XTAL1<19腳>;XTAL2<18腳>外接時(shí)鐘引腳。XTAL1為片內(nèi)振蕩電路的輸入電源和時(shí)鐘引腳.VCC<40腳>GND<20腳>常壓為+5V,低壓為+3.3V。端。XTAL2為片內(nèi)振蕩電路的輸出端,8051的時(shí)鐘有兩種方式,一種是片內(nèi)振蕩方式,需要在這兩個(gè)引腳接石英晶體和振蕩電容,振蕩電容的值一般選擇為10P~~30P。另一種外部時(shí)鐘方式即XTAL1接地,外部時(shí)鐘信號(hào)從XTAL2腳輸入。RST<9腳>單片機(jī)的復(fù)位引腳。P0口<39腳~~32腳>—雙向8位I/O口,每個(gè)口可以獨(dú)立控制。51單片機(jī)PO口內(nèi)部沒有上拉電阻,為高阻狀態(tài),所以不能正常的輸出高低電平,因此該組I/O口在使用的時(shí)候務(wù)必要接上拉電阻,一般我們采用接入10K的上拉電阻。P1口<1腳~8腳>準(zhǔn)雙向8位I/O口。每個(gè)口可以獨(dú)立操作控制,內(nèi)帶上拉電阻,這種接口輸出沒有高阻狀態(tài),輸入也不能鎖存,固然不是真正的雙向I/O口,之所以稱它為"準(zhǔn)雙向"是因?yàn)樵摽谠谧鳛檩斎胧褂们耙认蛟摽谶M(jìn)行寫一操作,然后單片機(jī)內(nèi)部才可以正確讀出外部信號(hào),也就是要使其先要有個(gè)準(zhǔn)備過程,所以才稱準(zhǔn)雙向口。對(duì)52單片機(jī)的P1.0引腳的第二功能為T2定時(shí)器的外部輸入,P1.1引腳的第二功能為T2EX捕捉,重裝觸發(fā),即T2的外部控制器。P2口<21腳~~28腳>準(zhǔn)雙向8位I/O口,每個(gè)口都可以獨(dú)立操作控制,內(nèi)帶上拉電阻,與P1口相似。P3口<10腳~~17腳>準(zhǔn)雙向8位I/O口,每個(gè)口可以獨(dú)立操作控制,內(nèi)帶上拉電阻,作為第一功能使用時(shí)就當(dāng)作普通I/O口,與P1口相似。作為第二功能使用時(shí),各引腳的定義如表:值得強(qiáng)調(diào)的是,P3口的每一個(gè)引腳均可以獨(dú)立定義為第一功能的輸入/輸出或第二功能P3口引腳第二功能定義標(biāo)號(hào)引腳第二功能說明P3.010RXD串行輸入口P3.111TXD串行輸出口P3.212/INTO外部中斷0P3.313/INT1外部中斷1P3.414T0定時(shí)器/計(jì)數(shù)器0外部輸入口P3.515T1定時(shí)器/計(jì)數(shù)器1外部輸入口P3.616/WE外部數(shù)據(jù)存儲(chǔ)器寫脈沖P3.717/RD外部數(shù)據(jù)存儲(chǔ)器讀脈沖3、單片機(jī)最小系統(tǒng)其中:a、復(fù)位電路單片機(jī)上電時(shí),當(dāng)振蕩器正在運(yùn)行時(shí),只要持續(xù)給出RST引腳連個(gè)機(jī)器周期的高電平,便可完成系統(tǒng)復(fù)位。外部復(fù)位電路是為內(nèi)部復(fù)位電路提供兩個(gè)機(jī)器周期以上的電平而設(shè)計(jì)的。系統(tǒng)采用上電自動(dòng)復(fù)位,上電瞬間電容器上的電壓不能突變,RST上的電壓是Vcc上的電壓與電容器上的電壓之差,因而RST上的電壓與Vcc上的電壓相同。隨著充電的進(jìn)行,電容器上的電壓不斷上升,RST上的電壓就隨著下降,RST腳上只要保持10ms以上高電平,系統(tǒng)就會(huì)有效復(fù)位。電容C可取10~33uF,電阻R可取1.2~10kΩ。在本系統(tǒng)設(shè)計(jì)中,C取10uf,R取10kΩ。b、振蕩電路XTAL1腳和XTAL2腳分別構(gòu)成片內(nèi)振蕩器的反相放大器的輸入和輸出端,外接石英晶振或陶瓷晶振以及補(bǔ)償電容C1、C2選47uF構(gòu)成并聯(lián)諧振電路。當(dāng)外接石英晶振時(shí),電容C1、C2選30Pf±10pF;當(dāng)外接陶瓷振蕩器時(shí),電容C1、C2選47uF±10uF。系統(tǒng)中,外接電C1、C2的大小會(huì)影響振蕩器頻率的穩(wěn)定度、起振時(shí)間及溫度穩(wěn)定性。在設(shè)計(jì)電路板時(shí),晶振和電容應(yīng)靠近單片機(jī)芯片,以便減少寄生電容,保證振蕩器穩(wěn)定可靠工作。在本硬件系統(tǒng)設(shè)計(jì)中,為保證串行通行波特率的誤差,選擇了11.0592MHz的標(biāo)準(zhǔn)石英晶振,電容C1、C2為30pF。c、接高電平,選用片內(nèi)程序存儲(chǔ)器。4.4.2、顯示部分:本系統(tǒng)采用三極管驅(qū)動(dòng)四位一體共陽數(shù)碼管顯示溫度,數(shù)碼管有兩種顯示方式,即靜態(tài)顯示和動(dòng)態(tài)顯示。靜態(tài)顯示的特點(diǎn)是每個(gè)數(shù)碼管的段選必須接一個(gè)8位數(shù)據(jù)線來保持顯示的字形碼。當(dāng)送入一次字形碼后,顯示字形可一直保持,直到送入新字形碼為止。這種方法的優(yōu)點(diǎn)是占用CPU時(shí)間少,顯示便于監(jiān)測(cè)和控制。缺點(diǎn)是硬件電路比較復(fù)雜,成本較高;動(dòng)態(tài)顯示的特點(diǎn)是將所有位數(shù)碼管的段選線并聯(lián)在一起,由位選線控制是哪一位數(shù)碼管有效。選亮數(shù)碼管采用動(dòng)態(tài)掃描顯示。所謂動(dòng)態(tài)掃描顯示即輪流向各位數(shù)碼管送出字形碼和相應(yīng)的位選,利用發(fā)光管的余輝和人眼視覺暫留作用,使人的感覺好像各位數(shù)碼管同時(shí)都在顯示。動(dòng)態(tài)顯示的亮度比靜態(tài)顯示要差一些,所以在選擇限流電阻時(shí)應(yīng)略小于靜態(tài)顯示電路中的。本設(shè)計(jì)數(shù)碼管采用動(dòng)態(tài)顯示。如下圖:4.4.3、鍵盤輸入如圖:本設(shè)計(jì)采用三個(gè)鍵,可任意調(diào)整上下限報(bào)警溫度,簡單實(shí)用。其中,K1鍵為設(shè)置鍵,按第1下,上限溫度調(diào)整;按第2下,下限溫度調(diào)整;按第3下,顯示實(shí)際溫度。K+鍵為每按一次設(shè)置溫度加1。K-鍵為每按一次設(shè)置溫度減1。4.4.4、報(bào)警電路本設(shè)計(jì)中采用三極管驅(qū)動(dòng)蜂鳴器報(bào)警,其中,LED1和LED2分別模擬制熱器和制冷器。當(dāng)溫度高于上限溫度時(shí),蜂鳴器報(bào)警,LED2燈亮,模擬啟動(dòng)制冷器;當(dāng)溫度低于下限溫度時(shí),蜂鳴器報(bào)警,LED1燈亮,模擬啟動(dòng)制熱器。其中,與蜂鳴器相連的輕觸開關(guān)斷開時(shí),蜂鳴器停止報(bào)警,實(shí)現(xiàn)手動(dòng)解除報(bào)警。如圖:4.4.5、測(cè)溫電路本設(shè)計(jì)采用DS18B20溫度傳感器測(cè)量溫度。DS18B20簡介其兩種封裝如圖:溫度傳感器的種類眾多,在應(yīng)用與高精度、高可靠性的場合時(shí)DALLAS〔達(dá)拉斯公司生產(chǎn)的DS18B20溫度傳感器當(dāng)仁不讓。超小的體積,超低的硬件開消,抗干擾能力強(qiáng),精度高,附加功能強(qiáng),使得DS18B20更受歡迎。對(duì)于我們普通的電子愛好者來說,DS18B20的優(yōu)勢(shì)更是我們學(xué)習(xí)單片機(jī)技術(shù)和開發(fā)溫度相關(guān)的小產(chǎn)品的不二選擇。了解其工作原理和應(yīng)用可以拓寬您對(duì)單片機(jī)開發(fā)的思路。

DS18B20的主要特征:

1.全數(shù)字溫度轉(zhuǎn)換及輸出。

2.先進(jìn)的單總線數(shù)據(jù)通信。

3.最高12位分辨率,精度可達(dá)土0.5攝氏度。

4.12位分辨率時(shí)的最大工作周期為750毫秒。

5.可選擇寄生工作方式。

6.檢測(cè)溫度范圍為–55°C~+125°C<–67°F~+257°F>

7.內(nèi)置EEPROM,限溫報(bào)警功能。

8.64位光刻ROM,內(nèi)置產(chǎn)品序列號(hào),方便多機(jī)掛接。

9.多樣封裝形式,適應(yīng)不同硬件系統(tǒng)。

DS18B20引腳功能:

·GND電壓地·DQ單數(shù)據(jù)總線·VDD電源電壓·NC空引腳

DS18B20工作原理及應(yīng)用:

DS18B20的溫度檢測(cè)與數(shù)字?jǐn)?shù)據(jù)輸出全集成于一個(gè)芯片之上,從而抗干擾力更強(qiáng)。其一個(gè)工作周期可分為兩個(gè)部分,即溫度檢測(cè)和數(shù)據(jù)處理。在講解其工作流程之前我們有必要了解18B20的內(nèi)部存儲(chǔ)器資源。18B20共有三種形態(tài)的存儲(chǔ)器資源,它們分別是:

ROM只讀存儲(chǔ)器,用于存放DS18B20ID編碼,其前8位是單線系列編碼〔DS18B20的編碼是19H,后面48位是芯片唯一的序列號(hào),最后8位是以上56的位的CRC碼〔冗余校驗(yàn)。數(shù)據(jù)在出產(chǎn)時(shí)設(shè)置不由用戶更改。DS18B20共64位ROM。

RAM數(shù)據(jù)暫存器,用于內(nèi)部計(jì)算和數(shù)據(jù)存取,數(shù)據(jù)在掉電后丟失,DS18B20共9個(gè)字節(jié)RAM,每個(gè)字節(jié)為8位。第1、2個(gè)字節(jié)是溫度轉(zhuǎn)換后的數(shù)據(jù)值信息,第3、4個(gè)字節(jié)是用戶EEPROM〔常用于溫度報(bào)警值儲(chǔ)存的鏡像。在上電復(fù)位時(shí)其值將被刷新。第5個(gè)字節(jié)則是用戶第3個(gè)EEPROM的鏡像。第6、7、8個(gè)字節(jié)為計(jì)數(shù)寄存器,是為了讓用戶得到更高的溫度分辨率而設(shè)計(jì)的,同樣也是內(nèi)部溫度轉(zhuǎn)換、計(jì)算的暫存單元。第9個(gè)字節(jié)為前8個(gè)字節(jié)的CRC碼。EEPROM非易失性記憶體,用于存放長期需要保存的數(shù)據(jù),上下限溫度報(bào)警值和校驗(yàn)數(shù)據(jù),DS18B20共3位EEPROM,并在RAM都存在鏡像,以方便用戶操作。

電路圖如下:4.4.6、單片機(jī)與上位機(jī)串口電路在現(xiàn)代業(yè)控制中,串口通信的應(yīng)用越來越廣泛。單片機(jī)和PC機(jī)之間的串口通信在進(jìn)行數(shù)據(jù)交換時(shí)經(jīng)常被使用。在串行通信時(shí),要求通信雙方都采用一個(gè)標(biāo)準(zhǔn)接口,RS.232C接口是單片機(jī)利PC機(jī)進(jìn)行通信最常用的一種接口。單片機(jī)與PC機(jī)進(jìn)行串口通信最簡單的二線制法,即接收數(shù)據(jù)針腳<RxD>與發(fā)送數(shù)據(jù)針腳<TxD>相連,彼此交叉,信號(hào)地<GND>對(duì)應(yīng)相接。但是,串口還不能直接和單片機(jī)相連,可以選用MAX232和MAX485進(jìn)行電平轉(zhuǎn)換。MAX232用于RS.232C標(biāo)準(zhǔn);MAX485用于RS485標(biāo)準(zhǔn)。RS.232C標(biāo)準(zhǔn)規(guī)定在碼元畸變小于4%的情況下,傳輸電纜長度最大約為l5米,最高傳輸速率為20kbit/s。RS485標(biāo)準(zhǔn)最人傳輸距離約為1219米,最大傳輸速率約為l0Mbit/s。MAX232芯片簡介MAX232芯片是美信公司專門為電腦的RS-232標(biāo)準(zhǔn)串口設(shè)計(jì)的單電源電平轉(zhuǎn)換芯片,使用+5v單電源供電。

引腳介紹:第一部分是電荷泵電路。由1、2、3、4、5、6腳和4只電容構(gòu)成。功能是產(chǎn)生+12v和-12v兩個(gè)電源,提供給RS-232串口電平的需要。第二部分是數(shù)據(jù)轉(zhuǎn)換通道。由7、8、9、10、11、12、13、14腳構(gòu)成兩個(gè)數(shù)據(jù)通道。其中13腳〔R1IN、12腳〔R1OUT、11腳〔T1IN、14腳〔T1OUT為第一數(shù)據(jù)通道。8腳〔R2IN、9腳〔R2OUT、10腳〔T2IN、7腳〔T2OUT為第二數(shù)據(jù)通道。TTL/CMOS數(shù)據(jù)從T1IN、T2IN輸入轉(zhuǎn)換成RS-232數(shù)據(jù)從T1OUT、T2OUT送到電腦DB9插頭;DB9插頭的RS-232數(shù)據(jù)從R1IN、R2IN輸入轉(zhuǎn)換成TTL/CMOS數(shù)據(jù)后從R1OUT、R2OUT輸出。第三部分是供電。15腳GND、16腳VCC〔+5v。由于串口用的是TTL電平,和RS232電平不同,因此,單片機(jī)和PC通信時(shí)需要進(jìn)行電平轉(zhuǎn)換,常用的IC是MAX232,連接圖如下圖所示,其中MAX232供電腳為+5V。采用了三線制連接串口,也就是說和計(jì)算機(jī)的9針串口只連接其中的3根線:第5腳的GND、第2腳的RXD、第3腳的TXD。這是最簡單的連接方法,但是對(duì)我們來說已經(jīng)足夠使用了。RS232引腳圖串口電路連接圖如下:收、發(fā)端的數(shù)據(jù)信號(hào)是相對(duì)于信號(hào)地,如從DTE設(shè)備發(fā)出的數(shù)據(jù)在使用DB25連接器時(shí)是2腳相對(duì)7腳〔信號(hào)地的電平,DB25各引腳定義參見圖2-9。典型的RS-232信號(hào)在正負(fù)電平之間擺動(dòng),在發(fā)送數(shù)據(jù)時(shí),發(fā)送端驅(qū)動(dòng)器輸出正電平在+5~+15V,負(fù)電平在-5~-15V電平。當(dāng)無數(shù)據(jù)傳輸時(shí),線上為TTL,從開始傳送數(shù)據(jù)到結(jié)束,線上電平從TTL電平到RS-232電平再返回TTL電平。接收器典型的工作電平在+3~+12V與-3~-12V。由于發(fā)送電平與接收電平的差僅為2V至3V左右,所以其共模抑制能力差,再加上雙絞線上的分布電容,其傳送距離最大為約15米,最高速率為20kb/s。RS-232是為點(diǎn)對(duì)點(diǎn)〔即只用一對(duì)收、發(fā)設(shè)備通訊而設(shè)計(jì)的,其驅(qū)動(dòng)器負(fù)載為3~7kù。所以RS-232適合本地設(shè)備之間的通信。上位機(jī)和下位機(jī)的接線方法如圖上位機(jī)和下位機(jī)的接線方法MCS-52內(nèi)部含有一個(gè)可編程全雙工串行通信接口,具有UART的全部功能。該接口電路不僅能同時(shí)進(jìn)行數(shù)據(jù)的發(fā)送和接收,也可作為一個(gè)同步移位寄存器使用。在進(jìn)行異步通信時(shí),數(shù)據(jù)的發(fā)送和接收分別在各自的時(shí)鐘〔TCLK和RCLK控制下進(jìn)行的,但都必須與字符位數(shù)的波特率保持一致。MCS-52串行口的發(fā)送和接收時(shí)鐘可由兩種方式產(chǎn)生,一種是由主機(jī)頻率fosc經(jīng)分頻后產(chǎn)生,另一種方式是由內(nèi)部定時(shí)器T1或T2的溢出率經(jīng)16分頻后提供。發(fā)送和接收的過程如下:串行口的發(fā)送過程由指令MOV

SBUF,A啟動(dòng),即CPU由一條寫發(fā)送緩沖器的指令把數(shù)據(jù)〔字符寫入串行口的發(fā)送緩沖器SBUF〔發(fā)中,再由硬件電路自動(dòng)在字符的始、末加上起始位〔低電平、停止位〔高電平及其它控制位〔如奇偶位等,然后在移位脈沖SHIFT的控制下,低位在前,高位在后,從TXD端〔方式0除外一位位地向外發(fā)送。串行口的接收與否受制于允許接收位REN的狀態(tài),當(dāng)REN被軟件置"1"后,允許接收器接收。接收端RXD一位位地接收數(shù)據(jù),直到收到一個(gè)完整的字符數(shù)據(jù)后,控制電路進(jìn)行最后一次移位,自動(dòng)去掉啟始位,使接收中斷標(biāo)志RI置"1",并向CPU申請(qǐng)中斷。CPU響應(yīng)中斷,用一條指令〔MOV

A,SBUF把接收緩沖器SBUF〔收的內(nèi)容讀入累加器。TI和RI是由硬件置位的,但需要用軟件復(fù)位。4.5、系統(tǒng)軟件設(shè)計(jì)4.5.1、單片機(jī)軟件設(shè)計(jì):〔1主程序:

主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處理DS18B20的測(cè)量的當(dāng)前溫度值,溫度測(cè)量每1s進(jìn)行一次。這樣可以在一秒之內(nèi)測(cè)量一次被測(cè)溫度,其程序流程如下所示:主程序流程圖〔2讀溫度子程序:

先讓DS18B20復(fù)位,然后發(fā)跳過ROM匹配命令,再發(fā)出溫度轉(zhuǎn)換命令,讓DS18B20進(jìn)行溫度轉(zhuǎn)換,延時(shí)等待轉(zhuǎn)換完畢后,再將已轉(zhuǎn)換的溫度值一一地從各個(gè)DS18B20取出,轉(zhuǎn)換成ascall碼后再發(fā)送到PC機(jī)上,如此循環(huán)。程序框圖如下:讀溫度程序框圖〔3溫度比較報(bào)警子程序此程序是將實(shí)際溫度與設(shè)置的報(bào)警上下限比較,決定是否發(fā)出報(bào)警信號(hào)。由于T為實(shí)際溫度的絕對(duì)值,TH、TL也是溫度的絕對(duì)值,因此判斷大小關(guān)系時(shí)要通過其正負(fù)符號(hào)來確定。溫度比較報(bào)警子程序.上位機(jī)軟件設(shè)計(jì)PC機(jī)程序中包括串口通信模塊,繪圖模塊,命令按妞模塊,溫度顯示模塊等。一、串口通信模塊在本設(shè)計(jì)中,采用MSComm控件進(jìn)行串口的通訊,MSComm控件串口具有完善的串口數(shù)據(jù)的發(fā)送和接收功能。通過此控件,PC機(jī)可以利用串行口與其它設(shè)備實(shí)現(xiàn)輕松連接,簡單高效地實(shí)現(xiàn)設(shè)備之間的通訊。此控件的事件響應(yīng)有兩種處理方式,事件驅(qū)動(dòng)方式:由MSComm控件的OnComm事件捕獲并處理通訊錯(cuò)誤及事件;查詢方式:通過檢查CommEvent屬性的值來判斷事件和錯(cuò)誤。二、繪圖模塊在VB中,繪圖可以利用Line和Circle方法繪制幾何圖形[11],還可以利用MSCh

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論