wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 114186|回復: 98
收起左側

NRF24L01無線模塊收發程序(實測成功 多圖)

  [復制鏈接]
ID:73477 發表于 2015-2-10 22:47 | 顯示全部樓層 |閱讀模式
       本模塊是NRF24L01無線傳輸模塊,用于無線傳輸數據,距離不遠,一般只是能夠滿足小距離的傳輸,目測是4-5m,價格一般是4元左右,可以方便的買到。


       51最小系統學習板就可以,當時是用了兩塊學習板,一塊用于發送,一塊用于接收。



         小車也是比較容易購到的,四個端口控制兩個電機,兩個控制一個電機,當兩個端口高低電平不同時電機就會轉動,即為賦值1和0是電機轉動,賦值可以用單片機作用,當然這是小車啟動部分,前進后退左轉右轉就是你賦值0和1的順序問題了。



       整體思路是用發射端的按鍵控制小車,即為按鍵按下就前進,再按其他按鍵實現其他功能,本次程序是在用NRF24L01發射數據在接收端用1602顯示的基礎上改變。
下面是程序源碼(有好幾個文件,分別創建)

  1. //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2. #include<reg52.h>
  3. #include<stdio.h>
  4. #include"1602.h"
  5. #include"delay.h"
  6. #include "nrf24l01.h"
  7. #define uint unsigned int
  8. #define uchar unsigned char
  9. uint Weight_Shiwu=1234;
  10. unsigned char KeyScan(void);//鍵盤掃描
  11. // unsigned char KeyScan(void);//鍵盤掃描

  12. //#define KeyPort P0
  13. sbit KEY1 = P0^0;
  14. sbit KEY2 = P0^1;
  15. sbit KEY3 = P0^2;
  16. sbit KEY4 = P0^3;
  17. sbit KEY5 = P0^4;
  18. void main()
  19. {
  20. // char TxDate[4];
  21. // LCD_Init(); //初始化液晶屏
  22. // LCD_Clear(); //清屏
  23. // NRF24L01Int(); //初始化LCD1602
  24. // LCD_Write_String(4,0,"welcome");
  25. while(1)
  26. {
  27. KeyScan();

  28. }
  29. }




  30. unsigned char KeyScan(void)
  31. {
  32. /********************************************************/
  33. char TxDate[4];
  34. {
  35. if(!KEY1) //如果檢測到低電平,說明按鍵按下
  36. {
  37. DelayMs(10); //延時去抖,一般10-20ms
  38. if(!KEY1) //再次確認按鍵是否按下,沒有按下則退出
  39. {
  40. while(!KEY1);//如果確認按下按鍵等待按鍵釋放,沒有則退出
  41. {
  42. TxDate[0] = 1;//向左轉
  43. TxDate[1] = 0;
  44. TxDate[2] = 1;
  45. TxDate[3] = 1;
  46. NRFSetTxMode(TxDate);//發送數據·
  47. while(CheckACK()); //檢測是否發送完畢
  48. }
  49. }
  50. }
  51. /********************************************************/
  52. else if(!KEY2) //如果檢測到低電平,說明按鍵按下
  53. {
  54. DelayMs(10); //延時去抖,一般10-20ms
  55. if(!KEY2) //再次確認按鍵是否按下,沒有按下則退出
  56. {
  57. while(!KEY2);//如果確認按下按鍵等待按鍵釋放,沒有則退出
  58. {
  59. TxDate[0] = 1;//向右轉
  60. TxDate[1] = 1;
  61. TxDate[2] = 1;
  62. TxDate[3] = 0;
  63. NRFSetTxMode(TxDate);//發送數據
  64. while(CheckACK()); //檢測是否發送完畢
  65. }
  66. }
  67. }
  68. /********************************************************/
  69. else if(!KEY3) //如果檢測到低電平,說明按鍵按下
  70. {
  71. DelayMs(10); //延時去抖,一般10-20ms
  72. if(!KEY3) //再次確認按鍵是否按下,沒有按下則退出
  73. {
  74. while(!KEY3);//如果確認按下按鍵等待按鍵釋放,沒有則退出
  75. {
  76. TxDate[0] = 1;//前進
  77. TxDate[1] = 0;
  78. TxDate[2] = 1;
  79. TxDate[3] = 0;
  80. NRFSetTxMode(TxDate);//發送數據
  81. while(CheckACK()); //檢測是否發送完畢
  82. }
  83. }
  84. }
  85. /********************************************************/
  86. else if(!KEY4) //如果檢測到低電平,說明按鍵按下
  87. {
  88. DelayMs(10); //延時去抖,一般10-20ms
  89. if(!KEY4) //再次確認按鍵是否按下,沒有按下則退出
  90. {
  91. while(!KEY4);//如果確認按下按鍵等待按鍵釋放,沒有則退出
  92. {
  93. TxDate[0] = 0;//后退
  94. TxDate[1] = 1;
  95. TxDate[2] = 0;
  96. TxDate[3] = 1;
  97. NRFSetTxMode(TxDate);//發送數據
  98. while(CheckACK()); //檢測是否發送完畢
  99. }
  100. }
  101. }
  102. else if(!KEY5)
  103. {
  104. DelayMs(10);
  105. if(!KEY5)
  106. {
  107. while(!KEY5)
  108. {
  109. TxDate[0] = 1;
  110. TxDate[1] = 1;
  111. TxDate[2] = 1;
  112. TxDate[3] = 1;
  113. NRFSetTxMode(TxDate);
  114. while(CheckACK());
  115. }
  116. }
  117. }
  118. }
  119. }
