控制/MCU
我们在做单片机的小项目时,经常会碰到IO口不够用的时候,比如控制多个7段数码管,或者要采集多路AD,要连接多个串口传感器等等。这时,更换单片机不一定是最好的选择,使用其他芯片来扩展IO使用比较常见的办法。今天就给大家介绍两个扩展IO的小例子。
串行转并行芯片
所谓串行转并行,就是指把要控制的IO状态组成数组,用串行的方式发送给芯片,芯片通过移位锁存,将数组中的IO状态转成真正的电平状态。典型的应用是74HC595控制7段数码管。每个数码管需要8个IO来控制(包括小数点),而通过74HC595,只要3根IO就可以了。而且它还可以级联,就是说,3根IO可以控制两个以上74HC595。下面就是两片74HC595控制两位段码管的原理图:
74HC595原理图
模拟开关芯片
有时候我们需要IO可以是输入状态,或者是输入输出都支持的状态,这种情况下,串行转并行芯片显然就不好用了。这就可以用模拟开关芯片来实现了。所谓模拟开关,可以想象成多个可以通过单片机控制的开关集成在一个芯片里。比较典型的有CD4051和CD4052。CD4051是单路的,CD4052是双路的,他们都可以通过地址线控制选择通道,把一个IO选择连接到多个通道上。比如我们要测量8路AD,实际上单片机只要有一路AD就可以了,通过地址线,让这一路AD依次接到8个通道上,就可以实现8路AD信号的采集。
CD051真值表
简单的单片机一般只有一个或者两个串口,可以通过CD4052把1路串口扩展成4路,原理图如下:
CD4052应用原理图
这两个例子是常见的单片机应用,能够有效的帮助解决IO口短缺的问题,亲测好用哦!
全部0条评论
快来发表一下你的评论吧 !