您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊]

您的位置:電子發(fā)燒友網(wǎng)>電子百科>無線通信>

PTR6000 通信程序設(shè)計(jì) - 基于nRF24L01的2.4GHz無線通信系統(tǒng)設(shè)計(jì)

2017年12月15日 15:00 網(wǎng)絡(luò)整理 作者: 用戶評論(0

  PTR6000 通信程序設(shè)計(jì)

  由于與 RF 協(xié)議相關(guān)的高速信號處理部分已經(jīng)嵌入在模塊內(nèi)部 ,PTR6000 可與各種低成本單片機(jī)配合使用 ,也可以與 DSP 等高速處理器配合使用。此系統(tǒng)中 PTR6000 可以進(jìn)行半雙工通信 ,所有通信基點(diǎn)都初始化為接收模式 ,等待命令。當(dāng)收到數(shù)據(jù)后 ,進(jìn)行相應(yīng)的操作。并且同樣可以進(jìn)行數(shù)據(jù)的發(fā)送 ,在數(shù)據(jù)發(fā)送完成后又立即轉(zhuǎn)換成接收狀態(tài) ,等待再次有數(shù)據(jù)的到來。PTR6000 有 6 種工作模式如表 1所示 ,其中 PWR UP 和 PRIM RX 是模塊寄存器參數(shù)。

 基于nRF24L01的2.4GHz無線通信系統(tǒng)設(shè)計(jì)

  接收程序設(shè)計(jì)

  接收程序編寫流程主要是在初始化的過程中 ,把本機(jī)設(shè)置成接收狀態(tài) ,這部分主要是在主程序的初始化配置的過程中完成的。具體的程序流程如下:

 ?、僭O(shè)置 PTR6000 的配置寄存器 ,把 PTR6000 配置成允許數(shù)據(jù)接收完成中斷、數(shù)據(jù)發(fā)送完成中斷和最大發(fā)送次數(shù)到中斷 3 個(gè)中斷 ,當(dāng)有以上 3 種中斷中的任何一個(gè)產(chǎn)生時(shí) PTR6000 的 IRQAM 引腳都產(chǎn)生一個(gè)低電平 ;

 ?、诮o EN RXADDR 接收地址允許寄存器送數(shù)01 只開通數(shù)據(jù)通道 0 ;并且通過給 EN AA 送數(shù)01 允許數(shù)據(jù)通道 0 自動(dòng)應(yīng)答允許 ;

 ?、弁ㄟ^對 SETUP AW 配置 ,設(shè)置地址的長度為 3 個(gè)字節(jié) ;并且在對數(shù)據(jù)通道 0 的地址寄存器RX ADDR P0 的 配 置 過 程 中 把 地 址 配 置 為000000 ,在 隨 后 的 設(shè) 置 中 把 數(shù) 據(jù) 速 率 設(shè) 置 為2 Mbps;

  ④對接收緩沖寄存器清空 ,確保其能進(jìn)入接收狀態(tài)。最后 CE 送高電平 ,進(jìn)入接收狀態(tài)。

  發(fā)送程序設(shè)計(jì)

  當(dāng)有鍵按下時(shí)就要啟動(dòng)相應(yīng)的發(fā)送程序 ,發(fā)送子程序是在外中斷 0 中被調(diào)用的。具體的程序流程如下 :

 ?、貾TR6000 的發(fā)送緩沖寄存器進(jìn)行清空操作 ;

 ?、诔绦蛑薪邮战Y(jié)點(diǎn)地址 (RX ADDR) 、最大發(fā)送次數(shù)(ARC) 和有效數(shù)據(jù) (TX PLD) 通過 SPI 接口寫入 PTR6000 ,在寫入過程中對 SPI 中斷標(biāo)志位進(jìn)行監(jiān)測 ,如果數(shù)據(jù)傳送沒有完成保持 CSN 為低 ;

 ?、叟渲眉拇嫫?PRIM RX 位設(shè)為低 ,把標(biāo)志寄存器 r1 和數(shù)據(jù)寄存器 r19 的數(shù)據(jù)不斷寫入 PTR6000的發(fā)送緩沖寄存器 ;

  ④設(shè)置 CE 為高 ,啟動(dòng)發(fā)射。CE 高電平持續(xù)時(shí)間最小為 10μs。若啟用了自動(dòng)應(yīng)答模式 ,模塊立即進(jìn)入接收模式。

  PTR6000 中斷服務(wù)程序設(shè)計(jì)

  PTR6000 的 3 種類型的中斷都是通過 INT0 觸發(fā)的 ,所以在程序的開始要對中斷的具體來源進(jìn)行判斷。PTR6000 中有一個(gè)狀態(tài)寄存器 (STATUS) ,其中包括 3 種中斷的標(biāo)志位。在中斷服務(wù)程序的開始首先向 PTR6000 發(fā)送一個(gè)空操作指令 ,此時(shí)返回單片機(jī) SPI 數(shù)據(jù)寄存器 SPDR 的數(shù)據(jù)就是當(dāng)前狀態(tài)寄存器的數(shù)值。接下來對其 3 個(gè)中斷標(biāo)志位進(jìn)行判斷 ,判斷是接收完成中斷、發(fā)送完成中斷還是最大發(fā)送次數(shù)到中斷 ,然后跳轉(zhuǎn)到相應(yīng)的服務(wù)程序部分。

  實(shí)驗(yàn)仿真

  基于以上設(shè)計(jì)方案 ,對系統(tǒng)進(jìn)行了實(shí)驗(yàn)仿真。在搭建相關(guān)硬件平臺的基礎(chǔ)上 ,通過對相關(guān)軟件程序的調(diào)試 ,系統(tǒng)很好地實(shí)現(xiàn)了點(diǎn)對點(diǎn)的無線通信 ,實(shí)驗(yàn)證實(shí) ,基于 nRF24L01 的 2. 4 GHz 無線通信系統(tǒng)解決方案 ,可以實(shí)現(xiàn)小于 10 m 的短距離通信。此外還在 2 臺計(jì)算機(jī)之間進(jìn)行了不同格式、不同大小的文件的傳輸實(shí)驗(yàn) ,其傳輸速率約為 512 kB/ S,具體結(jié)果

  如表 2 所示。通過提高單片機(jī)的晶振還可以加快文件的傳輸速度 ,最快可以達(dá)到 2 Mb/ s。

  基于nRF24L01的2.4GHz無線通信系統(tǒng)設(shè)計(jì)

  2. 4 GHz 無線通信是一項(xiàng)新興的短距離無線通信解決方案 ,主要面向的應(yīng)用領(lǐng)域是低速率無線個(gè)人區(qū)域網(wǎng) ,典型特征是近距離、低功耗、低成本 ,主要適用于小型廉價(jià)設(shè)備的無線聯(lián)網(wǎng)和控制。該文提出一種基于 2. 4 GHz 無線收發(fā)芯片 nRF24L01 的短距離無線數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)方法 ,在實(shí)際應(yīng)用時(shí)將系統(tǒng)作為一個(gè)模塊可方便地移植 ,以便構(gòu)建更為復(fù)雜的無線通信網(wǎng)絡(luò) ,可應(yīng)用于無線抄表、工業(yè)數(shù)據(jù)采集系統(tǒng)、安全防火系統(tǒng)以及水文氣象監(jiān)控等領(lǐng)域 ,具有很高的實(shí)用價(jià)值。

非常好我支持^.^

(2) 66.7%

不好我反對

(1) 33.3%

( 發(fā)表人:李倩 )

      發(fā)表評論

      用戶評論
      評價(jià):好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?