復制代碼



  1. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  2. #include<reg52.h>
  3. #include<stdio.h>
  4. #include"1602.h"
  5. #include"delay.h"
  6. #include "nrf24l01.h"
  7. #define uint unsigned int
  8. #define uchar unsigned char
  9. uint Weight;
  10. sbit a = P2^0;
  11. sbit b = P2^1;
  12. sbit c = P2^2;
  13. sbit d = P2^3;
  14. void main()
  15. {
  16. LCD_Init(); //初始化液晶屏
  17. LCD_Clear(); //清屏
  18. *(RevTempDate+4)=*\0*;
  19. NRF24L01Int();
  20. while(1)
  21. {

  22. NRFSetRXMode();//設置為接收模式
  23. GetDate();//開始接受數;
  24. // Weight=RevTempDate[0]*1000+RevTempDate[1]*100+RevTempDate[2]*10+RevTempDate[3];
  25. LCD_Write_Char(7,0,RevTempDate[0]+0x30);
  26. LCD_Write_Char(8,0,RevTempDate[1]+0x30);
  27. LCD_Write_Char(9,0,RevTempDate[2]+0x30);
  28. LCD_Write_Char(10,0,RevTempDate[3]+0x30);
  29. a = RevTempDate[0];//根據接受數據來設置高低電平(目測僅限傳輸1.0兩種數值)
  30. b = RevTempDate[1];
  31. c = RevTempDate[2];
  32. d = RevTempDate[3];
  33. }
  34. }

  35. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
復制代碼

  1. #include<reg52.h>
  2. #include "nrf24l01.h"
  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. sbit IRQ =P1^2;//輸入
  6. sbit MISO =P1^3; //輸入
  7. sbit MOSI =P1^1;//輸出
  8. sbit SCLK =P1^4;//輸出
  9. sbit CE =P1^5;//輸出
  10. sbit CSN =P1^0;//輸出
  11. uchar code TxAddr[]={0x34,0x43,0x10,0x10,0x01};//發送地址
  12. /*****************狀態標志*****************************************/
  13. uchar bdata sta; //狀態標志
  14. sbit RX_DR=sta^6;
  15. sbit TX_DS=sta^5;
  16. sbit MAX_RT=sta^4;
  17. /*****************SPI時序函數******************************************/
  18. uchar NRFSPI(uchar date)
  19. {
  20. uchar i;
  21. for(i=0;i<8;i++) // 循環8次
  22. {
  23. if(date&0x80)
  24. MOSI=1;
  25. else
  26. MOSI=0; // byte最高位輸出到MOSI
  27. date<<=1; // 低一位移位到最高位
  28. SCLK=1;
  29. if(MISO) // 拉高SCK,nRF24L01從MOSI讀入1位數據,同時從MISO輸出1位數據
  30. date|=0x01; // 讀MISO到byte最低位
  31. SCLK=0; // SCK置低
  32. }
  33. return(date); // 返回讀出的一字節
  34. }
  35. /**********************NRF24L01初始化函數*******************************/
  36. void NRF24L01Int()
  37. {
  38. DDelay(2);//讓系統什么都不干
  39. CE=0; //待機模式1
  40. CSN=1;
  41. SCLK=0;
  42. IRQ=1;
  43. }
  44. /*****************SPI讀寄存器一字節函數*********************************/
  45. uchar NRFReadReg(uchar RegAddr)
  46. {
  47. uchar BackDate;
  48. CSN=0;//啟動時序
  49. NRFSPI(RegAddr);//寫寄存器地址
  50. BackDate=NRFSPI(0x00);//寫入讀寄存器指令
  51. CSN=1;
  52. return(BackDate); //返回狀態
  53. }
  54. /*****************SPI寫寄存器一字節函數*********************************/
  55. uchar NRFWriteReg(uchar RegAddr,uchar date)
  56. {
  57. uchar BackDate;
  58. CSN=0;//啟動時序
  59. BackDate=NRFSPI(RegAddr);//寫入地址
  60. NRFSPI(date);//寫入值
  61. CSN=1;
  62. return(BackDate);
  63. }
  64. /*****************SPI讀取RXFIFO寄存器的值********************************/
  65. uchar NRFReadRxDate(uchar RegAddr,uchar *RxDate,uchar DateLen)
  66. { //寄存器地址//讀取數據存放變量//讀取數據長度//用于接收
  67. uchar BackDate,i;
  68. CSN=0;//啟動時序
  69. BackDate=NRFSPI(RegAddr);//寫入要讀取的寄存器地址
  70. for(i=0;i<DateLen;i++) //讀取數據
  71. {
  72. RxDate[i]=NRFSPI(0);
  73. }
  74. CSN=1;
  75. return(BackDate);
  76. }
  77. /*****************SPI寫入TXFIFO寄存器的值**********************************/
  78. uchar NRFWriteTxDate(uchar RegAddr,uchar *TxDate,uchar DateLen)
  79. { //寄存器地址//寫入數據存放變量//讀取數據長度//用于發送
  80. uchar BackDate,i;
  81. CSN=0;
  82. BackDate=NRFSPI(RegAddr);//寫入要寫入寄存器的地址
  83. for(i=0;i<DateLen;i++)//寫入數據
  84. {
  85. NRFSPI(*TxDate++);
  86. }
  87. CSN=1;
  88. return(BackDate);
  89. }
  90. /*****************NRF設置為發送模式并發送數據******************************/
  91. void NRFSetTxMode(uchar *TxDate)
  92. {//發送模式
  93. CE=0;
  94. NRFWriteTxDate(W_REGISTER+TX_ADDR,TxAddr,TX_ADDR_WITDH);//寫寄存器指令+接收地址使能指令+接收地址+地址寬度
  95. NRFWriteTxDate(W_REGISTER+RX_ADDR_P0,TxAddr,TX_ADDR_WITDH);//為了應答接收設備,接收通道0地址和發送地址相同
  96. NRFWriteTxDate(W_TX_PAYLOAD,TxDate,TX_DATA_WITDH);//寫入數據
  97. /******下面有關寄存器配置**************/
  98. NRFWriteReg(W_REGISTER+EN_AA,0x01); // 使能接收通道0自動應答
  99. NRFWriteReg(W_REGISTER+EN_RXADDR,0x01); // 使能接收通道0
  100. NRFWriteReg(W_REGISTER+SETUP_RETR,0x0a); // 自動重發延時等待250us+86us,自動重發10次
  101. NRFWriteReg(W_REGISTER+RF_CH,0x40); // 選擇射頻通道0x40
  102. NRFWriteReg(W_REGISTER+RF_SETUP,0x07); // 數據傳輸率1Mbps,發射功率0dBm,低噪聲放大器增益
  103. NRFWriteReg(W_REGISTER+CONFIG,0x0e); // CRC使能,16位CRC校驗,上電
  104. CE=1;
  105. DDelay(5);//保持10us秒以上
  106. }
  107. /*****************NRF設置為接收模式并接收數據******************************/
  108. //主要接收模式
  109. void NRFSetRXMode()
  110. {
  111. CE=0;
  112. NRFWriteTxDate(W_REGISTER+RX_ADDR_P0,TxAddr,TX_ADDR_WITDH); // 接收設備接收通道0使用和發送設備相同的發送地址
  113. NRFWriteReg(W_REGISTER+EN_AA,0x01); // 使能接收通道0自動應答
  114. NRFWriteReg(W_REGISTER+EN_RXADDR,0x01); // 使能接收通道0
  115. NRFWriteReg(W_REGISTER+RF_CH,0x40); // 選擇射頻通道0x40
  116. NRFWriteReg(W_REGISTER+RX_PW_P0,TX_DATA_WITDH); // 接收通道0選擇和發送通道相同有效數據寬度
  117. NRFWriteReg(W_REGISTER+RF_SETUP,0x07); // 數據傳輸率1Mbps,發射功率0dBm,低噪聲放大器增益*/
  118. NRFWriteReg(W_REGISTER+CONFIG,0x0f); // CRC使能,16位CRC校驗,上電,接收模式
  119. CE = 1;
  120. DDelay(5);//保持10us秒以上
  121. }
  122. /****************************檢測應答信號******************************/
  123. uchar CheckACK()
  124. { //用于發射
  125. sta=NRFReadReg(R_REGISTER+STATUS); // 返回狀態寄存器
  126. if(TX_DS||MAX_RT) //發送完畢中斷
  127. {
  128. NRFWriteReg(W_REGISTER+STATUS,0xff); // 清除TX_DS或MAX_RT中斷標志
  129. CSN=0;
  130. NRFSPI(FLUSH_TX);//用于清空FIFO !!關鍵!!不然會出現意想不到的后果!!!大家記住!!
  131. CSN=1;
  132. return(0);
  133. }
  134. else
  135. return(1);
  136. }
  137. /******************判斷是否接收收到數據,接到就從RX取出*********************/
  138. //用于接收模式
  139. uchar NRFRevDate(uchar *RevDate)
  140. {
  141. uchar RevFlags=0;
  142. sta=NRFReadReg(R_REGISTER+STATUS);//發送數據后讀取狀態寄存器
  143. if(RX_DR) // 判斷是否接收到數據
  144. {
  145. CE=0; //SPI使能
  146. NRFReadRxDate(R_RX_PAYLOAD,RevDate,RX_DATA_WITDH);// 從RXFIFO讀取數據
  147. RevFlags=1; //讀取數據完成標志
  148. }
  149. NRFWriteReg(W_REGISTER+STATUS,0xff); //接收到數據后RX_DR,TX_DS,MAX_PT都置高為1,通過寫1來清楚中斷標
  150. return(RevFlags);
  151. }
  152. void DDelay(uint t)
  153. {
  154. uint x,y;
  155. for(x=t;x>0;x--)
  156. for(y=110;y>0;y--);
  157. }
  158. ////////////////////////////////////////////////////////////////////////////////////////////////////////
