版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 濱江學院濱江學院 課程論文課程論文 題題 目目 基于 NRF24L01 的無線通信系統(tǒng)設計 專專 業(yè)業(yè)_ 通通 信信 工工 程程_ 學生姓名學生姓名_金金 建建 超超_ 學學 號號_20092334022_ 二二 一二一二 年年 十二十二 月月 二二十九十九 日日 基于基于 nRF24L01nRF24L01 的的 2 24 GHz4 GHz 無線通信系統(tǒng)設計無線通信系統(tǒng)設計 摘要摘要:提出一種基于NORDIC公司生產的24 GHz無線收發(fā)芯片nRF24L01的短距離無線數(shù)據(jù)傳輸系統(tǒng)設計方法。介紹了系統(tǒng)的實現(xiàn)方案和硬件選型,該系統(tǒng)以ATmega8L為控制核心,PTR6000為無線傳輸模塊;詳細
2、描述了硬件電路和軟件程序設計方法,其中軟件設計包括單片機主程序設計和PTR6000通信程序設計等;在硬件和軟件設計的基礎上,通過實驗仿真驗證了系統(tǒng)的正確性和可靠性,為系統(tǒng)實際應用提供了依據(jù),最終達到了設計的要求。 關鍵詞關鍵詞:nRF24L01;ATmega8L;無線通信 引言引言 2 4 GHz頻段是全球開放的ISM頻段, 使用者無需申請許可證, 給開發(fā)者和用戶帶來了很大方便; 同時2 4 GHz無線射頻技術采用專用的數(shù)據(jù)通道,并且搭載有跳頻技術和數(shù)據(jù)加密,出現(xiàn)相似頻段的可能性大大降低,從而減少了信號之間的干擾,保證了傳輸?shù)姆€(wěn)定性。因為具有這些優(yōu)點,藍牙,ZigBee,WiFi等短距離無線數(shù)
3、據(jù)通信均工作在24 GHz ISM頻段。在一般應用場合,以上這些技術顯得過于復雜,其成本也過高,很難滿足快速開發(fā)和低成本的要求。因此,目前迫切需要一種低成本、低功耗、能夠快速開發(fā)應用的方案,來實現(xiàn)設備的無線連接。該文提出一種利用工作頻率為24 GHz的無線收發(fā)芯片nRF24L01,進行短距離的點對點的無線通信系統(tǒng)設計方案。 1 1實現(xiàn)方案及硬件選型實現(xiàn)方案及硬件選型 1 11 1系統(tǒng)實現(xiàn)方案系統(tǒng)實現(xiàn)方案 系統(tǒng)的目的是在單片機的控制下實現(xiàn)數(shù)據(jù)的無線傳輸,硬件電路結構如圖1所示。 圖1硬件電路結構 該系統(tǒng)主要以單片機為控制處理核心,由它完成對數(shù)據(jù)的采集處理以及控制數(shù)據(jù)的無線傳輸;電源電路提供系統(tǒng)所
4、需各種電壓;復位電路提供單片機所需的復位信號;晶振電路提供單片機的時鐘信號;指示電路用來指示無線傳輸模塊的工作狀態(tài);鍵盤電路用來發(fā)送各種類型的指令和數(shù)據(jù);顯示電路用來顯示系統(tǒng)接收到的指令和數(shù)據(jù)。 1 12 2硬件選型硬件選型 設計采用低成本、性能好的NORDIC公司生產的nRF24I_I)l芯片來完成。nRF24L01是單片射頻收發(fā)芯片,工作在全球開放的24 GHz頻段,有多達125個頻道可供選擇;可通過SH寫人數(shù)據(jù),并且有自動應答和自動再發(fā)射功能;芯片功耗非常低,以一6 dBm的功率發(fā)射時,工作電流只有9 mA,接收時工作電流只有123 mA;多種低功率工作模式使節(jié)能設計更方便,并且市場上有
5、不少以它為核心的模塊,便于購買。PTR6000就是以nRF24I)l為核心的無線收發(fā)模塊,它可以通過軟件設定地址,同時設置6路接收通道地址,特別方便點對多點無線通信。其內部全面的寄存器配置,能夠更全面地對無線數(shù)據(jù)傳輸?shù)募毠?jié)進行控制。所以本次的無線數(shù)傳模塊選用了PTR6000,它的硬件接口如圖2所示。 在待機或掉電模式下,單片機通過SPI接口配置PTR6000的工作參數(shù);在發(fā)射接收模式下,單片機通過SP接口發(fā)送和接收數(shù)據(jù);中斷輸出接I=IIRQAM可提供如下3種中斷輸出:發(fā)送完成中斷TXDR、接收完成中斷RX DR、最大發(fā)送次數(shù)到MAXRT。由于PTR6000的工作電壓為1936 V,AVR系列
6、單片機也工作在低電壓,并且具有SPI接口,正好滿足了這一點要求;考慮到顯示部分使用串行方式,所使用的IO口不是很多,ATmega8L足以滿足要求,為了降低設計成本,控制芯片選擇ATmega8L。 2.2.硬件電路設計硬件電路設計 2 21 1電源、復位和晶振電路設計電源、復位和晶振電路設計 為了縮短開發(fā)周期,設計中由交流220 V轉直流12 V的部分由市場上的電源模塊來代替。雖然ATmega8L可工作在2755 V寬電壓,但是由于PTR6000工作在1936 V,超出這個電壓范圍就有被燒壞的可能,因此在用三端穩(wěn)壓管7805將12 v轉換為5 V后,還要用1117將5 V的直流電轉換到33 V,
7、這樣PTR6000和Atmega8L都能正常工作。此外,為了適應移動測試的需要,設計的電路上還配備了電池槽,以便用2節(jié)干電池為系統(tǒng)提供3 V直流電壓。設計采用簡單的阻容復位電路,由于ATmega8L是低電平復位,電源經1 K電阻和22心電解電容接地,復位線從電阻和電容之間引出,接到ATmega8L的復位引腳。為了獲得較高的振蕩頻率,設計采用了外接8 MHz晶體振蕩器。由于AVR單片機獨特的熔絲位設置,很容易造成單片機的鎖死現(xiàn)象,因此在設置有關時鐘的相關位時要格外小心。當然,即便是鎖死了一般情況下還是可以通過外接有源晶振來解鎖,并重新燒寫正確的熔絲位。 2 22 2鍵盤和顯示電路設計鍵盤和顯示電
8、路設計 設計的鍵盤采用3 X 3的矩陣式鍵盤,3條行線接到ATmega8L的PC3、PCA、PC5,3條列線分別接到PC0、PCI、PC2,并且3條列線帶有上拉電阻。在每個上拉電阻的下面引出一條線,接到三輸入與門74HCll的輸人口,然后輸出口接到單片機的外中斷1引腳,這樣設置的目的是用中斷的方法來進行鍵盤的掃描讀取。這一功能的實現(xiàn)主要還依靠軟件的設計,使得在有按鍵按下時,能夠通過74HCll產生一個中斷信號,通知單片機現(xiàn)在有鍵按下。然后單片機會進入預先編寫好的鍵盤處理程序進行鍵盤掃描,判斷鍵值,并執(zhí)行相應的操作。顯示電路使用2個8段數(shù)碼管,通過串轉并的動態(tài)顯示來實現(xiàn),并且通過2個IO口控制2
9、個三極管來分別進行驅動和控制。用SPI口進行顯示數(shù)據(jù)的串行輸出是一個比較方便的方法,但是考慮到PTR6000通過單片機SPI口接收數(shù)據(jù),有與顯示沖突的可能。因此,設計時利用了PDl、PD4兩個普通的IO口來分別作為數(shù)據(jù)線和時鐘線,模擬時序來實現(xiàn)數(shù)據(jù)的串轉并顯示。 3 3 軟件設計軟件設計 3 31 1主程序設計主程序設計 設計采用的是匯編語言,內存不能自動分配,在主程序的開始,首先對ATmega8L的堆棧指針進行設置。在IO空間,地址為$3E($005E)和$3D($005D)的2個8位寄存器構成了一個16位寬的堆棧指針寄存器sP,單片機上電復位后,堆棧寄存器的初始值為SPH=$00、SPL=
10、$00。AVR的堆棧是向下生長的,即新數(shù)據(jù)推入堆棧時,堆棧指針的數(shù)值將減小。所以系統(tǒng)程序一開始就對堆棧指針寄存器進行了初始化,將sP的值設在數(shù)據(jù)存儲器(sRAM)空間的最高處。設置堆棧指針后的程序中,對各I0口的存儲器進行配置,包括數(shù)據(jù)寄存器 PORTx、數(shù)據(jù)方向寄存器DDRx。隨后的初始化設置中,對外中斷的觸發(fā)方式進行相應的設置。最初設計采用的是低電平觸發(fā)方式,但是由于低電平容易造成重復觸發(fā),造成鍵值讀取錯誤,因此在后續(xù)的程序設計中將其改成了下跳沿觸發(fā),這樣只要鍵盤消抖工作做好,就能解決重復觸發(fā)的問題。在點對點和點對多點的短距離通信中,每一方隨時都有發(fā)送數(shù)據(jù)的可能,所以在主程序的PTR600
11、0初始化部分中設置為接收方式,并對其相關地址通道進行了開通和自動應答設置,并配置了其地址的的長度且按指定長度對地址進行了配置。在主程序中還設置了PTR6000的中斷允許標志位,當有數(shù)據(jù)接收中斷、發(fā)送完成中斷、最大發(fā)送次數(shù)中斷產生時,在PTR6000的IRQ引腳產生一個低電平,觸發(fā)單片機外中斷0,進行相應的處理。 3 32 2鍵盤程序設計鍵盤程序設計 由硬件電路設計可知,鍵盤程序是放在中斷服務程序中的,而且是下降沿觸發(fā)中斷,這一點有關的IO口設置和寄存器有關位設置在主程序中完成,在此不再作具體說明。在外中斷1服務程序的開始,首先對鍵盤延時消抖,判斷是否真的有鍵按下,如果判斷確實有鍵按下則向下執(zhí)行
12、鍵值判斷程序,否則,判定為錯誤中斷,中斷返回。該部分鍵盤判斷程序是通過線反轉法完成的,首先3行送高電平,3列送低電平,延時一個時鐘周期后,讀取管腳電平(PINC),并且對讀取的數(shù)據(jù)進行保存;然后3列送高電平,3行送低電平,延時一個時鐘周期后,讀取管腳電平(PINC),并且對讀取的數(shù)據(jù)進行保存。然后兩次讀到的數(shù)據(jù)只保留低6位,高位全部清零,因為鍵盤只用到了低6位。然后再把2個鍵進行位或,得到一個數(shù)值,通過對這個數(shù)值的判斷來判定是哪一個鍵按下了。 3 33 3顯示程序設計顯示程序設計 顯示程序設計總的思想是首先串行傳送轉換后的十位顯示數(shù)碼,然后選通十位,再進行適當延時后關閉。再串行傳送轉換后的個位
13、顯示數(shù)碼,然后選通個位,進行適當延時后關閉。具體串行顯示是這樣實現(xiàn)的:首先把要顯示碼寄存器進行帶進位移位,然后判斷進位標志位C來向串行數(shù)據(jù)輸出口送0或1,進行適當延時后,向串行時鐘口送低電平,適當延時后送高電平,目的是產生一個上跳沿,把串行數(shù)據(jù)口的電平狀態(tài)移入74HCl64。這樣連續(xù)傳送8次,就將8位顯示碼送出 3 34 4 PTPTR6000R6000通信程序設計通信程序設計 由于與RF協(xié)議相關的高速信號處理部分已經嵌入在模塊內部,PTR6000可與各種低成本單片機配合使用,也可以與DSP等高速處理器配合使用。此系統(tǒng)中PTR6000可以進行半雙工通信,所有通信基點都初始化為接收模式,等待命令
14、。當收到數(shù)據(jù)后,進行相應的操作。并且同樣可以進行數(shù)據(jù)的發(fā)送,在數(shù)據(jù)發(fā)送完成后又立即轉換成接收狀態(tài),等待再次有數(shù)據(jù)的到來。PTR6000有6種工作模式如表1所示,其中PWRUP和PRIMRX是模塊寄存器參數(shù)。 3 34 41 1接收程序設計接收程序設計 接收程序編寫流程主要是在初始化的過程中,把本機設置成接收狀態(tài),這部分主要是在主程序的初始化配置的過程中完成的。具體的程序流程如下:設置PTR6000的配置寄存器,把門R6000配置成允許數(shù)據(jù)接收完成中斷、數(shù)據(jù)發(fā)送完成中斷和最大發(fā)送次數(shù)到中斷3個中斷,當有以上3種中斷中的任何一個產生時PTR6000的IRQAM引腳都產生一個低電平;給EN RXAD
15、DR接收地址允許寄存器送數(shù)$01只開通數(shù)據(jù)通道0;并且通過給EN從送數(shù)$01允許數(shù)據(jù)通道0自動應答允許;通過對SETUP AW配置,設置地址的長度為3個字節(jié);并且在對數(shù)據(jù)通道0的地址寄存器RX ADDR P0的配置過程中把地址配置為$000000,在隨后的設置中把數(shù)據(jù)速率設置為2 Mbps;對接收緩沖寄存器清空,確保其能進入接收狀態(tài)。最后CE送高電平,進入接收狀態(tài)。 3 34 42 2發(fā)送程序設計發(fā)送程序設計 當有鍵按下時就要啟動相應的發(fā)送程序,發(fā)送子程序是在外中斷0中被調用的。具體的程序流程如下:PTR6000的發(fā)送緩沖寄存器進行清空操作;程序中接收結點地址(RX ADDR)、最大發(fā)送次數(shù)(
16、ARC)和有效數(shù)據(jù)(TXP皿)通過SPI接口寫入PTR6000,在寫入過程中對SPI中斷標志位進行 監(jiān)測,如果數(shù)據(jù)傳送沒有完成保持CSN為低;配置寄存器PRIMRX位設為低,把標志寄存器rl和數(shù)據(jù)寄存器r19的數(shù)據(jù)不斷寫入PTR6000的發(fā)送緩沖寄存器;設置CE為高,啟動發(fā)射。CE高電平持續(xù)時間最小為10肚s。若啟用了自動應答模式,模塊立即進入接收模式。 3 35 PTR60005 PTR6000中斷服務程序設計中斷服務程序設計 PTR6000的3種類型的中斷都是通過INT0觸發(fā)的, 所以在程序的開始要對中斷的具體來源進行判斷。 PTR6000中有一個狀態(tài)寄存器(STATUS),其中包括3種中
17、斷的標志位。在中斷服務程序的開始首先向FrR6000發(fā)送一個空操作指令,此時返回單片機SPI數(shù)據(jù)寄存器SPDR的數(shù)據(jù)就是當前狀態(tài)寄存器的數(shù)值。接下來對其3個中斷標志位進行判斷,判斷是接收完成中斷、發(fā)送完成中斷還是最大發(fā) 送次數(shù)到中斷,然后跳轉到相應的服務程序部分。 4 4實驗仿真實驗仿真 基于以上設計方案, 對系統(tǒng)進行了實驗仿真。 在搭建相關硬件平臺的基礎上, 通過對相關軟件程序的調試,系統(tǒng)很好地實現(xiàn)了點對點的無線通信,實驗證實,基于nRF24L01的24 GHz無線通信系統(tǒng)解決方案,可以實現(xiàn)小于10 m的短距離通信。此外還在2臺計算機之間進行了不同格式、不同大小的文件的傳輸實驗,其傳輸速率約為512 kBS,具體結果如表2所示。通過提高單片機的晶振還可以加快文件的傳輸速度,最快可以達到2 Mbs。 表2 24 GI-Iz無線通信系統(tǒng)文件傳輸速率對照表 5 5結束語結束語 24 GHz無線通信是一項新興的短距離無線通信解決方案,主要面向的應用領域是低速率無線個人區(qū)域網,典型特征是近距離、 低功耗、 低成本, 主要適用于小型廉價設備的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課題申報參考:教育治理視域下師德問責制度化研究
- 課題申報參考:江南風景攝影的審美范式及其傳統(tǒng)轉化研究
- 課題申報參考:價值醫(yī)療視角下安寧療護經濟可持續(xù)性機理解析及促進機制設計
- 二零二五版道路照明設施節(jié)能補貼申請合同4篇
- 2025年度大型商場裝修設計與施工一體化承包合同范本4篇
- 2025年金昌b2貨運資格證多少道題
- 二零二五年度輪胎產品綠色環(huán)保認證服務合同4篇
- 基于云計算的2025年度企業(yè)級應用集成合同3篇
- 中介和房東的委托協(xié)議 2篇
- 二零二五年度商業(yè)綜合體消防安全與安保服務合同3篇
- 道路瀝青工程施工方案
- 《田口方法的導入》課件
- 承包鋼板水泥庫合同范本(2篇)
- 人教版(2024年新教材)七年級上冊英語Unit 7 Happy Birthday 單元整體教學設計(5課時)
- DLT 572-2021 電力變壓器運行規(guī)程
- 公司沒繳社保勞動仲裁申請書
- 損傷力學與斷裂分析
- 2024年縣鄉(xiāng)教師選調進城考試《教育學》題庫及完整答案(考點梳理)
- 車借給別人免責協(xié)議書
- 應急預案評分標準表
- “網絡安全課件:高校教師網絡安全與信息化素養(yǎng)培訓”
評論
0/150
提交評論