标题: 基于NRF24L01无线模块的一个模拟智能家居系统单片机源码 [打印本页]

作者: zpy8zpy    时间: 2018-3-26 16:21
标题: 基于NRF24L01无线模块的一个模拟智能家居系统单片机源码
基于NRF24L01无线模块的一个模拟智能家居系统。用单片机+24L01做的


包含单发送模块,接收模块,主控模块的源码


单片机源程序如下:
  1. /*****************************************                                                                  `
  2. 创建:陈志强
  3. 时间:2010.6.12
  4. 功能:NRF24L01射频模块C文件(发射部分)
  5. *****************************************/
  6. #include"stc15.h"
  7. #include"Allhead.h"
  8. uchar i=0;
  9. uchar j,t;
  10. uchar RxDate[4]={0};
  11. void sys_init()
  12. {
  13.         P0M1=0x00;
  14.         P0M0=0xff;         //推挽输出,否则不稳定

  15.         TMOD=0X00;
  16.         TH0=TL0=0Xfc;
  17.         TR0=1;
  18.         ET0=1;
  19.         PT0=1;                   //设置为高优先级中断,保证LED正常显示,

  20.         PX1=1;
  21.         IT1=1;
  22.         EX1=1;           //红外中断
  23.         EA=1;
  24. }
  25. void main()
  26. {
  27.         sys_init();
  28.         NRF24L01Int();        

  29.         DS1302Set();             //初始化1302        
  30.         
  31.         while(1){               
  32.         NRFSetRXMode();        
  33.         if(send_flag)
  34.         {
  35.                 NRFSetTxMode(TxDate);//发送温度
  36.                 while(CheckACK());        //检测是否发送完毕
  37.                 send_flag=0;  

  38.                 NRFSetRXMode();
  39.         }
  40.         if(NRFRevDate(RxDate))
  41.         {
  42.                 if(RxDate[0]==5)
  43.                 {
  44.                         for(j=0;j<4;j++)
  45.                         for(t=0;t<32;t++)                                                
  46.                                 event_code[j][t]=kaimen[j][t];
  47.                 }
  48.                 else
  49.                 {
  50.                         for(j=0;j<4;j++)
  51.                         for(t=0;t<32;t++)                                         
  52.                                 event_code[j][t]=kaimen1[j][t];
  53.                 }
  54.                 NRFSetRXMode();
  55.         }                                                                    
  56.                  ds1302_load();
  57.                  Delay(2);
  58.         }

  59. }
  60. /********************LED屏幕刷新**************/
  61. void timer0_init() interrupt 1
  62. {
  63.         if(++i==16) i=0;
  64.         load_data(i);        
  65.         EN=1;  //消除改变595数据时产生的阴影
  66.         send595();        
  67.         P0=i; //行选时CLK为0,不影响595寄存器数据。
  68.         EN=0;
  69.                
  70.                         
  71. }
复制代码

所有资料51hei提供下载:
基于NRF24L01无线模块的一个模拟智能家居系.rar (387.39 KB, 下载次数: 155)




作者: lzx19961014    时间: 2018-3-30 17:38
现在正好在看这方面的资料,感谢

作者: lixiangqi999    时间: 2018-4-1 15:09
非常感谢!!!!!
作者: Kiralfred    时间: 2018-4-9 13:47
有仿真图吗,都不知道电路是怎么样的
作者: Kiralfred    时间: 2018-4-9 21:45
这个用什么打开啊
作者: 门外小黑    时间: 2018-4-16 10:39
非常感谢!!!!!
作者: myaspx    时间: 2018-6-19 14:54
非常感谢,正在学习射频方面的
作者: xsj1877578806    时间: 2018-8-1 19:48
收藏学习一下
作者: redtxd    时间: 2018-8-15 07:07
谢谢楼主分享,学习一下
作者: 鹅厂2355239057    时间: 2018-11-23 09:20
有款SI24R1可以替代NRF24L01,想了解可以加我
作者: lxyj1971    时间: 2024-3-1 09:30
这个可以,很好,学习一下、




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1