模拟I/O

作者: 0101_zhulinna | 来源:发表于2019-05-26 19:59 被阅读1次

在Arduino中,控制模拟I/O和控制数字I/O一样简单,因为就像控制旋转按钮开关一样。我们可以通过旋转开关调节照明亮度,同样,控制模拟I/O信号可以调节电压大小。像这样能控制模拟I/O信号的引脚成为“模拟信号引脚”。

数字I/O引脚可以在一个引脚里控制输入与输出,但模拟输入引脚和输出引脚时彼此独立的。首先,对于Arduino UNO,在表示ANALOG IN的地方可以看到写着A0~A5的引脚,这些引脚就是模拟输入引脚。通过模拟输入引脚,可以查看电压变化。

数字I/O中的输入只能通过LOW或HIGH确定电流是断开还是连接状态,而模拟I/O中的输入则能确定具体流入了0V~5V中的多少电压,比如判断流入的是2V还是3V。和数字I/O引脚一样,模拟I/O引脚也标有名称,为A0~A5。在Arduino中,A0~A5的引脚已声明为常数,编辑代码时可直接使用这些名称控制模拟输入引脚。

仔细看Arduino UNO的数字I/O引脚位置,可以法子按标有波浪线(~)的引脚,这些便是模拟输出引脚,可以有此控制模拟输出。模拟输入是为了确定0V~5V需要的大小。模拟I/O引脚和数字I/O引脚一样,刚开始不需要设置用途。只有想使用模拟输出是,才需要确定数字I/O引脚旁是否有波浪线符号。


输出模拟信号

//设置第9号引脚的电压为0V。

analogWrit(9,0);

//设置第9号引脚的电压为5V。

analogWrit(9,255);

//设置第9号引脚的电压为5V。

analogWrit(9127);

输出模拟信号时,使用analogWrite函数。函数名由“模拟”(analog)和“写”两个单词组成,意为“写模拟”。analogWrite函数需要两个参数,第一个是输出模拟信号引脚编号,注意,必须是数字I/O引脚中带有波浪线符号的引脚中带有波浪线符号的引脚编号;第二个是设置典雅的数值,数字信号输出时只有LOW或HIGH (0V和5V)两个数值,但模拟信号输出是可以设置为0V~5V中细分的256个具体数值。

Arduino等电子设备原本只以数字I/O方式运行,因此一般只机械地设置为“打开”和“关闭”,或是0/1的状态,那么,Arduino又如何输出模拟I/O信号的呢?答案便是只用了PWM(pulse-width modulation,脉宽调制)。


接收模拟信号输入

//保存模拟信号输入值的变量。

int a;

//读取A0引脚的模拟信号输入值。

a=analogRead(A0);

//a:0(0V)~1023(5V)

j要接收模拟信号构建电路图时,要牢记和数字信号接收输入时一样,注意设置为下拉或者上拉状态。Arduino中读取模拟信号输入指的函数为analogRead。AnalogRead函数需要一个参数,其值为尧都区模拟信号输入值的引脚编号,直接设置为A0~A5即可。调用函数后,读取analogRead函数中对应引脚编号的输入值并返回。

代码中,将返回值带入变量啊。就像analogWrite函数将电压细分为256个数值一样,analogRead也能将流入的模拟输入引脚的电压细分为进行识别,甚至切分得更细。从模拟输入引脚进入得电压可被切分为1024个,连接0V的返回值为0,连接5V电压返回的是1023,.连接2.5V时返回的是511。大部分传感器都连接模拟输入引脚。随着传感器值的不同,电压也不尽相同,取值范围是0V~1023V,由此决定感应温度、适度和亮度。

相关文章

  • 模拟I/O

    在Arduino中,控制模拟I/O和控制数字I/O一样简单,因为就像控制旋转按钮开关一样。我们可以通过旋转开关调节...

  • 数字I/O

    控制Arduino的方式可大致分为数字I/O和模拟I/O两种,我们先学习数字I/O。首先,字典中对“数字”的...

  • 每日科技英文8: arduino术语6(数字与模拟信号)

    Arduino Technical Specs: 6. Analog I/O Pins(模拟输入/输出针脚) ...

  • arduino资源 - 草稿 - 草稿 - 草稿

    due有14个数字i/o,6个模拟i/o,一个复位开关,一个icsp下载口,7-12v电源供电 14个数字i/o,...

  • 第六章 用户层的I/O软件与缓冲区管理

    回顾脱机技术: 假脱机技术: 多道程序技术,专门利用程序模拟脱机I/O的外围机,完成设备I/O操作。 称这种联机情...

  • 多线程基础

    为什么要学习多线程? 耗时操作的问题演示 模拟耗时操作 结论空的for循环不耗时I/O操作是非常非常耗时的I/O操...

  • 变频器毛病的处理方法?

    变频器的每个开关量I/O、模拟量I/O的功用均是用户可界说,因而规划、调试、修改极为便利。 (1)来自PLC的速度...

  • arduino资源

    Arduino Due有14个数字I/O,6个模拟I/O,一个复位开关,一个ICSP下载口,7-12v电源供电。 ...

  • KVM 高级功能

    半虚拟化驱动 VirtIOqemu纯软件模拟的I/O设备:回路长,效率低virtio半虚拟化驱动可以获得更好的I/...

  • 。o゜。゜O。°゜O。°o°o゜o。O

    信仰……゜o。[!+!=I我]。!+!=I我]。!+!=I我]。!+!=I我]。°o°o゜o。[!+!=I我]。!...

网友评论

    本文标题:模拟I/O

    本文链接:https://www.haomeiwen.com/subject/ybvftctx.html