单片机无线发射的原理剖析

目录

一、EV1527编码格式

二、OOK&ASK的简单了解

三、433MHZ

四、单片机的地址ID

五、基于STC15W104单片机实现无线通信


         无线发射主要运用到了三个知识点:EV1527格式;OOk;433MHZ。下面我们来分别阐述:

EV1527是数据的编码格式;OOK是无线发射数据的通信方式;433MHZ是无线发射的载波频率!

一、EV1527编码格式

        EV1527是一种低成本的射频编码芯片,主要运用在遥控系统中(通常作为遥控器)

这是EV1527芯片的电路图,可以看到他除了osc(外接震荡电阻)VCC和GND(电源正负极),和TXD管脚用来输出方波之外,还有四个管脚K1,K2,K3,K4用来接收用户的输入(一般是遥控器的4个按键),当按键没有按下的时候,由于下拉电阻的存在,K1至K4都是低电平状态,当按键按下后呈现高电平,芯片就通过检测这几个管脚的电平组合情况(一共有15种按键组合),从而输出15种预先设定好的不同的方波信号

(像这样的)

当然EV1527芯片仅仅是将用户的按键情况转化成了不同的方波(二进制语言)但是并没有通过电磁波传递出去,于是下面的电路(无线发射电路)便应运而生了,他能够接受到输入进来的方波信号,并且通过433MHZ的电磁波频率,把该方波信号传递成电磁波信号,只要别的主机能够接受到这个信号,就算完成了无线发射的功能

其实说到这里我们仅仅是讲清楚了EV1527将电信号转化成方波的能力,但是并没有讲到他的编码格式是什么样的,下面我们来看看

        所谓的编码格式,其实就是一个二进制信号是按照什么样的规则传递的,比如在传递1的时候高频率电磁波持续的时间是多少?高低频率之间是什么样的顺序?他们的间隔是多少?一共要传递多少个bit位?不同的人可能设计出不同的编码格式,但无论如何,编码格式设计出来都是为了方便人们使用的统一,只要人们用的习惯用的方便,并且硬件容易实现,就是一个好的编码格式。

        比如在这里的EV1527编码格式中:同步起始信号是4个CLK时间的高电平+124CLK时间的低电平,那么主机在接收到这样一个电磁波信号后,就按照我们约定好的EV1527编码格式来解码,从而知道我们要发射的是一个同步起始信号了。至于二进制位的1和0都是一样的道理,只是他们的高低频率信号的持续时间不同罢了。

        而且值得注意的是EV1527标准的编码格式是同步信号+24个bit位,从C0到C19一共20位的地址+D0到D3一共4位的功能信号(关于地址是什么,我们在后面补充说明)