復制代碼

  1. #include "delay.h"
  2. /*------------------------------------------------
  3. uS延時函數,含有輸入參數 unsigned char t,無返回值
  4. unsigned char 是定義無符號字符變量,其值的范圍是
  5. 0~255 這里使用晶振12M,精確延時請使用匯編,大致延時
  6. 長度如下 T=tx2+5 uS
  7. ------------------------------------------------*/
  8. void DelayUs2x(unsigned char t)
  9. {
  10. while(--t);
  11. }
  12. /*------------------------------------------------
  13. mS延時函數,含有輸入參數 unsigned char t,無返回值
  14. unsigned char 是定義無符號字符變量,其值的范圍是
  15. 0~255 這里使用晶振12M,精確延時請使用匯編
  16. ------------------------------------------------*/
  17. void DelayMs(unsigned char t)
  18. {

  19. while(t--)
  20. {
  21. //大致延時1mS
  22. DelayUs2x(245);
  23. DelayUs2x(245);

  24. }
  25. }
  26. ///////////////////////////////////////////////////////////////////////////////////////////
復制代碼

  1. 下面是接收的NRF24L01的程序。
  2. #include<reg52.h>
  3. #include "nrf24l01.h"
  4. #include <intrins.h>
  5. #define uchar unsigned char
  6. #define uint unsigned int

  7. sbit IRQ =P1^2;//輸入
  8. sbit MISO =P1^3; //輸入
  9. sbit MOSI =P1^1;//輸出
  10. sbit SCLK =P1^4;//輸出
  11. sbit CE =P1^5;//輸出
  12. sbit CSN =P1^0;//輸出


  13. uchar RevTempDate[5];//最后一位用來存放結束標志
  14. uchar code TxAddr[]={0x34,0x43,0x10,0x10,0x01};//發送地址
  15. /*****************狀態標志*****************************************/
  16. uchar bdata sta; //狀態標志
  17. sbit RX_DR=sta^6;
  18. sbit TX_DS=sta^5;
  19. sbit MAX_RT=sta^4;
  20. /*****************SPI時序函數******************************************/
  21. uchar NRFSPI(uchar date)
  22. {
  23. uchar i;
  24. for(i=0;i<8;i++) // 循環8次
  25. {
  26. if(date&0x80)
  27. MOSI=1;
  28. else
  29. MOSI=0; // byte最高位輸出到MOSI
  30. date<<=1; // 低一位移位到最高位
  31. SCLK=1;
  32. if(MISO) // 拉高SCK,nRF24L01從MOSI讀入1位數據,同時從MISO輸出1位數據
  33. date|=0x01; // 讀MISO到byte最低位
  34. SCLK=0; // SCK置低
  35. }
  36. return(date); // 返回讀出的一字節
  37. }
  38. /**********************NRF24L01初始化函數*******************************/
  39. void NRF24L01Int()
  40. {
  41. NRFDelay(2);//讓系統什么都不干
  42. CE=0;
  43. CSN=1;
  44. SCLK=0;
  45. IRQ=1;
  46. }
  47. /*****************SPI讀寄存器一字節函數*********************************/
  48. uchar NRFReadReg(uchar RegAddr)
  49. {
  50. uchar BackDate;
  51. CSN=0;//啟動時序
  52. NRFSPI(RegAddr);//寫寄存器地址
  53. BackDate=NRFSPI(0x00);//寫入讀寄存器指令
  54. CSN=1;
  55. return(BackDate); //返回狀態
  56. }
  57. /*****************SPI寫寄存器一字節函數*********************************/
  58. uchar NRFWriteReg(uchar RegAddr,uchar date)
  59. {
  60. uchar BackDate;
  61. CSN=0;//啟動時序
  62. BackDate=NRFSPI(RegAddr);//寫入地址
  63. NRFSPI(date);//寫入值
  64. CSN=1;
  65. return(BackDate);
  66. }
  67. /*****************SPI讀取RXFIFO寄存器的值********************************/
  68. uchar NRFReadRxDate(uchar RegAddr,uchar *RxDate,uchar DateLen)
  69. { //寄存器地址//讀取數據存放變量//讀取數據長度//用于接收
  70. uchar BackDate,i;
  71. CSN=0;//啟動時序
  72. BackDate=NRFSPI(RegAddr);//寫入要讀取的寄存器地址
  73. for(i=0;i<DateLen;i++) //讀取數據
  74. {
  75. RxDate[i]=NRFSPI(0);
  76. }
  77. CSN=1;
  78. return(BackDate);
  79. }
  80. /*****************SPI寫入TXFIFO寄存器的值**********************************/
  81. uchar NRFWriteTxDate(uchar RegAddr,uchar *TxDate,uchar DateLen)
  82. { //寄存器地址//寫入數據存放變量//讀取數據長度//用于發送
  83. uchar BackDate,i;
  84. CSN=0;
  85. BackDate=NRFSPI(RegAddr);//寫入要寫入寄存器的地址
  86. for(i=0;i<DateLen;i++)//寫入數據
  87. {
  88. NRFSPI(*TxDate++);
  89. }
  90. CSN=1;
  91. return(BackDate);
  92. }
  93. /*****************NRF設置為發送模式并發送數據******************************/
  94. void NRFSetTxMode(uchar *TxDate)
  95. { //發送模式
  96. CE=0;
  97. NRFWriteTxDate(W_REGISTER+TX_ADDR,TxAddr,TX_ADDR_WITDH);//寫寄存器指令+P0地址使能指令+發送地址+地址寬度
  98. NRFWriteTxDate(W_REGISTER+RX_ADDR_P0,TxAddr,TX_ADDR_WITDH);//為了應答接收設備,接收通道0地址和發送地址相同
  99. NRFWriteTxDate(W_TX_PAYLOAD,TxDate,TX_DATA_WITDH);//寫入數據
  100. /******下面有關寄存器配置**************/
  101. NRFWriteReg(W_REGISTER+EN_AA,0x01); // 使能接收通道0自動應答
  102. NRFWriteReg(W_REGISTER+EN_RXADDR,0x01); // 使能接收通道0
  103. NRFWriteReg(W_REGISTER+SETUP_RETR,0x0a); // 自動重發延時等待250us+86us,自動重發10次
  104. NRFWriteReg(W_REGISTER+RF_CH,0x40); // 選擇射頻通道0x40
  105. NRFWriteReg(W_REGISTER+RF_SETUP,0x07); // 數據傳輸率1Mbps,發射功率0dBm,低噪聲放大器增益
  106. NRFWriteReg(W_REGISTER+CONFIG,0x0e); // CRC使能,16位CRC校驗,上電
  107. CE=1;
  108. NRFDelay(5);//保持10us秒以上
  109. }
  110. /*****************NRF設置為接收模式并接收數據******************************/
  111. //接收模式
  112. void NRFSetRXMode()
  113. {
  114. CE=0;
  115. NRFWriteTxDate(W_REGISTER+RX_ADDR_P0,TxAddr,TX_ADDR_WITDH); // 接收設備接收通道0使用和發送設備相同的發送地址
  116. NRFWriteReg(W_REGISTER+EN_AA,0x01); // 使能接收通道0自動應答
  117. NRFWriteReg(W_REGISTER+EN_RXADDR,0x01); // 使能接收通道0
  118. NRFWriteReg(W_REGISTER+RF_CH,0x40); // 選擇射頻通道0x40
  119. NRFWriteReg(W_REGISTER+RX_PW_P0,TX_DATA_WITDH); // 接收通道0選擇和發送通道相同有效數據寬度
  120. NRFWriteReg(W_REGISTER+RF_SETUP,0x07); // 數據傳輸率1Mbps,發射功率0dBm,低噪聲放大器增益
  121. NRFWriteReg(W_REGISTER+CONFIG,0x0f); // CRC使能,16位CRC校驗,上電,接收模式
  122. CE = 1;
  123. NRFDelay(5);
  124. }
  125. /****************************檢測是否有接收到數據******************************/
  126. void CheckACK()
  127. { //用于發射模式接收應答信號
  128. sta=NRFReadReg(R_REGISTER+STATUS); // 返回狀態寄存器
  129. if(TX_DS)
  130. NRFWriteReg(W_REGISTER+STATUS,0xff); // 清除TX_DS或MAX_RT中斷標志
  131. }
  132. /*************************接收數據*********************************************/
  133. void GetDate()
  134. {
  135. sta=NRFReadReg(R_REGISTER+STATUS);//發送數據后讀取狀態寄存器
  136. if(RX_DR) // 判斷是否接收到數據
  137. {
  138. CE=0;//待機
  139. NRFReadRxDate(R_RX_PAYLOAD,RevTempDate,RX_DATA_WITDH);// 從RXFIFO讀取數據 接收4位即可,后一位位結束位
  140. NRFWriteReg(W_REGISTER+STATUS,0xff); //接收到數據后RX_DR,TX_DS,MAX_PT都置高為1,通過寫1來清楚中斷標
  141. CSN=0;
  142. NRFSPI(FLUSH_RX);//用于清空FIFO !!關鍵!!不然會出現意想不到的后果!!!大家記住!!
  143. CSN=1;
  144. }
  145. //NRFWriteReg(W_REGISTER+STATUS,0xff); //接收到數據后RX_DR,TX_DS,MAX_PT都置高為1,通過寫1來清楚中斷標
  146. }
  147. void NRFDelay(uint t)
  148. {
  149. uint x,y;
  150. for(x=t;x>0;x--)
  151. for(y=110;y>0;y--);
  152. }
