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

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

系統(tǒng)軟件設(shè)計(jì)流程 - 基于MCU和nRF24L01的無(wú)線(xiàn)通信系統(tǒng)設(shè)計(jì)

2017年12月15日 14:32 網(wǎng)絡(luò)整理 作者: 用戶(hù)評(píng)論(0

  系統(tǒng)軟件設(shè)計(jì)流程

  圖4為子模塊和主模塊程序設(shè)計(jì)流程圖,軟件開(kāi)發(fā)環(huán)境為KeilC uVision3。

 基于MCU和nRF24L01的無(wú)線(xiàn)通信系統(tǒng)設(shè)計(jì)

  程序基本思路為子模塊配置為接收狀態(tài),如成功接收到數(shù)據(jù)則進(jìn)行EEPROM子程序操作,否則切換成發(fā)射模式,成功發(fā)送并接收到應(yīng)答信號(hào)后再變成接收模式,進(jìn)入下一次接收發(fā)射循環(huán);主模塊設(shè)置為接收數(shù)據(jù)信息狀態(tài),能與多路處于發(fā)射狀態(tài)的數(shù)據(jù)通道進(jìn)行通訊,并從接收到的數(shù)據(jù)中判別數(shù)據(jù)通道口;接收信息后自動(dòng)回復(fù)應(yīng)答信號(hào)。通過(guò)切換接收發(fā)射狀態(tài)實(shí)現(xiàn)多點(diǎn)對(duì)單點(diǎn)的雙向無(wú)線(xiàn)數(shù)據(jù)通訊。

  nRF24L01初始化程序

  nRF24L01初始化程序包括引腳初始化和中斷初始化。引腳初始化使芯片工作在待機(jī)模式下(CE=0),時(shí)鐘設(shè)置SCK低電平,片選不使能(CSN=1),工作在串行輸入狀態(tài)(MOSI=0);中斷初始化則使能外部中斷(EX1=1),低電平觸發(fā)。

  nRF24L01配置接收/發(fā)射模式

  對(duì)芯片內(nèi)部的特殊功能寄存器進(jìn)行初始化操作。

  通過(guò)對(duì)CONFID配置設(shè)定其工作模式,設(shè)置接收地址,接收有效數(shù)據(jù)寬度、選擇射頻通道、數(shù)據(jù)傳輸率、發(fā)射功率等參數(shù)。配置完成后,置高CE,準(zhǔn)備接收數(shù)據(jù)包,如表1所示。

  基于MCU和nRF24L01的無(wú)線(xiàn)通信系統(tǒng)設(shè)計(jì)

非常好我支持^.^

(0) 0%

不好我反對(duì)

(0) 0%

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

      發(fā)表評(píng)論

      用戶(hù)評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

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

      ?