假如芯片内置的地址是 E9700 按下了按键 S1。则输出的数据是 E97001;
整体的数据格式是 同步码+E97001;
同步码 + E97001; 转换成二进制(数据输出单根线,只能通过二进制输出
同步码 + 1110 1001 0111 0000 0000 0001

(当然这只是方便我们理解,他还是要经过无线发射电路将方波转换成电磁波的!)

说到了CLK,我们就不得不提一下下面的这张表格了,他清晰的展示了不同阻值的电阻在使用该无线发射电路的时候每一个CLK周期是多长时间,这就能够帮助我们完成代码的编写了

16LCK的时间长度实际上是和EV1527的供电电源以及振荡电阻这两个因素相关的:

(1)振荡电阻值

        如下图,连接在 1 脚(OSC)的电阻 R2 就是振荡电阻,振荡电阻不一样,CLK 的时间不一样,并且相差比较大。可以对比 47K 和 620K 的时间。比较常用的是:330K 270K 470K

(2)EV1527供电电压

        EV1527 VCC 的供电电压不一样,CLK 的时间不一样。 误差较大,相比震荡电阻误差要小很
多。为什么会有这个误差呢?我猜测是因为这个芯片比较便宜,使用的方案比较廉价,所以制作出来就有误差。

二、OOK&ASK的简单了解

        如果说EV1527编码格式是将二进制语言转换成方波的话,那么OOK&ASK就是无线发射电路的格式,他们决定了无线发射电路是如何将方波信号转换成电磁波信号的。

ASK如何区分0和1?

0:发送 433.92Mhz 无线波形(载波频率)振幅低
1:发送 433.92Mhz 无线波形(载波频率)振幅高

OOK 如何区分 0 和 1?(OOK 是 ASK 的一种特殊形式)
0:不发送数据(振幅为0)
1:发送 433.92Mhz 无线波形(载波频率)

三、433MHZ

四、单片机的地址ID

从官方文档中我们可以看到,每一个单片机都具有唯一的身份证号码,我们也把他叫做ID号,并且程序存储器的最后7个字节单元保存的就是其ID号,只不过被隐藏起来了,用户只能通过地址去访问,但是并不能修改。

我们从stc-isp这个软件中发现最后七个字节是空白的!这就与我们之前所说的相符合了。(为什么最后七个字节是00FF9h呢?因为我们的STC15系列单片机只有4k的程序存储器,当我们从00000h开始存放程序,一直到00FFFh就是第4096个字节了,所以最后七个字节是从00FF9h开始的啦)

五、基于STC15W104单片机实现无线通信

       

 这是一款门磁探测器中的无线发射电路模块,他仅仅只有一块STC15W104单片机和一个无线发射电路,但是却并没有EV1527芯片,这是为什么呢?

        原来为了生产上成本的减少,通常都能够省一点就省一点,所以我们可以直接使用单片机的IO口来模拟实现本来应该由EV1527芯片完成的方波,那么有人会问?没有了EV1527芯片,我们如何来控制高低电平之间的时间呢?别忘了,我们还有定时器!用定时器来控制CLK的时间还有许多优点咧。

(1)CLK 时间长度稳定,不受芯片的供电电压影响
(2)EV1527 数据固定 20(地址码)+4(功能码),单片机可以按照自己的需求来定义地址码和功能码的长度可以自定义私有协议( 24+8 或 28+4 或 32+8 ......)(因为EV1527芯片的输出格式是固定了的)

        下面我们就来看看具体的实现过程

同步头波形输出:

程序流程:
第 1 步:P3.2 输出高电平
第 2 步:通过定时器实现 400us 的精准延时 TH0 TL0 2 个字节
第 3 步:P3.2 输出低电平 (或 P3.2 反正 !P3.2)
第 4 步:通过定时器实现 12.4ms 的精准延时 TH0 TL0 2 个字节

数据 1 波形输出:

高电平+低电平 = 1.2ms + 400us ( 3:1)
程序流程:
第 1 步:P3.2 输出高电平
第 2 步:通过定时器实现 1.2ms 的精准延时 TH0 TL0 2 个字节
第 3 步:P3.2 输出低电平 (或 P3.2 反正 !P3.2)
第 4 步:通过定时器实现 400us 的精准延时 TH0 TL0 2 个字节

数据0波形输出:

高电平+低电平 = 400us + 1.2ms ( 1:3)
第 1 步:P3.2 输出高电平
第 2 步:通过定时器实现 400us 的精准延时 TH0 TL0 2 个字节
第 3 步:P3.2 输出低电平 (或 P3.2 反正 !P3.2)
第 4 步:通过定时器实现 1.2ms 的精准延时 TH0 TL0 2 个字节

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/253956.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端开发中不同语言【react-i18next】

目录 查看并设置语言 单页面:html lang ​编辑 浏览器 自定义翻译 原理/实现 react-i18next【hook只能在函数组件中】 设置 模块:staticData.ts 散(重复利用):命名空间.json 应用 准备 html标签 查看并设置语言 单页面&#x…

网神 SecGate 3600 防火墙 route_ispinfo_import_save 文件上传漏洞

免责声明:文章来源互联网收集整理,请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该…

Excel——有效性、二级菜单联动

一、录入规范数据 1.手动输入序列录入有效性信息 选择需要录入有效性的所有单元格 选择【数据】——【有效性】——【有效性】 在【允许】输入的值之间选择【序列】 在【序列】输入框中输入想要选择的值,中间用逗号(必须是英文逗号)隔开 。…

同步和异步、阻塞与非阻塞

一、同步和异步的概念 首先同步和异步是访问数据的机制 同步:同步一般指主动请求并等待IO操作完成的方式异步:主动请求数据后便可以继续处理其它任务,随后等待IO操作完毕的通知 两者的区别:同步会一行一行执行代码,而…

Multisim14.0仿真(五十五)汽车转向灯设计

一、功能描述: 左转向:左侧指示灯循环依次闪亮; 右转向:右侧指示灯循环依次闪亮; 刹车: 所有灯常亮; 正常: 所有灯熄灭。 二、主要芯片: 74LS161D 74LS04D 74…

SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式 基础(持续更新~)

具体操作: day2: 作用: 出现跨域问题 配相对应进行配置即可解决: IDEA连接的,在url最后加参数?useSSLfalse注意链接密码是123(docker中mysql密码) 注意,虚拟机中设置的密码和ip要和主机上…

GO语言集成开发 JetBrains GoLand 2023 中文

JetBrains GoLand 2023是一款专为Go语言开发者打造的集成开发环境(IDE)。它基于IntelliJ IDEA平台,提供了丰富的功能和工具,旨在提高开发效率和质量。GoLand 2023具备强大的Go语言支持,包括语法高亮、自动补全、代码提…

手把手教你设计接口自动化测试用例:提取接口信息并分析

随着市场需求的变化,大部分企业在招聘测试人员时,都会提出接口自动化测试的相关要求,为什么会这样呢? 目前,软件构架基本上都是前后端分离的,软件的主要功能由服务端提供。从整个软件测试市场来看&#xf…

【实训】网络系统集成课程实训(vlan、vrrp、nat)

目录 一 实训概述 1.1 实训目的 1.2 实训内容 二 实训原理 2.1 VLAN间划分及VLAN间通信 2.2 BGP,边界网关协议 BGP是运行于 TCP 上的一种自治系统的路由协议,用于在AS之间实现路由信息的交互。 2.2.1 VRRP原理 2.2.2 OSPF配置 三.实训…

Spring Boot + flowable 快速实现工作流

背景 使用flowable自带的flowable-ui制作流程图 使用springboot开发流程使用的接口完成流程的业务功能 文章来源:https://blog.csdn.net/zhan107876/article/details/120815560 一、flowable-ui部署运行 flowable-6.6.0 运行 官方demo 参考文档: htt…

C++ 调用lua 脚本

需求: 使用Qt/C 调用 lua 脚本 扩展原有功能。 步骤: 1,工程中引入 头文件,库文件。lua二进制下载地址(Lua Binaries) 2, 调用脚本内函数。 这里调用lua 脚本中的process函数,并…

安装Pytorch中的torchtext之CUDA版的正确方式

安装Pytorch和torchtext: Previous PyTorch Versions | PyTorch Installing previous versions of PyTorchhttps://pytorch.org/get-started/previous-versions/ 上面的命令如下: pip install torch2.1.2 torchvision0.16.2 torchaudio2.1.2 --index-…

小白都能看懂的力扣算法详解——链表(一)

!!本篇所选题目及解题思路均来自代码随想录 (programmercarl.com) 一 203.移除链表元素 题目要求:给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val val 的节点,并返回新的头节点。 203.…

数据库管理-第145期 最强Oracle监控EMCC深入使用-02(20240205)

数据库管理145期 2024-02-05 数据库管理-第145期 最强Oracle监控EMCC深入使用-02(20240205)1 监控方式2 度量配置3 阻塞4 DG监控总结 数据库管理-第145期 最强Oracle监控EMCC深入使用-02(20240205) 作者:胖头鱼的鱼缸&…

Java后端技术助力,党员学习平台更稳定

✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 |…

Text Mesh Pro图文混排如何对任何图片都能实现

1)Text Mesh Pro图文混排如何对任何图片都能实现 2)Unity iOS平台的小图占用特别大的内存 3)只在编辑器内,纹理不开启Read&Write情况下,如何获取纹理所有颜色值 4)准备在海外发行游戏,有哪些…

