久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 13207|回復: 24
打印 上一主題 下一主題
收起左側

NRF24l01實時雙向2.4g通信(stm32與51單片機源碼)

  [復制鏈接]
跳轉到指定樓層
樓主

nrf_2.4g通信

stm32單片機源程序如下:
  1. #include <stm32f10x_lib.h>
  2. #include "sys.h"
  3. #include "usart.h"               
  4. #include "delay.h"       
  5. #include "led.h"           
  6. #include "NRF24l01.h"
  7. #include "key.h"
  8.                                                                                                                                                                                                                                                                                           
  9. int main(void)
  10. {       
  11.                          
  12.         u8 Tx_Buf1[]={1}; //要發送的數據 1
  13.         u8 Rx_Buf[32]; //接收到的數據  最多32字節
  14.         u8 key=0;

  15.           Stm32_Clock_Init(9);//系統時鐘設置
  16.         delay_init(72);                //延時初始化
  17.         uart_init(72,9600); //串口1初始化            
  18.                   
  19.         KEY_Init();                 //按鍵初始化
  20.         LED_Init();         //LED初始化
  21.         NRF24L01_Init();    //初始化NRF24L01
  22.                                     
  23.         while(NRF24L01_Check())//檢測不到24L01
  24.         {
  25.                
  26.                 delay_ms(300);
  27.                 LED0=!LED0;//DS0閃爍
  28.                 LED1=!LED1;//DS1閃爍
  29.         }
  30.    //初始 DS1熄滅
  31.         LED1=1;//
  32.         while(1)
  33.         {
  34.                
  35.                 RX_Mode();//接收模式
  36.                 while(NRF24L01_RxPacket(Rx_Buf))//等待接收數據 ,返回0則接收到數據 ,在等待接收數據期間,可以隨時變成發送模式  
  37.                 {
  38.                         key=KEY_Scan();
  39.                         if(key==1)         //按了KEY0   則變成發送模式,發送對應數據,發送完后變成接收模式
  40.                         {       
  41.                                  TX_Mode();        //發送模式
  42.                                  NRF24L01_TxPacket(Tx_Buf1);        // 發送命令數據
  43.                                    LED1=0;
  44.                                  delay_ms(300);
  45.                                  LED1=1;
  46.                                  delay_ms(300);                        //發送后LED1閃一下
  47.                                  break;        //退出最近的循環,從而變回接收模式,這句關鍵       
  48.                    }
  49.                 }
  50.                 if(Rx_Buf[0]==1)           //若接收到對應的數據則實現對應功能
  51.                 {
  52.                          Rx_Buf[0]=0;//清空數據
  53.                          LED1=0;
  54.                          delay_ms(300);
  55.                          LED1=1;
  56.                          delay_ms(300);//接收到數據 后閃爍          
  57.                 }               
  58.         }


  59.                      
  60. }
  61. ……………………

  62. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼


