DF無線數(shù)據(jù)收發(fā)模塊_第1頁
DF無線數(shù)據(jù)收發(fā)模塊_第2頁
DF無線數(shù)據(jù)收發(fā)模塊_第3頁
DF無線數(shù)據(jù)收發(fā)模塊_第4頁
DF無線數(shù)據(jù)收發(fā)模塊_第5頁
已閱讀5頁,還剩55頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、用途DF無線數(shù)據(jù)收發(fā)模塊無線數(shù)據(jù)傳輸廣泛地運(yùn)用在車輛監(jiān)控、遙控、遙測、小型無線網(wǎng)絡(luò)、無線抄表、門禁系統(tǒng)、小區(qū)傳呼、工業(yè)數(shù)據(jù)采集系統(tǒng)、無線標(biāo)簽、身份識別、非接觸RF智能卡、小型無線數(shù)據(jù)終端、安全防火系統(tǒng)、無線遙控系統(tǒng)、生物信號采集、水文氣象監(jiān)控、機(jī)器人控制、無線232數(shù)據(jù)通信、無線485/422數(shù)據(jù)通信、數(shù)字音頻、數(shù)字圖像傳輸?shù)阮I(lǐng)域中。 這是DF發(fā)射模塊,體積:19x19x8毫米,右邊是等效的電路原理圖主要技術(shù)指標(biāo):1。通訊方式:調(diào)幅AM2。工作頻率:315MHZ (可以提供433MHZ,購貨時請?zhí)貏e注明)3。頻率穩(wěn)定度:75KHZ4。發(fā)射功率:500MW5。靜態(tài)電流:0.1UA6。發(fā)射電流:3

2、50MA7。工作電壓:DC 312V315MHZ發(fā)射模塊 8元一個433MHZ發(fā)射模塊 8元一個DF數(shù)據(jù)發(fā)射模塊的工作頻率為315M,采用聲表諧振器SAW穩(wěn)頻,頻率穩(wěn)定度極高,當(dāng)環(huán)境溫度在2585度之間變化時,頻飄僅為3ppm/度。特別適合多發(fā)一收無線遙控及數(shù)據(jù)傳輸系統(tǒng)。聲表諧振器的頻率穩(wěn)定度僅次于晶體,而一般的LC振蕩器頻率穩(wěn)定度及一致性較差,即使采用高品質(zhì)微調(diào)電容,溫差變化及振動也很難保證已調(diào)好的頻點不會發(fā)生偏移。DF發(fā)射模塊未設(shè)編碼集成電路,而增加了一只數(shù)據(jù)調(diào)制三極管Q1,這種結(jié)構(gòu)使得它可以方便地和其它固定編碼電路、滾動碼電路及單片機(jī)接口,而不必考慮編碼電路的工作電壓和輸出幅度信號值的大

3、小。比如用PT2262等編碼集成電路配接時,直接將它們的數(shù)據(jù)輸出端第17腳接至DF數(shù)據(jù)模塊的輸入端即可。DF數(shù)據(jù)模塊具有較寬的工作電壓范圍312V,當(dāng)電壓變化時發(fā)射頻率基本不變,和發(fā)射模塊配套的接收模塊無需任何調(diào)整就能穩(wěn)定地接收。當(dāng)發(fā)射電壓為3V時,空曠地傳輸距離約2050米,發(fā)射功率較小,當(dāng)電壓5V時約100200米,當(dāng)電壓9V時約300500米,當(dāng)發(fā)射電壓為12V時,為最佳工作電壓,具有較好的發(fā)射效果,發(fā)射電流約60毫安,空曠地傳輸距離700800米,發(fā)射功率約500毫瓦。當(dāng)電壓大于l2V時功耗增大,有效發(fā)射功率不再明顯提高。這套模塊的特點是發(fā)射功率比較大,傳輸距離比較遠(yuǎn),比較適合惡劣條件

4、下進(jìn)行通訊。天線最好選用25厘米長的導(dǎo)線,遠(yuǎn)距離傳輸時最好能夠豎立起來,因為無線電信號傳輸時收很多因素的影響,所以一般實用距離只有標(biāo)稱距離的20甚至更少,這點需要在開發(fā)時注意考慮。DF數(shù)據(jù)模塊采用ASK方式調(diào)制,以降低功耗,當(dāng)數(shù)據(jù)信號停止時發(fā)射電流降為零,數(shù)據(jù)信號與DF發(fā)射模塊輸入端可以用電阻或者直接連接而不能用電容耦合,否則DF發(fā)射模塊將不能正常工作。數(shù)據(jù)電平應(yīng)接近DF數(shù)據(jù)模塊的實際工作電壓,以獲得較高的調(diào)制效果。無線數(shù)據(jù)采集系統(tǒng)的設(shè)計與實現(xiàn)前言 21世紀(jì)的今天,科學(xué)技術(shù)的發(fā)展日新月異,科學(xué)技術(shù)的進(jìn)步同時也帶動了測量技術(shù)的發(fā)展,現(xiàn)代控制設(shè)備不同于以前,它們在性能和結(jié)構(gòu)發(fā)生了翻天覆地的變化。我

5、們已經(jīng)進(jìn)入了高速發(fā)展的信息時代,測量技術(shù)是當(dāng)今社會的主流,廣泛地深入到應(yīng)用工程的各個領(lǐng)域。溫度是工業(yè)、農(nóng)業(yè)生產(chǎn)中常見的和最基本的參數(shù)之一,在生產(chǎn)過程中常需對溫度進(jìn)行檢測和監(jiān)控,采用微型機(jī)進(jìn)行溫度檢測、數(shù)字顯示、信息存儲及實時控制,對于提高生產(chǎn)效率和產(chǎn)品質(zhì)量、節(jié)約能源等都有重要的作用。伴隨工業(yè)科技、農(nóng)業(yè)科技的發(fā)展,溫度測量需求越來越多,也越來越重要。但是在一些特定環(huán)境溫度監(jiān)測環(huán)境范圍大,測點距離遠(yuǎn),布線很不方便。這時就要采用無線方式對溫度數(shù)據(jù)進(jìn)行采集。 多路無線溫度采集系統(tǒng)可被廣泛應(yīng)用于溫度測量或相應(yīng)的可轉(zhuǎn)換為溫度量或供電故障監(jiān)控的工業(yè)、農(nóng)業(yè)、環(huán)保、服務(wù)業(yè)、安全監(jiān)控等工程中,例如:城市路燈故障檢

