




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
一、模塊介紹KL_NRF24L01尺寸圖(單位KL_NRF24L01SE模塊實(shí)物圖(SMA接口KL_NRF24L01SE模塊尺寸圖(單位2.4Ghz全球開放ISM頻段免證使126內(nèi)置硬件CRC低功耗1.9-3.6V工作,待機(jī)模式下狀態(tài)為22uA;掉電模內(nèi)置2.4Ghz供中斷指示),可直接接各種單片機(jī)使用,編程非常方便標(biāo)準(zhǔn)DIP間距接口,便于應(yīng)EnhancedShockBurstAutomaticpackethandling,Autopackettransactionhandling,具有可選的內(nèi)燒毀模果是3.3V的,可以直接和RF2401模塊的IO口線請(qǐng)注意模請(qǐng)注意模塊插接的方向與接頭座子的連接方通信成功接口VCC腳接電壓范圍為1.9V~3.6V之間,不能在這個(gè)區(qū)間之外,超過3.6V將會(huì)燒毀模塊。電壓3.3V左右。除電源VCC和接地端,其余腳都可以直接和普通的5V單片機(jī)IO口硬件上面沒有I的單片機(jī)也可以控制本模塊,用普通單片機(jī)口模擬P9腳接地腳,需要和母板的邏輯地連接起來;2腳和9密腳插針,或者其他形式的接口,可以們定做。KL_NRF24L01模塊使用Nordic公司的nRF24L01開發(fā)而成KL_NRF2401有工作模式有四種收發(fā)模式配置模式空閑模式工作模式PWR_UPregister、PRIM_RXregisterCE定,詳見收發(fā)收發(fā)模式有EnhancedShockBurstTM收發(fā)模式、ShockBurstTM收發(fā)模式EnhancedShockBurstTM收發(fā)模EnhancedShockBurstTM收發(fā)模式下,使用片內(nèi)的先入先出堆棧區(qū),數(shù)據(jù)在空中停留時(shí)間短,性高。EnhancedShockBurstTM技術(shù)在EnhancedShockBurstTM收發(fā)模式下,KL_NRF24L01自動(dòng)處理字頭EnhancedShockBurstTM發(fā)射流把的地址和要發(fā)送的數(shù)據(jù)按時(shí)序送入配置CONFIG寄存器,使之進(jìn)入發(fā)送模式。C.微控制器把CE置(至少10us),激發(fā)KL_NRF24L01進(jìn)行 ShockBurstTM發(fā)射D.KL_NRF24L01的EnhancedShockBurstTM發(fā)射(1)給射頻前端供(4)射完成KL_NRF24L01進(jìn)入空閑狀態(tài)。4.1.1.2EnhancedShockBurstTM接收流程A.置本機(jī)地址和要接收的數(shù)據(jù)包大B.130us后,KL_NRF24L01進(jìn)入監(jiān)視狀態(tài),等待數(shù)據(jù)當(dāng)接收到正確的數(shù)據(jù)包(正確的地址和CRC自動(dòng)把字頭、地址和CRC校驗(yàn)位移去KL_NRF24L01通過把STATUS寄存器的RX_DR置位(STATUS一般引起微控制器中斷)通知微控制器;F.微控制器把數(shù)據(jù)從KL_NRF24L01讀出;G.所有數(shù)據(jù)完畢后,可以清除STATUS寄存器KL_NRF24L01可以進(jìn)入四種主要的模式之一ShockBurstTM空閑模4.4機(jī)模900nA左右。關(guān)機(jī)模式下,配置字的內(nèi)容也會(huì)被保持在KL_NRF24L01片五、配置KL_NRF24L01模KL_NRF24L01工作于EnhancedShockBurstTM收發(fā)模式,這因此,下文著重介紹把KL_NRF24L01配置為EnhancedShockBurstTMShockBurstTM的配置字可以分為以下四個(gè)部分地址:接收數(shù)據(jù)的地址,有通道0到通道5CRC:使KL_NRF24L01能夠生成CRC和KL_NRF24L01配置字的CONFIG寄存器的位描述如下表所示。:#include<reg52.h>#includetypedefunsignedcharuchar;typedefunsignedcharuint;sbitMISO sbitMOSI sbit sbit sbit sbit sbitKEY1=P2^6;sbitsbitled1=P2^4;sbit#defineTX_ADR_WIDTH //5uintsTXaddresswidth#defineRX_ADR_WIDTH //5uintsRXaddresswidth#defineTX_PLOAD_WIDTH //20uintsTXpayload#defineRX_PLOAD_WIDTH 20 //20uintsTXpayloaduintconstTX_ADDRESS[TX_ADR_WIDTH]={0x34,0x43,0x10,0x10,0x01}; #defineREAD_REG //讀寄存器指令#defineWRITE_REG //寫寄存器指令#defineRD_RX_PLOAD //接收數(shù)據(jù)指令#defineWR_TX_PLOAD //寫待發(fā)數(shù)據(jù)指令#defineFLUSH_TX //沖洗發(fā)送FIFO指令#define 0xE2 //沖洗接收FIFO指#define //#define ////*******************SPI(nRF24L01)寄存器地址#define //配置收發(fā)狀態(tài),CRC#defineEN_AA 0x01 //自動(dòng)應(yīng)答功能設(shè)置#defineEN_RXADDR //可用信道設(shè)置#defineSETUP_AW //收發(fā)地址寬度設(shè)置#defineSETUP_RETR //自動(dòng)重發(fā)功能設(shè)置#defineRF_CH //工作頻率設(shè)置#define //#defineSTATUS //狀態(tài)寄存器#defineOBSERVE_TX //發(fā)送監(jiān)測(cè)功能#defineCD //地址檢測(cè)#defineRX_ADDR_P0 0x0A//頻道0接收數(shù)據(jù)地址#defineRX_ADDR_P1 0x0B//頻道1接收數(shù)據(jù)地址#defineRX_ADDR_P2 0x0C//頻道2接收數(shù)據(jù)地址#defineRX_ADDR_P3 0x0D//頻道3接收數(shù)據(jù)地址#defineRX_ADDR_P4 0x0E//頻道4接收數(shù)據(jù)地址#defineRX_ADDR_P5 0x0F//頻道5接收數(shù)據(jù)地址#defineTX_ADDR 0x10//發(fā)送地址寄存器#defineRX_PW_P0 //接收頻道0接收數(shù)據(jù)長(zhǎng)度#defineRX_PW_P1 //接收頻道0接收數(shù)據(jù)長(zhǎng)度#defineRX_PW_P2 //接收頻道0接收數(shù)據(jù)長(zhǎng)度#defineRX_PW_P3 //接收頻道0接收數(shù)據(jù)長(zhǎng)度#defineRX_PW_P4 //接收頻道0接收數(shù)據(jù)長(zhǎng)度#defineRX_PW_P5 //接收頻道0接收數(shù)據(jù)長(zhǎng)度#defineFIFO_STATUS voidDelay(unsignedints);voidinerDelay_us(unsignedcharn);voidinit_NRF24L01(void);uintSPI_RW(uintuchar);voidSetRX_Mode(void);uintSPI_RW_Reg(ucharreg,ucharuintSPI_Read_Buf(ucharreg,uchar*pBuf,ucharuchars);uintSPI_Write_Buf(ucharreg,uchar*pBuf,ucharuchars);unsignedcharnRF24L01_RxPacket(unsignedchar*rx_buf);voidnRF24L01_TxPacket(unsignedchar*tx_buf);voidDelay(unsignedints){unsignedinti;for(i=0;i<s;} bdatasta; sbitRX_DR=sta^6;sbitTX_DSsbit voidinerDelay_us(unsignedcharn){for(;n>0;n--}voidinit_NRF24L01(void){ //Spi SPI_Write_Buf(WRITE_REG+TX_ADDR,TX_ADDRESS, SPI_Write_Buf(WRITE_REG+RX_ADDR_P0,RX_ADDRESS,RX_ADR_WIDTH);SPI_RW_Reg(WRITE_REG+EN_AA, 頻道0自 ACK應(yīng)答允+, 需要多頻道可以參考Page21SPI_RW_Reg(WRITE_REG+RF_CH,0); SPI_RW_Reg(WRITE_REG+RX_PW_P0,RX_PLOAD_WIDTH);//設(shè)置接收數(shù)據(jù)長(zhǎng)度,+, //設(shè)置發(fā)射速率為1MHZ,發(fā)}/*函數(shù):uintSPI_RW(uintuintSPI_RW(uintuchar){uintfor(bit_ctr=0;bit_ctr<8;bit_ctr++)//output8-{MOSI=(uchar&0x80); //output'uchar',MSBtoMOSIuchar=(uchar<<1); //shiftnextbitintoMSB..SCK= //SetSCKuchar|= //capturecurrentMISOSCK= //..thensetSCKlow} //returnread}/*函數(shù):ucharSPI_Read(ucharucharSPI_Read(uchar{ucharCSN= //CSNlow,initializeSPI //Selectregistertoreadfrom..reg_val=SPI_RW(0); //..thenreadregistervalueCSN= //CSNhigh,terminateSPI //returnregister}uintSPI_RW_Reg(ucharreg,ucharvalue){uintCSN=0; //CSNlow,initSPItransactionstatus=SPI_RW(reg); //selectregister //..andwritevaluetoCSN= //CSNhigh }/*函數(shù):uintSPI_Read_Buf(ucharreg,uchar*pBuf,uchar/*功能:用于讀數(shù)據(jù),reg:為寄存器地址,pBuf:為待讀出數(shù)據(jù)地址,uchars:讀出數(shù)據(jù)的uintSPI_Read_Buf(ucharreg,uchar*pBuf,uchar{uintCSN= //SetCSNlow,initSPIstatus= //SelectregistertowritetoandreadstatuspBuf[uchar_ctr]=SPI_RW(0); CSN= }/*函數(shù):uintSPI_Write_Buf(ucharreg,uchar*pBuf,uchar/*功能:用于寫數(shù)據(jù):為寄存器地址,pBuf:為待寫入數(shù)據(jù)地址,ucharsuintSPI_Write_Buf(ucharreg,uchar*pBuf,uchar{uintCSN //SPI使status=for(uchar_ctr=0;uchar_ctr<uchars;uchar_ctr++)//CSN=1; }/*函數(shù):voidvoidSetRX_Mode(void){SPI_RW_Reg(WRITE_REG+CONFIG,0x0f); //IRQ收發(fā)完成中斷響應(yīng),16位CRC,主接收CE=}/*函數(shù):unsignedcharnRF24L01_RxPacket(unsignedchar*unsignedcharnRF24L01_RxPacket(unsignedchar*{unsignedchar //狀態(tài)寄存其來判斷數(shù)據(jù)接收狀 //{CE //SPI使 //read RX_FIFOrevale //數(shù)據(jù)完成標(biāo)} return}/*函數(shù):voidnRF24L01_TxPacket(unsignedchar*/*tx_bufvoidnRF24L01_TxPacket(unsignedchar*{ //StandByISPI_Write_Buf(WRITE_REG+RX_ADDR_P0,TX_ADDRESS,TX_ADR_WIDTH);,, //裝載數(shù)SPI_RW_Reg(WRITE_REG+CONFIG, }voidmain(void){unsignedchartfunsignedcharTxBuf[20]={0}; unsignedcharRxBuf[20]={0};init_NRF24L01();TxBuf[1]=1;TxBuf[2]=1 {if(KEY1==0{
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 彩禮買車公正協(xié)議書
- 建筑垃圾收納協(xié)議書
- 擔(dān)保個(gè)人欠款協(xié)議書
- 房屋繼承棄權(quán)協(xié)議書
- 開發(fā)種植項(xiàng)目協(xié)議書
- 房屋建造修復(fù)協(xié)議書
- 弄臟衣服賠償協(xié)議書
- 成立混改公司協(xié)議書
- 懷柔食堂外包協(xié)議書
- 房子產(chǎn)權(quán)分配協(xié)議書
- 小學(xué)一年級(jí)寫字教學(xué)(課堂PPT)
- 道路交通事故--------者及家庭情況登記表(共1頁(yè))
- ZPS型聲控自動(dòng)噴霧降塵裝置說明書
- 鋼筋混凝土單向板肋形樓蓋課程設(shè)計(jì)
- 200903寶鋼大廈BA系統(tǒng)改造方案
- 圖書入庫(kù)登記表
- BMH型半門式起重機(jī)說明書
- 放射性的應(yīng)用與防護(hù)教案
- 醫(yī)院崗位設(shè)置與人員編制標(biāo)準(zhǔn)[詳]
- 土地估價(jià)報(bào)告市場(chǎng)比較法(工業(yè))模板2016.09.26
- 每日安全巡查記錄表
評(píng)論
0/150
提交評(píng)論