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

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

3天内不再提示

移位寄存器74HC164在现实中的应用,或许比你想象的还要多

jf_35136247 来源:jf_35136247 作者:jf_35136247 2023-05-08 10:56 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在现有的电子产品中,74HC164(下简称164)扮演着重要的角色。它在以下三个方面有着典型的应用:

1) 八段数码管显示

2) LED灯;

3) 按键扫描。

在其它的一些方面上也有应用,比如显示模块。但应用的原理是一样的。

164是八位并行输出移位寄存器。有两个数据输入端,一个时钟输入端,八个输出端。我们一般将两个输入端连在一起当一个输入端来用。当时钟脉冲由“0”到“1”的跳变时,触发移位,即上升沿触发。当触发时,八位并行输出的最低位Q0得到数据端的信号(DATA),原Q0的数据上移一位,即Q1,依次类推,Q6上移到Q7,Q7的数据遗失。

因此,我们充分利用这点特性,来解决单片机口线紧张的问题。使用单片机的两个I/O口,一个用作时钟(CLK),一个用作数据(DATA),通过软件模拟串行输出,经过164移位,得到并行的输出。164要求数据在CLK的上升沿之前有25ns的建立时间,上升沿之后要有5ns的保持时间。如果单片机使用4MHz的晶振,一条单字节指令的执行时间是1us,使用8MHz的晶振是0.5us,已经远远大于164要求的时间。所以在建立和保持数据上不用考虑是否164会“忙不过来”。

在八段数码管上的应用:

现在一般使用两个八位数码管,组成一个可以显示两位数的显示模块。数码管有8个信号引脚,一个片选引脚。当片选被选中,加在段码管脚上的电平有效。我们使用单片机的四个I/O口来控制这两个数码管,两个片选,一个DATA,一个CLK。

在LED显示上的应用:

还是利用串入并出的原理,只不过是希望哪一个灯亮,就对哪个灯相应的位置0(使之点亮的电平)。同时接I/O口到三极管上,实现片选。如果灯的数量小于8个则不必。这样相比将LED直接接到I/O上,需要多消耗MCU几倍甚至十几倍的执行时间,换来的是MCU口线的充分利用。

当然,如果希望有若干个灯同时亮,就由单片机的DATA发出相应位为0的串行数据,经过移位以后,使相应LED点亮。这里也存在着片选先后的问题。

和上面一样,如果先开片选再移位的话,移位速度快,几个灯等于以同样的亮度点亮;如果移位速度慢,则使小灯依次点亮。当移位完成,开片选之后,同样需要使并行数据保持一段时间,再关片选。

在按键扫描上的应用:

同样使为了节约口线,使用164进行按键扫描。一般的显示板上的按键不会超过8个,所以不用加片选信号。仅仅由单片机的一个I/O口来读按键公共端即可。原理是这样的:按键公共端经过两个电阻接VCC,两个电阻之间抽头到MCU。按键的另一段接164的Q0~Q7。

综合应用:

在产品中,大部分情况是164同时肩负着数码管,LED显示和按键扫描的任务。这些任务的协调也很重要。硬件上需要对每个应用电路都加上片选,以保证在一个器件(如数码管)使用164的时候不会干扰到其它器件;

同时按键需要加二极管以保证在显示任务的时候不会出现按键的误判(比如按键一端上是高电平,正好按键被按下,但是单片机读的是高电平,仍然按没有按下处理)。

在软件上要尽量使各个任务的时间分散,避免出现局部闪烁,或者灵敏度不高的情况。对模拟串口的程序需要尽量优化使之效率最高。在开一个片选之前需要关闭其它的片选,以防器件间的干扰,良好的习惯是使用完一个器件之后就关掉它,使用的时候再开。还有一个需要注意的问题是模拟串口程序是否可重入的问题。

虽然现在很多任务没有使用中断来调用此程序,但是不避免“意外”的情况,两个任务同时调用模拟串口程序,使寄存器数据错乱,产生错误。比较好的方法是尽量利用堆栈,而不是对同一个寄存器赋值(但同时也加大了RAM的使用量)。

审核编辑:汤梓红

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

    关注

    6078

    文章

    45596

    浏览量

    674065
  • 寄存器
    +关注

    关注

    31

    文章

    5621

    浏览量

    130459
  • 移位寄存器
    +关注

    关注

    4

    文章

    352

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

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

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

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

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

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

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

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

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

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

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

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

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

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

    74LV164:8位串行输入并行输出移位寄存器的深度剖析 电子设计领域,移位寄存器是一种常见且重要的数字电路元件,它能实现数据的串行 - 并行转换。今天,我们就来深入了解 SGMIC
    的头像 发表于 03-13 14:45 299次阅读

    74HC165 8位并行加载移位寄存器:设计工程师的实用指南

    ——SGMICRO的74HC165 8位并行加载移位寄存器,深入探讨其特性、应用及使用要点,助力电子工程师们设计更好地发挥其优势。 文件下载:
    的头像 发表于 03-13 14:20 323次阅读

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

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

    SN74HC165QPWRQ1 汽车类 8 位并联负载移位寄存器

    SN74HC165QPWRQ1汽车类8位并联负载移位寄存器产品型号:SN74HC165QPWRQ1产品品牌:TI/德州仪器产品封装:TSSOP16产品功能:移位寄存器SN
    的头像 发表于 01-23 11:32 660次阅读
    SN<b class='flag-5'>74HC</b>165QPWRQ1    汽车类 8 位并联负载<b class='flag-5'>移位寄存器</b>

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

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

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

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

    德州仪器SN74LV164A串行移位寄存器技术解析与应用指南

    Texas Instruments SN74LV164A/SN74LV164A-Q1 8位并行输出串行移位寄存器是设计采用2V至5.5V V~CC~ 工作的串行移位寄存器。该器件在所有
    的头像 发表于 09-01 10:51 1137次阅读
    德州仪器SN<b class='flag-5'>74LV164</b>A串行<b class='flag-5'>移位寄存器</b>技术解析与应用指南

    SN74HC165-Q1 8位并行负载移位寄存器技术解析

    Texas Instruments SN74HC165/SN74HC165-Q1 8位并行负载移位寄存器是一种将数据移向串行( ~QH~ )输出的寄存器。通过八个单独的直接数据(A-H
    的头像 发表于 08-12 14:24 1979次阅读
    SN<b class='flag-5'>74HC</b>165-Q1 8位并行负载<b class='flag-5'>移位寄存器</b>技术解析

    Texas Instruments SN74AHC164/SN74AHC164-Q1 8位移位寄存器数据手册

    Texas Instruments SN74AHC164/SN74AHC164-Q1 8位移位寄存器具有AND门控串行输入和异步清零(CLR)输入。输出直接连接到内部移位寄存器,当数值
    的头像 发表于 08-01 15:33 1274次阅读
    Texas Instruments SN<b class='flag-5'>74AHC164</b>/SN<b class='flag-5'>74AHC164</b>-Q1 8位<b class='flag-5'>移位寄存器</b>数据手册