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

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

3天内不再提示

如何使用串行接口以74HC595移位寄存器作为展示向设备写入数据

454398 来源:wv 2019-10-22 11:12 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

第1步:硬件

如何使用串行接口以74HC595移位寄存器作为展示向设备写入数据

我的目标只是演示不同的方法我仅将74HC595的8个输出中的4个连接到LED。调试我的代码就足够了:)如果您想使项目看起来更好,则可以将所有Qx输出连接到LED:)

您可以在图像上看到连接。

似乎不同的数据表都有74HC595的不同引脚名称,所以我在我使用的数据表中附加了引脚分配。

74HC595恒定连接:

GND(引脚8)

Vcc(引脚16)至5V

OE(引脚13)接地

SRCLR(MR)(引脚10)至5V

我使用了1k电阻和3mm LED。

步骤2:简单方法

对于所有方法,您都会看到连接到电路的示波器的屏幕截图作为性能证明。黄色走线是串行时钟(SRCLK),蓝色走线是锁存信号(RCLK)。同样,对于所有方法,我将展示函数shiftByte()的实现,该函数采用单个字节并将其逐位(串行)写入74HC595

最简单的将数据写入移位寄存器的方法如本教程中所述。基本上,它使用内置的shiftOut()函数来实现串行接口。这样,写入8位数据需要90微秒。不幸的是,包括代码不是简单的方法,因此您将在附加的zip文件中找到草图,并在shiftOut()函数的屏幕截图中找到。这种方法可以,但是相对较慢。

步骤3:使用端口命令的方法

更好方式不是切换每个位,而是使用命令将数据写入整个端口。像这样:

PORTC&= B11111101;//数据时钟低

PORTC =(PORTC&B11111010)|(x&B00000001);//将时钟设置为低并输出位0

PORTC | = B00000100;//串行时钟高

您可以在此处找到有关端口操作命令的更多信息

使用此方法附带的示例草图。

以这种方式写入8位仅需4.5微秒。它比简单方法快20倍。

此方法的缺点:

代码不清楚。

所有使用的Arduino引脚应位于同一端口上。

应将74HC595的串行数据引脚连接到使用的Arduino端口的最低有效位

步骤4:使用嵌入式汇编代码

使用内联汇编代码可以实现进一步的优化。在所附的草图中,我能够在2.8微秒内写入8位。它比简单方法快32倍。

您可以在此处找到有关如何在C代码中使用内联汇编代码的好指南。

AVR指令集手册

此方法的缺点类似于上一个方法的缺点。

步骤5:使用硬件SPI接口

但是在这种情况下,最好的方法是使用硬件SPI接口。您可以在此处阅读如何使用它。基本上,它专用于芯片内部的串行通信硬件,可用于高速传输串行数据。写出所有8位只需要不到1微秒的时间。附有示例的草图。

对于此示例,74HC595与Arduino的连接应不同于所有其他示例中的连接。

由于此方法使用了Arduino内部的特定硬件,因此应连接74HC595

Arduino引脚13(SCK)到74HC595的引脚11(SRCLK)(串行移位时钟)

Arduino引脚A1到74HC595的引脚12(RCLK) (输出锁存时钟)通常这可以是任何引脚。

Arduino的11HC引脚(MOSI)到74HC595的14引脚(SER)(串行数据输入)

所以这就是最快的方法,也是相对简单的方法。

仅此而已。我希望您觉得此说明有用。任何评论将不胜感激。

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

    关注

    4

    文章

    352

    浏览量

    23473
  • 串行接口
    +关注

    关注

    3

    文章

    524

    浏览量

    45375
  • 74HC595
    +关注

    关注

    7

    文章

    194

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

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

    74AHC595Q:汽车级8位移位寄存器的深度解析 在电子设计领域,移位寄存器是一种常见且关键的器件,它在数据传输和处理中发挥着重要作用。今天,我们要深入了解的是SGMICRO推出
    的头像 发表于 03-16 10:50 314次阅读

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

    74HC595Q/74HCT595Q:汽车级8位移位寄存器的深度解析 在电子设计领域,尤其是涉及汽车和医疗设备等对稳定性和性能要求较高的应用场景时,合适的
    的头像 发表于 03-16 10:35 671次阅读

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

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

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

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

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

    深入剖析74HCT595:8位移位寄存器的卓越之选 作为电子工程师,在设计电路时,经常会遇到需要扩展IO口或者进行数据串行传输的情况。这时,
    的头像 发表于 03-16 10:25 1088次阅读

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

    74AHCT595F:8位移位寄存器的特性与应用解析 在电子设计领域,移位寄存器是一种常用的数字电路元件,它能够实现数据串行输入、
    的头像 发表于 03-16 10:25 686次阅读

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

    下载: 74HC164.pdf 一、概述 74HC164是一款功能强大的移位寄存器,能接受2.0V至6.0V的宽电源电压范围。它具备门控串行输入(DSA和DSB)和并行
    的头像 发表于 03-13 14:05 805次阅读

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

    74AHCT595:8位串行输入/串行输出或并行输出移位寄存器的深度剖析 在电子工程师的日常设计工作中,移位寄存器是一种常用的基础器件,能够
    的头像 发表于 03-13 13:45 1078次阅读

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

    74AHC595:8位串行输入/串行输出或并行输出移位寄存器的详细解析 在电子设计领域,移位寄存器是一种常用的逻辑器件,它可以实现
    的头像 发表于 03-13 11:50 520次阅读

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

    在电子设计的领域中,移位寄存器是一种基础且关键的元件,它在数据传输和存储方面发挥着重要作用。今天,我们将深入探讨安森美(onsemi)的两款高性能8位串行输入/串行或并行输出
    的头像 发表于 11-26 16:22 1551次阅读
    探索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 1883次阅读
    ‌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 1351次阅读
    ‌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 1546次阅读
    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 1257次阅读
    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><b class='flag-5'>数据</b>手册

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

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