打印

第一届21ic社区DIY开源活动----图解遥控解码模块的软件设计

[复制链接]
14091|70
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Cortex-M0|  楼主 | 2011-8-17 21:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 Cortex-M0 于 2011-8-17 21:35 编辑

前言:
《第一届21ic社区DIY开源活动----两轮平衡车+智能小车DIY》,在火爆进行着,有些小盆友在遥控解码模块的软件设计方面卡了壳,应highgear老师之要求,力图将《第一届21ic社区DIY开源活动----两轮平衡车+智能小车DIY》的每个关键细节讲解清楚,作为"匠"-"人"的粉丝,也理应有义务有责任引导大家一起解决这一不是难题的简单事儿。顺便也想紧跟菜农,学习匠人,争做“文学青年”,呵呵~~~ ~~~

相关帖子

沙发
Cortex-M0|  楼主 | 2011-8-17 21:16 | 只看该作者
第一篇:315MHZ超再生接收模块原理


先来张 315MHZ超再生接收模块 艳照




超再生接收模块的体积:约30x13x8毫米,模块的中间两个引脚都是信号输出,连通的。

使用特权

评论回复
板凳
Cortex-M0|  楼主 | 2011-8-17 21:17 | 只看该作者
本帖最后由 Cortex-M0 于 2011-8-17 21:18 编辑

这是DF超再生接收模块的等效电路图


使用特权

评论回复
地板
Cortex-M0|  楼主 | 2011-8-17 21:20 | 只看该作者
主要技术指标:
1。通讯方式:调幅AM
2。工作频率:315MHZ(可以提供433MHZ,购货时请特别注明)
3。频率稳定度:±200KHZ
4。接收灵敏度:-106DBM
5。静态电流:≤5MA
6。工作电流:≤5MA
7。工作电压:DC 5V
8。输出方式:TTL电平

使用特权

评论回复
5
Cortex-M0|  楼主 | 2011-8-17 21:21 | 只看该作者
DF超再生接收模块的工作电压为5伏,静态电流4毫安,它为超再生接收电路,接收灵敏度为-105dbm,接收天线最好为25~30厘米的导线,最好能竖立起来。接收模块本身不带解码集成电路,因此接收电路仅是一种组件,只有应用在具体电路中进行二次开发才能发挥应有的作用,这种设计有很多优点,它可以和各种解码电路或者单片机配合,设计电路灵活方便。


这种电路的优点在于:
1、天线输入端有选频电路,而不依赖1/4波长天线的选频作用,控制距离较近时可以剪短甚至去掉外接天线
2、输出端的波形相对比较干净,干扰信号为短暂的针状脉冲,所以抗干扰能力较强。
3、DF模块自身辐射极小,加上电路模块背面网状接地铜箔的屏蔽作用,可以减少自身振荡的泄漏和外界干扰信号的侵入。
4、采用带骨架的铜芯电感将频率调整到315M后封固,这与采用可调电容调整接收频率的电路相比,温度、湿度稳定性及抗机械振动性能都有极大改善。可调电容调整精度较低,只有3/4圈的调整范围,而可调电感可以做到多圈调整。可调电容调整完毕后无法封固,因为无论导体还是绝缘体,各种介质的靠近或侵入都会使电容的容量发生变化,进而影响接收频率。另外未经封固的可调电容在受到振动时定片和动片之间发生位移;温度变化时热胀冷缩会使定片和动片间距离改变;湿度变化因介质变化改变容量;长期工作在潮湿环境中还会因定片和动片的氧化改变容量,这些都会严重影响接收频率的稳定性,而采用可调电感就可解决这些问题,因为电感可以在调整完毕后进行封固,绝缘体封固剂不会使电感量发生变化。

使用特权

评论回复
6
sheng120410| | 2011-8-17 21:22 | 只看该作者
似乎这个315的模块属于市场上最廉价的了吧
我们以前用的多的是CC1110的芯片
但是那个太贵了点
这个好
属于纯模拟的东西
基础的东西都属于国内可以掌握的了