6、測和供電線路防盜監(jiān)視、城市居民小區(qū)供熱檢測、大型倉庫溫度檢測、工業(yè)生產(chǎn)測控、農(nóng)業(yè)生產(chǎn)溫度測控、環(huán)保工程、故障監(jiān)控工程等??紤]到許多工業(yè)環(huán)境中對多點溫度進(jìn)行監(jiān)控,一般需要測量幾十個點以上。本文設(shè)計多路無線溫度監(jiān)控系統(tǒng)。本設(shè)計是以Atmel公司的AT89S51單片機(jī)作為控制核心,提出以DS18B20的單總線分布式溫度采集與控制系統(tǒng)。多個溫度傳感節(jié)點通過單總線與單片機(jī)相連形成分布式系統(tǒng)??刂破魍ㄟ^溫度傳感器實時檢測各節(jié)點的溫度變化,并在LCD1602上循環(huán)顯示各節(jié)點溫度的變化。通過串口將檢測到的溫度信息回饋到上位機(jī)(PC機(jī)),從而遠(yuǎn)程實現(xiàn)對整個系統(tǒng)的檢測。因為采用微型機(jī)進(jìn)行溫度檢測、數(shù)字顯示、信息存

7、儲及實時控制,對于提高生產(chǎn)效率和產(chǎn)品質(zhì)量、節(jié)約能源等都有重要的作用,并且溫度參數(shù)對工業(yè)生產(chǎn)的重要性,所以溫度測量系統(tǒng)的精確度和智能化一直受到企業(yè)的重視。所以學(xué)習(xí)并研究溫度測量及相關(guān)知識可做為一個較為實用的課題的方向,能獲得較實用的知識和方法。因此溫度測控技術(shù)是一個很實用、也很重要的技術(shù),值得去研究掌握。它應(yīng)用的領(lǐng)域也相當(dāng)廣泛,可以應(yīng)用到消防電氣的非破壞性溫度檢測,電力、電訊設(shè)備的過熱故障預(yù)知檢測,空調(diào)系統(tǒng)的溫度檢測,各類運(yùn)輸工具之組件的過熱檢測,保全與監(jiān)視系統(tǒng)之應(yīng)用,醫(yī)療與健診的溫度測試,化工、機(jī)械等設(shè)備溫度過熱檢測。因此前景是相當(dāng)?shù)目捎^。1 總體方案設(shè)計溫度檢測系統(tǒng)有則共同的特點:測量點多、

8、環(huán)境復(fù)雜、布線分散、現(xiàn)場離監(jiān)控室遠(yuǎn)等。若采用一般溫度傳感器采集溫度信號,則需要設(shè)計信號調(diào)理電路、A/D 轉(zhuǎn)換及相應(yīng)的接口電路,才能把傳感器輸出的模擬信號轉(zhuǎn)換成數(shù)字信號送到計算機(jī)去處理。這樣,由于各種因素會造成檢測系統(tǒng)較大的偏差;又因為檢測環(huán)境復(fù)雜、測量點多、信號傳輸距離遠(yuǎn)及各種干擾的影響,會使檢測系統(tǒng)的穩(wěn)定性和可靠性下降 。所以多點溫度檢測系統(tǒng)的設(shè)計的關(guān)鍵在于兩部分:溫度傳感器的選擇和主控單元的設(shè)計。溫度傳感器應(yīng)用范圍廣泛、使用數(shù)量龐大,也高居各類傳感器之首。1.1 方案論證1.1.1 傳感器方案一:采用熱敏電阻,可滿足40攝氏度至90攝氏度測量范圍,但熱敏電阻精度、重復(fù)性、可靠性較差,對于檢

9、測1攝氏度的信號是不適用的。方案二:采用單片模擬量的溫度傳感器,比如AD590,LM35等。但這些芯片輸出的都是模擬信號,必須經(jīng)過A/D轉(zhuǎn)換后才能送給計算機(jī),這樣就使得測溫裝置的結(jié)構(gòu)較復(fù)雜。另外,這種測溫裝置的一根線上只能掛一個傳感器,不能進(jìn)行多點測量。即使能實現(xiàn),也要用到復(fù)雜的算法,一定程度上也增加了軟件實現(xiàn)的難度。方案三:采用數(shù)字溫度傳感器DS18B20測量溫度,輸出信號全數(shù)字化。便于單片機(jī)處理及控制,省去傳統(tǒng)的測溫方法的很多外圍電路。且該芯片的物理化學(xué)性很穩(wěn)定,它能用做工業(yè)測溫元件,此元件線性度較好。在0100攝氏度時,最大線形偏差小于1攝氏度。DS18B20的最大特點之一采用了單總線的

10、數(shù)據(jù)傳輸,由數(shù)字溫度計DS1820和微控制器AT89S52構(gòu)成的溫度測量裝置,它直接輸出溫度的數(shù)字信號,可直接與計算機(jī)連接。這樣,測溫系統(tǒng)的結(jié)構(gòu)就比較簡單,體積也不大,且由于AT89S52可以帶多個DSB1820,因此可以非常容易實現(xiàn)多點測量。輕松的組建傳感器網(wǎng)絡(luò)。采用溫度芯片DS18B20測量溫度,可以體現(xiàn)系統(tǒng)芯片化這個趨勢。部分功能電路的集成,使總體電路更簡潔,搭建電路和焊接電路時更快。而且,集成塊的使用,有效地避免外界的干擾,提高測量電路的精確度。所以集成芯片的使用將成為電路發(fā)展的一種趨勢。本方案應(yīng)用這一溫度芯片,也是順應(yīng)這一趨勢。1.1.2 主控部分方案一:采用AT89S52八位單片機(jī)

