串行移位锁存并行输出可级联器件74HC595
一、背景
老同学今天突然咨询关于74HC595,自己没用过,同学说可以级联10级!10级?我艹,这么叼,级联又是
什么鬼,这勾起了我极大兴趣,二话不说,手册down下来研究,并在此做个记录。 二、正文
74HC595为1个8位串行移位输入寄存器带1个存储寄存器,并可8位带锁存并行输出。串行移位输入寄存器
和存储寄存器分别有独自的时钟输入控制端。此设备可级联多级,从而实现多路IO输出控制。 以下为74HC595引脚说明:
> Q7S (PIN9) serial data output (串行输出)
> MR (PIN10) master reset (active LOW) (主机复位,低有效)
> SHCP (PIN11) shift register clock input (移位寄存器时钟输入)
> STCP (PIN12) storage register clock input (存储寄存器时钟输入)
> OE (PIN13) output enable input (active LOW) (输出使能输入端,低有效)
> DS (PIN14) serial data input (串行数据输入)
> Q0~Q7 (PIN) parallel data output ~(8位并行数据输出)
> VCC
> GND < VCC与GND无需多言。
< DS为串行数据输入。
< SHCP为串行移位时钟,当其为上升沿时,DS上的电平状态会被写入移位寄存器的最低位,移位寄存器
的值会整体向高位移一位。
< STCP为存储寄存器时钟输入(正确理解为锁存脚),当其为高电平时,移位寄存器的值被保存在了存
储寄存器,并且存储器的值被锁存在了IO口。
< MR为复位脚,当其为低电平时,存储寄存器的值会被清零。
< OE为输出使能脚,当其为高电平时,8位并行输出可以输出电平,若是为低电平,则不可以输出。
< Q7S为串行输出脚,作为级联之用,其通常连接至下一级74HC595的DS端。当第一级8位移位寄存器移
满了之后,再有新的DS需要移位时,则第一级的Q7位会通过Q7S移动到下一级74HC595的DS端,这样就实现了
级联功能。 对74HC595实际使用举个例子:
某项目单片机需要控制多达10个甚至更多的数码显示管。如果用扫描式的方法进行点亮数码管的话,那
么数码管的亮度会非常暗。原因在于,假设一个数码管是20mA可以让其亮度很高的话,以1s为一个周期,若
只有1个数码管,则1s这个数码管都在亮,若是10个的话,那么每个数码管会亮100ms,灭900ms,相当于每个
数码管的平均电流只剩下2mA,导致的结果既是数码管会很暗。这个时候74HC595,就可以发挥作用了。级联十
个,然后按照计算好的数据移位进去,最后使能输出引脚,锁存输出就可10个数码管一起显示了。 三、参考文献
在研究74HC595的时候,两篇关于74HC595级联和使用的文章写的很详细,链接如下: Introduction to 74HC595 shift register – Controlling LEDs
http://www.protostack.com/blog/2010/05/introduction-to-74hc595-shift-register-controlling-16-leds/ How to Cascade Shift Registers
http://www.learningaboutelectronics.com/Articles/Cascade-shift-registers.php 至此,记录完毕。 记录时间:--
记录地点:深圳WZ
串行移位锁存并行输出可级联器件74HC595的更多相关文章
- Netty源码学习系列之1-netty的串行无锁化
前言 最近趁着跟老东家提离职之后.到新公司报道之前的这段空闲时期,着力研究了一番netty框架,对其有了一些浅薄的认识,后续的几篇文章会以netty为主,将近期所学记录一二,也争取能帮未对netty有 ...
- 原创:应用串行NOR闪存提升内存处理能力
在嵌入式系统中,NOR闪存一直以来仍然是较受青睐的非易失性内存,NOR器件的低延时特性可以接受代码执行和数据存储在一个单一的产品.虽然NAND记忆体已成为许多高密度应用的首选解决方案,但NOR仍然是低 ...
- SpringBoot中定时任务默认是串行执行 如何设置并行
SpringBoot项目中,定时任务默认是串行执行的,不论启动多少任务,都是一个执行完成,再执行下一个. 如何设置并行呢? @EnableAsync 和@Async 这两个注解来实现 ,具体如下: ...
- Qt串行化的输入和输出(使用QDataStream读写QByteArray,对QIODevice直接起作用)
参考https://lug.ustc.edu.cn/sites/qtguide/ 今天看了一个介绍Qt串行化的介绍,感觉很受益,就记录了下来. 串行化(Serialization)是计算机科学中的一个 ...
- (九)串行口方式0 拓展并行输出端口 02 74LS164芯片
1.先讲解74LS164 移位芯片: 74HC164.74HCT164 是 8 位边沿触发式移位寄存器,串行输入数据,然后并行输出. 数据通过两个输入端(DSA 或 DSB)之一串行输入:任一输入端可 ...
- iOS:转载:同步、异步、并行、串行的详解
理解 iOS 开发中 GCD 相关的同步(synchronization)\ 异步(asynchronization),串行(serial)\ 并行(concurrency)概念 2014年11月21 ...
- JVM_垃圾回收串行、并行、并发算法(总结)
一.串行 JDK1.5前的默认算法 缺点是只有一个线程,执行垃圾回收时程序停止的时间比较长 语法 -XX:+UseSerialGC 新生代.老年代使用串行回收 新生代复制算法 老年代标记-压缩 示例图 ...
- GCD中的dispatch_sync、dispatch_sync 分别与串行、并行队列组合执行小实验
平常开发中会经常用gcd做一下多线程任务,但一直没有对同步.异步任务在串行.并行队列的执行情况做个全面的认识,今天写了个demo跑了下,还是有些新发现的. 代码如下: - (void)touchesB ...
- COM口,串行通讯端口,RS-232接口 基础知识
COM口即串行通讯端口. COM口的接口标准规范和总线标准规范是RS-232,有时候也叫做RS-232口.电脑上的com口多为9针,最大速率115200bps.通常用于连接鼠标(串口)及通讯设备(如连 ...
随机推荐
- 数据结构算法C语言实现(二十七)--- 7.2图的遍历
一.简述 栈与队列,DFS与BFS.仅以连接表为例实现. 二.头文件 BFS要用到的头文件 //3_4_part1.h /** author:zhaoyu email:zhaoyu1995.com@g ...
- TCP/IP详解 笔记十三
TCP协议(一) 概述 特点 1, 面向连接可靠的字节流服务 2, 只有两方通信,不能用于广播或多播 3, 应用数据被TCP分隔为最合适发送的数据段,传给IP协议栈 4, 发送端并启动定时器, ...
- 手机卫士开发记录之handler错误
- RBM Formula Deduction
Energy based Model the probability distribution (softmax function): \[p(x)=\frac{\exp(-E(x))}{\sum\l ...
- POJ1185炮兵阵地(状态压缩 + dp)
题目链接 题意:给出一张n * m的地图,其中 有的地方能放大炮,有的地方不能,大炮与上下左右两个单位范围内会相互攻击,问最多能放几个大炮 能放大炮为1不能放大炮为0,把每一行看做一个状态,要除去同一 ...
- Docker入门教程(五)Docker安全
Docker入门教程(五)Docker安全 [编者的话]DockOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第五篇,介绍了Docker的安全问题,依然是老话重谈,入门者可以通 ...
- ListBox
<asp:ListBox runat="server" ID="txtName" Width ="200" Height=" ...
- Maven概览
Maven的核心思想,约定由于配置 1 Maven坐标 1.1 本项目的坐标 groupId: 必须.项目组名称,定义当前Maven项目所隶属的实际项目,通常与域名反向一一对应,与Java包名表示方式 ...
- zepto.js之ajax剖析
1.ajax的baseHeaders ajax插件中的baseHeaders对象的是http请求头部的信息 var mime = settings.accepts[dataType], baseHea ...
- 设计模式学习——观察者模式(Observer Pattern)
0. 前言 观察者模式在许多地方都能够用到,特别是作为MVC模式的一部分,在MVC中,模型(M):存放数据,视图(V):显示数据.当模型中的数据发生改变时,视图会得到通知,这是典型的观察者模式. 1. ...