使用特权

评论回复
7
Cortex-M0|  楼主 | 2011-8-17 21:22 | 只看该作者
DF无线数传模块开发注意事项:
DF模块必须用信号调制才能正常工作,常见的固定码编码器件如PT2262/2272,只要直接连接即可非常简单,因为是专用编码芯片,所以效果很好传输距离很远。模块输出脚在模块内部通过一个上拉39K 电阻到+5V,使用的时候需要考虑解码器件的输入阻抗。 DF模块还有一种重要的用途就是配合单片机来实现数据通讯,这时有一定的技巧。

1。合理的通讯速率
    DF数据模块的最大传输数据速率为9.6KBs,一般控制在2.5k左右,过高的数据速率会降低接收灵敏度及增大误码率甚至根本无法工作。

2。合理的信息码格式
    单片机和DF模块工作时,通常自己定义传输协议,不论用何种调制方式,所要传递的信息码格式都很重要,它将直接影响到数据的可靠收发。
    码组格式推荐方案: 前导码+同步码+ 数据帧
    前导码长度应大于是10ms,以避开背景噪声,因为接收模块接收到的数据第一位极易被干扰(即零电平干扰)而引起接收到的数据错误。所以采用CPU编译码可在数据识别位前加一些乱码以抑制零电平干扰。
    同步码主要用于区别于前导码及数据。有一定的特征,好让软件能够通过一定的算法鉴别出同步码,同时对接收数据做好准备。
   数据帧不宜采用非归零码,更不能长0和长1。采用曼彻斯特编码或POCSAG码等,如下面的数据格式有一定检错功能:


使用特权

评论回复
8
Cortex-M0|  楼主 | 2011-8-17 21:24 | 只看该作者
3。单片机对接收模块的干扰
    单片机模拟2262时一般都很正常,然而单片机模拟2272解码时通常会发现遥控距离缩短很多,这是因为单片机的时钟频率的倍频都会对接收模块产生干扰,
    51系列单片机工作的时候,会产生比较强的电磁辐射,频率范围在9MHZ-900MHZ,因此它会影响任何此频率内的无线接收设备的灵敏度,解决的方法是尽量降低CPU 晶体的频率。测试表明:在1M晶体的辐射强度,只有12M晶体时的1/3,因此,如果把晶体频率选择在500K以下,可以有效降低CPU的辐射干扰。另外一个比较好的方法是:将接收模块通过一个3芯屏蔽电缆(地,+5V,DATA,屏蔽线的地线悬空)将模块引出到离开单片机2米以外,则不管51CPU使用那个频率的晶体,这种干扰就会基本消除。对于PIC单片机,则没有上述辐射干扰。可以任意使用。
    还可以改用频点较高的接收频率,如433MHz就可增加遥控距离,或者需要采用一些抗干扰措施来减小干扰。比如单片机和遥控接收电路分别用两个5伏电源供电,将DF接收板单独用一个78L05供电,单片机的时钟区远离DF接收模块,降低单片机的工作频率,中间加入屏蔽等。
    对单片机模拟2272解码有兴趣的网友可以查看在本网专门介绍资料。接收模块和51系列单片机接口时最好做一个隔离电路,能较好地遏制单片机对接收模块的电磁干扰。


使用特权

评论回复
9
Cortex-M0|  楼主 | 2011-8-17 21:24 | 只看该作者
DF接收模块工作时一般输出的是高电平脉冲,不是直流电平,所以不能用万用表测试,调试时可用一个发光二极管串接一个3K的电阻来监测DF模块的输出状态。
   DF无线数据模块和PT2262/PT2272等专用编解码芯片使用时,连接很简单只要直接连接即可,传输距离比较理想,一般能达到600米以上,如果和单片机或者微机配合使用时,会受到单片机或者微机的时钟干扰,造成传输距离明显下降,一般实用距离在200米以内。
    本模块可以和 315M遥控发射模块 配套使用。

