本文主要介绍74HC595是什么?74HC595芯片有哪些作用?74HC595 是一颗非常经典的 8 位串行输入、并行输出移位寄存器。你可以把它理解成一个“串转并”的工具——单片机只要用很少的引脚,就能通过它扩展出很多个输出口。
74HC595是什么?74HC595芯片有哪些作用?
它的核心作用就是 IO 口扩展。如果你的单片机只有 20 个引脚,但你想控制 16 个 LED 或者驱动好几位数码管,IO 口不够用,这时候 74HC595 就派上用场了。你只需要占用单片机的 3 个引脚,就能通过它获得 8 个稳定的输出口;而且多片 74HC595 可以串联起来,用同样的 3 个引脚控制 16 个、24 个甚至更多输出。
74HC595里面是怎么工作的?
74HC595 内部有两个 8 位的寄存器:一个是 移位寄存器,另一个是 存储寄存器。
移位寄存器:负责接收数据。单片机送来的串行数据(一个 bit 一个 bit 地进来),每来一个时钟信号,就往里移动一位,直到 8 个 bit 全部塞进去。
存储寄存器:负责输出数据。当移位寄存器里的 8 位数据都收齐了,单片机再给一个锁存信号,这 8 位数据就会瞬间被复制到存储寄存器,然后出现在 Q0-Q7 这 8 个输出引脚上。
把这两个寄存器分开设计的好处是:数据在移位寄存里“排队”的时候,输出引脚上的状态不会跟着变来变去,避免了闪烁。只有等你发完一整组数据、最后给锁存信号时,输出才会统一更新,非常干净利落。
另外它还有一个 级联输出脚(Q7'),可以把数据传递给下一片 74HC595。所以无论你想控制 8 个、16 个还是 64 个输出,都只需要占用单片机 3 个引脚。
74HC595主要能干什么?
第一,驱动数码管。这是它最常见的用途。一块数码管需要 8 个段选信号(a-g 和 DP),正好用一片 74HC595 驱动;如果你要做多位数码管,用两片——一片控制段选(显示什么数字),另一片控制位选(哪一位亮),单片机只要两根数据线加一根时钟线,就能轻松驱动 4 位、8 位数码管,非常省引脚。
第二,控制 LED 灯阵或流水灯。如果你做跑马灯、呼吸灯或者简单的点阵屏,需要很多 IO 口来控制 LED,用 74HC595 扩展一下,单片机就能腾出引脚去做其他事情。
第三,驱动继电器阵列。在工业控制或者智能家居里,经常需要同时控制多路继电器。如果用单片机直接控制,IO 口不够,而且继电器线圈的电流比较大,容易干扰单片机。用 74HC595 扩展,外加三极管或 ULN2003 驱动继电器,既扩展了控制数量,又起到了隔离保护的作用。
第四,做静态显示或者开关量输出。有时候你需要让一批输出保持一个状态不变(比如显示某个参数、锁存某个状态),74HC595 的存储寄存器正好能锁存住数据,只要你不给锁存信号,输出就一动不动,非常稳。
和74HC164 有什么区别?
你之前问过 74HC164,它也是移位寄存器,但它没有存储寄存器。74HC164 的数据是“边移边出”的——每来一个时钟,数据就移一位,输出也跟着变一位。这在驱动数码管的时候可能会看到数据“跑”过去的过程,有闪烁感。而 74HC595 多了一级锁存,可以把数据先收齐,再一次性推出去,输出更稳定、不闪烁。所以做动态扫描或者需要稳定输出的场合,595 更合适。
74HC595就是一颗“用 3 个引脚换 8 个输出”的芯片。它的核心价值在于帮单片机扩展 IO 口,用最简单的方式控制 LED、数码管、继电器这些设备。而且多片级联之后,扩展数量几乎没有上限。
小结:以上就是74HC595是什么?74HC595芯片有哪些作用?希望对各位芯片爱好者有帮助,了解更多芯片知识内容。
热门跟贴