Arduino 模拟和数字端口扩展


大家在使用arduino制作装置作品的时候,经常会遇到端口不够用的情况,尤其是analog in端口就6个,放不了几个传感器就插满了。因此,今天这篇文章告诉你如何给arduino端口进行扩展。(当然,有钱的话买好几块arduino板子的人可以忽略这篇文章)
在开始前,首先你要明白什么是模拟电路,什么是数字电路。在这里不多加赘述,不知道的请问百度。
好了,言归正传,首先说说模拟端口扩展,我们使用4051对analog端口进行扩展(4051是什么请点:百度百科4051)。



说说原理,我们看到4051一共16个脚。
VDD接3-15V正极;E、Vee、Vss接Gnd。
Z接入到arduino上的某一个analog端口上。
模拟输入端口一共8个频道,Y0-Y7。通过A0-A3的三组电平变换切换到某一个频道。
例如:给A0,A1,A2都是LOW,那么通过Z传给arduino的值就是Y0端口接的传感器的值。
具体见下表:下面看看我是如何把一个光敏电阻和一个电阻变位器接到一个analog上的。
电路草图如下:
根据草图连接好电路后,我们可以打开arduino测试下:

我们可以看到,Serial monitor分别输出了ldr光敏电阻和rheostat变位器的值。
 


发表评论

您的电子邮箱地址不会被公开。