07-Java桥接模式 ( Bridge Pattern )

Java桥接模式 摘要实现范例 桥接模式(Bridge Pattern)是用于把抽象化与实现化解耦,使得二者可以独立变化 桥接模式涉及到一个作为桥接的接口,使得实体类的功能独立于接口实现类,这两种类型的类可被结构化改变而互不影…

还是蓝海项目?浅谈steam海外道具搬运项目几个常见问题!

做steam这个项目做了已经3年多了。记得刚开始做的时候还是一个很冷门的项目,现在越来越多的朋友也开始了解这个项目。 其中不乏很多已经在别的地方了解过后来找我咨询的朋友。我发现一些同行或者说自媒体太过于虚假宣传,把steam这个项目说的太好了。也有…

Flink实战六_直播礼物统计

接上文:Flink实战五_状态机制 1、需求背景 现在网络直播平台非常火爆,在斗鱼这样的网络直播间,经常可以看到这样的总榜排名,体现了主播的人气值。 人气值计算规则:用户发送1条弹幕互动,赠送1个荧光棒免费…

海外云手机的核心优势

随着5G时代的到来,云计算产业正处于高速发展的时期,为海外云手机的问世创造了一个可信任的背景。在资源有限且需求不断增加的时代,将硬件设备集中在云端,降低个人用户的硬件消耗,同时提升性能,这一点单单就…