11、實現(xiàn)。單片機(jī)軟件編程的自由度大,可通過編程實現(xiàn)各種各樣的算術(shù)算法和邏輯控制。而且體積小,硬件實現(xiàn)簡單,安裝方便。既可以單獨(dú)對多DS18B20控制工作,還可以與PC機(jī)通信.運(yùn)用主從分布式思想,由一臺上位機(jī)(PC微型計算機(jī)),下位機(jī)(單片機(jī))多點溫度數(shù)據(jù)采集,組成兩級分布式多點溫度測量的巡回檢測系統(tǒng),實現(xiàn)遠(yuǎn)程控制。另外AT89C51在工業(yè)控制上也有著廣泛的應(yīng)用,編程技術(shù)及外圍功能電路的配合使用都很成熟1。方案二:使用MSP430作控制器,德州儀器 (TI) 的超低功率16位RISC 混合信號處理器MSP430產(chǎn)品系列為電池供電測量應(yīng)用提供了最終解決方案。作為混合信號和數(shù)字技術(shù)的領(lǐng)導(dǎo)者,TI創(chuàng)新生產(chǎn)

12、的MSP430,使系統(tǒng)設(shè)計人員能夠在保持獨(dú)一無二的低功率的同時同步連接至模擬信號、傳感器和數(shù)字組件。但在溫度采集和實施控制這個重要的場合低功耗相對來說顯得就不是那么重要了,而應(yīng)該考慮它的穩(wěn)定性、準(zhǔn)確性,同時對比AT89S52能夠在性能和資源都可以到達(dá)一個最佳的狀態(tài),可以避免用MSP430的不必要的資源浪費(fèi)。綜上,我們傳感器采用方案二,控制器采用方案一。系統(tǒng)框圖如下圖。 圖1.1.2-1 發(fā)射電路系統(tǒng)框圖 圖1.1.2-2 接收電路系統(tǒng)框圖2 硬件電路的設(shè)計本課題所設(shè)計的外圍電路包括:電源電路、溫度采集、時鐘電路、存儲電路、報警電路、模擬控制電路、按鍵電路、顯示電路以及串口等電路。下面將依次對各

13、個模塊進(jìn)行說明。2.1 電源電路電源變壓器是將交流電網(wǎng)220V的電壓變?yōu)樗枰碾妷褐?。交流電?jīng)過二極管整流之后,方向單一了,但是電流強(qiáng)度大小還是處在不斷地變化之中。這種脈動直流一般是不能直接用來給集成電路供電的,而要通過整流電路將交流電變成脈動的直流電壓。由于此脈動的直流電壓還含有較大的紋波,必須通過濾波電路加以濾除,從而得到平滑的直流電壓。濾波的任務(wù),就是把整流器輸出電壓中的波動成分盡可能地減小,改造成接近穩(wěn)恒的直流電。但這樣的電壓還隨電網(wǎng)電壓波動,一般有10%左右的波動,負(fù)載和溫度的變化而變化,因而在整流、濾波電路之后,還需要接穩(wěn)壓電路。穩(wěn)壓電路的作用是當(dāng)電網(wǎng)電壓波動,負(fù)載和溫度變化時,

14、維持輸出直流電壓穩(wěn)定。220V交流電通過9V變壓器變?yōu)?V的交流電,9V交流電通過四個二極管的全橋整流后變?yōu)?V直流電,然后經(jīng)過電解電容(470F)進(jìn)行一級濾波,以去除直流電里面的雜波,防止干擾。9V直流電出來后再經(jīng)過三端穩(wěn)壓器LM7805穩(wěn)壓成為穩(wěn)定的5V電源,其中7805的Vin腳是輸入腳,接9V直流電源正極,GND是接地腳,接9V直流電源負(fù)極,Vout為輸出腳,它和接地腳的電壓就是+5V了。5V電源出來再經(jīng)過電解電容的二級濾波,使5V電源更加穩(wěn)定可靠。同時在5V穩(wěn)壓電源加上一個10K的電阻和一個紅色發(fā)光二極管,當(dāng)上電后,紅色發(fā)光二極管點亮,表示電源工作正常。此時一個穩(wěn)定輸出5V的電源已經(jīng)

15、設(shè)計好,對于本設(shè)計它完全能夠滿足單片機(jī)及集成塊所需電源的要求2。電源原理圖如圖2.1-1所示。圖2.1-1 電源原理圖2.2 溫度采集電路2.2.1 DS18B20簡介溫度芯片DS18B20是Dallas公司生產(chǎn)的一線式數(shù)字溫度傳感器,具有3引腳TO92小體積封裝形式。測溫分辨率可達(dá)0.0625,被測溫度用符號擴(kuò)展的16位數(shù)字量方式串行輸出。測量溫度范圍為 -55+125,在-10+85范圍內(nèi),精度為0.5。其工作電源既可在遠(yuǎn)端引入,也可采用寄生電源方式產(chǎn)生。CPU只需一根端口線就能與諸多DS18B20通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。由于每一個DS18B20都有唯一系

