输出使能(引脚 13)控制三态总线,如果它为低电平,则输出总线被使能 。
74HC165 – 8 位并行输入 – 串行输出该74HC165是具有串行输出的8位并行负载移位寄存器 。它具有互补输出,其中一个可以连接到另一个 74HC165 以将它们级联 。
该器件用于并行到串行数据转换,具有以下引脚排列:

与 74HC595 一样,这是一种非常常见的集成电路,您几乎可以从任何电子供应商处获得它 。
74HC595 的额外输出端口我们将从 74HC595 SIPO(串行输入-并行输出)移位寄存器开始我们的实验 。
74HC595 允许我们扩展 Arduino 上的数字 I/O 端口的数量 。在这些实验中,我们将使用它来驱动一些 LED,我们将使用 Arduino 控制这些 LED 。
Arduino & 74HC595 连接以下是我们将 74HC595 连接到 Arduino 和八个 LED 的方法 。

请注意在电源两端添加了一个去耦电容器,当使用 74HC595 等 TTL 芯片时,这是一个好主意 。我使用了一个 100uf 的电容器,但 10uf 以上的任何值都可以正常工作 。确保您观察电容器的极性 。
在我的面包板上,我用一个 82220 欧姆的电阻阵列替换了八个降压电阻 。当您需要大量相同的电阻器时,这是一个方便的组件 。当然,如果您没有阵列,您可以使用分立电阻器 。
这里有很多电线,所以请仔细检查您的接线 。您可以先连接 LED 降压电阻器组合,然后向电阻器施加 5 伏电压,如果接线正确,您将点亮 LED 。对所有八个电阻-LED 对重复测试 。在连接 74HC595 和 Arduino 之前执行此操作 。
一旦全部连接好,您就可以继续前进并编写一些代码以使其全部工作 。
Arduino shiftOut() 函数有几种方法可以使用 Arduino 与移位寄存器“对话” 。一种方法是使用 SPI 总线,它允许您利用现有库来简化代码编写 。
另一种方法是使用 Arduino 上的任何标准 I/O 引脚来创建时钟并交换串行数据 。这是我们将用于处理 74HC595 移位寄存器的方法 。
Arduino 提供了一个shiftOut()函数来简化串行连接上的数据移动 。它可以获取一个字节值并以串行格式与另一个引脚上的时钟脉冲同步输出 。可以选择两个方向输出数据 。
您可以试验代码并操纵一些值并观察对 LED 的影响 。尝试将shiftOut 语句中的MSBFIRST参数更改为LSBFIRST,看看会发生什么 。
这是理解基本移位寄存器操作的简单方法 。
驱动 7 段显示器74HC575 的另一个用途是驱动 7 段 LED 显示屏 。您可以使用它来显示连接到一台显示器的数量,或者您可以级联多个 74HC595 来驱动多台显示器 。
7 段 LED 显示屏典型的 7 段 LED 显示布局如下所示:

请注意,“7 段”显示器中实际上有八个 LED 元件,第八个 LED 用作小数点 。在某些显示中,这可以用冒号代替 。
LED 显示屏有两种配置:
完成所有连接后,您可以通过运行上一个代码来测试它,该代码应该测试所有 LED 段,包括小数点 。
但要真正显示连贯的东西,我们需要不同的代码 。
74HC595 7段显示代码这是我们将用来测试我们的 7 段显示器的代码 。
推荐阅读
- 避孕套戴上就能用? 戴避孕套
- 身份证过期多久不能用微信支付
- word有哪些视图方式各有什么用途
- iphone手表有什么功能怎么用
- 为什么眼线液用什么都洗不掉
- 韩国g2面霜和G2精华使用方法
- 40岁以上用雅诗兰黛哪个眼霜
- 芦荟胶怎么用了要洗吗
- 7z文件用什么打开
- airpods用什么充电头