復制代碼











評分

參與人數 3黑幣 +20 收起 理由
987456321 + 5 很給力!
李志崗 + 5 很給力!
YJGG + 10 謝謝分享

查看全部評分

回復

使用道具 舉報

ID:72611 發表于 2015-4-4 17:16 | 顯示全部樓層
學習了,51黑有你更精彩…………
回復

使用道具 舉報

ID:76142 發表于 2015-4-4 23:13 | 顯示全部樓層
謝謝分享
回復

使用道具 舉報

ID:76215 發表于 2015-4-6 00:08 | 顯示全部樓層
文件名怎么創建,感覺分不太清,可以給我傳一份完整的嗎,謝謝你了1126635996@qq.com
回復

使用道具 舉報

ID:25826 發表于 2015-4-10 15:27 | 顯示全部樓層

謝謝分享
回復

使用道具 舉報

ID:76287 發表于 2015-4-12 20:52 | 顯示全部樓層
碉堡啦。。。。。。。。。。。。。。。。。。。
回復

使用道具 舉報

ID:70736 發表于 2015-4-26 19:42 | 顯示全部樓層
對了,可直接的在數據口和51的數據口相連嗎?對器件端口會不會有影響?
回復

使用道具 舉報

ID:81525 發表于 2015-5-29 22:18 | 顯示全部樓層
可不可以把nrf24l01.h文件,發出來,謝謝,97494653@qq.com
回復