16、列號,因此多個DS18B20可以存在同一條單總線上。這允許許多不同地方放置溫度靈敏器件。此特性的應(yīng)用范圍包括HAVC環(huán)境控制,建筑物、設(shè)備或機(jī)械內(nèi)的溫度檢測,以及過程監(jiān)控和控制中的溫度檢測等3。DS18B20的內(nèi)部結(jié)構(gòu)如圖2.2.1-1所示。圖2.2.1-1 DS18B20方框圖DS18B20有4個主要的數(shù)據(jù)部件:A、64位激光ROM。64位激光ROM從高位到低位依次為8位CRC、48位序列號和8位家族代碼(28H)組成。B、溫度靈敏元件。 C、非易失性溫度報警觸發(fā)器TH和TL??赏ㄟ^軟件寫入用戶報警上下限值。D、配置寄存器。配置寄存器為高速暫存存儲器中的第五個字節(jié)。其中R0、R1:溫度計分辨

17、率設(shè)置位,其對應(yīng)四種分辨率如下表所列,出廠時R0、R1置為缺省值:R0=1,R1=1(即12位分辨率),用戶可根據(jù)需要改寫配置寄存器以獲得合適的分辨率。 表 2.2.1-1 分辨率關(guān)系表R0R1分辨率/bit最大轉(zhuǎn)換時間/us00993.750110187.510113751112750高速暫存存儲器由9個字節(jié)組成,其分配如表2.2.1-2所示。當(dāng)溫度轉(zhuǎn)換命令發(fā)布后,經(jīng)轉(zhuǎn)換所得的溫度值以二字節(jié)補(bǔ)碼形式存放在高速暫存存儲器的第0和第1個字節(jié)。單片機(jī)可通過單線接口讀到該數(shù)據(jù),讀取時低位在前,高位在后,數(shù)據(jù)格式如表2.2.1-2所示。對應(yīng)的溫度計算:當(dāng)符號位S=0時,直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)S

18、=1時,先將補(bǔ)碼變?yōu)樵a,再計算十進(jìn)制值。表2.2.1-2 DS18B20存儲器溫度LSB溫度MSBTHTL保留保留計數(shù)寄存器計數(shù)寄存器8位CRC2.2.2 電路設(shè)計 本系統(tǒng)為多點溫度測試。DS18B20采用外部供電方式,理論上可以在一根數(shù)據(jù)總線上掛256個DS18B20,但時間應(yīng)用中發(fā)現(xiàn),如果掛接25個以上的DS18B20仍舊有可能產(chǎn)生功耗問題。另外單總線長度也不宜超過80M,否則也會影響到數(shù)據(jù)的傳輸。在這種情況下我們可以采用分組的方式,用單片機(jī)的多個I/O來驅(qū)動多路DS18B20。在實際應(yīng)用中還可以使用一個MOSFET將I/O口線直接和電源相連,起到上拉的作用4。電路如圖2.2.2-1。圖

19、2.2.2-1 單總線原理圖對DS18B20的設(shè)計,需要注意以下問題:A、對硬件結(jié)構(gòu)簡單的單線數(shù)字溫度傳感器DS18B20 進(jìn)行操作,需要用較為復(fù)雜的程序完成。編制程序時必須嚴(yán)格按芯片數(shù)據(jù)手冊提供的有關(guān)操作順序進(jìn)行,讀、寫時間片程序要嚴(yán)格按要求編寫。尤其在使用DS18B20 的高測溫分辨力時,對時序及電氣特性參數(shù)要求更高。B、有多個測溫點時,應(yīng)考慮系統(tǒng)能實現(xiàn)傳感器出錯自動指示,進(jìn)行自動DS18B20 序列號和自動排序,以減少調(diào)試和維護(hù)工作量。C、測溫電纜線建議采用屏蔽4 芯雙絞線,其中一對線接地線與信號線,另一組接VCC和地線,屏蔽層在源端單點接地。DS18B20 在三線制應(yīng)用時,應(yīng)將其三線焊

20、接牢固;在兩線應(yīng)用時,應(yīng)將VCC與GND接在一起,焊接牢固。若VCC脫開未接,傳感器只送85的溫度值。D、實際應(yīng)用時,要注意單線的驅(qū)動能力,不能掛接過多的DS18B20,同時還應(yīng)注意最遠(yuǎn)接線距離。另外還應(yīng)根據(jù)實際情況選擇其接線拓?fù)浣Y(jié)構(gòu)。2.2.3 無線傳輸電路模塊 無線傳輸模塊,采用集成芯片PT2262和PT2272來構(gòu)建收發(fā)電路。PT2262/PT2272 是臺灣普城公司生產(chǎn)的一種CMOS 工藝制造的低功耗低價位通用編解碼電路,PT2262/PT2272 最多可有12 位(A0-A11)三態(tài)地址端管腳(懸空,接高電平,接低電平),任意組合可提供 地址碼,PT2262 最多可有6 位(D0-D

21、5)數(shù)據(jù)端管腳,設(shè)定的地址碼和數(shù)據(jù)碼從17 腳串行輸出,可用于無線遙控發(fā)射電路。編碼芯片 PT2262 發(fā)出的編碼信號由:地址碼、數(shù)據(jù)碼、同步碼組成一個完整的碼字,解碼芯片PT2272 接收到信號后,其地址碼經(jīng)過兩次比較核對后,VT 腳才輸出高電平,與此同時相應(yīng)的數(shù)據(jù)腳也輸出高電平,如果發(fā)送端一直按住按鍵,編碼芯片也會連續(xù)發(fā)射。當(dāng)發(fā)射機(jī)沒有按鍵按下時,PT2262 不接通電源,其17 腳為低電平,所以315MHz 的高頻發(fā)射電路不工作,當(dāng)有按鍵按下時,PT2262 得電工作,其第17 腳輸出經(jīng)調(diào)制的串行數(shù)據(jù)信號,當(dāng)17 腳為高電平期間315MHz 的高頻發(fā)射電路起振并發(fā)射等幅高頻信號,當(dāng)17

