標(biāo)題: NRF24L01發(fā)射+接受程序?qū)崪y(cè)通過(guò) [打印本頁(yè)]

作者: usb123    時(shí)間: 2017-10-23 22:24
標(biāo)題: NRF24L01發(fā)射+接受程序?qū)崪y(cè)通過(guò)
主控STC89C52RC
晶振:11.0592
while(NRF24L01_TxPacket(tmp_buf)!=TX_OK);  //發(fā)送失敗則一直發(fā)送,直到對(duì)方接受成功為止     
此句主要是檢測(cè)發(fā)送信號(hào)發(fā)送完成
自己做實(shí)驗(yàn)可取此句
大家直接拿走吧,,不用謝


單片機(jī)+nrf24l01接受源程序如下(主程序):
  1. /***********************
  2. 小板測(cè)試時(shí)如果沒(méi)有效果
  3. 就將2.4G拔下,在插上,按下復(fù)位,再次發(fā)送數(shù)據(jù)即可

  4. 如果發(fā)送數(shù)據(jù)時(shí)led閃爍,應(yīng)該是發(fā)送數(shù)據(jù)的按鍵沒(méi)有去抖

  5. ***************************/
  6. #include<reg52.h>
  7. #include"NRF_24L01.h"

  8. sbit led=P1^0;

  9. void main(void)
  10. {
  11. unsigned char  tmp_buf[33];
  12.         delay(200);                 
  13.         init_nrf24l01_io();                //初始化
  14.         delay(200);         
  15.         led=1;
  16.         ifnnrf_rx_mode();                //設(shè)置為RX模式
  17.         while(1)
  18.         {
  19.                 if(NRF24L01_RxPacket(tmp_buf)==RX_OK)//一旦接收到信息,則顯示出來(lái).
  20.                 {       
  21.                         if(tmp_buf[31]=='a') led=(!led);   //led取反
  22.                 }               
  23.         }                                                                     
  24. }

復(fù)制代碼

nrf24l01發(fā)射程序:
  1. #include<reg52.h>
  2. #include"NRF_24L01.h"

  3. sbit led=P1^0;         
  4. sbit key=P3^0;
  5. uchar gled[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};


  6. void main(void)
  7. {
  8.         unsigned char t;
  9.         unsigned char tmp_buf[33]={0};
  10.         unsigned char buf[5]={0XA5,0XA5,0XA5,0XA5,0XA5};

  11.         init_nrf24l01_io();           //初始化
  12.         delay(20);
  13.         SPI_Write_Buf(WRITE_REG+TX_ADDR,buf,5);           //數(shù)據(jù)存入寄存器
  14.     SPI_Read_Buf(TX_ADDR,buf,5);                             //數(shù)據(jù)讀出寄存器
  15.        

  16.         for(t=0;t<5;t++)if(rx_buf[t]!=0XA5)break;
  17.        
  18.         if(t==5)  {led=0;delay(20000);led=1;}           //驗(yàn)證數(shù)據(jù),正常則led閃爍

  19.         ifnnrf_tx_mode();                                                    //設(shè)為TX模式
  20.         while(1)
  21.         {       
  22.                 if(key==0)                                                      
  23.                 {       
  24.                         led=0;
  25.                         for(t=0;t<33;t++)
  26.                         {
  27.                         tmp_buf[t]=0;
  28.                         }
  29.                         tmp_buf[31]='a';                                  

  30.                         NRF24L01_TxPacket(tmp_buf);                                   //發(fā)送數(shù)據(jù)
  31.                         while(NRF24L01_TxPacket(tmp_buf)!=TX_OK);  //發(fā)送失敗則一直發(fā)送,直到對(duì)方接受成功為止
  32.                        
  33.                         tmp_buf[31]=0;               
  34.                         led=1;
  35.                 }                            
  36.         }
  37. }


復(fù)制代碼


所有資料51hei提供下載:
nrf2401實(shí)測(cè)通過(guò).zip (105.39 KB, 下載次數(shù): 541)



作者: 網(wǎng)俠    時(shí)間: 2018-2-21 15:10
下載看看
作者: wwdec    時(shí)間: 2018-4-7 20:41
一直不通看看
作者: zhcxb    時(shí)間: 2018-5-21 12:08
感謝分享�。。�!
作者: runjiu    時(shí)間: 2018-5-28 20:58
感謝分享,努力學(xué)習(xí)!
作者: 嶺上開花    時(shí)間: 2018-6-17 09:41
感謝分享,努力學(xué)習(xí)!
作者: 51lcx    時(shí)間: 2018-6-28 08:31
感謝樓主,好人一生平安
作者: zninz    時(shí)間: 2018-8-15 16:18
謝謝,分享,剛好要做一輛遠(yuǎn)距離控制的小車
作者: Airbnb    時(shí)間: 2018-8-19 23:54
學(xué)習(xí)一下。
作者: yulin3192    時(shí)間: 2018-8-28 00:12
注釋有點(diǎn)不完整看起來(lái)有點(diǎn)費(fèi)勁
作者: Riton    時(shí)間: 2018-9-2 15:52
程序是不是有點(diǎn)問(wèn)題?21行rx_buf[t]一直變量之前一直沒(méi)有被修改過(guò),那不還是初始值?
18行是不是應(yīng)該修改成SPI_Read_Buf(TX_ADDR,rx_buf,5);   
作者: 稻草人在武漢    時(shí)間: 2018-9-22 23:59
贊一個(gè),感謝
作者: ss樂(lè)樂(lè)    時(shí)間: 2018-10-14 19:06
這個(gè)LED能不能發(fā)射這邊按鍵按著 接收的亮。   然后放手接收這邊的LED就跟著滅
作者: 愛(ài)的電力    時(shí)間: 2018-11-27 15:17
學(xué)習(xí)下
作者: 愛(ài)的電力    時(shí)間: 2018-11-27 15:17
學(xué)習(xí)學(xué)習(xí),感謝博主
作者: zy1186    時(shí)間: 2018-11-28 13:07

感謝分享,努力學(xué)習(xí)!
作者: markchan3    時(shí)間: 2019-1-9 17:36
學(xué)習(xí)一下
作者: mtk1625    時(shí)間: 2019-1-23 15:33
非常感謝
作者: Mangguogege    時(shí)間: 2019-2-4 17:39
給力 謝謝分享。1/111
作者: heyjxc    時(shí)間: 2019-3-22 15:51
非常感謝
作者: ljchip    時(shí)間: 2019-4-3 08:02
NRF24L01發(fā)射+接受程序?qū)崪y(cè)通過(guò),謝謝啦
作者: 小林塵    時(shí)間: 2019-4-23 09:23
樓主,你好,可以重新發(fā)一份給我嗎?下載后我用keil C51打開顯示路徑錯(cuò)誤,
作者: 帥比凱    時(shí)間: 2019-5-2 16:30
下載試試
作者: 帥比凱    時(shí)間: 2019-5-2 16:31
非常感謝
作者: 224電子狗    時(shí)間: 2019-5-3 10:48
ljchip 發(fā)表于 2019-4-3 08:02
NRF24L01發(fā)射+接受程序?qū)崪y(cè)通過(guò),謝謝啦

請(qǐng)問(wèn)你是按照這個(gè)程序來(lái)的嗎,

作者: 224電子狗    時(shí)間: 2019-5-3 10:49
帥比凱 發(fā)表于 2019-5-2 16:31
非常感謝

請(qǐng)問(wèn)大哥弄好了嗎,我怎么調(diào)試不出來(lái)
作者: psyren    時(shí)間: 2019-5-3 21:23

很好的資料,正好學(xué)習(xí)需要




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1