使用道具 舉報

ID:86909 發表于 2015-8-1 17:53 | 顯示全部樓層
把你這個智能車的程序給我發一份啊。謝謝    xumingyong88@163.com
回復

使用道具 舉報

ID:44267 發表于 2015-10-18 15:19 | 顯示全部樓層
碉堡啦。。。。。。。。。。。。。。。。。。
回復

使用道具 舉報

ID:44267 發表于 2015-10-18 15:19 | 顯示全部樓層
對了,可直接的在數據口和51的數據口相連嗎?對器件端口會不會有影響?
回復

使用道具 舉報

ID:79544 發表于 2015-10-27 23:15 | 顯示全部樓層
樓主:把發射和接收分離開在上傳源碼就更好啦。謝謝
回復

使用道具 舉報

ID:93926 發表于 2015-10-28 21:53 | 顯示全部樓層
新手是時候學習了
回復

使用道具 舉報

ID:94535 發表于 2015-11-3 15:02 | 顯示全部樓層
樓主能不能發一份完整的資料和程序啊??謝謝了。1163955039@qq.com
回復

使用道具 舉報

ID:95647 發表于 2015-11-13 15:36 | 顯示全部樓層
樓主能不能給我發一份程序?最近在學習無線模塊。1227625293@qq.com
回復

使用道具 舉報

ID:95342 發表于 2015-11-17 21:21 | 顯示全部樓層
大愛樓主
回復

使用道具 舉報

ID:99051 發表于 2015-12-9 21:15 | 顯示全部樓層
樓主,麻煩發一份完整的程序,謝謝啦,416604093@qq.com
回復

使用道具 舉報

ID:99731 發表于 2015-12-20 21:57 | 顯示全部樓層

樓主,麻煩發一份完整的程序,謝謝啦,1512934645@qq.com
回復