22、腳為低平期間315MHz 的高頻發(fā)射電路停止振蕩,所以高頻發(fā)射電路完全收控于PT2262 的17 腳輸出的數(shù)字信號,從而對高頻電路完成幅度鍵控(ASK調(diào)制)相當(dāng)于調(diào)制度為100的調(diào)幅。在通常使用中,一般采用8 位地址碼和4 位數(shù)據(jù)碼,這時編碼電路PT2262 和解碼PT2272 的第18腳為地址設(shè)定腳,有三種狀態(tài)可供選擇:懸空、接正電源、接地三種狀態(tài),3 的8 次方為6561,所以地址編碼不重復(fù)度為6561 組,只有發(fā)射端PT2262 和接收端PT2272 的地址編碼完全相同,才能配對使用,例如將發(fā)射機(jī)的PT2262 的第2 腳接地第3 腳接正電源,其它引腳懸空,那么接收機(jī)的PT2272 只要

23、第2 腳接地第3 腳接正電源,其它引腳懸空就能實現(xiàn)配對接收。當(dāng)兩者地址編碼完全一致時,接收機(jī)對應(yīng)的D1D4端輸出約4V 互鎖高電平控制信號,同時VT 端也輸出解碼有效高電平信號。用戶可將這些信號加一級三極管放大,便可驅(qū)動繼電器等負(fù)載進(jìn)行遙控操縱5。設(shè)置地址碼的原則是:同一個系統(tǒng)地址碼必須一致;不同的系統(tǒng)可以依靠不同的地址碼加以區(qū)分。至于設(shè)置什么樣的地址碼完全隨客戶喜歡。3 無線發(fā)送與接收電路3.1 無線發(fā)送電路原理如圖3.1-1所示。圖3.1-1 PT2262發(fā)射原理圖 PT2262的發(fā)射原理如上圖所示,采用8 位地址碼和4 位數(shù)據(jù)碼的格式。PT2262的第18引腳設(shè)置地址為“”,及18腳都接

24、地。第1013引腳為數(shù)據(jù)輸入端,這四個引腳分別與單片機(jī)AT89S51的P2.0P2.3口相連。要發(fā)送的數(shù)據(jù)通過單片機(jī)AT89S51的P2.0P2.3口寫入PT2262的數(shù)據(jù)輸入管腳1013。由于第14腳接地,所以編碼啟動端一直有效,當(dāng)PT2262的管腳1013有輸入(有一個為“1”即有編碼發(fā)出),則輸入的4位數(shù)據(jù)再經(jīng)過第17腳串行輸出通過天線發(fā)送出去。3.2 無線接收模塊無線接收模塊電路圖如圖3.2-1所示:PT2272的接收原理如上圖所示,由于PT2262采用8位地址碼和4 位數(shù)據(jù)碼的格式,所以PT2272也要采用同樣的格式。PT2272要與PT2262的地址相匹配才能進(jìn)行傳輸,所以PT22

25、72的地址引腳18也要設(shè)置為“”,及都接地。數(shù)據(jù)出端1013引腳與單片機(jī)AT89S51的P1.0P1.3口相連。接收到的數(shù)據(jù)再通過單片機(jī)的外圍接口P1.0P1.3讀入到單片機(jī)內(nèi)部進(jìn)行處理。第17腳連接到單片機(jī)的P3.2(INT0)的外中斷0的輸入端,同時接一個發(fā)光二極管來確定解碼有沒有效。當(dāng)解碼有效時17腳輸出瞬間的高電平同時使單片機(jī)產(chǎn)生中斷來讀取數(shù)據(jù)和二極管瞬間發(fā)光。每解碼有效一次,發(fā)光二極管的閃爍一次6。圖3.2-1 PT2262接收原理圖4 顯示電路4.1 字符型液晶顯示模塊圖4.1-1 液晶面板 字符型液晶顯示模塊是一類專門用于顯示字母,數(shù)字,符號等的點陣式液晶顯示模塊。在顯示器件上的

26、電極圖型設(shè)計,它是由若干個5*7或5*11等點陣符位組成。每一個點陣字符位都可以顯示一個字符。點陣字符位之間有一空點距的間隔起到了字符間距和行距的作用。4.2 字符型液晶顯示模塊引腳VSS為地電源,VDD接5V正電源,VL為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。RW為讀寫信號線,高電平時進(jìn)行讀操作,低電平時進(jìn)行寫操作。當(dāng)RS和RW共同為低電平時可以寫入指令或者顯示地址,當(dāng)RS為低電平RW為高電平時可以讀忙信號,當(dāng)RS為高電平RW

27、為低電平時可以寫入數(shù)據(jù)。E端為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。DB0DB7為8位雙向數(shù)據(jù)線,BLK和BLA是背光燈電源7。模塊引腳如表4.2-1。 表4.2-1 字符型液晶顯示模塊引腳編號符號引腳說明編號符號引腳說明1VSS電源地9D2Data I/O2VDD電源正極10D3Data I/O3VL液晶顯示偏壓信號11D4Data I/O4RS數(shù)據(jù)/命令12D5Data I/O5R/W讀/寫13D6Data I/O6E使能信號14D7Data I/O7D0Data I/O45BLA背光源正級8D1Data I/O16BLK背光源負(fù)級4.3 字符型液晶顯示模塊內(nèi)部結(jié)構(gòu) 液晶

28、顯示模塊WM-C1602N的內(nèi)部結(jié)構(gòu)如圖4.3-1分為三部份:一為LCD控制器,二為LCD驅(qū)動器,三為LCD顯示裝置。圖4.3-1 LCD1602內(nèi)部結(jié)構(gòu) 圖4.3-2 液晶接口5 單片機(jī)AT89S52 5.1 AT89S52簡介如圖5.1-1所示為AT89S52芯片的引腳圖。兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)的AT89S52單片機(jī)是一個低功耗、高性能CHMOS的單片機(jī),片內(nèi)含4KB在線可編程Flash存儲器的單片機(jī)。它與通用80C51系列單片機(jī)的指令系統(tǒng)和引腳兼容。AT89S52單片機(jī)片內(nèi)的Flash可允許在線重新編程,也可用通用非易失性存儲編程器編程;片內(nèi)數(shù)據(jù)存儲器內(nèi)含128字節(jié)的RAM;有40

