OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 14989|回复: 31

分享zigbee转红外模块(8路红外发射1路红外学习模块)

[复制链接]

13

主题

35

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
270
金钱
270
注册时间
2013-4-22
在线时间
2 小时
发表于 2014-10-30 21:20:49 | 显示全部楼层 |阅读模式
做了好久、参考了大量的资料才做出来的,改模块可以学习载波为20K-56KHZ的 红外遥控器,并且配有8路红外发射管,可全方位、无死角的控制家里的所有红外设备。

1、模块功能介绍

zigbee转红外模块有两部分组成:zigbee传输节点+红外采集发射模

1.1、Zigbee红外传输节点介绍

1、  入网后向协调器上报节点短地址和节点号;

2、  双串口读取数据,其一、支持高达160字节数据读取和无线传输,完全满足红外数据要求;其二,支持小数据数据读取和无线传输。

1.2、红外采集发射模块具有以下功能:

1、    采用独立(非集成)红外接受和发射二极管;

2、    串口输入和输出数据(57600N81);

3、    自动分析载波频率(20KHz56KHz);

4、    支持多种指令调试和控制;

5、    距离远达810米,全方位360度红外发射;

6、    支持学习市场上大部分红外遥控器和发射学习码制;

7、自动处理红外冗余数据,使数据量尽量减少;

8、支持数据校验和;

9、学习和发射支持灯光指示。

 

2、 红外数据采集及结构说明

2.1、MCU返回正确红外数据结构说明:

         当采集到正确的红外数据时,采集模块返回一下数据结构的红外数据,其中红外数据结构如下:   

typedef struct struct_sCommand

{

unsigned char head[2];       //数据头0Xaa,0x55  

        unsigned char command;       //红外命令,0x01为学习命令0x00发射命令

        unsigned int datalength;     //数据长度,最大为150

unsigned char type;             //节点号

unsigned char ir_hl;            //载波周期    //数据长度

        unsigned char data[DATALENGTH]; //红外数据

        unsigned char checksum;        //校验和

} sCommand;

其中:

数据头固定为:0xAA,0x55

学习成功红外命令:0x01
发射命令              :0x00
出错指令              :0x03