51單片機源程序如下:
  1. #include<reg51.h>
  2. #include"2401.h"

  3. #define uint unsigned int
  4. #define uchar unsigned char


  5. sbit KEY8=P3^7;         //發送按鍵


  6. sbit beep=P2^3;//喇叭

  7. sbit LED6=P1^6;         ////接收到數據后的功能實現燈  

  8. void delay_ms(uint z)         //延時函數
  9. {
  10.         uint x,y;
  11.         for(x=z;x>0;x--)
  12.                 for(y=110;y>0;y--);
  13. }
  14. void delayms(unsigned int x)
  15. {
  16.         unsigned int i;
  17.         while(x--)
  18.                 for(i=125;i>0;i--);
  19. }

  20. void main()
  21. {
  22.          uchar Tx_Buf1[]={1};//發送的信息1
  23.          uchar Rx_Buf[32];  //接收到的數據暫存器,最多32字節數據  
  24.          init_NRF24L01();
  25.          LED6=1;//初始燈6熄滅   


  26.         while(NRF24L01_Check())                //檢查不到24l01則報警
  27.         {
  28.                 beep=0;
  29.                 delayms(200);
  30.                 beep=1;
  31.                 delayms(200);
  32.         }
  33.         while(1)
  34.         {       
  35.                 RX_Mode();//接收模式  
  36.                 while(!nRF24L01_RxPacket(Rx_Buf)) //等待接收數據 ,返回1則接收到數據 ,在等待接收數據期間,可以隨時變成發送模式  
  37.             {
  38.                         if(KEY8==0)         //按了按鍵8   則變成發送模式,發送對應數據,發送完后變成接收模式
  39.                         {       
  40.                                 delay_ms(5);//消抖動
  41.                                 if(KEY8==0)
  42.                                 {
  43.                                          while(!KEY8);
  44.                                         TX_Mode();         //發送模式
  45.                                     nRF24L01_TxPacket(Tx_Buf1);        // 發送命令數據
  46.                                           LED6=0;
  47.                                     delay_ms(300);
  48.                                         LED6=1;
  49.                                     delay_ms(300);                        //發送后LED6閃一下
  50.                                         break;        //退出最近的循環,從而變回接收模式,這句關鍵
  51.                                  }
  52.                                
  53.                          }
  54.                  }
  55.                  if(Rx_Buf[0]==1)           //若接收到對應的數據則實現對應功能
  56.                  {
  57.                      Rx_Buf[0]=0;//清空數據
  58. ……………………

  59. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

所有資料51hei提供下載:
NRF24l01實時雙向通信(stm32與51).zip (1.06 MB, 下載次數: 589)



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏9 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:321559 發表于 2018-5-3 20:17 | 只看該作者
非常好的例子,謝謝
回復

使用道具 舉報

板凳
ID:296975 發表于 2018-5-5 22:16 | 只看該作者
好想下載來看看 沒錢 只好自己寫了
回復

使用道具 舉報

地板
ID:322902 發表于 2018-5-5 22:47 | 只看該作者
資料很好,下載下來學習一下
回復

使用道具 舉報

5#
ID:324874 發表于 2018-5-25 14:36 | 只看該作者
多謝分享,下載學習
回復

使用道具 舉報

6#
ID:161597 發表于 2018-6-22 13:57 | 只看該作者
下載學習!
回復

使用道具 舉報

7#
ID:372069 發表于 2018-7-16 14:37 | 只看該作者

非常好的例子,謝謝
回復

使用道具 舉報

8#
ID:333757 發表于 2018-7-17 15:32 | 只看該作者
A good example
回復

使用道具 舉報

9#
ID:383956 發表于 2018-8-7 22:20 | 只看該作者
不錯,學習一下
回復

使用道具 舉報

10#
ID:381406 發表于 2018-8-8 23:46 來自觸屏版 | 只看該作者
非常好,正好需要
回復

使用道具 舉報

11#
ID:305825 發表于 2018-8-16 20:05 | 只看該作者
為什么沒有原理圖,缺少了硬件部分的資料
回復

使用道具 舉報

12#
ID:402569 發表于 2018-9-26 10:25 | 只看該作者
非常好的例子,謝謝
回復

使用道具 舉報

13#
ID:402569 發表于 2018-9-26 10:44 | 只看該作者
有原理圖么
回復

使用道具 舉報

14#
ID:313313 發表于 2019-1-8 11:53 | 只看該作者
非常好,正好需要
回復

使用道具 舉報

15#
ID:492670 發表于 2019-3-17 17:27 | 只看該作者
支持樓主大大
回復

使用道具 舉報

16#
ID:598547 發表于 2019-8-9 19:36 | 只看該作者
來學習一下
回復

使用道具 舉報

17#
ID:600500 發表于 2019-8-15 16:49 | 只看該作者
非常好的例子,謝謝
回復

使用道具 舉報

18#
ID:296060 發表于 2020-1-16 20:12 | 只看該作者
學習下。。。樓主好人啊。
回復

使用道具 舉報

19#
ID:93224 發表于 2020-1-21 17:09 | 只看該作者
NRF2401還有人真正的用嗎?高校里的玩具
回復

使用道具 舉報

20#
ID:594418 發表于 2020-4-24 10:34 | 只看該作者
為啥打不開
回復

使用道具 舉報

21#
ID:739602 發表于 2020-4-27 20:42 | 只看該作者
多謝老哥了      
回復

使用道具 舉報

22#
ID:128714 發表于 2021-1-17 21:12 | 只看該作者
謝謝,正想看看不同類型單片機用NRF24L01通訊。
回復

使用道具 舉報

23#
ID:800382 發表于 2021-1-20 08:39 來自觸屏版 | 只看該作者
資料很好,下載下來學習一下
回復

使用道具 舉報

24#
ID:220936 發表于 2021-1-30 03:20 | 只看該作者
樓主牛B,正好參考
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩免费在线观看视频 | 国产精品久久久久久久久久久久 | 一区二区中文字幕 | 国产精品一二三区 | 精国产品一区二区三区四季综 | 一区二区成人 | 国产一区二区三区免费观看在线 | 亚洲色图综合 | 久一精品| 美女久久久久 | 国产精品毛片一区二区在线看 | 韩日精品在线观看 | 91观看| 欧美精品一区二区三区蜜桃视频 | 亚洲国产一区视频 | 97视频在线观看免费 | 欧美性a视频 | 久久精品69 | 日本欧美国产在线观看 | 亚洲91精品 | 中文字幕在线观看第一页 | 亚洲一区二区三区免费在线观看 | 欧美激情精品久久久久久变态 | 日韩一及片 | av中文字幕在线观看 | 欧美性受xxxx白人性爽 | 日韩欧美在线一区 | 99视频在线看 | 国产美女黄色片 | 男女污污网站 | 成人国产精品免费观看 | 亚洲成人一区二区 | 久久一| 国产精品一区二区av | 狠狠干狠狠操 | 欧美精品一区二区在线观看 | 一级大片免费 | 成人精品免费视频 | 国产伦精品一区二区三区照片91 | 国产探花在线精品一区二区 | 精品久久久久久久人人人人传媒 |