29、個引腳,32個外部雙向輸入/輸出(I/O)端口;具有兩個16位可編程定時器;中斷系統(tǒng)是具有6個中斷源、5個中斷矢量、2級中斷優(yōu)先級的中斷結(jié)構(gòu);震蕩器頻率0到33MHZ,因此我們在此選用12MHZ的晶振是比較合理的;具有片內(nèi)看門狗定時器;具有斷電標(biāo)志POF等等。AT89S51具有PDIP、TQFP和PLCC三種封裝形式8。圖5.1-1 AT89S52引腳圖上圖就是PDIP封裝的引腳排列,下面介紹各引腳的功能。5.2 AT89S52引腳說明P0口:8位、開漏級、雙向I/O口。P0口可作為通用I/O口,但須外接上拉電阻;作為輸出口,每各引腳可吸收8各TTL的灌電流。作為輸入時,首先應(yīng)將引腳置1。P0

30、也可用做訪問外部程序存儲器和數(shù)據(jù)存儲器時的低8位地址/數(shù)據(jù)總線的復(fù)用線。在該模式下,P0口含有內(nèi)部上拉電阻。在FLASH編程時,P0口接收代碼字節(jié)數(shù)據(jù);在編程效驗時,P0口輸出代碼字節(jié)數(shù)據(jù)(需要外接上拉電阻)。P1口:8位、雙向I/0口,內(nèi)部含有上拉電阻。P1口可作普通I/O口。輸出緩沖器可驅(qū)動四個TTL負(fù)載;用作輸入時,先將引腳置1,由片內(nèi)上拉電阻將其抬到高電平。P1口的引腳可由外部負(fù)載拉到低電平,通過上拉電阻提供電流。在FLASH并行編程和校驗時,P1口可輸入低字節(jié)地址。在串行編程和效驗時,P1.5/MO-SI,P1.6/MISO和P1.7/SCK分別是串行數(shù)據(jù)輸入、輸出和移位脈沖引腳。

31、P2口:具有內(nèi)部上拉電阻的8位雙向I/O口。P2口用做輸出口時,可驅(qū)動4各TTL負(fù)載;用做輸入口時,先將引腳置1,由內(nèi)部上拉電阻將其提高到高電平。若負(fù)載為低電平,則通過內(nèi)部上拉電阻向外部輸出電流。CPU訪問外部16位地址的存儲器時,P2口提供高8位地址。當(dāng)CPU用8位地址尋址外部存儲時,P2口為P2特殊功能寄存器的內(nèi)容。在FLASH并行編程和校驗時,P2口可輸入高字節(jié)地址和某些控制信號。P3口:具有內(nèi)部上拉電阻的8位雙向口。P3口用做輸出口時,輸出緩沖器可吸收4各TTL的灌電流;用做輸入口時,首先將引腳置1,由內(nèi)部上拉電阻抬位高電平。若外部的負(fù)載是低電平,則通過內(nèi)部上拉電阻向輸出電流。在與FL

32、ASH并行編程和校驗時,P3口可輸入某些控制信號。P3口除了通用I/O口功能外,還有替代功能,如表5.3-1所示。表5.3-1 P3口的替代功能引腳符號說明P3.0RXD串行口輸入P3.1TXD串行口輸出P3.2/INT0外部中斷0P3.3/INT1外部中斷1P3.4T0T0定時器的外部的計數(shù)輸入P3.5T1T1定時器的外部的計數(shù)輸入P3.6/WR外部數(shù)據(jù)存儲器的寫選通P3.7/RD外部數(shù)據(jù)存儲器的讀選通RST:復(fù)位端。當(dāng)振蕩器工作時,此引腳上出現(xiàn)兩個機(jī)器周期的高電平將系統(tǒng)復(fù)位。ALE/ :當(dāng)訪問外部存儲器時,ALE(允許地址鎖存)是一個用于鎖存地址的低8位字節(jié)的書粗脈沖。在Flash 編程期

33、間,此引腳也可用于輸入編程脈沖()。在正常操作情況下,ALE以振蕩器頻率的1/6的固定速率發(fā)出脈沖,它是用作對外輸出的時鐘,需要注意的是,每當(dāng)訪問外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如果希望禁止ALE操作,可通過將特殊功能寄存器中位地址為8EH那位置的“0”來實現(xiàn)。該位置的“1”后。ALE僅在MOVE或MOVC指令期間激活,否則ALE引腳將被略微拉高。若微控制器在外部執(zhí)行方式,ALE禁止位無效。:外部程序存儲器讀選取通信號。當(dāng)AT89S51在讀取外部程序時, 每個機(jī)器周期 將PSEN激活兩次。在此期間內(nèi),每當(dāng)訪問外部數(shù)據(jù)存儲器時,將跳過兩個信號。/Vpp:訪問外部程序存儲器允許端。為了能夠

34、從外部程序存儲器的0000H至FFFFH單元中取指令,必須接地,然而要注意的是,若對加密位1進(jìn)行編程,則在復(fù)位時,的狀態(tài)在內(nèi)部被鎖存。執(zhí)行內(nèi)部程序應(yīng)接VCC。不當(dāng)選擇12V編程電源時,在Flash編程期間,這個引腳可接12V編程電壓。XTAL1:振蕩器反向放大器輸入端和內(nèi)部時鐘發(fā)生器的輸入端。XTAL2:振蕩器反相放大器輸出端9。6 軟件設(shè)計6.1 系統(tǒng)概述整個系統(tǒng)的功能是由硬件電路配合軟件來實現(xiàn)的,當(dāng)硬件基本定型后,軟件的功能也就基本定下來了。從軟件的功能不同可分為兩大類:一是監(jiān)控軟件(主程序),它是整個控制系統(tǒng)的核心,專門用來協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系。二是執(zhí)行軟件(子程序),它是用來完

