0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用两个74HC595移位寄存器的Arduino 16 LED

454398 来源:网络整理 作者:网络整理 2019-11-11 17:00 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

第1步:组件

-Arduino UNO (x1)

-74HC595移位寄存器( x2)

-LEDs (x16)

-220omh电阻器(x16)

-多根导线

-两个面包(一个带有400针,另一个带有830)

-电位器,用于控制亮度(可选)

第2步:电路

使用两个74HC595移位寄存器的Arduino 16 LED

进行电路(见上文)并按如下方式连接第一个移位寄存器:

-GND(引脚8)接地

-Vcc(引脚16)到5V

-OE(引脚13)接地

- MR(引脚10)至5V

-DS(引脚14)至Arduino引脚11

-SH_CP(引脚11)至Arduino引脚12

-ST_CP (引脚12)到Arduino引脚8

连接第二个移位寄存器完全相同,但是将DS(引脚14)连接到第一个寄存器引脚9。之后,将引脚:从两个寄存器连接到LED的1、2、3、4、5、6、7和15。这种连接使所有引脚始终处于活动状态且可寻址,但是当Arduino通电时,某些LED可能会打开。解决方案是将MR(引脚10)和OE(引脚13)直接连接到Arduino,但是这样一来,您必须牺牲2个Aurduino引脚。

要添加更多的移位寄存器,就像第二个一样寄存器。始终将MR和OE引脚直接连接到Arduino,将DS引脚直接连接到先前的寄存器。

如果要调节LED的亮度,请按照上图所示连接电位计以控制所有LED的电阻

第3步:代码

现有代码旨在用于有限数量的移位寄存器和没有通用的功能/方法可以做到这一点。作为软件开发人员,这对我来说是不可接受的,并且我习惯于使所有内容尽可能地动态,没有限制。我重新设计了现有代码示例,以允许您使用无限数量的移位寄存器。参见下面的代码:

int numOfRegisters = 2;

byte * registerState;

void setup(){

//初始化数组

registerState =新字节[numOfRegisters];

for(size_t i = 0; i

registerState [i] = 0;

}

//。.. setup

}

void regWrite(int pin,bool state){

//确定寄存器int reg = pin/8;

//确定实际寄存器的

int actualPin = pin-(8 * reg);

//开始会话

digitalWrite(latchPin,LOW);

for(int i = 0; i

//获取寄存器的实际状态

字节*状态=®isterState[i];

//更新状态

if(i == reg){

bitWrite(* states,ActualPin,state);

}

//写入

shiftem(dataPin,clockPin,MSBFIRST,* sta TES);

}

//结束会话

digitalWrite(latchPin ,HIGH);

}

第4步:最终代码

我将完整的源代码发布在github上,因为这里不可读:

https://github.com/jr2002008/Arduino-74HC595-shift-registers/blob/master/ArduinoLEDsWithShiftRegisters/ArduinoLEDsWithShiftRegisters.ino

在最终代码中,我为这16个LED添加了几种效果。上面的视频演示了这些效果。如果要添加更多的LED,请按照前面所述连接更多的寄存器,并在代码中更改 numOfRegisters 的值(还可以调整效果的逻辑)。

