

已閱讀5頁(yè),還剩38頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
專業(yè)課程設(shè)計(jì)報(bào)告 題 目: 基于單片機(jī)的射頻無線收發(fā)系統(tǒng) 姓 名 :晁州專 業(yè) :通信工程班級(jí)學(xué)號(hào):10042309同 組 人:朱麗潔指導(dǎo)教師:張小林 南昌航空大學(xué)信息工程學(xué)院20 13 年 0 7 月 05 日基于單片機(jī)的無線射頻收發(fā)系統(tǒng)摘要:隨著現(xiàn)代電子技術(shù)的飛速發(fā)展,通信技術(shù)也取得了長(zhǎng)足的進(jìn)步。在無線通信領(lǐng)域,越來越多的通信產(chǎn)品大量涌現(xiàn)出來。但設(shè)計(jì)無線數(shù)據(jù)傳輸產(chǎn)品往往需要相當(dāng)?shù)臒o線電專業(yè)知識(shí)和價(jià)格高昂的專業(yè)設(shè)備,因而影響了用戶的使用和新產(chǎn)品的開發(fā)。nRF24L01是一個(gè)為433MHzISM頻段設(shè)計(jì)的無線收發(fā)芯片,它為短距離無線數(shù)據(jù)傳輸應(yīng)用提供了較好的解決辦法, 使用nRF24L01降低了開發(fā)難度,縮短了開發(fā)周期,使產(chǎn)品能更快地推向市場(chǎng)。本文提出了一種應(yīng)用于無線數(shù)據(jù)收發(fā)系統(tǒng)的設(shè)計(jì)思路及實(shí)現(xiàn)方案,給出了基于無線射頻芯片nRF24L01和STC89C52單片機(jī)的無線數(shù)據(jù)傳輸模塊的設(shè)計(jì)方法,詳細(xì)分析了各部分實(shí)現(xiàn)原理,并對(duì)系統(tǒng)的傳輸距離、傳輸數(shù)據(jù)的正確性進(jìn)行了測(cè)試。試驗(yàn)表明,該系統(tǒng)性能穩(wěn)定,具有較強(qiáng)的抗干擾能力,有較強(qiáng)的實(shí)用價(jià)值。關(guān)鍵詞:無線通信 無線數(shù)據(jù)傳輸模塊 單片機(jī) 射頻 目 錄 前言 11系統(tǒng)設(shè)計(jì)11.1系統(tǒng)設(shè)計(jì)2 1.2實(shí)現(xiàn)過程22系統(tǒng)組成22.1 射頻收發(fā)控制模塊32.1.1 無線射頻收發(fā)芯片nRF24L01介紹32.1.2 穩(wěn)壓部分52.2單片機(jī)控制部分62.2.1 STC89C52RC功能介紹62.2.2 內(nèi)部結(jié)構(gòu)62.2.3 串口通信82.3 顯示部分103軟件設(shè)計(jì)113.1 主程序流程圖113.2 數(shù)據(jù)收發(fā)子程序流程圖123.3 鍵盤子程序流程圖134測(cè)試結(jié)果及分析134.1 硬件電路測(cè)試144.2 系統(tǒng)測(cè)試144.2.1 測(cè)試方法144.2.2 功能測(cè)試及分析145結(jié)論166參考文獻(xiàn)17致謝18附錄1:無線發(fā)射系統(tǒng)電路圖19附錄 2:發(fā)送程序 20前言伴隨著短距離、低功率無線數(shù)據(jù)傳輸技術(shù)的成熟,無線數(shù)據(jù)傳輸被越來越多地應(yīng)用到新的領(lǐng)域。與有線通信方式相比,無線通信以其不需鋪設(shè)明線,使用便捷等一系列優(yōu)點(diǎn),在現(xiàn)代通信領(lǐng)域占重要地位。但以往的無線產(chǎn)品存在范圍和方向上的局限。例如,一些無線產(chǎn)品在使用時(shí),無法將信息反饋給控制者;還有一些無線產(chǎn)品不能很好地顯示參數(shù)或狀態(tài)信息,如果能在系統(tǒng)中增加一塊小型液晶顯示電路,產(chǎn)品不僅能向用戶顯示其狀態(tài)或狀態(tài)的改變,而且可以大大降低成本。正如人們所發(fā)現(xiàn)的,只要建立雙向無線通信-雙工通信并且選無線數(shù)據(jù)傳輸模塊基于微功耗單片射頻收發(fā)器NRF24L01設(shè)計(jì),采用89C52單片機(jī)完成數(shù)據(jù)的處理和控制擇成本低的收發(fā)芯片,就會(huì)出現(xiàn)許多新應(yīng)用。本次設(shè)計(jì)主要是利用無線收發(fā)電路,加上單片機(jī)控制與液晶顯示制成一套完整的數(shù)據(jù)收發(fā)系統(tǒng)??紤]到目前市場(chǎng)上的一些需求,設(shè)計(jì)的主要要求是方案成本低,體積小,低功耗,集成度高,盡量無需調(diào)外部元件,傳輸時(shí)間短,接口簡(jiǎn)單。 第一章 系統(tǒng)設(shè)計(jì)1.1 系統(tǒng)設(shè)計(jì)無線數(shù)據(jù)傳輸系統(tǒng)有點(diǎn)對(duì)點(diǎn),點(diǎn)對(duì)多點(diǎn)和多點(diǎn)對(duì)多點(diǎn)三種。本系統(tǒng)由于實(shí)際應(yīng)用的需要,接收器和數(shù)據(jù)終端之間的數(shù)據(jù)傳輸通過NRF24L01進(jìn)行,構(gòu)成點(diǎn)對(duì)點(diǎn)無線數(shù)據(jù)傳輸系統(tǒng)。整個(gè)系統(tǒng)中,兩數(shù)據(jù)終端之間的無線通信采用433MHz的頻段作為載波頻率,收發(fā)通過串口通信。 無線數(shù)據(jù)收發(fā)系統(tǒng)可以分為無線收發(fā)控制電路、單片機(jī)控制電路、顯示電路和按鍵電路四部分組成,系統(tǒng)原理框如圖1-1所示:液晶顯示屏單片機(jī)系統(tǒng)無線收發(fā)器按鍵單片機(jī)系統(tǒng)無線收發(fā)器 圖1-1 無線數(shù)據(jù)收發(fā)系統(tǒng)原理圖1.2 實(shí)現(xiàn)過程當(dāng)我們需要發(fā)送數(shù)據(jù)時(shí),使用按鍵來輸入所需發(fā)送的信息。按鍵與單片機(jī)的STC89C52RC的P3.2-P3.5口相接,單片機(jī)的 P1.0口控制信息的發(fā)送與接收,并且TXD端與收發(fā)器輸入端相連,通過TXD將數(shù)據(jù)傳入收發(fā)器,收發(fā)器接收到數(shù)據(jù)后,通過FSK調(diào)制,將信號(hào)發(fā)送出去;接收端的收發(fā)器通過解調(diào),將載波信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),完成信息傳輸過程;收發(fā)器的輸出端通過RXD端將數(shù)字信號(hào)輸入到單片機(jī);單片機(jī)將數(shù)據(jù)傳送到顯示器,這樣就完成了一次數(shù)據(jù)發(fā)送與接收并顯示的過程。本系統(tǒng)采用的是半雙工傳送方式。 所謂半雙工就是通信的雙方均具有發(fā)送和接收信息的能力,信道也具有雙向傳輸性能,但是,通信的任何一方都不能同時(shí)既發(fā)送信息又接收信息,即在指定的時(shí)刻,只能沿某一個(gè)方向傳送信息。所以上述實(shí)現(xiàn)過程只介紹了由一方傳送到另一方的過程,而相反方向與其原理相同。第二章 系統(tǒng)組成2.1射頻收發(fā)控制模塊該模塊主要由NRF24L01構(gòu)成,RF24L01是一款工作在2.42.5GHz 世界通用ISM 頻段的單片無線收發(fā)器芯片。無線收發(fā)器包括:頻率發(fā)生器、增強(qiáng)型SchockBurst模式控制器、功率放大器、晶體振蕩器調(diào)制器、解調(diào)器。輸出功率頻道選擇和協(xié)議的設(shè)置可以通過SPI接口進(jìn)行設(shè)置。2.1.1 無線收發(fā)芯片nRF24L01介紹1. 主要引腳功能圖2-1NRF24L01引腳圖表2-1 NRF24L01主要引腳說明表接口電路管腳說明管腳名稱管腳功能說明1GND接地電源電源地2VCC接電源正電源正。范圍在1.9-3.6V。3CE模塊輸入信號(hào)由單片機(jī)給出信號(hào)控制NRF24L01模塊內(nèi)部射頻電路工作與否4CSN模塊輸入信號(hào)模塊的片選信號(hào),單片機(jī)發(fā)出信號(hào)來控制允許向模塊讀或?qū)憯?shù)據(jù)5SCK模塊輸入信號(hào)串行時(shí)鐘信號(hào)。由單片機(jī)發(fā)出,來控制模塊的讀或?qū)懙倪\(yùn)作節(jié)拍6MOSI模塊輸入信號(hào)是單片機(jī)向NRF24L01發(fā)送數(shù)據(jù)的接口7MISO模塊輸出信號(hào)是NRF24L01模塊向單片機(jī)送數(shù)據(jù)的接口8IRQ模塊輸出信號(hào)是NRF24L01產(chǎn)生中斷信號(hào)發(fā)送給單片機(jī)的接口2. 內(nèi)部結(jié)構(gòu)圖2-2NRF24L01無線收發(fā)芯片內(nèi)部結(jié)構(gòu)圖3. NRF24L01無線模塊特點(diǎn):(1)GFSK 調(diào)制:(2)硬件集成 OSI 鏈路層;(3)具有自動(dòng)應(yīng)答和自動(dòng)再發(fā)射功能;(4)片內(nèi)自動(dòng)生成報(bào)頭和 CRC 校驗(yàn)碼;(5)數(shù)據(jù)傳輸率為 l Mb/s 或2Mb/s;(6)SPI 速率為0 Mb/s10 Mb/s;(7)125 個(gè)頻道:(8)與其他 nRF24 系列射頻器件相兼容;4.GFSK調(diào)制本系統(tǒng)中的NRF24L01是具備GFSK調(diào)制的無線收發(fā)芯片。GFSK 高斯頻移鍵控調(diào)制是把輸入數(shù)據(jù)經(jīng)高斯低通濾波器預(yù)調(diào)制濾波后,再進(jìn)行FSK調(diào)制的數(shù)字調(diào)制方式。它在保持恒定幅度的同時(shí),能夠通過改變高斯低通濾波器的3dB帶寬對(duì)已調(diào)信號(hào)的頻譜進(jìn)行控制,具有恒幅包絡(luò)、功率譜集中、頻譜較窄等無線通信系統(tǒng)所希望的特性。因此,GFSK調(diào)制解調(diào)技術(shù)被廣泛地應(yīng)用在移動(dòng)通信、航空與航海通信等諸多領(lǐng)域中。2.1.2 穩(wěn)壓部分由于NRF24L01的VCC腳接電壓范圍為3.3V3.6V之間,不能在這個(gè)區(qū)間之外,超過3.6V將會(huì)燒毀模塊,因此選用3.3V電壓。該穩(wěn)壓部分電路如下圖所示: 圖2-3 穩(wěn)壓電路該穩(wěn)壓部分主要由LM317和外圍電路構(gòu)成。LM317作為輸出電壓可變的集成三端穩(wěn)壓塊,是一種使用方便、應(yīng)用廣泛的集成穩(wěn)壓塊。穩(wěn)壓電源的輸出電壓可用下式計(jì)算:Vo1.25(1R2/R1) (2-1)因此選擇R1為200歐姆,為了便于調(diào)試R2使用滑動(dòng)變阻器。在應(yīng)用中,為了電路的穩(wěn)定工作,需要接二極管作為保護(hù)電路,防止電路中的電容放電時(shí)的高壓把LM317燒壞。2.2單片機(jī)控制部分控制電路主要組成部分為單片機(jī)STC89C52RC,通過STC89C52RC與nRF905進(jìn)行串行通信,并用其控制NRF24L01的工作模式和SPI輸入輸出,從而調(diào)整收發(fā)狀態(tài)。STC89C52RC還控制液晶屏的顯示和按鍵等系統(tǒng)工作。2.2.1 STC89C52RC功能介紹STC89C52是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash存儲(chǔ)器。STC89C52使用經(jīng)典的MCS-51內(nèi)核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。 具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,512字節(jié)RAM, 32 位I/O 口線,看門狗定時(shí)器,內(nèi)置4KB EEPROM,MAX810復(fù)位電路,3個(gè)16 位定時(shí)器/計(jì)數(shù)器,4個(gè)外部中斷,一個(gè)7向量4級(jí)中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量2級(jí)中斷結(jié)構(gòu)),全雙工串行口。另外 STC89C52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。最高運(yùn)作頻率35MHz,6T/12T可選。2.2.2 內(nèi)部結(jié)構(gòu)STC89C52RC單片機(jī)包含中央處理器、程序存儲(chǔ)器(ROM)、數(shù)據(jù)存儲(chǔ)器(RAM)、定時(shí)器/計(jì)數(shù)器、并行I/O口、串行I/O口和中斷系統(tǒng)等幾大單元以及數(shù)據(jù)總線、地址總線和控制總線三大總線構(gòu)成。圖2-4 STC89C52RC芯片引腳圖(1) 電源和晶振VCC:供電電壓。GND:接地。XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。(2) I/O口 P0口P0口的字節(jié)地址為80H,位地址為80H87H。P0口既可以作為通用I/O口使用,也可以作為單片機(jī)系統(tǒng)的地址/數(shù)據(jù)線使用。當(dāng)作為輸出口使用時(shí),由于輸出電路是漏極開路,必須外接上拉電阻才能有高電平輸出。 P1口P1口的字節(jié)地址為90H,位地址為90H97H。P1口只能作為通用I/O口使用。當(dāng)作為輸出口使用時(shí),已能對(duì)外提供推拉電流負(fù)載,外電路無需再接上拉電阻;當(dāng)作為輸入口使用時(shí),應(yīng)先向其鎖存器寫入“1”,使輸出驅(qū)動(dòng)電路的FET截止。 P2口P2口的字節(jié)地址為0A0H,位地址為0A0H0A7H。P2口用于為系統(tǒng)提供高位地址,但只作為地址線使用而不作為數(shù)據(jù)線使用。此外,P2口也可作為通用I/O口使用。 P3口P3口的字節(jié)地址為0B0H,位地址為0B0H0B7H。P3口可以作為通用I/O口使用,但在實(shí)際應(yīng)用中它的第二功能信號(hào)更為重要。P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 /INT0(外部中斷0)P3.3 /INT1(外部中斷1)P3.4 T0(計(jì)時(shí)器0外部輸入)P3.5 T1(計(jì)時(shí)器1外部輸入)P3.6 /WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)(3) 4根控制線 RST:復(fù)位信號(hào)。保持RST腳兩個(gè)機(jī)器周期以上的高電平,就可以完成CPU系統(tǒng)復(fù)位操作,使系統(tǒng)的一些單元內(nèi)容回到規(guī)定值。 /PSEN:外部程序存儲(chǔ)器讀選通信號(hào)。在讀外部ROM時(shí),/PSEN有效(低電平),以實(shí)現(xiàn)外部ROM單元的讀操作。 /EA/VPP:訪問程序存儲(chǔ)器控制信號(hào)。當(dāng)/EA信號(hào)為低電平時(shí),對(duì)ROM的讀操作限定在外部程序存儲(chǔ)器;而當(dāng)/EA為高電平時(shí),則對(duì)ROM的讀操作是從內(nèi)部程序存儲(chǔ)器開始,并可延續(xù)至外部程序存儲(chǔ)器。 ALE/PROG:地址鎖存控制信號(hào)。在系統(tǒng)擴(kuò)展時(shí),ALE用于控制P0口輸出的低8位地址送入鎖存器鎖存起來,以實(shí)現(xiàn)低位地址和數(shù)據(jù)的分時(shí)傳送。此外由于ALE是以六分之一晶振頻率的固定頻率輸出的正脈沖,因此也可作為外部時(shí)鐘或外部定時(shí)脈沖使用。2.2.3 串口通信通信主要有兩種方式:并行通信和串行通信。并行通信是在傳送數(shù)據(jù)過程中每個(gè)字節(jié)的各位同時(shí)進(jìn)行傳送的通信方式,而串行通信14是指每個(gè)字節(jié)的各位分別進(jìn)行傳送的通信方式。1 串口通信方式STC89C52串行口可設(shè)置四種工作方式,可有8位、10位和11位幀格式。本系統(tǒng)中,STC89C52RC采用串行口工作于方式1,即每幀10位的異步通信格式:1位起始位,8位數(shù)據(jù)位(低位在前),1位停止位。當(dāng)SM0=0,SM1=1時(shí),串行口選擇方式1。其幀格式為: 停止起始D6D7D0D1D2D3D4D5 圖2-5 幀格式圖2 串行通信控制寄存器(1) 串行控制寄存器(SCON)SCON的地址為98H,用于選擇串行口的工作方式和指示串行口的工作狀態(tài)。各位含義如下: SM0、SM1:串行口工作方式選擇位。 SM2:多機(jī)通信選擇位。 REN:串行口允許接收位。1時(shí)允許接收,0時(shí)禁止接收。 TI: 串行口發(fā)送中斷標(biāo)志位。在方式1中,于發(fā)送停止位之前,由硬件置位。因此TI=1,表示幀發(fā)送結(jié)束。 RI: 串行口接收中斷標(biāo)志位。在方式1中,當(dāng)接收到停止位時(shí),該位由硬件置位。RI=1,表示幀接收結(jié)束。(2) 串行數(shù)據(jù)緩沖器(SBUF)串行數(shù)據(jù)緩沖器SBUF的地址為99 H,用來存放需發(fā)送和接收的數(shù)據(jù),它由兩個(gè)獨(dú)立的寄存器組成,一個(gè)是發(fā)送緩沖器,另一個(gè)是接收緩沖器,它們占用同一地址(99H)。當(dāng)執(zhí)行寫SBUF指令時(shí),數(shù)據(jù)寫入到串行口發(fā)送緩沖器中,讀SBUF就是讀串行口接收緩沖器。(3) 電源控制寄存器(PCON)PCON的地址為87H,該寄存器的最高位(SMOD)是串行口波特率的倍增位,當(dāng)SMOD=1時(shí),串行口波特率加倍。系統(tǒng)復(fù)位時(shí),SMOD=0。(4) 中斷允許寄存器(IE)在IE中,ES位為串行中斷允許控制位。ES=0時(shí)禁止串行中斷,ES=1時(shí)允許串行中斷。3 數(shù)據(jù)發(fā)送與接收(1) 數(shù)據(jù)發(fā)送在不發(fā)送數(shù)據(jù)時(shí),TXD端保持高電平。當(dāng)執(zhí)行寫SBUF的指令時(shí),便啟動(dòng)一次發(fā)送過程;發(fā)送數(shù)據(jù)時(shí),先發(fā)送一個(gè)起始位,該位通知接收端開始接收,也使發(fā)送和接收過程同步。接下來發(fā)送8位數(shù)據(jù),先發(fā)送低位,最后發(fā)送的是高電平的停止位。(2) 數(shù)據(jù)接收 REN=1,CPU允許串行口接收數(shù)據(jù),接收數(shù)據(jù)開始于檢測(cè)到RXD(P3.0)端發(fā)生一個(gè)“1”到“0”的跳變。先接收起始位,然后依次將采樣RXD端并將數(shù)據(jù)移入移位寄存器中。若滿足條件RI=0且SM2=0或接收到停止位,則將前8位數(shù)據(jù)送入SBUF并置位RI;如果上述條件不滿足,則數(shù)據(jù)丟失。(3) 波特率的設(shè)定串口方式1的波特率是可變的,由定時(shí)器T1的溢出率決定:(2.2) 其中,SMOD為PCON寄存器最高位的值。溢出率為溢出周期的倒數(shù),假定計(jì)數(shù)初值為X,則計(jì)數(shù)溢出周期為(2.3) 其中,fosc為晶振頻率。則波特率計(jì)算公式為:(2.4) 由波特率算出計(jì)數(shù)初值,以便進(jìn)行定時(shí)器的初始化。初值X確定如下: (2.5) 2.3顯示部分該部分由鎖存器74HC573與數(shù)碼管構(gòu)成,單片機(jī)通過兩片74HC573分別對(duì)共陰極數(shù)碼進(jìn)行位選和段選。第三章 軟件設(shè)計(jì)無線數(shù)據(jù)傳輸主要由無線數(shù)據(jù)收發(fā)器NRF24L01、STC89C52RC單片機(jī)、顯示器和按鍵組成,收發(fā)器與STC89C52RC間用串行口通信。整個(gè)系統(tǒng)的各個(gè)部分都是服務(wù)于無線數(shù)據(jù)傳輸這個(gè)目的。所以,在整個(gè)系統(tǒng)的軟件設(shè)計(jì)中,無線數(shù)據(jù)的傳輸是最為重要的。這里使用C語言編寫單片機(jī)控制程序。3.1 主程序流程圖當(dāng)單片機(jī)上電開始執(zhí)行之后,對(duì)液晶和單片機(jī)寄存器進(jìn)行初始化,同時(shí)設(shè)置串口控制字及波特率,接著進(jìn)入鍵盤掃描程序和接收程序。若有某個(gè)按鍵按下,則執(zhí)行相應(yīng)的鍵盤子程序;若單片機(jī)判斷接收到數(shù)據(jù),則開始進(jìn)行CRC校驗(yàn),如果數(shù)據(jù)正確就通過液晶顯示傳送的信息。主程序流程圖見圖3-1。開始 初始化設(shè)置串口工作方式NYNN判斷是否有按鍵按下執(zhí)行相應(yīng)的程序判斷是否接收到數(shù)據(jù)CRC校驗(yàn)是否正確數(shù)據(jù)處理送入顯示掃描鍵盤,同時(shí)判斷是否有數(shù)據(jù)接收YY 圖3-1 主程序流程圖3.2 數(shù)據(jù)收發(fā)子程序流程圖單片機(jī)STC89C52控制nRF2401的收發(fā)狀態(tài)、完成編解碼等工作。nRF2401芯片 “PWR-UP” 端接高電平,“FREQ” 端接低電平,分別表示系統(tǒng)在上電后始終處于 “正常工作模式”和“工作頻道為通道1”。單片機(jī)STC89C52控制nRF2401,使其一直為接收狀態(tài)。當(dāng)按鍵4按下時(shí),STC89C52接收到輸入的低電平信號(hào),從腳送出高電平至P1.0腳,使nRF24L01進(jìn)入發(fā)射狀態(tài)。數(shù)據(jù)收發(fā)子程序流程圖見圖3-2。入口置nRF24L01為接收狀態(tài)判斷按鍵4是否按下置Nrf24L01為發(fā)射狀態(tài)數(shù)據(jù)發(fā)射YN鍵盤掃描圖3-2 數(shù)據(jù)收發(fā)子程序流程圖3.3 鍵盤子程序流程圖下圖為鍵盤子程序流程圖,此流程圖的含義是:當(dāng)有按鍵按下時(shí),程序開始進(jìn)行判斷是哪個(gè)按鍵按下,判斷完畢后則轉(zhuǎn)向相應(yīng)的鍵處理子程序,進(jìn)行字符的輸入或命令的處理,并通過按鍵4把要發(fā)送的數(shù)據(jù)進(jìn)行CRC校驗(yàn)編碼,再把編碼后的數(shù)據(jù)發(fā)送出去。有按鍵按下判斷是哪個(gè)按鍵按下按鍵1按鍵4按鍵3按鍵2CRC校驗(yàn)發(fā)送數(shù)據(jù)清零選擇要發(fā)送的數(shù)據(jù)將要顯示的數(shù)據(jù)移位圖3-4 鍵盤子程序流程圖第四章 測(cè)試結(jié)果及分析4.1 硬件電路測(cè)試本設(shè)計(jì)中將控制模塊和無線射頻模式分開設(shè)計(jì),控制模塊通過一只單排7腳的接口控制射頻模塊,測(cè)試的步驟如下:(1) 將控制模塊和無線射頻模塊焊好,檢查確認(rèn)無虛焊、粘焊;(2) 先對(duì)控制模塊上電進(jìn)行測(cè)試,主要是測(cè)試控制模塊的串口能否收發(fā)數(shù)據(jù),測(cè)試方法是將控制模塊的串口與PC機(jī)的串口通過RS232標(biāo)準(zhǔn)相連接,并將串口的程序?qū)懙絊TC89C52上,然后用串口測(cè)試軟件測(cè)試,如果串口能收發(fā)數(shù)據(jù),便可開始對(duì)無線射頻模塊進(jìn)行測(cè)試;(3) 將無線收發(fā)模塊與控制模塊連接起來,上電進(jìn)行測(cè)試,按照程序,上電時(shí)處于接收狀態(tài),看是否與程序吻合;(4) 確認(rèn)射頻模塊上電處于接收狀態(tài)后,可測(cè)試nRF2401的第4管腳是否為1.1V左右,如果是,則說明VCO電感設(shè)計(jì)合理,否則要重新設(shè)計(jì)PCB板,此外,nRF401在沒有數(shù)據(jù)接收時(shí),仍會(huì)自動(dòng)從DOUT發(fā)送隨機(jī)數(shù)據(jù),使用萬用表進(jìn)行測(cè)試時(shí),該引腳電壓應(yīng)為2.5V左右。4.2 系統(tǒng)測(cè)試4.2.1 測(cè)試方法(1) 首先讓電路正常工作,把接收器放在一定的位置,將發(fā)射器從遠(yuǎn)處逐漸靠近接收器,可測(cè)到傳送的最遠(yuǎn)距離。(2) 在距離接收器一定的距離時(shí),間隔一段時(shí)間就發(fā)送數(shù)據(jù)信息,可測(cè)出接收器的接收靈敏度。(3) 比較發(fā)射器和接收器的數(shù)據(jù)顯示是否相同,以測(cè)試傳輸數(shù)據(jù)的正確性。4.2.2 功能測(cè)試及分析由于無線通信環(huán)境的不確定性,各種環(huán)境下的傳輸效果是不盡相同的,路徑損耗、建筑物影響、人體影響、外界干擾、多徑現(xiàn)象和周圍環(huán)境的吸收等都會(huì)對(duì)傳輸?shù)木嚯x產(chǎn)生一定的影響,只能在一個(gè)給定的條件下進(jìn)行測(cè)試和評(píng)估。因此,分別選擇了不同的試驗(yàn)場(chǎng)地來進(jìn)行實(shí)驗(yàn)。(1) 當(dāng)建筑物很多的時(shí)候,數(shù)傳模塊兩端均離地面1.5m(2.0m)高時(shí),能夠達(dá)到的最佳通信距離為510m;接收靈敏度為23秒;當(dāng)發(fā)送端發(fā)送MESSAGE時(shí),接收端能準(zhǔn)確顯示MESSAGE這段英文字符。(2) 在空曠場(chǎng)地,數(shù)傳模塊兩端均離地面1.5m高時(shí),最遠(yuǎn)的通信距離能夠達(dá)到50m;接收靈敏度為35秒;當(dāng)發(fā)送端發(fā)送字母A時(shí),接收端能準(zhǔn)確顯示。但測(cè)試中的通信距離與數(shù)據(jù)手冊(cè)上的說明相差較大,原因可能源于調(diào)諧天線。在實(shí)驗(yàn)中發(fā)現(xiàn),當(dāng)有人員走動(dòng)或其它信號(hào)出現(xiàn)的時(shí)候,通信的距離會(huì)變得不穩(wěn)定,這是由于天線是一個(gè)輻射器件,任何環(huán)境的改變都會(huì)影響天線的性能。測(cè)試中還發(fā)現(xiàn),在現(xiàn)場(chǎng)即使沒有任何發(fā)送器,在nRF401的DOUT引腳上也會(huì)觀察到微小的連續(xù)數(shù)字“噪聲”。后來通過研究發(fā)現(xiàn),當(dāng)接收器打開時(shí),環(huán)境中的任何信號(hào)(數(shù)據(jù)或噪聲)都會(huì)被天線捕捉到并被解調(diào)。這就是所看到的系統(tǒng)中沒有工作的發(fā)送器卻存在“噪聲”的原因。通過對(duì)系統(tǒng)數(shù)據(jù)傳輸能力的測(cè)試,該系統(tǒng)發(fā)送和接收數(shù)據(jù)正確、可靠,各元件工作正常。在硬件連接正確的基礎(chǔ)上,利用nRF2401進(jìn)行串行數(shù)據(jù)接收及發(fā)送,收到了較好效果。結(jié)論此次設(shè)計(jì)將應(yīng)用于無線通信領(lǐng)域,并且針對(duì)當(dāng)前市場(chǎng)上無線產(chǎn)品的不足進(jìn)行了改進(jìn)。本文根據(jù)nRF2401的特點(diǎn),提出了一種將其應(yīng)用無線數(shù)據(jù)收發(fā)系統(tǒng)的實(shí)現(xiàn)方案。此方案采用了較完善的軟硬件設(shè)計(jì)和抗干擾措施,保證了系統(tǒng)工作的安全性和可靠性,是一種較好的設(shè)計(jì)思路,具有通用性,便于投入實(shí)際應(yīng)用。并且只要稍作改動(dòng)就可以應(yīng)用到小區(qū)傳呼、工業(yè)數(shù)據(jù)采集、自動(dòng)讀表、警報(bào)和安全系統(tǒng)、無線鍵盤、無線操縱桿、家庭自動(dòng)化、遙測(cè)和玩具等其他一些短距離無線通信領(lǐng)域,實(shí)現(xiàn)無線數(shù)據(jù)的雙向傳輸,具有較好的市場(chǎng)應(yīng)用價(jià)值。參考文獻(xiàn)1 黃智偉.無線數(shù)字收發(fā)電路設(shè)計(jì),第2版,電子工業(yè)出版社,2004年,253-269.2 WU Xunwei,HANG Guoqiang. Low power DC circuits employing AC power supply, SCIENCE IN CHINA (INFORMATION SCIENCES),2002,Vol.45 No.3,232.3 苗長(zhǎng)云,沈保鎖,竇晉江等.現(xiàn)代通信原理,第1版,電子工業(yè)出版社,2005年,174-177.4 Behrouz Forouzan. Introduction to Data Communications and Networking,F(xiàn)irst Edition,mechanic industry book concern,1999,121-125.5 Kaveh Pahlavan .Nordic nRF401 Product Specification,Nordic corporation,2000,36.6 Nigel Brooke.串行數(shù)據(jù)標(biāo)準(zhǔn)的選擇與使用,電子產(chǎn)品世界,2000年,10月,31-32.7 Richard G.lyons. Understanding Digital Signal Processing,Bradford University,2001,36-37.8 Tugal. D. A, Tugal. 0. Data Transmission-analysis Design Applications,F(xiàn)lorence,Italy,2004,32.9 趙景波,劉金輝,榮盤祥等.Protel DXP 基礎(chǔ)與實(shí)例培訓(xùn)教程,第1版,中國(guó)電力出版社,2005年,119-144.10 臧鐵鋼,唐才峰,陳學(xué)鋒等. Protel DXP 電路設(shè)計(jì)與應(yīng)用,第1版,中國(guó)鐵道出版社,2004年,172-179.11 劉立楓,趙民建.信號(hào)接收機(jī),中國(guó)無線電電子學(xué)文摘,2005年,31期,45-47.12 周仕鳳.用MCS-51做LCD接口實(shí)驗(yàn),電子世界,2002年,第8期,37.13 李廣第,朱月秀,王秀山等.單片機(jī)基礎(chǔ),第2版,北京航空航天大學(xué)出版社,2001年,40-70.14 楊振江,杜鐵軍,李群等. 流行單片機(jī)實(shí)用子程序及應(yīng)用實(shí)例,第1版,西安電子科技大學(xué)出版社,2002年,102-115.15 張俊謨. MCS-51和80C51系列單片機(jī),電子世界,2001年,第8期,30.16 蔡瑩.液晶技術(shù)與電子紙,電子產(chǎn)品世界,2003年,11上半月,38-40.17 康華光,鄒壽彬.電子技術(shù)基礎(chǔ),第1版,高等教育出版社,2002年,191-197.18 黃智偉,王彥,陳文光等.全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)賽訓(xùn)練教程,第1版,電子工業(yè)出版社,2004年,73-80.致 謝為期三周的課程設(shè)計(jì)已經(jīng)接近尾聲,這次課程設(shè)計(jì)不僅使我將所學(xué)的知識(shí)都融合在一起,還給了我一次鍛煉動(dòng)手能力的機(jī)會(huì),并且在指導(dǎo)教師的幫助下,使我的專業(yè)水平有了很大的提高。在課程設(shè)計(jì)即將結(jié)束之際,我要感謝我的指導(dǎo)教師張小林老師以及陳光老師。他們不辭辛苦,經(jīng)常利用自己的休息時(shí)間幫助我。當(dāng)我有不明白的問題時(shí),老師們會(huì)耐心地給我講解,并在學(xué)習(xí)和科研方面給了我大量的指導(dǎo),為我提供了良好的科研環(huán)境,不僅讓我學(xué)到了知識(shí),掌握了科研的方法,也獲得了實(shí)踐鍛煉的機(jī)會(huì)。老師們言傳身教、循循善誘,使我學(xué)到了作為一名大學(xué)生應(yīng)該具備的那種踏實(shí)勤懇、一絲不茍、求真務(wù)實(shí)的優(yōu)良品質(zhì)和嚴(yán)謹(jǐn)?shù)慕虒W(xué)態(tài)度。在本論文的撰寫過程中,老師從選題直至成稿一直給予我重要的指導(dǎo)和幫助,為我解開了無數(shù)的困惑,提供了很多關(guān)鍵性的建議。在課題的設(shè)計(jì)中,我對(duì)各種編程方法都有了更進(jìn)一步的了解,拓寬了知識(shí)面,開闊了眼界,提高了對(duì)知識(shí)的綜合應(yīng)用能力,增強(qiáng)了學(xué)習(xí)知識(shí)的興趣。在內(nèi)容的研究中,他們?cè)诩夹g(shù)上給予了我極大的幫助,并且在論文的最后評(píng)閱過程中,也給我提出了非常有價(jià)值的意見,使我受益匪淺。在此祝愿老師們身體健康,全家幸福。最后,我要再一次感謝所有在此期間幫助過我的人,我衷心的祝福你們!附錄1 無線發(fā)射系統(tǒng)電路圖附錄2 發(fā)送程序#include #include typedef unsigned char uchar;typedef unsigned char uint;/*NRF24L01端口定義*sbit MISO=P13;sbit MOSI=P14;sbitSCK =P12;sbitCE =P11;sbitCSN=P32;sbitIRQ=P33;/*按鍵*sbitKEY1=P34;sbitKEY2=P35;sbitKEY3=P36;sbitKEY4=P37;sbit dula=P26;sbit wela=P27;/*數(shù)碼管位選*/sbitled3=P00;/sbitled2=P01;/sbitled1=P02;/sbitled0=P03;/*蜂明器*sbit BELL=P23;/*數(shù)碼管0-9編碼*uchar seg10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /09段碼/*NRF24L01*#define TX_ADR_WIDTH 5 / 5 uints TX address width#define RX_ADR_WIDTH 5 / 5 uints RX address width#define TX_PLOAD_WIDTH 20 / 20 uints TX payload#define RX_PLOAD_WIDTH 20 / 20 uints TX payloaduint const TX_ADDRESSTX_ADR_WIDTH= 0x34,0x43,0x10,0x10,0x01;/本地地址uint const RX_ADDRESSRX_ADR_WIDTH= 0x34,0x43,0x10,0x10,0x01;/接收地址/*NRF24L01寄存器指令*#define READ_REG 0x00 / 讀寄存器指令#define WRITE_REG 0x20 / 寫寄存器指令#define RD_RX_PLOAD 0x61 / 讀取接收數(shù)據(jù)指令#define WR_TX_PLOAD 0xA0 / 寫待發(fā)數(shù)據(jù)指令#define FLUSH_TX 0xE1 / 沖洗發(fā)送 FIFO指令#define FLUSH_RX 0xE2 / 沖洗接收 FIFO指令#define REUSE_TX_PL 0xE3 / 定義重復(fù)裝載數(shù)據(jù)指令#define NOP 0xFF / 保留/*SPI(nRF24L01)寄存器地址*#define CONFIG 0x00 / 配置收發(fā)狀態(tài),CRC校驗(yàn)?zāi)J揭约笆瞻l(fā)狀態(tài)響應(yīng)方式#define EN_AA 0x01 / 自動(dòng)應(yīng)答功能設(shè)置#define EN_RXADDR 0x02 / 可用信道設(shè)置#define SETUP_AW 0x03 / 收發(fā)地址寬度設(shè)置#define SETUP_RETR 0x04 / 自動(dòng)重發(fā)功能設(shè)置#define RF_CH 0x05 / 工作頻率設(shè)置#define RF_SETUP 0x06 / 發(fā)射速率、功耗功能設(shè)置#define STATUS 0x07 / 狀態(tài)寄存器#define OBSERVE_TX 0x08 / 發(fā)送監(jiān)測(cè)功能#define CD 0x09 / 地址檢測(cè) #define RX_ADDR_P0 0x0A / 頻道0接收數(shù)據(jù)地址#define RX_ADDR_P1 0x0B / 頻道1接收數(shù)據(jù)地址#define RX_ADDR_P2 0x0C / 頻道2接收數(shù)據(jù)地址#define RX_ADDR_P3 0x0D / 頻道3接收數(shù)據(jù)地址#define RX_ADDR_P4 0x0E / 頻道4接收數(shù)據(jù)地址#define RX_ADDR_P5 0x0F / 頻道5接收數(shù)據(jù)地址#define TX_ADDR 0x10 / 發(fā)送地址寄存器#define RX_PW_P0 0x11 / 接收頻道0接收數(shù)據(jù)長(zhǎng)度#define RX_PW_P1 0x12 / 接收頻道0接收數(shù)據(jù)長(zhǎng)度#define RX_PW_P2 0x13 / 接收頻道0接收數(shù)據(jù)長(zhǎng)度#define RX_PW_P3 0x14 / 接收頻道0接收數(shù)據(jù)長(zhǎng)度#define RX_PW_P4 0x15 / 接收頻道0接收數(shù)據(jù)長(zhǎng)度#define RX_PW_P5 0x16 / 接收頻道0接收數(shù)據(jù)長(zhǎng)度#define FIFO_STATUS 0x17 / FIFO棧入棧出狀態(tài)寄存器設(shè)置/*void Delay(unsigned int s);void inerDelay_us(unsigned char n);void init_NRF24L01(void);uint SPI_RW(uint uchar);uchar SPI_Read(uchar reg);void SetRX_Mode(void);uint SPI_RW_Reg(uchar reg, uchar value);uint SPI_Read_Buf(uchar reg, uchar *pBuf, uchar uchars);uint SPI_Write_Buf(uchar reg, uchar *pBuf, uchar uchars);unsigned char nRF24L01_RxPacket(unsigned char* rx_buf);void nRF24L01_TxPacket(unsigned char * tx_buf);void display(uchar dip)P0=segdip;dula=1;dula=0;P0=0xc0;wela=1;wela=0;/*長(zhǎng)延時(shí)*void Delay(unsigned int s)unsigned int i;for(i=0; is; i+);for(i=0; i0;n-)_nop_();/*/*NRF24L01初始化/*/void init_NRF24L01(void) inerDelay_us(100); CE=0; / chip enable CSN=1; / Spi disable SCK=0; / Spi clock line init highSPI_Write_Buf(WRITE_R
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國(guó)高壓清洗機(jī)行業(yè)經(jīng)營(yíng)狀況及發(fā)展前景分析報(bào)告
- 2025-2030年中國(guó)風(fēng)電產(chǎn)業(yè)鏈行業(yè)發(fā)展規(guī)模規(guī)劃研究報(bào)告
- 2025-2030年中國(guó)防曬品市場(chǎng)運(yùn)行態(tài)勢(shì)及投資前景規(guī)劃研究報(bào)告
- 2025-2030年中國(guó)鈷鎳產(chǎn)業(yè)運(yùn)行現(xiàn)狀規(guī)劃分析報(bào)告
- 2025-2030年中國(guó)金屬化有機(jī)薄膜電容器行業(yè)運(yùn)行現(xiàn)狀及發(fā)展前景分析報(bào)告
- 2025-2030年中國(guó)道路護(hù)欄行業(yè)發(fā)展現(xiàn)狀及前景趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)運(yùn)動(dòng)服飾行業(yè)運(yùn)行現(xiàn)狀及發(fā)展前景趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)蟲草素市場(chǎng)運(yùn)營(yíng)狀況與發(fā)展?jié)摿Ψ治鰣?bào)告
- 2025-2030年中國(guó)藥學(xué)教育發(fā)展模式及未來投資戰(zhàn)略分析報(bào)告
- 物流行業(yè)供應(yīng)鏈管理合作協(xié)議
- 怎樣防治魚的中華魚鳋病
- 液態(tài)熔渣BGL爐的技術(shù)工藝
- 樓梯臺(tái)階抹灰施工技術(shù)交底
- “中藥配送服務(wù)中心”方案
- 給教師的一百條建議-讀書分享會(huì)
- 路基換填級(jí)配碎石施工方案
- GRR表格MSA第四版完整版
- EIM Book 1 Unit 7 Learning languages單元檢測(cè)試題
- 第一講 新媒體藝術(shù)基礎(chǔ)-數(shù)字媒體藝術(shù)導(dǎo)論課件PPT
- 四川省政府采購(gòu)評(píng)審專家考試題庫(kù)
- 內(nèi)科學(xué)尿路感染(講課)
評(píng)論
0/150
提交評(píng)論