本帖最后由 起点116 于 2022-3-30 21:25 编辑
#申请原创# @21小跑堂 @21ic小喇叭
自学编程很难,不会编程能自己制作实用工具吗?看看我的做法。 今天咱们继续通过米思齐来学习物联网开发的相关知识。什么是数字信号输入输出,什么又是模拟量的输入输出,他们有哪些优缺点?我们通过这些信号的输入输出能干什么?他们的具体应用有哪些?学习本课程需要哪些材料?带着这些问题开始今天的学习吧 简单的说,模拟信号是连续的,数字信号是离散的,我们裸耳听到的就是模拟信号。 数字信号
的优点很多,首先是它抗干扰的能力特别强,它不但可以用于通讯技术,而且还可以用于信息处理技术,时髦高清电视机、、DVD激光机都采用了数字信号处理技术。其次,我们使用的电子计算机都是数字的,它们处理的信号本来就是数字信号。在通讯上使用了数字信号,就可以很方便地将计算机与通讯结合起来,将计算机处理信息的优势用于通讯事业。如电话通讯中采用了程控数字交换机,用计算机来代替接线员的工作,不仅接线迅速准确,而且占地小、效率高,省去不少人工和设备,使电话通讯产生了一个质的飞跃。再次,数字信号便于存储,现在流行的DVD视盘及电脑光盘都是用数字信号来存储的信息。此外,数字通信还可以兼容电话、电报、数据和图像等多类信息的传送,能在同一条线路上传送电话、有线电视、多媒体等多种信息。数字信号还便于加密和纠错,具有较强的保密性和可靠性。由于数字信号是用两种物理状态来表示0和1的,故其抵抗材料本身干扰和环境干扰的能力都比模拟信号强很多;在现代技术的信号处理中,数字信号发挥的作用越来越大,几乎复杂的信号处理都离不开数字信号;或者说,只要能把解决问题的方法用数学公式表示,就能用计算机来处理代表物理量的数字信号。 在数字电路中,数字信号只有0、1两个状态,它的值是通过中央值来判断的,在中央值以下规定为0,以上规定为1,所以即使混入了其他干扰信号,只要干扰信号的值不超过阈值范围,就可以再现出原来的信号。即使因干扰信号的值超过阈值范围而出现了误码,只要采用一定的编码技术,也很容易将出错的信号检测出来并加以纠正因此,与模拟信号相比,数字信号在传输过程中具有更高的抗干扰能力,更远的传输距离,且失真幅度小。 数字信号在传输过程中不仅具有较高的抗干扰性,还可以通过压缩,占用较少的带宽,实现在相同的带宽内传输更多、更高视频等数字信号的效果。此外,数字信号还可用半导体存储器来存储,并可直接用于计算机处理。若将电话、传真、电视所处理的图像、文本、视频等数据及其他各种不同形式的信号都转换成数字脉冲来传输,还有利于组成统一的通信网,实现今天各界人士和电信工业者们极力推崇的综合业务数字网IS-DN)。从而为人们提供全新的,更灵活、更方便的服务。正因为数字信号具有上述突出的优点,它正在迅速而且已经取得了十分广泛的应用。 模拟信号
模拟信号信号模拟随着波形信息的变化而变化,模拟信号其特点是幅度连续(连续的含义是在某一取值范围内可以取无限多个数值)。模拟信号,其信号波形在时间上也是连续的,因此它又是连续信号。模拟信号按一定的时间间隔T抽样后的抽样信号,由于其波形在时间上是离散的,但此信号的幅度仍然是连续的,所以仍然是模拟信号。如图 我们先确认下今天想要玩什么?我们今天要做一款简单的报警器。 报警器有什么要求呢?第一能检测到异常。第二检测到异常后进行一个声光报警。 那就是通过检测到声音后进行一个声光报警装置。 我们根据要求对硬件进行分析,第一需要能检测异常的模块。什么东西能检测异常呢?那就是各种的传感器模块。比如红外传感器模块能检测到物体的移动等异常信息。温度传感器模块可以检测环境温度状态的模块等等。因为本人手中硬件有限这里就选择了
声音传感器模块进行实验(因为有人员破门而入时入侵者避免不了会发出声音)。输入模块我们确认了,再来看看输出模块需要什们?声光报警,光线报警我们可以用红色LED小灯作为输出。那声音输出报警用什么呢?对了那就是玩开发板常用的可以发出声音的蜂鸣器模块。(如果没有蜂鸣器我们也可以不用,只选用LED灯进行灯光报警)。硬件我们选好啦。 今天需要的材料有ESP32主控板一块,LED灯模块,声音传感器模块,蜂鸣器模块,杜邦线和面包板。 下面我们开始进行硬件的搭建,和编程工作。(本人建议先一步一步的来学编程不是一蹴而就的)第一步先做输入部分也就是声音传感器让开发板能读取到信息。我这里使用的是声音传感器模块能够直接输出数字信号我们只需要通过调整灵敏度即可,
不需要自己去取值。我们编写一个串口打印信息查看传感器模块工作是否正常。编好啦我们测试下,
我们通过测试确认了我这款是没有声音输出高电平,有声音输出低电平。声音传感器
确认好了工作正常,动作状态也确认了,我们开始下一步编程。我们今天学习米思齐里面今天要用到的两个程序模块一个是控制模块里的如果-否则块。
它在这里长这样,我们通过设置键可以设置。 还有就是
逻辑模块里的判断模块如果相等判断为真。今天我们还会用到蜂鸣器模块,那蜂鸣器程序在哪里编写呢?我们来找一找,
嗯我们发现了在执行器模块里有播放声音模块。好啦我 我们开始进行编程,嗯编好啦我们测试下,
写入开发板写入完成啦我们试试声音检测到啦,LED灯亮了蜂鸣器也响啦,嗯???为什么声音消失啦LED灯已经灭了蜂鸣器还再不停的响呢? 是因为我们只让他工作啦,而没有让他停止的程序。 我们将程序进行修改。
再测试下。是不是好啦。 报警器大功告成。我们可以自己通过编程可以制造使用小工具了是不是很开心啊!!! 今天我们来复习下学习内容: 1我们学会了如何确认什么是数字信号,什么是模拟信号,以及他们的区别 2通过串口打印程序确认输入模块输入信号种类,是数字信号还是模拟信号?和模块的工作状态确认。 3我们学会了米思齐编程控制模块中如果-否则模块,逻辑模块中判断模块的使用方法 4蜂鸣器在开发板中的应用,以及在米思齐里的编程工作。 5程序的编程后实验和修改调整工作。 我们又简单开心的完成了今天的任务,是不是又是信心满满的一天,编程也可以如此简单。程序我会放在最下面仅供大家参考。 小白不会一直是小白,菜鸟努力终将飞上蓝天。让我们一起努力,加油我们是最棒的。
|
@21小跑堂 :感谢鼓励,还会继续。
知识点介绍详细,模块化编程简单易上手,**诙谐风趣。建议注重一下**排版哦