使用道具 舉報

ID:99055 發表于 2015-12-29 11:58 | 顯示全部樓層
樓主,能把24L01的發送和接收分開發給我嗎謝謝了,12516709@qq.com
回復

使用道具 舉報

ID:103363 發表于 2016-1-15 17:07 | 顯示全部樓層
樓主好人!!麻煩給發一份程序,謝謝!2532179972@qq.com
回復

使用道具 舉報

ID:103363 發表于 2016-1-15 17:09 | 顯示全部樓層
本帖最后由 Z40 于 2016-1-15 19:13 編輯
conaner 發表于 2015-12-20 21:57
樓主,麻煩發一份完整的程序,謝謝啦,

有沒有收到樓主發的程序?麻煩發一份給我2532179972@qq.com,謝謝!
回復

使用道具 舉報

ID:103818 發表于 2016-1-19 21:04 | 顯示全部樓層
樓主可不可以發一份完整的程序,弄小車程序一直搞不定,謝謝啊   985270008@qq.com
回復

使用道具 舉報

ID:107668 發表于 2016-3-7 11:31 | 顯示全部樓層
樓主 nrf24l01的h文件 貼一下好嗎 我想看看你寄存器的定義.....
回復

使用道具 舉報

ID:108674 發表于 2016-3-13 13:47 | 顯示全部樓層

樓主,可不可以給我也發一份呀 1224966445@qq.com,  謝謝
回復

使用道具 舉報

ID:109132 發表于 2016-3-16 16:29 | 顯示全部樓層
樓主你好,我需要做一個用24l01和單片機實現短距離無線通信的課題,可不可以用一塊板子實現功能?
回復

使用道具 舉報

ID:109511 發表于 2016-3-19 21:37 | 顯示全部樓層
樓主,我也想要,可不可以給我也發一份呀 972676558@qq.com, 蟹蟹蟹
回復

使用道具 舉報

ID:113215 發表于 2016-4-10 01:30 | 顯示全部樓層
樓主我也想要,可不可以給我發份923054542@qq.com
回復

使用道具 舉報

ID:92231 發表于 2016-4-10 06:14 來自觸屏版 | 顯示全部樓層
nrf24l01+51單片機制作遙控器控制航模,我想學習nrf24l01
回復

使用道具 舉報

ID:113863 發表于 2016-4-13 08:00 | 顯示全部樓層
樓主麻煩發一份完整的程序特別是nrf24l01.h
1458886115@qq.com
謝謝
回復

使用道具 舉報

ID:113863 發表于 2016-4-13 09:45 | 顯示全部樓層
樓主能發一份完整的程序嗎,特別是nrf24l01.h,1602.h
1458886115@qq.com
謝謝!
回復

使用道具 舉報

ID:109834 發表于 2016-4-25 16:49 | 顯示全部樓層
樓主能不能發一份完整的資料和程序啊?謝謝了!大愛樓主!1428487355@qq.com
回復

使用道具 舉報

ID:109834 發表于 2016-4-25 16:50 | 顯示全部樓層
樓主能不能發一份完整的資料和程序啊?謝謝了!大愛樓主!1428487355@qq.com
回復

使用道具 舉報

ID:116685 發表于 2016-4-25 22:23 | 顯示全部樓層
好用的東東,,,值得看一下
回復

使用道具 舉報

ID:91274 發表于 2016-5-6 17:19 | 顯示全部樓層
文件名怎么創建,感覺分不太清,可以給我傳一份完整的嗎,謝謝你了1083474829@qq.com
回復

使用道具 舉報

ID:91274 發表于 2016-5-6 17:19 | 顯示全部樓層
文件名怎么創建,感覺分不太清,可以給我傳一份完整的嗎,謝謝你了1126635996@qq.com
回復

使用道具 舉報

ID:119383 發表于 2016-5-8 22:06 | 顯示全部樓層
謝樓主的慷慨,樓主的可借鑒性相當高
回復

使用道具 舉報

ID:120611 發表于 2016-5-13 20:35 | 顯示全部樓層
樓主可以發我一份完整的程序嗎? 你的寄存器配置沒有。。。真的感謝!!!!現在急需。!
回復

使用道具 舉報

ID:120611 發表于 2016-5-13 20:36 | 顯示全部樓層
我的郵箱645581635@qq.com
回復

使用道具 舉報

ID:119077 發表于 2016-5-14 11:33 | 顯示全部樓層
感覺蠻不錯,有空試試看
回復

使用道具 舉報

ID:91234 發表于 2016-5-29 10:51 | 顯示全部樓層
趁~早 發表于 2016-5-27 16:00
同求收發程序,,謝謝了

