单片机引脚扩展芯片74HC595手工分解实验

Posted 想啥做啥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单片机引脚扩展芯片74HC595手工分解实验相关的知识,希望对你有一定的参考价值。

我们先来看下效果


74HC595是常用的串转并芯片,支持芯片级联实现少量IO口控制多个IO口输出功能
外观引脚图

14脚:DS,串行数据输入引脚

13脚:OE, 输出使能控制脚,它是低电才使能输出,所以接GND

12脚:STCP,存储寄存器时钟输入引脚。上升沿时,数据从移位寄存器转存带存储寄存器。

11脚:SHCP,移位寄存器时钟引脚,上升沿时,移位寄存器中的bit 数据整体后移,并接受新的bit(从SER输入)。

10脚:MR,低电平时,清空移位寄存器中已有的bit数据,一般不用,接 高电平即可。

9 脚 :Q7S,串行数据出口引脚。当移位寄存器中的数据多于8bit时,会把已有的bit“挤出去”,就是从这里出去的。用于595的级联。

Q0~Q7:并行输出引脚

时序表

我们要想实现数据传输可以按照下面逻辑来实现,我每个拨码开关接了个下拉电阻,所以拨码开关不处于ON的时候就相当于是低电平

第一步:12脚:STCP输出低电平,在示例中就是拨码开关2拨向下面

第二步:14脚:DS,如果数据位不需要改变,那么拨码开关1就不用管,向下拨是数据bit位是0,向上是1

第三步:11脚:SHCP,在示例中就是拨码开关3先低电平,再高电平,相当于先往下拨一下,再往上拨一下

第四步:12脚:STCP输出高电平,在示例中就是拨码开关2拨向上面

这样就是一个完整的数据传输分解,我们接下来连贯操作一下,我让后面四个灯熄灭,前面四个灯量,相当于传输数据0x0F,二进制就是 000 1111

手动分解能实现,那么如果用单片机控制呢?大家可以动手去实现下。。。✌

以上是关于单片机引脚扩展芯片74HC595手工分解实验的主要内容,如果未能解决你的问题,请参考以下文章

Arduino与74HC595驱动数码管

51单片机:IO口扩展芯片用法(74HC165,74HC595)

74hc595存储寄存器引脚是否可以悬空?他的原理是否让数据暂停?

51单片机开发:通过74HC595控制LED点阵

基于51单片机定时器计数+2片74HC595联级+8位数码管时钟+按键修改时间

51单片机+74HC595联级+DS1302简易时钟+Proteus仿真