35、成各種實質(zhì)性的功能如測量、計算、顯示、通訊等。每一個執(zhí)行軟件也就是一個小的功能執(zhí)行模塊。這里將各執(zhí)行模塊一一列出,并為每一個執(zhí)行模塊進(jìn)行功能定義和接口定義。各執(zhí)行模塊規(guī)劃好后,就可以規(guī)劃監(jiān)控程序了。6.2 程序設(shè)計流程圖 圖6.2-1 發(fā)射流程圖 圖6.2-2 接收流程圖6.3 溫度傳感器多點數(shù)據(jù)采集DS18B20 可設(shè)定912 位的分辨率,本系統(tǒng)采用12位分辨率,轉(zhuǎn)換精度為0.0625,轉(zhuǎn)換溫度信號所需最長時間為750ms。溫度數(shù)據(jù)由2 字節(jié)組成,以符號擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲,最低4 位是小數(shù)部分,中間7 位是整數(shù)部分, 1 位符號位。DS18B20 內(nèi)部RAM 由9 個字節(jié)的高速緩存器和

36、E2PROM 組成,前2 個字節(jié)即為溫度數(shù)據(jù)。通過復(fù)位指令、ROM 和RAM 功能命令,即可完成對指定DS18B20溫度數(shù)據(jù)的采集和讀取。在一線制總線上串接多個DS18B20 器件時,需要先發(fā)送跳過ROM 指令,將所有傳感器都進(jìn)行一次溫度轉(zhuǎn)換,之后通過匹配ROM依次讀取每個傳感器的溫度數(shù)據(jù),實現(xiàn)對單I/O 口上的多個DS18B20 器件的操作10。在系統(tǒng)安裝及工作之前應(yīng)將主機(jī)逐個與DS1820掛接,以讀出其序列號。其工作過程為:主機(jī)發(fā)出一個脈沖,待“0”電平大于480s后,復(fù)位DS1820,在DS1820所發(fā)響應(yīng)脈沖由主機(jī)接收后,主機(jī)再發(fā)讀ROM命令代碼33H,然后發(fā)一個脈沖(15s),并接著

37、讀取DS1820序列號的一位。用同樣方法讀取序列號的56位。另外,由于DS1820單線通信功能是分時完成的,遵循嚴(yán)格的時隙概念,系統(tǒng)對DS1820和各種操作必須按協(xié)議進(jìn)行,即:初始化DS18B20(發(fā)復(fù)位脈沖)發(fā)ROM功能命令發(fā)存儲器操作命令處理數(shù)據(jù)。7 調(diào)試及結(jié)果7.1 測試環(huán)境及工具測試溫度:0100攝氏度(模擬多點不同溫度值環(huán)境)。測試儀器及軟件:數(shù)字萬用表,溫度計0100攝氏度,串口調(diào)試助手。測試方法:目測。7.2 測試方法使系統(tǒng)運(yùn)行,觀察系統(tǒng)硬件檢測是否正常(包括單片機(jī)最小系統(tǒng),鍵盤電路,顯示電路,溫度測試電路等)。系統(tǒng)自帶測試表格數(shù)據(jù),觀察顯示數(shù)據(jù)是否相符合即可。采用溫度傳感器和溫

38、度計同時測量多點水溫變化情況(取溫度值不同的多點),目測顯示電路是否正常。并記錄各點溫度值,與實際溫度值比較,得出系統(tǒng)的溫度指標(biāo)。使用串口調(diào)試助手與單片機(jī)通訊,觀察單片機(jī)與串口之間傳輸數(shù)據(jù)正確否。7.3 測試結(jié)果分析自檢正常,各點溫度顯示正常,串口傳輸數(shù)據(jù)正確。因為芯片是塑料封裝,所以對溫度的感應(yīng)靈敏度不是相當(dāng)高,需要一個很短的時間才能達(dá)到穩(wěn)定。8 總結(jié)本文研究的課題是基于單片機(jī)的多通道數(shù)據(jù)采集系統(tǒng),該系統(tǒng)的實現(xiàn)的功能是將來自傳感器的信號通過放大、線性化、濾波、同步采樣保持等處理后,輸入A/D轉(zhuǎn)換為數(shù)字信號后由單片機(jī)采集,然后利用單片機(jī)與PC機(jī)的通信將數(shù)據(jù)送到PC機(jī)進(jìn)行數(shù)據(jù)的存儲、后期處理與顯

39、示,該系統(tǒng)的數(shù)據(jù)處理功能強(qiáng)大、顯示直觀、界面友好、性價比商,可廣泛應(yīng)用于工業(yè)控制、儀器、儀表、機(jī)電一體化、智能家居等諸多領(lǐng)域。本系統(tǒng)還是一個不完善的系統(tǒng),還有許多需要改進(jìn)的地方。設(shè)計中所采用的DS18B20搜索算法還存在不足,有時會發(fā)生重復(fù)或遺漏搜索。在通信協(xié)議不完整,沒有進(jìn)行發(fā)送超時出錯處理。還有各種不足之處有待將來改進(jìn)。設(shè)計得以順利完成,得感謝我的指導(dǎo)老師,在這個過程中他都一直指導(dǎo)著我,雖然他沒有時時刻刻在我們身邊親歷指導(dǎo),但是他每天都詢問我的進(jìn)展情況,對我遇到的問題給予我解答,并對我的設(shè)計進(jìn)行一些優(yōu)化。附錄1: 電路原理總圖附錄2: 發(fā)射部分主程序#include#include”ds1