樓主給你發了嗎?同求分享
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
久久91视频| 久久出品必属精品| 欧美 变态 另类 人妖| 伊人精品一区二区三区| japan乱配videos老少配| sm国产在线调教视频| 日本人妖在线| 国产精品久久久久久久久久辛辛 | 在线观看国产精品一区| 国产丰满美女做爰| 97色伦图片97色伦在线电影| 久久精品嫩草影院| 亚洲欧美网站| 欧美视频第一页| 午夜精品免费视频| 黄色一级片在线看| 国产在线视频你懂的| 91av日本| 一区二区乱码| 先锋a资源在线看亚洲| 午夜精彩视频在线观看不卡| 欧美国产第一页| 欧美一区二区三区综合| 久久人妻无码aⅴ毛片a片app| 香蕉久久视频| 手机在线免费观看av| 欧美精品国产| 午夜久久福利影院| 欧美亚洲成人xxx| 日本www在线播放| 色网站在线播放| 天天操夜夜添| 麻豆国产精品| 成人h版在线观看| 精品爽片免费看久久| 日本一区视频在线| 亚洲综合图片一区| 你懂的在线视频观看| 精品69视频一区二区三区| 久久99深爱久久99精品| 日韩区在线观看| 精品久久久久久一区二区里番| 国产 中文 字幕 日韩 在线| 综合区小说区图片区在线一区| 黄色网页在线看| 亚洲精选一区| 欧美性猛交xxxxxx富婆| 91精品婷婷国产综合久久蝌蚪| 中国黄色片视频| 四虎www视频| 蜜桃视频在线观看免费视频| 奇米色777欧美一区二区| 欧美一区二区黄色| 欧美一区二区福利| 亚洲av鲁丝一区二区三区| www.黄在线| 97久久综合区小说区图片区| 久久久国产午夜精品| 久久久国产精品免费| 草草久久久无码国产专区| 凹凸精品一区二区三区| 免费在线高清av| 狠狠干综合网| 欧美日韩精品免费| 久久久一本精品99久久精品66| 久久久久久久久久97| 一级片免费网址| 国产传媒视频在线观看| 日韩欧美一区二区三区免费看| 夜夜精品浪潮av一区二区三区| 国产成人精品视频| 搡老熟女老女人一区二区| xxxxaaa欧美另类| 欧美成人免费全部网站| 91麻豆swag| 久久久久久国产精品美女| 日本中文字幕精品—区二区| 综合图区亚洲白拍在线| 免费成人动漫| 26uuu色噜噜精品一区二区| 欧美—级a级欧美特级ar全黄| 日本中文字幕二区| 欧美性xxxx交| 久久wwww| 亚洲愉拍自拍另类高清精品| 91视频国产高清| 四虎影视一区二区| 日本女优天堂99伊人| 99久久影视| 欧美午夜电影网| 日韩在线导航| 中文字幕乱码人妻无码久久| www日韩tube| 奇米影视7777精品一区二区| 色诱女教师一区二区三区| 搡女人真爽免费午夜网站| 九九久久久2| 国产精品毛片aⅴ一区二区三区| 国产精品三级久久久久三级| 成人网欧美在线视频| 国内偷拍精品视频| 福利在线视频导航| 久久国产精品第一页| 久久久www成人免费精品| xxxx国产视频| h视频在线观看免费完整版| 日韩中文在线电影| 日韩你懂的在线观看| 成人网站免费观看入口| 亚洲男人天堂影院| 国产精品玖玖玖在线资源| 欧美日韩国产色| 日韩动漫在线观看| 99热这里精品| 麻豆久久久久| 婷婷久久综合九色综合伊人色| 女人一区二区三区| 91在线公开视频| 伊人久久高清| 欧美专区一区二区三区| 日韩av在线免费看| 天堂一区在线观看| 九色蝌蚪在线观看| 欧美精品啪啪| 亚洲天堂成人在线| 日本中文字幕有码| 高清av影院| 久久精品主播| 欧美精品在线免费| 午夜时刻免费入口| 色视频在线观看| 国产原创一区二区三区| 国产va免费精品高清在线| caoporn91| 在线中文字幕第一页| 91碰在线视频| 国产精品二区三区四区| 亚洲一区二区视频在线播放| 日本精品裸体写真集在线观看| 亚洲一区视频在线观看视频| 亚洲精品影院| 最近更新在线中文字幕一页| 亚洲另类春色校园小说| 欧美变态tickle挠乳网站| www.99r| 成人黄色网页| 久久se这里有精品| 国产精品视频yy9099| 欧美亚洲精品天堂| 午夜精品成人av| 精品人伦一区二区三区蜜桃网站| 毛片在线视频观看| 91sese| 亚洲资源av| 国内精品在线一区| 国产精品99精品无码视| 国产中文在线播放| 精品久久久久久久久久久久久| 日韩精品一区二区三区电影| 韩日中文字幕第一页| 欧美粗暴jizz性欧美20| 久久久国产精品免费| 最新黄色av网址| 大香伊人久久| 天天色 色综合| av之家在线观看| 可以看av的网址| 精油按摩中文字幕久久| 成人激情免费在线| 国产绿帽刺激高潮对白| 免费萌白酱国产一区二区三区| 欧美一卡在线观看| 稀缺呦国内精品呦| 午夜看片在线免费| 一区二区三区在线视频免费 | 成人毛片在线播放| 国产成人精品一区二区三区在线| 欧洲视频一区二区| 天天做天天干天天操| 四虎影院在线播放| 欧美激情中文字幕| 国产一二三四五| 毛片基地一级大毛片| 久久精品国产精品亚洲综合| 7777精品伊久久久大香线蕉语言| 蜜臀久久精品久久久久| 欧美大片aaaa| 性欧美xxxx交| 伊人精品一区二区三区| 九九综合九九| 欧美成人精品一区二区三区| 日本亚洲欧美在线| 日韩有吗在线观看| 色狠狠色狠狠综合| 99久久99精品| 欧美性猛交xxx乱大交3蜜桃| 亚洲一区二区四区蜜桃| 黄色片久久久久| 在线午夜视频| 成人免费一区二区三区在线观看 | 日韩中文综合网| 精品亚洲永久免费| 在线能看的av网址| 4438x亚洲最大成人网| 五月开心播播网| 精精国产xxxx视频在线野外| 欧美色精品天天在线观看视频| 国产精品嫩草69影院| 调教一区二区| 欧美日韩dvd在线观看| 在线观看国产三级| 欧美1级2级| 亚洲第一av在线| 萌白酱视频在线| 成人51免费| 一区二区三区美女xx视频| 日韩三级一区二区三区| 香蕉久久精品日日躁夜夜躁| 欧美大片免费看| 97人妻人人澡人人爽人人精品 | 中日韩午夜理伦电影免费| 日韩精品一区三区| 九色精品国产蝌蚪| 51ⅴ精品国产91久久久久久| 亚洲精品成av人片天堂无码| 激情综合亚洲| 粉嫩av四季av绯色av第一区| 国产精品178页| 成人一区在线看| 男人草女人视频| 一级二级三级在线观看| 亚洲成人免费影院| 国产在线不卡av| 天天干天天骑| wwwwxxxxx欧美| 波多野结衣50连登视频| av在线播放网| 精品视频资源站| 丁香六月激情综合| 丁香婷婷成人| 欧美一级视频免费在线观看| 嫩模一区二区三区| 国产中文一区二区三区| 精品视频在线观看一区二区| 青青草视频免费在线观看| 精品福利在线观看| 国产中文字幕一区二区| 婷婷精品久久久久久久久久不卡| 中文字幕亚洲欧美日韩2019| 中文字幕精品在线观看| 亚洲色诱最新| 日韩亚洲不卡在线| 一起操在线观看| 制服丝袜在线91| 香蕉免费毛片视频| 欧美高清不卡| 欧美中日韩一区二区三区| 中文av在线播放| 欧美放荡的少妇| 天天爽夜夜爽夜夜爽精品| 韩国亚洲精品| 五月天亚洲综合情| 日本大臀精品| 欧美精品一区二区久久婷婷 | 欧美午夜在线| 欧洲一区二区在线| 日韩三级电影网| 欧美一区二区在线免费播放| 日韩 欧美 中文| 在线一区免费观看| 欧美a级黄色大片| 色呦呦在线视频| 中文字幕无线精品亚洲乱码一区| 欧美自拍偷拍第一页| 成人动漫一区二区三区| 国内自拍第二页| 久久99精品久久久野外观看| 国产精品入口夜色视频大尺度| 狠狠插狠狠操| 欧美日韩在线一区| 国产无遮无挡120秒| 国产精品xvideos88| 一区二区三区四区视频在线| 思思99re6国产在线播放| 亚洲国产精品久久久久秋霞蜜臀| 国产精品玖玖玖| 国产激情视频一区二区三区欧美| 亚洲 欧美 日韩系列| ww久久综合久中文字幕| 91av网站在线播放| 国产一级黄色大片| www.欧美日韩| 97在线播放视频| 污污影院在线观看| 亚洲欧美一区二区三区在线| 国产免费一区二区三区免费视频| 日本少妇一区二区| av免费看网址| 国产欧洲在线| 欧美一级电影在线| 日本色七七影院| 亚洲精品高清在线观看| 久草视频免费播放| 欧美激情五月| 公共露出暴露狂另类av| av网站在线看| 色噜噜国产精品视频一区二区| 欧美三日本三级少妇三2023| 国产欧美日韩不卡免费| 亚洲一区二区三区无码久久| 97视频精品| 亚洲图色在线| 永久免费av在线| y97精品国产97久久久久久| 中文字幕麻豆| 国产精品毛片无遮挡高清| 18禁裸乳无遮挡啪啪无码免费| 五月天亚洲色图| 亚洲看片网站| 精品日韩av| 久久久久女教师免费一区| 天天干天天骑| 欧美日韩的一区二区| 中文字幕日本视频| 国产一区二区三区在线看麻豆| 91国产精品视频在线观看| 里番精品3d一二三区| 国产精品一区免费观看| 男人的天堂在线| 久久久91精品| 一二三四视频免费观看在线看| 亚洲国产aⅴ天堂久久| 国产精品成人久久| 久久国产精品亚洲77777| 性欧美在线视频| 久久久久观看| 欧美亚洲免费在线| 国产激情在线播放| 欧美洲成人男女午夜视频| 奇米影视第四狠狠777| 欧美日韩一卡二卡三卡| 中文字幕制服诱惑| 中文字幕欧美三区| 亚洲一区电影在线观看| 99精品免费网| 婷婷中文字幕在线观看| 神马香蕉久久| 成年丰满熟妇午夜免费视频| 成人国产二区| 国产精品一区二区久久久| 国产女人在线观看| 日韩在线观看免费全| 波多野结衣视频观看| 国产午夜亚洲精品不卡 | 爱情电影网av一区二区| 欧美一区二区视频17c| 国产精品久久久久久影视| 久久这里只有精品视频首页| 日本人妻丰满熟妇久久久久久| 国产精品三级a三级三级午夜 | 国产精品不卡在线| 91成人国产在线观看| 国产精品无人区| 日韩av手机在线| 日韩在线观看视频一区| 香蕉视频一区| 国模私拍一区二区三区| 91蜜桃视频在线观看| 午夜不卡视频| 欧美中文字幕久久| 任你躁av一区二区三区| 成人动漫一区| 亚洲精品久久7777777| 国产麻豆剧传媒精品国产av| 中文字幕在线看片| 日韩av在线一区| 午夜精品一区二| 日韩中字在线| 国产日韩欧美夫妻视频在线观看| free性欧美69巨大| av资源站一区| wwwwwxxxx日本| 色www永久免费视频首页在线 | 国产在线观看18| 97成人超碰视| 欧美日韩亚洲一| 亚乱亚乱亚洲乱妇| 亚洲黄色片网站| 日本午夜视频在线观看| 亚洲精品日韩久久| 免费成人深夜夜行视频| 韩国av电影免费观看| 日韩欧美精品网址| www中文在线| 亚洲精品一二三区区别| 国内精品久久国产| a在线观看视频| 国产成人av一区二区三区在线| 麻豆传媒网站在线观看| 91精品久久久|