




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、四川理工學院成人教育學院 畢業設計(論文) 題 目 基于單片機控制的WIFI無線傳輸模塊的設計 教學點 重慶科創職業學院 專 業 通信工程 年 級 2011級 姓 名 吳 敏 指導教師 賈 俊 霞 定稿日期: 2014年4月 25 日24四川理工學院成人教育學院畢業設計(論文)任務書學生姓名吳敏專業班級通信工程ZB821101設計(論文)題目基于單片機控制的WIFI無線傳輸模塊的設計接受任務日期2013年12月18日完成任務日期2014年4月25日指導教師(簽名)賈俊霞指導教師單位重慶科創職業學院設計(論文)內容目標內容:(1) 針對系統的需求選擇合適的無線數據傳輸模塊。(2) 根據選擇的器件
2、設計外圍電路和單片機的接口電路。(3) 編寫控制無線數據傳輸器件進行數據。目標:(1) 單片機系統:通過串口傳輸向上位機發送數據,同時,控制無線數據傳輸模塊(2) 外圍電路:無線數據傳輸模塊和單片機之間的接口電路(3) 程序:編寫單片機控制無線數據傳輸模塊實現單片機的無線數據傳輸傳輸的程序設計(論文)要求(1)機無線數據傳輸系統的總體方案(2)要求用AT98S51單片機設計軟硬件(3)信息的發射與接收,單片機具有無線數據傳輸的功能參考資料(1)數據傳輸原理 清華大學通信教材編寫小組 北京人民郵電出版社(2)紅外技術基礎與應用 記紅 北京科技出版社(3)單片機原理及其嵌入式應用教程 王一懷 北京
3、北京希望電子出版社注:此表由指導教師填寫后發給學生,學生按此表要求開展畢業設計(論文)工作。基于單片機控制的WIFI無線傳輸模塊的設計摘 要隨著社會的發展,人們期望能隨時隨地、不受時空限制地進行信息交互。當今的各種智能化控制系統也離不開數據信息的傳輸。有很多的電器產品(如一些家用電器)的操作控制也都采用了無線數據傳輸方式,一些無線數據傳輸功能相對簡單的電器產品,無線數據傳輸信號的接收識別往往采用與編碼調制芯片配套的譯碼芯片。而無線數據傳輸功能比較復雜的一些電器產品,無線數據傳輸信號的識別與譯碼多采用單片機,其編碼調制方法也有多種。下面介紹一種常用的無線數據傳輸信號的編碼方法,以及用單片機對其進
4、行識別的程序設計方法,以供參考。設計了一種基于AT89S51單片機的無線數據傳輸方案,并簡要介紹了無線數據傳輸抗干擾措施并給出軟件設計實例。關鍵詞:無線數據傳輸;片機; 編碼; 解碼Design of WIFI wireless transmission module based on MCU AbstractWith the development of society, people expect to whenever and wherever possible, without time limit for information interaction. Transmission o
5、f various intelligent current control system also cannot do without data information. There are a lot of electrical products (such as some of the household appliances) operation control have also used a wireless data transmission, electrical products some wireless data transmission function of relat
6、ively simple, receiving and identifying the wireless data transmission signal is often used in decoding chip and supporting code modulation chip. Some appliances wireless data transmission function is relatively complex, recognition and decoding of wireless data transmission signal by MCU, the modul
7、ation and coding methods are various. The coding method is a commonly used wireless data transmission signal, as well as the MCU to carry on the program design method of identification, for reference. Design of a wireless data transmission scheme based on AT89S51 single chip microcomputer, and brief
8、ly introduces the wireless data transmission, anti-interference measures and gives the software design example.Key words:Wireless data transmission; single-chip microcomputer; coding; decoder目 錄前言1第一章單片機無線數據傳輸系統設計的原理21.1 單片機無線數據傳輸原理概述21.2 AT89S51單片機的原理31.3 QwikRadio®射頻發射模塊(Transmitter Module)31
9、.4 QwikRadio射頻接收模塊(Receiver Module)5第二章 基于單片機的無線數據傳輸系統的實現72.1 硬件電路設計72.1.1概述72.1.2發射部分72.1.3接收部分92.2 軟件設計112.2.1概述112.2.3接收電路的軟件流程設計16第三章 調試22第四章 結束語25致謝26參考文獻27前言當今的各種智能化控制系統 ,比如智能化小區內部的無線抄表系統、門禁系統、防盜報警系統和安全防火系統等 ,工業數據采集系統 ,水文氣象控制系統,機器人控制系統、數字圖像傳輸系統等等 ,都離不開數據信息的傳輸。可以說 ,數據信息傳輸系統是各種智能化控制系統的重要組成部分。而數據
10、送的方式大部分采用有線的數據傳送方式,例如并行傳送、串行傳送、CAN總線和Lonworks總線等等。在有線數據傳輸方式當中,數據的傳輸載體是雙絞線、同軸電纜或光纖。在一些單片機監測系統中,數據采集裝置是安裝在環境條件惡劣的現場或野外。采集到的數據通信傳輸到手持終端, 然后通過手持終端送到后臺機(PC 機) 進行數據分析、處理。這樣,數據采集裝置與手持終端之間的數據傳輸需解決通信問題。若采用有線數據傳輸方式顯然是不合適的。其實,數據傳輸還可以有無線傳輸方式,即通過空氣或真空實現數據傳送。相比于傳統的有線數據傳輸方式,無線數據傳輸方式可以不考慮傳輸線纜的安裝問題,從而節省大量電線電纜,并且降低施工
11、難度和系統成本,是一個很有發展潛力的研究課題。無線數據傳輸因其傳輸距離遠和受障礙影響小而得到廣泛應用,隨著各種專用無線數據傳輸集成電路和無線數據傳輸發射和接收專用集成電路的不斷涌現,使許多復雜的無線數據傳輸系統的設計變得愈來愈簡單,而且工作穩定性可靠。隨著計算機、通信和無線技術的逐步融合,在傳統的有線通信的基礎上,無線通信技術因具有體積小、抗干擾能力強、快捷、方便、可移動、可靠、無需布線、維護方便和數據安全等優勢,所以廣泛應用到遙控玩具、汽車電子、安全防火、生物信號采集、環境監測和電氣自動化等領域。本文介紹利用單片機以及發射/接收模塊電路實現的一種無線數據傳輸系統的設計思想。給出了無線數據傳輸
12、系統的工作原理、硬件設計方案和軟件設計方案。討論了數據傳輸格式,給出了數據通信協議的數據幀結構,以適應于無線通信環境,可確保在案較差的無線環境下實現數據無差錯傳輸。該方法安全可靠,實時性強,占用內存極少,可廣泛應用于高中低檔單片機.特別對于存儲容量小的低檔單片機,該方法是理想的選擇。主控芯片采用AT89S51 單片機,發射電路采用無線數據傳輸模塊QwikRadio®射頻發射模塊,接收部分采用無線數據傳輸模塊QwikRadio®射頻接收模塊。該系統通過發射接收無線電波實現數據的無線傳輸。其裝置具有體積小、功耗低、成本低的特點,傳輸距離可達100m以上。第一章 單片機無線數據傳
13、輸系統設計的原理1.1 單片機無線數據傳輸原理概述無線數據傳輸有發送和接收兩個組成部分。發送端采用單片機將待發送的二進制信號編碼調制為一系列的脈沖串信號,通過無線數據傳輸模塊中的發射模塊發射信號。無線數據傳輸接收端普遍采用價格便宜,性能可靠的一體化無線數據傳輸接收模塊(如QwikRadio射頻接收模塊,它接收無線數據傳輸信號頻率為433.92 MHz,數據速率為10Kbps) 接收無線數據傳輸信號,它同時對信號進行放大、檢波、整形,得到TTL 電平的編碼信號,再送給單片機,經單片機解碼并執行,去控制相關對象,如圖1-1所示。單片機編碼調制無線發送模塊發送無線接收模塊接收單片機解碼圖 1-1 單
14、片機無線數據傳輸的過程無線數據傳輸發射部分,一般由一個能產生等幅振蕩的高頻載頻振蕩器和一個產生低頻調制信號的低頻振蕩器組成。用來產生載頻振蕩的電路一般有多諧振蕩器、互補振蕩器和石英晶體振蕩器等由低頻振蕩器產生的低頻調制波,一般為寬度一定的方法。如果是多路控制可以采用每一路寬度不同的方波,或是頻率不同的方法去調制高頻載波,組成一組組的已調制波,作為控制信號向空中發射。接收電路從工作方式分,可以分成超外差接收方式和超再生接收方式。超外差原理利用本地產生的振蕩波與輸入信號混頻,將輸入信號頻率變換為某個預定的頻率的電路。其優點是: 容易得到足夠大而且比較穩定的放大量。具有較高的選擇性和較好的頻率特性。
15、容易調整。缺點是電路比較復雜 ,同時也存在著一些特殊的干擾 ,如相頻干擾、組合頻率干擾和中頻干擾等。超再生電路實際上是一個受控間歇振蕩的高頻振蕩器,這個高頻振蕩器采用電容三點式振蕩器,振蕩頻率和發射器的發射頻率相一致。而間歇振蕩又是在高頻振蕩過程中產生的,反過來又控制著高頻振蕩器的振蕩和間歇。間歇振蕩的頻率是由電路的參數決定的。這個頻率選低了,電路的抗干擾性能較好,接收靈敏度降低;反之亦然。超再生式接收方式具有電路簡單、性能適中、成本低廉的優點所以在實際應用中被廣泛采用。1.2 AT89S51單片機的原理AT89S51單片機是美國ATMEL公司生產的低功耗,高性能CMOS 8位單片機,片內含4
16、K bytes的可系統編程的Flash只讀程序存儲器,器件采用ATMEL公司的高密度,非易失性存儲技術生產,兼容標準8051指令系統及引腳。它集Flash程序存儲器,既可在線編程(ISP)也可用傳統方法進行編程及通用8位微處理器于單片芯片中,ATMEL公司的功能強大,低價at89s51單片機可提供許多高性價比的應用場合,可靈活應用于各種控制領域。AT89S51提供以標準功能:4K字節Flash閃速存儲器,128字節內部RAM,32個I/O口線,看門狗(WDT),兩個數據指針,兩個16位定時/計數器,一個5向量兩級中斷結構,一個全雙工串行通信口,片內振蕩器及時鐘電路。同時,AT89S51可降至0
17、HZ的靜態邏輯操作,并支持兩種軟件可選的節電工作模式。空閑方式停止CPU的工作,但允許RAM,定時/計數器,串行通信口及中斷系統繼續工作。掉電方式保存RAM中的內容,但振蕩器停止工作直到下一個硬件復位。1.3 QwikRadio®射頻發射模塊(Transmitter Module)無線數據傳輸系統的核心是無線收發控制電路我們可以采用無線數據傳輸模塊來構成無線收發電路。在本系統中,我們采用的收發模塊是QwikRadio®射頻發射模塊和QwikRadio®射頻接收模塊。QwikRadio®射頻發射模塊有以下特點:支持幅移鍵控(ASK)/鍵控通斷(OOK)調制
18、方式數據傳輸速率可達 20Kbps可與各種超再生和超外差接收器配合使用與QwikRatio系列接收器配合使用,能在實現可靠鏈接的同時,大大的降低系統成本待機電流極小,小于0.04uA通過改變PC端電壓可調節發射功率輸出消隱是保證MICRF102符合FCC等發射規定的關鍵天線自動調諧功能,消除了模塊生產過程中的手工調諧工序.也能自動適應阻抗變化和觸摸效應表1-2 射頻發射模塊參數表模塊型號RFIC發射功率工作電流數據速率發射頻率模塊尺寸(mm)外圍元件TX-2-F3-AMICRF102BM 0dbm 8mA 20Kbps 315MHz22.6 X 10.
19、216只無線數據傳輸發射芯片MICRF102的應用說明 MICRF102 是Micrel 公司 QwikRatioTM 系列發射器(Transmitter)的成員之一,工作在 300470MHz ISM頻段,適用于各種無線遙控/數傳領域。它是一款真正的單片“數據入,天線出”發射器,天線調諧在芯片內部完成,無需手工調節;發射功率自動控制;高度集成,外圍元件極少,應用非常簡單;穩定性好,性價比優異。 MICRF102支持幅移鍵控(ASK )/鍵控通斷(OOK)調制方式,可與各種超再生和超外差接收器配合使用。數據傳輸速率可達20kbps。MICRF102與QwikRatioTM系列接收器配合使用,能
20、在實現可靠鏈接的同時,大大的縮短產品研發周期和降低系統成本。 特性參數 表中參數如無特別聲明,均在以下條件測得4.75VVDD 5.5V,VPC=0.35V, TA=25,fREFOSC=12.1875MHz,STBYVDD 。 表1-5特性參數符號參數測試條件最小值典型值最大值單位電源IQ待機電流VSTBY<0.5V ,VASK<0.5V 或VASK>VDD-0.5V0.04AION高電平電流315MHz,見說明4610.5mA433MHz,見說明4812mAIOFF低電平電流315MHz46mA433MHz68.5mA平均工作電流315MHz,33% 占空比4.7mA43
21、3MHz,33% 占空比6.7mA射頻/ 中頻部分POUT射頻輸出功率見說明40dBmE場強(3m 處)見說明567dB80dBV/mH諧波輸出,見說明10315MHz 二次諧波 三次諧波-46-45dBc433MHz 二次諧波三次諧波-50-41dBcASK 消光比4052dBc變容調節范圍見說明7357pF參考振蕩器部分參考振蕩器輸入阻抗300k 參考振蕩器源電流6A參考振蕩器輸入電壓0.20.5VPP數據/控制部分校準時間見說明8,ASK=High25ms功放待機/ 啟動延遲見說明9, STBY 電壓由低至高轉換,晶振ESR<20 6ms待機/ 發射穩定時間外部時鐘輸入(500mV
22、PP )10ms晶振,ESR<20 19ms最大數據速率ASK 調制,占空比為50%20kbpsVSTBY使動電壓0.75 VDDVASK 輸入電平高電平0.75 VDDV低電平0.25 VDDVASK 輸入電流ASK 為0V 和5V 時電流-100.110V1.4 QwikRadio射頻接收模塊(Receiver Module)表1-7 射頻接收模塊參數模塊型號RFIC接收靈敏度工作電流數據速率接收頻率模塊尺寸(mm)外圍元件RX-2-F4-AMICRF002BM-102dBm3mA10Kbps433.92MHz11.5 X 2513只美國Micrel半導體公司最新推出MICRF002
23、是MICRF001和MICRF011的增強型系列產品,主要應用于無線遙控方面。它是單片無線OOK(ON-OFF Keyed)接收掃頻芯片,高頻信號接收功能全部集成于片內以達到用最少的外圍器件和最低的成本獲得最可靠的接收效果。所以說MICRF002是真正意義上的“天線高頻AM信號輸入,數字信號輸出”的單片接收器件。同時,片內自動完成所有的RF及IF調諧,這樣在開發和生產中就省略了手工調節的工藝過程,自然也降低了成本,增強了產品的競爭力。 MICRF002可以提供兩種基本的工作模式,既固定模式(FIXED MODE)和 掃頻模式(SWP MODE)。在FIXED工作模式下,MICRF002如同傳統
24、的超外差式接收機一樣片內產生固定頻率的本振信號,你需要做的僅僅是外接一只石英晶振或輸入外部時鐘信號。和傳統的超外差式接收器類似,需要發射機的發射頻率特別精確穩定,所以通常都需要石英晶振和聲表面濾波SAW (Surface Acoustic Wave)。在SWP工作模式下,MICRF002以高于基帶數據傳輸的掃頻頻率對內部本振進行掃頻相當于更有效的”擴寬”了RF接收的帶寬,性能完全等同于傳統超再生接收器。因此,可以用廉價的外圍器件和免調諧LC發射機。在這種工作模式下,外部參考石英晶振也可以用低成本±0.5%誤差的陶瓷振蕩器代替。功能描述:圖1-19 MICRF002的功能描述如圖1-1
25、9所示:MICRF002分為(1)UHF降頻變換器(2)OOK解調器(3)參考時鐘及控制和(4)喚醒功能四個功能塊。用它組成一個完整的UHF接收器,只需要2個電容(CTH,CAGC)和1個時鐘器件(通常為陶瓷震蕩器),當然外部還需要1個電源濾波器電容。4個控制輸入腳(SEL0,SEL1,SWEN,SHUT)用來選擇芯片的工作模式和帶寬芯片內部已有上拉電阻,不再需要外加上拉電阻。第二章 基于單片機的無線數據傳輸系統的實現2.1 硬件電路設計2.1.1概述無線數據傳輸系統一般由無線數據傳輸的發射系統、無線數據傳輸接收系統、處理系統、執行機構構成。其發射系統由可編程的集成芯片及外圍電路構成;接收系統
26、由檢波放大整形電路及無線數據傳輸接收芯片構成;處理系統由單片微處理機芯片及外圍電路構成。主要芯片均系無線數據傳輸專用集成芯片。由無線數據傳輸發射系統輸出的信號是經高頻調制后的二進制高頻編碼脈沖串,它由起始碼及信息碼構成。這種發送方式具有下述優點: 無線數據傳輸脈沖寬度穩定且不會由于數據的內容而改變功率消耗;采用高頻調制的無線數據傳輸信號抗干擾能力強,使無線數據傳輸信號易于分離和區別;已調脈沖列可用一個窄帶接收器進行接收,可提高無線數據傳輸系統的抗干擾能力;在高頻下間隔進行開關,可減小消耗功率。本系統根據無線數據傳輸系統的發射模塊和接收模塊(QwikRadio射頻發射模塊和QwikRadio射頻
27、接收模塊)的應用方式和AT89S51單片機的編碼和解碼的工作原理,設計了利用AT89S51單片機實現的無線數據傳輸系統的硬件線路示意圖。該系統要實現的功能為:當電路發射部分有按鍵按下時,由單片機對該按鍵進行編碼,然后發送到接收端。當接收模塊接收到信號后,傳送到單片機處進行解碼,判斷出是那一個按鍵被按下,然后點亮相應的發光二極管,完成無線數據傳輸的功能。2.1.2發射部分無線數據傳輸系統的發射部分由無線數據傳輸發射模塊,主控芯片AT89S51和按鍵開關控制電路組成。發射系統主要功能是將按鍵電路的信息進行編碼后得到編碼脈沖信號,此信號調制無線電發射電路并發射出去。無線數據傳輸系統的發射部分電路如下
28、圖所示。電路中有4個按鍵開關,分別對應控制著接收部分的4個發光二極管。本電路可以使用USB接口供電,也可以直接接5伏的穩壓電源。8位信息碼通過編碼器轉換成18位串行碼,該串行碼通過無線數據傳輸發射模塊發射出去此編碼通過AT89S51單片機來完成。圖2-1 無線數據傳輸系統發射部分電路示意圖IC1為主控芯片AT89S51,主要完成根據按鍵進行編碼并控制發射模塊進行發射的功能。4個10K的電阻R1-R4和按鍵開關S1、S3、S4、S5共同構成按鍵開關控制電路。J1為整個無線數據傳輸系統的核心之一,即無線數據傳輸發射模塊QwikRadio®射頻發射模塊。JP1是將程序燒入單片機的下載線接口
29、。J9是接5伏穩壓電源的電源接口。而J2就是電路的另一個電源接口,USB電源接口,可直接利用電腦USB口的電源為系統電路供電。T1是晶體振蕩器,它和兩個30皮法的電容構成單片機的晶體振蕩電路。輕觸開關K19、10uF的電容和10K的電阻構成單片機的復位電路。下圖為無線數據傳輸系統發射部分電路的PCB圖:圖2-2 無線數據傳輸系統發射部分電路PCB圖2.1.3接收部分接收部分主要由無線數據傳輸接收模塊、解碼電路、顯示電路組成。接收控制電路主要完成的功能是對接收進來的信號解調后進行解碼,解碼后的數據控制相應的發光二極管進行動作。脈沖波形進入無線數據傳輸接收模塊以后, 因為無線數據傳輸接收模塊里要進
30、行解調、信號放大和整形。所以要注意: 在沒有無線數據傳輸接收信號時, 其輸出端為雜波信號, 有信號時為接收到的脈沖信號。即如果接收到的信號是高電平,那么在無線數據傳輸接收模塊數據輸出端輸出的信號就為高電平,反之,如果接收到的是低電平,那么在輸出端輸出的也是低電平。數據由無線數據傳輸接收模塊接收后, 經過單片機AT89S51進行解碼。數據由P2口輸出, 因為P2口通常是做通用的I/O口使用的, 所以在電路結構上有其自身特點。它不需要多路轉接電路MUX;其次是電路的內部有上拉電阻。這些電阻與場效應管共同組成輸出驅動電路。為此, P2口作為輸出使用時, 已能向外提供推拉電流負載,而無需再接上拉電阻。
31、P2口出來的數據經過電阻的分壓后直接接到發光二極管上。圖4所示是一個無線數據傳輸系統的接收電路。圖4中, P2口出去后連接15k的電阻, 然后連接到發光二極管上。當數據碼為“1”時滅, 為“0”時亮,這樣又直觀又方便。電路的供電方式與發射部分的供電方式相同,既可以用USB接口供電,也可以用5伏的穩壓電源供電。圖2-3 無線數據傳輸系統接收部分電路示意圖IC2為主控芯片AT89S51,主要完成根據按鍵進行解碼并控制接收模塊進行接收的功能。4個15K的電阻R1-R4和發光二極管D3-D6共同構成顯示電路。J2為整個無線數據傳輸系統的核心之一,即無線數據傳輸接收模塊QwikRadio®射頻
32、接收模塊。JP2是將程序燒入單片機的下載線接口。J9是接5伏穩壓電源的電源接口。而J4就是電路的另一個電源接口,USB電源接口,可直接利用電腦USB口的電源為系統電路供電。T2是晶體振蕩器,它和兩個30皮法的電容構成單片機的晶體振蕩電路。輕觸開關K6、10uF的電容和10K的電阻構成單片機的復位電路。下圖為無線數據傳輸系統接收部分電路的PCB圖:圖2-4無線數據傳輸系統接收部分電路PCB圖以上應用的這一種用單片機直接對無線數據傳輸信號進行解碼的方案,一方面,簡化了單片機系統的輸入接口電路,只使用了P0 口的一根位線,因而節省了硬件的開銷;另一方面,由于采用軟件解碼,只要知道編碼的格式,就可作相
33、應的處理,很大程度上改善了編碼器和解碼器的互換性,在使用和設計上增加了更大的靈活性。此外,由于充分利用了單片機的內部資源,使整個應用系統結構更為緊湊,從而降低了系統的設計和實施的成本。2.2 軟件設計2.2.1概述硬件解碼電路較復雜,外圍器件過多,且當發射模塊的類型不同時不易改動,不利于模塊化,而軟件解碼就克服了這些缺點。在軟件解碼無線數據傳輸系統中,解碼的核心是單片機,電路極為簡單,無須外圍器件。它接收解調出的串行二進制碼,在內部根據本系統的無線數據傳輸信號編碼格式將串行碼對應成發射電路上的按鍵,便于利用,易于兼容,當發射模塊的類型不同時只需對程序稍加改動即可。本軟件的主要任務是在單片機AT
34、89S51的控制之下完成數據的正確傳輸。2.2.2發射電路的軟件流程設計編碼的關鍵是正確地發送“0”和“1”。從上文中描述的基于字節傳輸的無線數據傳輸數據格式中可以看出“0”是由一個脈沖的高電平和兩個脈沖的低電平組成的,而“1”是由一個脈沖的高電平和一個脈沖的低電平組成的。通過這個不同點我們便可以設計出發送“0”和發送“1”的程序。在發射部分,首先要判斷是否有按鍵被按下,如果有,就必須根據按鍵的鍵值,利用單片機對按鍵進行編碼,得到相應的碼型后,將其發送到發射模塊的數據輸入端。在發送之前,要將無線數據傳輸發射模塊的使能控制端口置1。編碼的過程為:首先發送5個脈沖的高電平和5個脈沖的低電平作為發送
35、信號的起始位。根據要發送的信號碼一個一個地將其發到發射模塊的數據輸入端。即如果第一個要發送的信號碼為“1”,那么就發一個脈沖的高電平和一個脈沖的低電平到發射模塊的數據輸入端。然后將信號碼進行移位,發送下一位數據,直到發送完8位信號碼。當發送完信號碼之后就去檢測是否有鍵被按下,如果有鍵被按下,那么就重復以上的過程。如果沒有,那么就不斷發送這一個帶起始位的信號碼。本系統的按鍵的相應編碼為(不帶起始位):左鍵:0xb5(十六進制) 10110101(二進制)其發送的波形脈沖如下:圖2-5(a) 左鍵波形脈沖右鍵:0xd5(十六進制) 11010101(二進制)其發送的波形脈沖如下:圖2-5(b) 右
36、鍵波形脈沖上鍵:0x75(十六進制) 01110101(二進制)其發送的波形脈沖如下:圖2-5(c) 上鍵波形脈沖下鍵:0xe5(十六進制) 11100101(二進制)其發送的波形脈沖如下:圖2-5(d) 下鍵波形脈沖無線數據傳輸模塊發射部分程序流程圖:“0”的表示方法是由一個脈沖的高電平和兩個脈沖的低電平,而“1”是由一個脈沖的高電平和一個脈沖的低電平組成的。初始化設置判斷是否有鍵按下發送起始位發送數據發送完畢編碼判斷是否有鍵按下YNY NYN圖2-6無線數據傳輸模塊發射部分程序流程圖發射部分程序#include<AT89X51.H>sbit date=P01;/數據傳輸端口sb
37、it TXEN=P00;/使能端void delay1(unsigned int nn)/延時子程序 while(nn-);void delay(unsigned int tt)/延時子程序 while(tt-);/delay1(50);void SendDate(unsigned char d)/發射數據子程序 unsigned char i,temp; TXEN = 1; for(i=0;i<8;i+) date = date ;/發送雜波 delay(50);/延時 date = 1 ;/發送起始位的一個高電平 delay(500);/延時 date = 0 ;/發送起始位的一個低
38、電平 delay(500);/延時 date = 1 ; for(i=0;i<8;i+)/判斷是否發送了8位 temp = (d<<i)&0x80;/移位 date = 1;/發送數據位的一個高電平 delay(100);/延時 date = 0;/發送數據位的一個低電平 delay(100);/延時 if(temp=0)delay(100);/如果要發送數據0,則再延時 date = 1 ;void main(void) delay(0xffff); TXEN = 0; delay(0xffff); TXEN = 1; while(1) date =1; if(P2
39、_4 = 0)/如果下鍵被按下 TXEN = 1; while( ( P2_7 & P2_5 & P2_6 )=1 ) SendDate(0xe5);/發送數據0xe5 while(P2_4 = 0); if(P2_5 = 0)/如果右鍵被按下 TXEN = 1; while( ( P2_4 & P2_7 & P2_6 )=1 ) SendDate(0xd5);/發送數據0xd5while(P2_5 = 0); if(P2_6 = 0)/如果左鍵被按下 TXEN = 1; while( ( P2_4 & P2_5 & P2_7 )=1 ) Sen
40、dDate(0xb5);/發送數據0xb5while(P2_6 = 0); if(P2_7 = 0)/如果上鍵被按下 TXEN = 1; while( ( P2_4 & P2_5 & P2_6 )=1 ) SendDate(0x75);/發送數據0x75while(P2_7 = 0); 2.2.3接收電路的軟件流程設計解碼的關鍵是如何識別“0” 和“1”。從位的定義我們可以發現“0”、“1”均以一個脈沖的高電平開始的。不同的是低電平的寬度不同, “0”為兩個脈沖的低電平,“1”為一個脈沖的低電平, 所以必須根據低電平的寬度區別“0” 和“1”。如果從一個脈沖的高電平和一個脈沖的
41、低電平過后, 若讀到的電平為低, 說明該位為“0”, 反之則為“1”。當8位數據都接收完兩次后,判斷兩次接收的結果是否一樣,如果一樣,就進行信號碼控制的相應的動作,否則就認為數據接收出錯,將該組數據丟棄,再重新接收。本系統的接收部分的程序設計流程為:首先檢測是否收到起始位的5個脈沖的高電平,即先檢測是否為高電平,然后延時后再檢測,如此多次,若檢測到超過兩個脈沖的但少于五個脈沖的高電平,也可算為檢測到起始位的高電平。然后檢測起始位的五個低電平,檢測方法與檢測起始位的高電平方法相類似。檢測到起始位之后就開始檢測信號碼的每一位數據,即解碼。判斷完一位數據后將數據移位存放,檢測下一位數據。當檢測完8位
42、數據后,將數據保存好,再檢測一次,若兩次檢測的結果一樣,那么對相應的發光二極管進行操作。如果結果不一樣,則丟棄前一組數據,繼續檢測,直到檢測到兩組相同的結果。解碼的過程:當檢測到一個脈沖的高電平和一個脈沖的低電平之后,延時,檢測下一個脈沖是高電平還是低電平,如果是低電平,那么該位為“0”,反之,為“1”。無線數據傳輸模塊接收部分程序流程圖:數據碼的識別關鍵是0、1 代碼的識別, 根據上面的無線數據傳輸系統編碼方法和波形圖可知,我們只要能測出加到單片機I/O口引腳的無線數據傳輸接收模塊接收的信號的低電平寬度即可得到其代碼。如脈沖寬度編碼方法中, 表示0 的低電平寬度為兩個脈沖寬度, 表示1 的低
43、電平寬度為一個脈沖寬度,我們需要做的是判斷出低電平的寬度范圍。這樣我們就可以比較容易用程序讀取代碼。程序流程圖如圖2-7所示。初始化設置判斷是否接收到起始位判斷數據值將數據值送入寄存器判斷數據是否接收完判斷是否已經接收了兩次解碼顯示YYYNNN圖2-7無線數據傳輸模塊接收部分程序流程圖在數據傳輸過程中,如果一位數據在發送出去和被接收到這段時間內發生改變,則出現了差錯。差錯出現的原因可能是由于熱噪聲或沖擊噪聲。熱噪聲(thermal noise),又稱為白噪聲,是由導體內電子的熱運動造成的,存在于所有電子設備和傳輸媒體中。熱噪聲可以預測,有著比較固定的強度;沖擊噪聲(impulse noise)
44、是非連續的,由不規則的脈沖或持續時間短而振幅大的噪聲尖峰組成,比如由外部電磁波干擾(雷電)等產生。為了使傳輸系統能夠可靠、穩定地通信,防止通信過程中發生錯誤,一般在通信過程中采取數據校驗的辦法。接收部分程序:#include<AT89X51.H>sbit date=P01;/數據接收端口sbit RXEN=P00;/使能端口bit overtime=0;/超時標志unsigned char twotime=0;/標志次數unsigned char databuf;/接收緩沖unsigned char status=0;/接收狀態void delay(unsigned int tt)
45、/延時子程序 while(tt-);void readchar(void) unsigned char rcnt=0;/接收位數unsigned char dd=0;/接收數據unsigned char temp;/overtime=0;while(date=0);/等待變為高電平while(date=1);/等待變為低電平 while(overtime=0) delay(120); dd=dd<<1;/數據右移一位 temp=date; dd = dd | temp; rcnt+; if(rcnt=8)/是否接收完8位數據 status=0;/回到狀態0 if( databuf
46、= dd ) twotime+; else databuf = dd ;twotime = 0;/將數據存到databuf if( twotime > 1)/判斷是否接收了兩次 twotime=0;P2 = databuf;/顯示 break; else if(date=1)while(date=1);/等待變為低電平 else while(date=0); while(date=1); void main(void) unsigned char i;unsigned int playtime=0;bit HighTime; bit LowTime; RXEN = 0; date = 1
47、 ; delay(5000);twotime=0;databuf=0; while(1) switch(status) case 0:for(i=0;i<10;i+)/檢測起始位的高電平 HighTime=1; if(date=0) HighTime=0; break; delay(20) ; if(HighTime) status=1;/跳到狀態2 else status=0;break;/回到狀態0 case 1:while(date=1);/檢測起始位的低電平 for(i=0;i<10;i+) LowTime=1; if(date=1) LowTime=0; break; d
48、elay(20) ; if(LowTime) status=2;/跳到狀態2 else status=0;break;/回到狀態0 case 2:readchar();/檢測數據位 status=0;/回到狀態0 break; default:status=0; 影響無線通信的主要因素:在工作頻率固定的前提下,影響工作距離的主要因素包括發射功率、發射天線增益、傳播損耗、接收天線增益、接收機靈敏度等,通過加大發射功率,提高天線增益,提高接收機靈敏度均起到提高通信距離的作用,在影響無線通信距離的以上幾個因素中,作為設計者可以控制的因素有: 接收靈敏度、天線增益、發射輸出功率。不能控制的因素是由無線
49、電波的特點所決定的,主要有: 傳輸損耗、路徑損耗、多徑損耗、周圍環境的吸收。在設計者可以控制的因素中,接收靈敏度、天線增益、發射功率都是可以作為提高通信距離的手段。第三章 調試無線數據傳輸系統一般由發射部分和接收部分組成。在硬件方面,主要是因為前期的調試當中,P0口少加了上拉電阻,導致后期的軟件的調試方面遇到了很多困難。并且這個錯誤在硬件的測試當中不容易被察覺。因為P0口少加了上拉電阻,所以開始時,單片機對輸入數據的判斷不準確。而后來P0口加了上拉電阻,但由于與接收模塊相連接的那一位P0.1口的上拉電阻不夠大,所以導致P0.1口接收數據的低電平不夠低,單片機無法判斷出低電平,導致顯示不準確。軟
50、件的調試方面,發射部分的程序較為簡單,調試時間較短。接收部分的調試較為復雜。主要是因為要正確地判斷出“0”和“1”。當仔細分析了數據編碼碼型的特點,根據碼型特點來判斷“0”和“1”之后,這個問題便迎刃而解了。在軟件的調試過程當中,為了驗證電路是否正確,在調試的時候把程序分解,一步一步地從最基本的程序調起。最先調試發光二極管,首先編了一個程序控制發光二極管的亮滅。成功之后,用一根導線將發射和接收模塊數據傳輸的兩個管腳連接起來調試,調試成功之后,再分析發射接收模塊的用法,用一個簡單的程序讓發射端發射一個方波,再用示波器測試發射端和接收端是否工作正常。如果正常,就聯結之前調試好的程序,測試系統是否真的可以實現功能。利用示波器觀察到的波形:當左鍵被按下時在發射端發射模塊數據輸入端口波形:4.7V圖3-1 左鍵按下發射模塊數據輸入端口波形當左鍵被按下時在接收端接收模塊數據輸出端口波形:4.7V圖3-2 左鍵按下接收模塊數據輸出端口波形當右鍵被按下時在發射端發射模塊數據輸入端口波形:4.7V圖3-3 右鍵按下發射模塊數據輸入端口波形當右鍵被按下時在接收端接收模塊數據輸出端口波形:4.7V圖3-4 右鍵按下接收模塊數據輸出端口波形當上鍵被按下時在發射端發射模塊數據輸入端口波形:4.7V圖3-5 上鍵按下發射模塊數據輸入端口波形當上鍵被按下時在接收端接收模塊數據輸出端口波形:4.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 文化產業管理證書獲取的路徑試題及答案
- 藥劑學考試命題規律及試題及答案
- 藥物罐考試題及答案
- 育嬰師的倫理責任研究試題及答案
- 藥劑學的學術研究考核試題及答案
- 系統架構設計的評估方法考題試題及答案
- 西醫臨床考生復習必讀試題及答案
- 激光加工設備的選型試題及答案
- 藥劑學備考期間需關注的細節試題及答案
- 獲取文化產業管理證書的試題及答案
- 2025年福建福州港務集團有限公司招聘筆試參考題庫含答案解析
- 4-2 討論:你是否支持設計試管嬰兒 說課稿-高二下學期生物滬科版選擇性必修3
- 部編版2025春六年級下冊語文8 《匆匆》 課件
- 2025年湖南新華書店集團招聘筆試參考題庫含答案解析
- 廣西能匯投資集團有限公司招聘筆試沖刺題2025
- 線路遷改工程施工方案
- 小學生養蠶課件圖片大全
- 小學生化石科普課件
- 混凝土車租賃方案
- 環衛工職業病防治管理制度
- 江蘇鎮江市2025屆高三下學期一模考試數學試題含解析
評論
0/150
提交評論