单片机IO口扩展实例

控制/MCU

1883人已加入

描述

我们在做单片机的小项目时,经常会碰到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口短缺的问题,亲测好用哦!

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分