串口转并行芯片
所谓串并转换,就是将需要控制的IO状态组成一个数组,以串行的方式发送给芯片。 芯片通过移位锁存器将阵列中的IO状态转换为真实的电平状态。 典型应用是74HC595控制7段数码管。 每个数码管需要8个IO来控制(包括小数点),但用74HC595,只需要3个IO就够了。 而且还可以级联,也就是说3个IO可以控制两个以上的74HC595。 下面是两片74HC595控制两位段码管的原理图:
74HC595原理图
模拟开关芯片
有时我们需要IO处于输入状态,或者同时支持输入和输出的状态。 在这种情况下,串并芯片显然不太好用。 这可以使用模拟开关芯片来实现。 所谓模拟开关可以想象为多个开关,可由集成到一个芯片中的微控制器控制。 比较典型的是CD4051和CD4052。 CD4051是单通道,CD4052是双通道。 它们可以通过地址线控制通道选择,并将一个 IO 选择连接到多个通道。 比如我们要测量8路AD,其实单片机只需要1路AD即可。 通过地址线,可以将这路AD依次连接到8路,实现8路AD信号的采集。
CD051真值表
简单的微控制器一般只有一两个串口。 通过CD4052可以将1个串口扩展为4个。 示意图如下:
CD4052应用原理图
这两个例子是常见的单片机应用,可以有效帮助解决IO口不足的问题。 我亲自测试过它们,很容易使用!