使用特权

评论回复
10
Cortex-M0|  楼主 | 2011-8-17 21:25 | 只看该作者
本帖最后由 Cortex-M0 于 2011-8-17 21:27 编辑

第二篇:图解315MHZ遥控解码模块的软件设计

由于《第一届21ic社区DIY开源活动----两轮平衡车+智能小车DIY》所选用的中颖SH88F2051/4051单片机,输入为施密特电路,当工作在5V时,输入高电平电压最小约4V,而315MHZ超再生接收模块输出为标准TTL电平,略显驱动高电平不够,因些,在接收模块的输出脚和5V之间,跨接了一个4.7K贴片电阻,如下图红线框中所示:


使用特权

评论回复
11
Cortex-M0|  楼主 | 2011-8-17 21:28 | 只看该作者
本小车配套的4键无线遥控器,采用SC2262遥控编码电路,最多有12位三态编码。
注:三态编码分别为 “0”,“1”,“f”(悬空);
发送时,选前送前面8位地址编码,紧接着发装4位数据编码,有一个为“1”即有编码发出;
当无编码发出时,编码输出端为常低。

使用特权

评论回复
12
Cortex-M0|  楼主 | 2011-8-17 21:29 | 只看该作者
当按下4键中的任意一键,无线遥控器启动SC2262发送编码,如按住无线遥控器的按键不放,SC2262会把编码不断的发送出。



数据格式:

使用特权

评论回复
13
Cortex-M0|  楼主 | 2011-8-17 21:29 | 只看该作者
编码格式:


使用特权

评论回复
14
Cortex-M0|  楼主 | 2011-8-17 21:30 | 只看该作者
当无线遥控器启动SC2262发送编码时,DF超再生接收模块启动,接收到的信号质量比较好,当无线遥控器按键松开时,SC2262停止发送编码,DF超再生接收模块处于待机模式,接收器输出低电平,易受干扰,夹带大量尖窄脉冲,脉宽约几十微秒,利用这一特征,只要我们在单片机编程时,采用0.1ms定时采样,当连续采样到两次高电平,才确定输入为高电平,很容易就将超再生接收模块输出低电平中,夹带大量尖窄脉冲滤除。

使用特权

评论回复
15
Cortex-M0|  楼主 | 2011-8-17 21:30 | 只看该作者
4键无线遥控器的12位编码值,出厂缺省设置为,8位地址编码全部设为“f”(悬空码);后4位数据编码依次设一位“1”码,其余位设为“0”码,对应A、B、C、D 四键,如下所示:
  A键编码值:f f f f f f f f 1 0 0 0
  B键编码值:f f f f f f f f 0 1 0 0
  C键编码值:f f f f f f f f 0 0 1 0
  D键编码值:f f f f f f f f 0 0 0 1

使用特权

评论回复
16
wzr200408| | 2011-8-17 21:53 | 只看该作者
没了?先顶再看

使用特权

评论回复
17
Cortex-M0|  楼主 | 2011-8-17 22:03 | 只看该作者
后面是DEMO示范程序,贴出来就结束了~~~

保留三天再贴,让小盆友们自己动动脑筋动动手吧~~~

使用特权

评论回复
18
涛行九天| | 2011-8-18 00:37 | 只看该作者
:victory: 赞一个

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
Cortex-M0 + 1
19
zxcscm| | 2011-8-18 08:03 | 只看该作者
强烈支持Cortex-M0大哥,这样的提供思路才是真正的DIY。
若上来就贴程序那太没意思了

使用特权

评论回复
20
a305566| | 2011-8-18 08:49 | 只看该作者
思路是王道

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:学习chunyang和maychang两位老师,努力练好基本功。 学习HOT大叔,学好“Cortex-M0”,做“Cortex-M0”之菜鸟。

7

主题

4820

帖子

12

粉丝