数据长度包含:节点号1Byte+载波周期1Byte+红外数据(datalength-2Byte

校验和:1Byte,除了checksum前边所有的数据和。

2.2 、MCU返回错误结构说明

出错指令:0x03

typedef struct struct_sCommand

{

unsigned char head[2];           //数据头0Xaa,0x55  

    unsigned char command;           //红外命令

    unsigned int datalength;        //数据长度

unsigned char up_error;        //上次出错

unsigned char down_error;       //本次出错

    unsigned char checksum;        //校验和

} sCommand;

错误代码:

RROR_TIMEOUT             0xF0                   操作超时

ERROR_CHECKSUM     0xF1                   校验失败

ERROR_FULL                   0xF2                   红外数据大于网络传输设定上限

ERROR_UNKNOWN                 0xFF                   未知错误

 

采集过程:红外采集模块在接收到上位机发送的采集指令会执行采集过程,采集过程出现蓝灯急速闪烁(平时常亮),此时进行采集红外数据。当在规定的时间内没有进行学习是返回操作超时;采集数据量超过zigbee网络传输上限时,发送数据超限错误;

发送红外过程:接收到红外数据后会计算校验和,如果计算结果和接受到的校验和不一致就会发送错误命令

3、支持指令及应用举例

3.1、 指令支持

第一种: zigbee网络传输专用指令

学习命令7E440000FFFFFFFF053E09200100FF1D7A7E                                                        

0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17//字节编号,

7E 44 00 00 FF FF FF FF 05 3E 09 20 01 00 FF 1D 7A 7E//学习指令

 

当安卓软件连上linux网关后,按下学习按钮,网关转换完协议发送学习指令到zigbee协调器,协调器再发送给带有红外模块的ZIGBEE终端节点,通过8个红外发射即可实现全方位、无死角的控制。(实质也是串口发送,故直接用串口发送本段命令也正确)

 

第二种:字符格式

应为数据协议本身比较复杂,段时间内很难看懂,所以我做好了收发的简单字符指令,任何单片机或者PC串口助手通过串口与本红外模块相连、发送简单字符到红外模块即可实现全部功能。总共3条字符指令:
     sCC // 学习指令

      tCC //把刚学西的红外发射出来

         fCC //把刚学习的红外数据通过串口发送出来

 

第三种:直接发送红外码制

  即直接将学到的红外码通过串口发送出去。

 

3.2、 应用举例

1、网关发送学习命令(01):7E440000FFFFFFFF053E09200100FF1D7A7E:

                                                                           节点号、学习指令、

0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17//字节编号,

7E 44 00 00 FF FF FF FF 05 3E 09 20 01 00 FF 1D 7A 7E//学习红外指令

 

Mcu返回学习到的红外码:

                      节点号

AA 55 01 00 8C 20 6F EE EE 29 86 0E 1C 06 BA 07 2F 05 DB 07 30 05 DC 0E 24 06 BA 0E 25 13 C6 0E 25 06 BA 07 2F 06 BA 07 2F 05 DB 07 30 05 DC 07 2F 05 DC 07 2F 05 DC 07 2F 05 DB 07 2F 05 DB 07 30 05 DC 07 2F 0C D1 0E 25 06 BA 07 2F 05 DB 07 30 05 DC 07 2F 05 DC 07 2F 05 DC 07 2F 0C D1 0E 25 05 DC 07 2F 0C D1 07 30 06 BA 0E 25 05 DB 07 30 05 DC 07 2F 05 DC 07 2F 05 DB 07 2F 05 DB 07 30 05 DC 07 2F 05 DC 07 2F 0C D2 00 34 46 E1 23 23 2A

 

说明:

Mcu返回的data是学习到的按键键值,上位机可以存储到数据库中。在发送学习命令后用户需要及时对准红外接收管按下按键,否则mcu会返回超时错误命令。超时时间可以在代码中设置,默认是10秒。节点号用于区分设备类型。

 

2、通过PC串口助手发送: sCC

串口助手返回:

           节点号

AA 55 01 00 8C 20 6F EE EE 29 86 0E 1C 06 BA 07 2F 05 DB 07 30 05 DC 0E 24 06 BA 0E 25 13 C6 0E 25 06 BA 07 2F 06 BA 07 2F 05 DB 07 30 05 DC 07 2F 05 DC 07 2F 05 DC 07 2F 05 DB 07 2F 05 DB 07 30 05 DC 07 2F 0C D1 0E 25 06 BA 07 2F 05 DB 07 30 05 DC 07 2F 05 DC 07 2F 05 DC 07 2F 0C D1 0E 25 05 DC 07 2F 0C D1 07 30 06 BA 0E 25 05 DB 07 30 05 DC 07 2F 05 DC 07 2F 05 DB 07 2F 05 DB 07 30 05 DC 07 2F 05 DC 07 2F 0C D2 00 34 46 E1 23 23 2A

 

通过PC串口助手发送: tCC

则红外模块把本次学习到的红外码发射出去

 

通过PC串口助手发送: fCC

则红外模块把本次到的红外数据通过串口显示出来

3直接把学习到的红外码制直接发送至红外模块,则该模块将发射相应的红外

AA 55 01 00 8C 20 6F EE EE 29 86 0E 1C 06 BA 07 2F 05 DB 07 30 05 DC 0E 24 06 BA 0E 25 13 C6 0E 25 06 BA 07 2F 06 BA 07 2F 05 DB 07 30 05 DC 07 2F 05 DC 07 2F 05 DC 07 2F 05 DB 07 2F 05 DB 07 30 05 DC 07 2F 0C D1 0E 25 06 BA 07 2F 05 DB 07 30 05 DC 07 2F 05 DC 07 2F 05 DC 07 2F 0C D1 0E 25 05 DC 07 2F 0C D1 07 30 06 BA 0E 25 05 DB 07 30 05 DC 07 2F 05 DC 07 2F 05 DB 07 2F 05 DB 07 30 05 DC 07 2F 05 DC 07 2F 0C D2 00 34 46 E1 23 23 2A


 
应为公司的需求、主控芯片是用CC2530做的。在此贴上红外相关的函数库IR.C IR.H(内附详细注释),希望大家有时间可以移植到其他常用芯片

zigbee转红外自定义协议.docx

26.99 KB, 下载次数: 1833

单片机红外发射(原理与设计程序).doc

126.5 KB, 下载次数: 2093

常用红外线遥控信号协议详解(完整版).pdf

1.19 MB, 下载次数: 2011

全面了解红外遥控(中文版).pdf

581.46 KB, 下载次数: 2252

38KHz红外发发射和接收.pdf

168.4 KB, 下载次数: 2834

改变占空比提高红外遥控距离.pdf

65.29 KB, 下载次数: 1904

红外通信课件.ppt

287.5 KB, 下载次数: 1811

本红外模块原理图.pdf

615.85 KB, 下载次数: 3170

IR.c

12.7 KB, 下载次数: 1100

IR.h

5.31 KB, 下载次数: 885

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-10-30 22:38:43 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

72

主题

2711

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3505
金钱
3505
注册时间
2014-8-4
在线时间
696 小时
发表于 2014-10-31 15:57:26 | 显示全部楼层
强势mark
回复 支持 反对

使用道具 举报

34

主题

388

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
4090
金钱
4090
注册时间
2012-10-21
在线时间
642 小时
发表于 2014-10-31 18:01:21 | 显示全部楼层
mark+1
回复 支持 反对

使用道具 举报

13

主题

35

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
270
金钱
270
注册时间
2013-4-22
在线时间
2 小时
 楼主| 发表于 2014-10-31 20:03:57 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
第一次发帖哎,,原子大哥就给个酷。。谢谢。。。过会整理整理程序发上
回复 支持 反对

使用道具 举报

13

主题

35

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
270
金钱
270
注册时间
2013-4-22
在线时间
2 小时
 楼主| 发表于 2014-10-31 21:04:50 | 显示全部楼层
整个程序怎么传不上去,卡住不动
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-10-31 23:06:10 | 显示全部楼层
回复【6楼】苏菲菲:
---------------------------------
可以的,你等久一点。不要关闭网页。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

4

主题

200

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
236
金钱
236
注册时间
2012-12-19
在线时间
0 小时
发表于 2014-11-1 20:50:46 | 显示全部楼层
楼主好人~~ ~
目前在玩STM32,BBB,RPi
回复 支持 反对

使用道具 举报

70

主题

6769

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13176
金钱
13176
注册时间
2012-11-26
在线时间
3818 小时
发表于 2014-11-1 21:26:14 | 显示全部楼层
mark一下  小众产品
学无止境
回复 支持 反对

使用道具 举报

7

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
84
金钱
84
注册时间
2012-12-21
在线时间
0 小时
发表于 2014-11-2 19:58:31 | 显示全部楼层
强势一顶啊啊
回复 支持 反对

使用道具 举报

62

主题

275

帖子

4

精华

金牌会员

Rank: 6Rank: 6

积分
1155
金钱
1155
注册时间
2012-3-4
在线时间
80 小时
发表于 2014-11-5 08:50:21 | 显示全部楼层
正在学习这个,楼主就来了,一般用的是一体管 只能38k。这个很不错适用广,不容易啊
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手上路

积分
22
金钱
22
注册时间
2014-7-12
在线时间
0 小时
发表于 2014-11-19 13:59:11 | 显示全部楼层
这个的频率很周全,实用级别。支持!
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手上路

积分
25
金钱
25
注册时间
2015-8-18
在线时间
1 小时
发表于 2015-8-26 13:22:40 | 显示全部楼层
对于一个菜货来说。根本看不懂LZ的酷帖。哎~~
回复 支持 反对

使用道具 举报

8

主题

44

帖子

0

精华

初级会员

Rank: 2

积分
118
金钱
118
注册时间
2013-5-15
在线时间
8 小时
发表于 2015-11-23 21:47:15 | 显示全部楼层
有没有把代码放到协议栈中,联网使用呢
回复 支持 反对

使用道具 举报

16

主题

75

帖子

0

精华

初级会员

Rank: 2

积分
179
金钱
179
注册时间
2013-11-23
在线时间
6 小时
发表于 2015-12-1 09:47:14 | 显示全部楼层
兄弟,你的zb学习红外是单个模块的吧?就是部分协调器和路由终端啥的?   就是一个单片机该完成的功能?
回复 支持 反对

使用道具 举报

16

主题

75

帖子

0

精华

初级会员

Rank: 2

积分
179
金钱
179
注册时间
2013-11-23
在线时间
6 小时
发表于 2015-12-1 09:56:29 | 显示全部楼层
回复【5楼】苏菲菲:
---------------------------------
哥们,入网的Demo你有做吗?  或者给点思路也行。最近正在弄这个,头都大了。。。
回复 支持 反对

使用道具 举报

7

主题

67

帖子

0

精华

初级会员

Rank: 2

积分
156
金钱
156
注册时间
2013-8-24
在线时间
16 小时
发表于 2015-12-2 00:06:36 | 显示全部楼层
这个真不错,谢谢
回复 支持 反对

使用道具 举报

1

主题

7

帖子

0

精华

初级会员

Rank: 2

积分
71
金钱
71
注册时间
2016-3-12
在线时间
20 小时
发表于 2016-3-12 13:32:39 | 显示全部楼层
可以发帖么?
回复 支持 反对

使用道具 举报

30

主题

705

帖子

1

精华

新手上路

积分
21
金钱
21
注册时间
2013-3-14
在线时间
52 小时
发表于 2016-3-12 16:59:50 | 显示全部楼层
cool,非常非常cool!
原子哥是不是又要出黑科技了呀。^_^...
回复 支持 反对

使用道具 举报

0

主题

9

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
229
金钱
229
注册时间
2015-11-2
在线时间
38 小时
发表于 2016-3-15 14:56:35 | 显示全部楼层
谢谢分享啊
回复 支持 反对

使用道具 举报

2

主题

47

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
293
金钱
293
注册时间
2014-11-26
在线时间
29 小时
发表于 2016-3-15 15:34:29 | 显示全部楼层
cool
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
8
金钱
8
注册时间
2016-5-3
在线时间
1 小时
发表于 2016-5-3 11:35:13 | 显示全部楼层
cool,不知楼主去哪里做的板子,感觉好专业
回复 支持 反对

使用道具 举报

2

主题

49

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
392
金钱
392
注册时间
2016-5-26
在线时间
35 小时
发表于 2016-6-17 16:50:30 | 显示全部楼层
mark+1
回复 支持 反对

使用道具 举报

2

主题

30

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
362
金钱
362
注册时间
2015-9-24
在线时间
41 小时
发表于 2016-6-18 17:36:04 | 显示全部楼层
mark下
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
10
金钱
10
注册时间
2016-6-27
在线时间
0 小时
发表于 2016-6-28 00:18:52 | 显示全部楼层
入网的SampleApp.c分享一下可以吗?
回复 支持 反对

使用道具 举报

0

主题

26

帖子

0

精华

初级会员

Rank: 2

积分
101
金钱
101
注册时间
2014-4-19
在线时间
20 小时
发表于 2016-6-28 16:45:09 | 显示全部楼层
非常牛逼啊
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
10
金钱
10
注册时间
2016-8-16
在线时间
1 小时
发表于 2016-8-16 10:37:10 | 显示全部楼层
我对此产品有需求,请加我QQ谈。QQ:368267511,谢谢!
回复 支持 反对

使用道具 举报

18

主题

54

帖子

0

精华

初级会员

Rank: 2

积分
177
金钱
177
注册时间
2014-4-18
在线时间
13 小时
发表于 2016-9-22 22:17:29 | 显示全部楼层
请问你是用什么的红外发射二极管
回复 支持 反对

使用道具 举报

1

主题

12

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
439
金钱
439
注册时间
2016-11-9
在线时间
38 小时
发表于 2016-11-10 09:03:27 | 显示全部楼层
没有人移植到STM32上面吗?准备试一下!
回复 支持 反对

使用道具 举报

autowill 该用户已被删除
发表于 2016-11-15 15:26:58 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

1

主题

9

帖子

0

精华

新手上路

积分
34
金钱
34
注册时间
2017-5-15
在线时间
8 小时
发表于 2017-5-21 13:49:08 | 显示全部楼层
现在看见 为啥又下载不了?
回复 支持 反对

使用道具 举报

1

主题

9

帖子

0

精华

新手上路

积分
34
金钱
34
注册时间
2017-5-15
在线时间
8 小时
发表于 2017-5-21 14:36:57 | 显示全部楼层
Xuedong 发表于 2016-11-10 09:03
没有人移植到STM32上面吗?准备试一下!

问下 ,你有没有实验成功呢
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-25 07:00

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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