芯片供应商
HOME
芯片供应商
正文内容
io扩展芯片 单片机IO口扩展芯片——74HC595
发布时间 : 2024-10-06
作者 : 小编
访问数量 : 23
扫码分享至微信

单片机IO口扩展芯片——74HC595

这是74 hc 595芯片,如图1,它是一颗单片机IO口扩展芯片,使用它,我们可以很容易的将单片机的3个输出引脚扩展为8个。

图1 74HC595芯片外观示意图

通过多个595芯片级连,可以扩展出16个,24个乃至更多的引脚,如图2。

图2 芯片扩展单片机引脚

这颗芯片通过串行数据输入,数据输出的方式为1路串行或8路并行。引脚有三种输出状态:高电平、低电平和高阻态。它的引脚驱动能力为35mA,如图3。

图3 芯片的电气性能

这是它的原理图,第14引脚为芯片的串行数据输入引脚。第1至7引脚,外加第15引脚构成了芯片的8个并行输出引脚,第九脚为1路串行数据输出引脚。第13引脚为芯片的低电平使能引脚。第10为低电平复位引脚。第11,12引脚分别为移位寄存器、存储寄存器的时钟输入引脚,我们用单片机的两只引脚控制第11、12引脚来产生数据移位、存储的时钟节拍。第8、16引脚为电源引脚。详见图4.

图4 595芯片的原理图

使用时通过第14引脚接收单片机发来的数据。第11,12引脚连接单片机产生时钟。第10引脚接入电源的正极则不复位。第13引脚接入电源的负极则使能芯片。8路并行输出引脚可以直接连接外部驱动器件,如点阵显示器、数码管等。如图5.

图5 使用时的接线图

我们可以通过第9引脚接入另外一颗595芯片的第14引脚,实现595芯片的级联,从而扩展出更多的IO端口。如图6

图6 芯片级联原理图

在嵌入式开发过程中芯片IO资源扩展的方案

在日常开发的过程中你是否遇到过硬件需要增加外设的时候发现芯片IO资源不够了。某项目老板说设备还要增加几个传感器的时候是否遇到过芯片的串口资源已经用完了。

如果出现这些问题如何解决呢?方案有很多,方案之一就是扩展,把一个IO口变成2个或者多个,把一个串口变2个或者多个。

这次就来谈谈芯片扩展的那些事情。

简要目录

简单IO口扩展

UART扩展

USB扩展

简单IO口扩展

简单的IO口扩展通常采用TTL或者CMOS电路锁存器。三态门等作为扩展芯片(74L244、74LS245、74LV595、74LS377等等)。使用这些方案进行IO口扩展具有电路简单、成本低、配置灵活的特点。

方案的应用举例:

利用74LV595PW进行IO口输出扩展。

这是某家IMX6UL开发板上应用的IO口扩展方案。74LV595是带存储寄存器和3态输出的8级串行移位寄存器。移动和存储寄存器都具有单独的时钟。其是低压硅栅CMOS器件。

利用74HC165进行IO口输入扩展。

74HC165是8位并行读取或串行输入移位寄存器,可在末级得到互补的串行输出(Q7和!Q7),当异步并行读取引脚(!PL)输入为低时,从D0到D7口输入的并行数据将被读取进寄存器内。而当异步并行读取引脚为高时,数据将在每个时钟脉冲的上升沿从 引脚串行进入寄存器并将现有数据右移一位( 以此类推)。

利用这种特性,只要把Q7输出绑定到下一级的输入,即可实现移位寄存器位数的扩展。

以上就是普通IO口的常用实例,当然还有其他的扩展方案,比如专用IO扩展芯片或者加一个单片机等等。

UART(串口)扩展

常用单片机串口资源一般有1个、3个、5个。一个稍微复杂一点的嵌入式系统串口资源肯定不够用。那如何解决,只好想办法增加几个串口,也就是扩展。

之前有一个环境监测的项目,使用到GSM、WIFI、PM2.5传感器、CO2传感器、甲醛传感器、VOC传感器等等都是串口通讯的传感器。

一般的芯片都没有那么多的串口,传感器的通讯协议比较相似不能多个传感器并用一个串口,一开始的扩展方式就是增加一个子芯片用来读取各个传感器的数据然后通过一个串口传到主芯片进行处理和发送。

这个方案使用上不会有什么问题,就是在大批量生产的时候需要多次烧录程序,碰上现在这个芯片市场的影响成本已经翻了好几倍。所以就成本来说这个方案并不是最好的选择。有没有其他更好一点的方案,答案是,有。

