找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6209|回复: 10
打印 上一主题 下一主题
收起左侧

基于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, 下载次数: 151)



评分

参与人数 1黑币 +4 收起 理由
fqsqsdq123456 + 4

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏6 分享淘帖 顶1 踩
回复

使用道具 举报

沙发
ID:299275 发表于 2018-3-30 17:38 | 只看该作者
现在正好在看这方面的资料,感谢
回复

使用道具 举报

板凳
ID:166745 发表于 2018-4-1 15:09 | 只看该作者
非常感谢!!!!!
回复

使用道具 举报

地板
ID:301752 发表于 2018-4-9 13:47 | 只看该作者
有仿真图吗,都不知道电路是怎么样的
回复

使用道具 举报

5#
ID:301752 发表于 2018-4-9 21:45 | 只看该作者
这个用什么打开啊
回复

使用道具 举报

6#
ID:309065 发表于 2018-4-16 10:39 | 只看该作者
非常感谢!!!!!
回复

使用道具 举报

7#
ID:153381 发表于 2018-6-19 14:54 | 只看该作者
非常感谢,正在学习射频方面的
回复

使用道具 举报

8#
ID:380389 发表于 2018-8-1 19:48 来自手机 | 只看该作者
收藏学习一下
回复

使用道具 举报

9#
ID:32574 发表于 2018-8-15 07:07 | 只看该作者
谢谢楼主分享,学习一下
回复

使用道具 举报

10#
ID:423949 发表于 2018-11-23 09:20 | 只看该作者
有款SI24R1可以替代NRF24L01,想了解可以加我
回复

使用道具 举报

11#
ID:746201 发表于 2024-3-1 09:30 | 只看该作者
这个可以,很好,学习一下、
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表