树莓派基础-模拟信号和数字信号的区别

栏目: 软件资讯 · 发布时间: 5年前

内容简介:树莓派是很多程序员都喜欢玩的,我个人也很喜欢玩,开源接触到很多关于linux的知识,也可以通过读取硬件的数据来学习关于数据库的知识。前言本文详解阐释了模拟信号和数字信号的区别,希望帮助到有需要的朋友。

树莓派是很多 程序员 都喜欢玩的,我个人也很喜欢玩,开源接触到很多关于 linux 的知识,也可以通过读取硬件的数据来学习关于数据库的知识。

前言

本文详解阐释了模拟信号和数字信号的区别,希望帮助到有需要的朋友。

数字信号

使用树莓派上的GPIO引脚,很容易向输出组件发送信号并打开或关闭。还可以检测输入组件是否打开或关闭。以这种方式工作的组件称为数字组件(Digital components)。

数字输出

LED是数字输出元件的一个例子。它可以是打开的,也可以是关闭的,两者之间没有任何价值。我们可以把ON和OFF状态看作是1或0。你可以发送一个1给LED LED就会亮了,当你给LED发送0给 LED就熄灭了。

图片描述

数字输入

一个按钮是数字输入组件。它可以是打开的,也可以是关闭的。当按钮被按下时,它向连接的树莓派GPIO引脚发送1。当按钮被释放时,它向GPIO引脚发送0。没有其他可以发送的值,因为你把按钮按到一半,幻想可以输出0.5。

图片描述

请看下面这个图,这个图显示了按钮被按压和释放的输入数据,当按压的时候输出1当释放的时候输出0。

图片描述

模拟信号

数字输入和输出组件在Raspberry Pi中很常见,因为GPIO引脚都是数字的。它们只能发送或接收1和0。

然而,并非所有组件都是数字的。有些被称为模拟组件。模拟部件可以在1和0之间发送和接收值。

模拟输出

电机是模拟输出元件的一个例子。你可以把它的值在1和0之间,这将控制电机的速度。如果你发送电机A 1,它将全速驱动。如果你把它发送0.5,它将以半速行驶。发送0将停止电机。

图片描述

模拟输入

模拟输入元件的一个例子是光相关电阻器(LDR)。当没有光照在部件上时,它将发送0,并且随着光的增加,光敏发送的值将逐渐增加,直到它达到最大值1。

图片描述

下图显示了从LDR发送的信号在一天当中24小时的变化,随着光线越亮值越大,光线越暗值越小。

图片描述

使用树莓派的模拟组件比使用数字组件更加困难。

为了使用GPIO引脚的模拟输出组件,您需要使用一种称为脉冲宽度调制(PWM)的技术。这向分量发送1秒和0秒的非常快的脉冲,当将其作为平均值时,可以将其接收为介于1和0之间的值。

请看下面的图表。蓝线显示数字信号,在一段时间内,从0移动到1,然后再次返回。信号为1的是总时间的三分之一,剩下的三分之二是0。

然后这个平均值约为0.33,这将是模拟组件接收到的值。你可以看到这是图上的红线。

图片描述

要使用模拟输入组件与GPIO引脚,您需要使用模拟到数字转换器(ADC),将模拟信号转换为数字信号。你可以买小的adc在你的电路使用。另外一种选择是在电路中使用电容和模拟元件。

总结

在树莓派上使用模拟输出是采用pwm技术,如果想要读取模拟输入那就需要ADC模拟到数字转换器,因为树莓派上没有ADC,因此我认为如果我们想要读取类似LDR或者模拟输入的情况,我们可以使用类似Nodemcu这种自带ADC的板子,然后再通过MQTT协议发送给树莓派,这样就很方便了。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

The Shallows

The Shallows

Nicholas Carr / W. W. Norton & Company / 2011-6-6 / USD 15.95

"Is Google making us stupid?" When Nicholas Carr posed that question, in a celebrated Atlantic Monthly cover story, he tapped into a well of anxiety about how the Internet is changing us. He also crys......一起来看看 《The Shallows》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具