使用过比较简单的方案就是使用模拟开关来进行串口线路切换,从而达到扩展串口的目的。这个就像是六七十年代的电话接线员,需要跟哪条线路通讯就接通哪条线路即可。下面是在某个项目中使用过的两款模拟开关芯片芯片,一个是4路的模拟开关芯片74HC4006,另一个是16路的模拟开关芯片。

74HC4006在项目中主要是实现一个串口读取4个串口通讯方式的传感器数据。

74HC4067这个芯片之前是用作传感器检测的一个项目,SM32F103RC为主控,STM32F103RC总共有5个串口,一个串口用做无线通信外还有4个串口。使用4块74HC4067芯片就可以同时测试64个串口通信方式的传感器。如果数据通信改用USB通信,那最多可以同时测试80个串口通信方式的传感器。这个方案的好处就是程序设计上不需要很复杂。而且芯片的成本比较低。

还有另外一种比较专业的串口扩展方案就是使用专用的串口扩展芯片vk3214。可以使用一个串口或者SPI接口扩展成4个串口。

扩展的子通道的UART具备如下功能特点:

每个子通道UART的波特率、字长、校验格式可以独立设置,最高可以提供1Mbps的通信速率。

每个子通道可以独立设置工作在IrDA红外通信、RS-485自动收发控制、9位网络地址自动识别、软件/硬件自动流量控制、广播接收等高级工作模式下。

每个子通道具备收/发独立的16 BYTE FIFO,FIFO的中断为4级可编程条件触发点。

提供一个子通道的调制解调器(MODEM)控制信号。

这些是该芯片的相关介绍,由于没有真正使用共也不清楚具体的情况。所以就先说那么多了。

USB扩展

USB扩展相信大家都比较熟悉,经常使用电脑的如果发现USB接口不够用的话都会买一个USB扩展器来使用。所有这个就不多说了,下面分享一个某IMX6UL开发板上面使用的一个USB2.0的扩展芯片,把一个USB口扩展成4个,就可以接更多USB接口的模块。

相关问答

io 口端 扩展 有哪几种形式?

IO口端扩展主要有以下几种形式:简单的IO口扩展:可以通过简单的电路来实现IO口的扩展,例如使用三态门、缓冲器等。使用IO口扩展芯片:可以使用一些专用的IO口扩...

arduino怎么 扩展 端口?

数字IO不够,可以扩展,如使用74系列的芯片;模拟输入不够,可以外挂ADC,可选择的型号很多,如两路,四路等;模拟输出(PWM或DAC)不够,也可以通过外挂芯片的...数...

固高 io扩展 模块怎么接?

固高IO扩展模块一般可以通过插入式连接器与PLC或其他控制器相连接。首先根据模块安装说明,确定IO模块的插入方向,然后将其插入到配备插槽的接口板上。插入后需...

西门子S7-1200有哪些 扩展IO 的方式?

1,同一个cpu增加数字量、模拟量扩展模块2,同一个cpu增加信号板3,使用多组1200,使用I-Device(智能设备)功能,实现主从架构的分布式io扩展。4,使用1200挂...1,...

欧姆龙PLC的 扩展 I/O地址怎么分配的?

最后一个输入字地址加1,以40点的IO单元主机为例(CPM1A),它的输入端从0.00到0.11和1.00到1.11。如果你在加一个扩展IO单元的话,那扩展地址就从2.00开始标注...

plcs7-200cpu224中I14个Q10个不够用怎么 扩展 ?

西门子200CPU224(1)输入/输出扩展模块(2)热电偶/热电阻扩展模块(3)通讯扩展模块CPU224为14入,10输出,IO点不够,可以用输入输出模块来扩展。下面列...西...

发那科机器人怎么加 io 模块?

ENBL为长ON信号,不需控制的时候可以直接短接,或设定成长ON(方法机架35,插槽1,开始点1).需要控制时接长闭点。ENBL为长ON信号,不需控制的时候可以直接短接,或...

单片机 芯片 8155和89C51管脚之间的不同之处是哪里?

一般在这个行业,说8155,就是指io扩展芯片8155,它内含定时器以及ram,而89C51是单片机芯片,8155,作为扩展器件,挂在89C51的扩展总线上。这两个,一个是主器...

汇川机器人 io扩展 模块线怎么接?

汇川机器人的IO扩展模块线需要根据具体的接口类型进行接线。一般来说,IO扩展模块线有基于数字信号的接口和基于模拟信号的接口。对于数字信号的接口,应该将信...

4.3寸mini屏怎么连接 IO扩展 板?

注意事项:1.需要注意mini屏和扩展板的电源供应,以确保电压和电流稳定。2.在连接和调试过程中,需要小心避免静电和短路等问题。4.根据扩展板的使用说明进...

 陈永洲  高青县实验中学 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部