40、8b20.h”#define uchar unsigned char /*pt2262發(fā)射函數(shù)*/void send_dat(uchar x) uchar x1,x2; x1=x&0x0f; P2=x1;/將數(shù)據(jù)的低4位先發(fā)送出去 x2=x4; P2=x2;/再將數(shù)據(jù)的高4位發(fā)送出去/*主函數(shù)*/void main() while(1) read_ds18b20();/讀取溫度 send_dat(temp1);/發(fā)射溫度1send_dat(temp2);/發(fā)射溫度2send_dat(temp3);/發(fā)射溫度3 Ds18b20.h頭文件:#ifndef _ds18b20#define _ds18

41、b20 uchar temperature,y1,y2,x2,y3; #define DQ P1_0 /溫度接收口uchar tpl;uchar tph;/*/void delay_b(uint t) uint i; while(t-) for(i=0;i0) i-; DQ=1; i=4; while(i0) i-;/*/void rxwait(void) uint i; while(DQ); while(!DQ); i=4; while(i0) i-;/*/bit rdbit(void) uint i;bit b; DQ=0;i+; DQ=1;i+;i+; b=DQ; i=8;while(i

42、0) i-;return (b);/*Function:讀18B20的一個字節(jié)*/uchar rdbyte(void) uchar i,j,b;for(i=1;i=8;i+) j=rdbit();b=(j1); return (b); /*Function:向18B20寫入一個字節(jié)*/ void wrbyte(uchar b) uint i; uchar j, btm; for(j=1; j1; if(btm=1) DQ=0;i+;i+;DQ=1; i=8; while(i0) i-; else DQ=0; i=8;while(i0) i-;DQ=1;i+; i+; /*Function:溫度

43、轉(zhuǎn)換*/void convert(void)txreset();rxwait();delay_b(1);/延時wrbyte(0xcc);wrbyte(0x44);/*/void rdtemp(void)txreset(); rxwait(); delay_b(1); /延時wrbyte(0xcc); wrbyte(0xbe); tpl=rdbyte();tph=rdbyte();/*/void delay_2ms() /動態(tài)掃描顯示時間unsigned char i,j;for(i=0;i8;i+) for(j=0;j30;j+);void disp_led() P0=ay1; P2=b0;

44、delay_2ms();P2=0XFF;P0=ay2&0x7f; / 顯示帶小數(shù)點的數(shù) P2=b1; delay_2ms();P2=0XFF; P0=ay3; P2=b2; delay_2ms();P2=0XFF;/*/void delay_2(uchar a)/延時函數(shù) uchar b,c; for(b=0;ba;b+) for(c=0;c10;c+); /*/void read_ds18b20() convert(); delay_2(500); rdtemp(); temperature=(tpl&0xf0)/16+(tph&0x07)*16;y1=temperature/10; /整數(shù)

45、 溫度十位y2=temperature%10; / 溫度個位x2=(tpl&0x0f)*(100/16);y3=x2/10; /小數(shù) 溫度十位/*/#endif附錄3: 接收部分主程序#include#include lcd1602.h#define uchar unsigned charuchar flag=0,flag_dat=0; /定義flag標(biāo)志變量表示接收的數(shù)據(jù)的高4位還是低4位,flag_dat表示接收的是第幾個溫度傳感器的數(shù)據(jù)uchar dat,dat1,dat2;uchar temp1,temp2,temp3;/*顯示函數(shù)*/void display() wc51r(0x80

46、);/第一行第一列開始顯示 wc51_str(T1:); wc51_data(temp1/100); wc51_data(temp1%100/10); wc51_data(.); wc51_data(temp1%10); wc51_str( ) wc51_str(T2:); wc51_data(temp2/100); wc51_data(temp2%100/10); wc51_data(.); wc51_data(temp2%10); wc51r(0xC0);/第二行第一列開始顯示 wc51_str(T3:); wc51_data(temp3/100); wc51_data(temp3%100

47、/10); wc51_data(.); wc51_data(temp3%10);/*pt2272讀函數(shù)*/ uchar recv_dat() uchar y; y=P1;/讀取4位二進(jìn)制數(shù)據(jù) return(y);/*主函數(shù)*/void main() EA=1;/開總中斷 EX0=1;/開外中斷0 IT0=1;/設(shè)置外中斷0位邊沿觸發(fā)方式 while(1) if(flag_dat=1) temp1=dat*10; else if(flag_dat=2) temp2=dat*10; else if(flag_dat=3) temp3=dat*10; display(); /*外中斷0函數(shù)*/voi

48、d int0()interrupt 0 if(flag=0) dat1=recv_dat();/讀取低4位數(shù)據(jù) else dat2=recv_dat();/讀取高4數(shù)據(jù)位 flag+;/每中斷一次標(biāo)志位自加1 if(flag=2) flag=0; flag_dat+; if(falg_dat=4) flag_dat=1; dat1=dat1&0x0f; dat2=(dat2&0x0f)4; dat=dat1|dat2;1602.h頭文件:#include#define uchar unsigned char/*sbit RS=P27;sbit RW=P26;sbit E=P25;*/#defi

49、ne RS P2_5#define RW P2_6#define E P2_7void init();/聲明初始化函數(shù)void wc51r(uchar x);/聲明寫命令函數(shù)void wc51_data(uchar y);/聲明寫數(shù)據(jù)函數(shù)void wc51_str(uchar *p);/聲明寫字符串函數(shù)void fbusy();/聲明查忙函數(shù)void init() wc51r(0x01);/清屏 /wc51r(0x30);/使用8位數(shù)據(jù),單行顯示,5*7點陣 wc51r(0x38);/使用8位數(shù)據(jù),雙行顯示,5*7點陣 /wc51r(0x0e);/顯示器開,顯示光標(biāo),字符不閃爍 wc51r(0x0c);/顯示器開 不顯示光標(biāo),字符不閃爍 wc51r(0x06);/字符不動,光標(biāo)移動void fbusy()/查忙函數(shù) do P0=0xff;/

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論