您也可以使用此代码不仅仅用于LED,如果您只是想为Arduino使用更多引脚,请使用 regWrite(int引脚,布尔状态)函数为任何引脚写入状态,并且没有限制多少移位寄存器您正在使用,只需更改 numOfRegisters 的值,其他所有操作都会自动执行。
责任编辑:wv

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

    关注

    244

    文章

    24765

    浏览量

    693136
  • 移位寄存器
    +关注

    关注

    4

    文章

    352

    浏览量

    23462
  • 74HC595
    +关注

    关注

    7

    文章

    194

    浏览量

    32755
  • Arduino
    +关注

    关注

    191

    文章

    6533

    浏览量

    197611
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    74AHC594:8位移位寄存器的详细解析与应用

    74AHC594:8位移位寄存器的详细解析与应用 在电子设计领域,移位寄存器是一种常见且重要的数字电路元件,它能够实现数据的串行输入、串行输出或并行输出。今天,我们就来深入了解一下SGMICRO公司
    的头像 发表于 03-26 09:10 655次阅读

    74AHC595Q:汽车级8位移位寄存器的深度解析

    74AHC595Q,一款专为汽车应用设计的8位串行输入/串行输出或并行输出移位寄存器。 文件下载: 74AHC595Q.PDF 一、产品概述 74AHC595Q是一款具备3态控制输出
    的头像 发表于 03-16 10:50 300次阅读

    74HC595Q/74HCT595Q:汽车级8位移位寄存器的深度解析

    SGMICRO推出的74HC595Q和74HCT595Q这款8位串行输入/串行输出或并行输出的移位寄存器。 文件下载: 74HC595Q_74HC
    的头像 发表于 03-16 10:35 635次阅读

    74HC595 8位移位寄存器:设计与应用全解析

    74HC595 8位移位寄存器:设计与应用全解析 在电子工程师的工具箱中,移位寄存器是一非常实用的组件。今天,我们就来深入了解一下SG Micro Corp的
    的头像 发表于 03-16 10:35 544次阅读

    74LV595A:8位移位寄存器的全方位解析

    74LV595A:8位移位寄存器的全方位解析 在电子设计领域,移位寄存器是一种常用的逻辑元件,能实现数据的串行输入和并行输出。今天我们要深入探讨SGMICRO的74LV595A,一款功
    的头像 发表于 03-16 10:35 361次阅读

    深入剖析74HCT595:8位移位寄存器的卓越之选

    深入剖析74HCT595:8位移位寄存器的卓越之选 作为电子工程师,在设计电路时,经常会遇到需要扩展IO口或者进行数据串行传输的情况。这时,一款性能出色的移位寄存器就显得尤为重要。今天,我们就来深入
    的头像 发表于 03-16 10:25 937次阅读

    74AHCT595F:8位移位寄存器的特性与应用解析

    74AHCT595F专为4.5V至5.5V的电源电压(VCC)操作而设计,集成了一8位移位寄存器和一8位D型存储寄存器。存储
    的头像 发表于 03-16 10:25 657次阅读

    74HC164:8位串行输入并行输出移位寄存器的详细解析

    74HC164:8位串行输入并行输出移位寄存器的详细解析 在电子设计领域,移位寄存器是一种常见且实用的器件,今天我们就来深入探讨SGMICRO的74HC164 8位串行输入并行输出
    的头像 发表于 03-13 14:05 750次阅读

    74AHCT595:8位串行输入/串行输出或并行输出移位寄存器的深度剖析

    了解SGMICRO公司推出的74AHCT595这款8位串行输入/串行输出或并行输出移位寄存器。 文件下载: 74AHCT595.pdf 一、器件概述 74AHCT595专为4.5V至5
    的头像 发表于 03-13 13:45 947次阅读

    探索MC74HC595A与MC74HCT595A:8位移位寄存器的性能与应用解析

    在电子设计的领域中,移位寄存器是一种基础且关键的元件,它在数据传输和存储方面发挥着重要作用。今天,我们将深入探讨安森美(onsemi)的款高性能8位串行输入/串行或并行输出移位寄存器——MC
    的头像 发表于 11-26 16:22 1503次阅读
    探索MC<b class='flag-5'>74HC595</b>A与MC<b class='flag-5'>74HCT595</b>A:8位<b class='flag-5'>移位寄存器</b>的性能与应用解析

    ‌SN74LVC595A 8位移位寄存器技术文档总结

    SN74LVC595A器件包含一8位串行输入、并联输出移位寄存器,该寄存器为8位D型存储寄存器供电。存储
    的头像 发表于 09-28 15:09 1834次阅读
    ‌SN<b class='flag-5'>74LVC595</b>A 8位<b class='flag-5'>移位寄存器</b>技术文档总结

    ‌SN74HCT595 8位移位寄存器技术解析与应用指南

    Texas Instruments SN74HCT595/SN74HCT595-Q1 8位移位寄存器包含8位串进并出移位寄存器,向8位D类存储寄存器
    的头像 发表于 09-19 14:31 1307次阅读
    ‌SN<b class='flag-5'>74HCT595</b> 8位<b class='flag-5'>移位寄存器</b>技术解析与应用指南

    SN74LV595B-EP低噪声8位移位寄存器技术解析与应用指南

    Texas Instruments SN74LV595B-EP低噪声8位移位寄存器包含一8位串行输入、并行输出移位寄存器,可为8位D类存储寄存器
    的头像 发表于 08-15 09:28 1520次阅读
    SN<b class='flag-5'>74LV595</b>B-EP低噪声8位<b class='flag-5'>移位寄存器</b>技术解析与应用指南

    Texas Instruments SN74AHC595/SN74AHC595-Q1计数移位寄存器数据手册

    Texas Instruments SN74AHC595/SN74AHC595-Q1计数移位寄存器包含一8位串行输入、并行输出
    的头像 发表于 07-28 16:51 1211次阅读
    Texas Instruments SN<b class='flag-5'>74AHC595</b>/SN<b class='flag-5'>74AHC595</b>-Q1计数<b class='flag-5'>器</b><b class='flag-5'>移位寄存器</b>数据手册

    Texas Instruments SN74ACT595/SN74ACT595-Q1 SIPO移位寄存器特性/应用/功能图

    Texas Instruments SN74ACT595/SN74ACT595-Q1 8位串行输入并行输出 (SIPO) 移位寄存器,向8位D类存储寄存器馈送信号。存储
    的头像 发表于 07-07 15:27 1700次阅读
    Texas Instruments SN<b class='flag-5'>74ACT595</b>/SN<b class='flag-5'>74ACT595</b>-Q1 SIPO<b class='flag-5'>移位寄存器</b>特性/应用/功能图