RF射频模块315/433发射端程序+接收端程序+应用说明等-电路方案

上传者: 38653085 | 上传时间: 2022-01-04 22:36:20 | 文件大小: 116KB | 文件类型: -
本人非专业人士,只是一个小小程序员,arduino纯属爱好,所发文章仅限于本人智商,如有问题,请大家指正。 近期对智能家居比较敢兴趣,其中存在几个无线传输的模块,起初选用的2.4G的nRL24L01模块,那个东西真是折腾死人,弄了一个星期都没找到问题点。最后在收拾元件箱子的时候,发现一套以前买的433Mhz模块,就想干脆用这个吧。在各种方式的search,找到了一个lib - RCSwitch,看了例子还比较好用,可以传输24bit的值。立刻装上测试。 315\433射频模块介绍: 当发射电压为3V时,空旷地传输距离约20~50米,发射功率较小,当电压5V时约100~200米,当电压9V时约300~500米,当发射电压为12V时,为最佳工作电压,具有较好的发射效果,发射电流约60毫安,空旷地传输距离700~800米,发射功率约500毫瓦。外接天线:10cm(发射模块天线:10cm,接收模块天线:30cm)多芯或单芯普通导线。 在实际测试中,随便接了跟电线,传输能达到5米,无丢包现象。这个射频模块的穿墙效果,应该会比2.4G的好很多。我家里以前一套315Mhz的报警器,全屋传输无压力。 接线很简单,只有三个脚,两个是电源,一个是数据。 发射端 VCC GND DATA- arduino 10脚(可以变更,在代码中调整) 接收端 VCC GND DATA- arduino 2脚(使用终端2则使用3脚,在代码中调整) 程序使用RCSwitch附带示例修改,传感器值使用随机数替代。 传输思路是将24bit的值分开,前12位为传感器ID,后12位为传感器值,12bit,可以到4096,应该够用了。 其他的控制编码器的例子还没有试,下次测试好了再来。 说明: 还忘了一个重要的东西,在lib中有个代码需要修改,不然会接受到4个重复的值。由于本人对中断不是很熟悉,不知道4个重复值造成的原因,只是测试出改了一个值,请各位大师给予解答。 [pre lang="arduino" line="1"]void RCSwitch::handleInterrupt() { if (repeatCount == 6) { // 需要将 2改为 6repeatCount == 2 if (receiveProtocol1(changeCount) == false){ if (receiveProtocol2(changeCount) == false){ if (receiveProtocol3(changeCount) == false){ //failed } } } repeatCount = 0; } }[/pre] RF射频模块发射端程序部分截图: RF射频模块接收端程序部分截图:

文件下载

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明