74hc595模块参考

74hc595模块参考

8位串行并行输出(SIPO)移位寄存器

使用74HC595移位寄存器扩展微控制器上的输出引脚数量。如果你需要扩充输入引脚的数量那么你需要74HC165移位寄存器。

SER(串行输入)引脚用于一次一位地将数据发送到移位寄存器。

SRCLK(移位寄存器时钟)是移位寄存器的时钟,并且是上升沿触发的。这意味着这些位是在时钟的上升沿压入的。

RCLK(寄存器时钟/锁存器)是一个非常重要的引脚。当该引脚拉高时,移位寄存器的内容被复制到存储/锁存寄存器中,最终出现在输出处。因此,锁存引脚可以被视为我们在输出端看到结果之前的最后一步。

SRCLR(移位寄存器清零)引脚允许我们重置整个移位寄存器,将所有位设置为零。因为这是一个低电平有效引脚,所以我们必须将 SRCLR 引脚拉低以执行复位。

OE(输出使能)也是一个低电平有效引脚:拉高电平时,输出引脚被禁用(设置为高阻抗状态)。当它被拉低时,输出引脚正常工作。

QA–QH(输出启用)是输出引脚。

引脚名称​

Pin描述
DS串行输入
SHCP串行时钟
STCP锁存引脚
OE输出使能,低有效。如果不使用,请连接到GND。
Q0…Q7并行输出
Q7S串行输出*
MR复位(清除),低有效。如果不使用,请连接到VCC
GND接地
VCC接电源

* 使用Q7S将多个74HC595单元连接在一起。将Q7S连接到链中的下一个74HC595芯片的DS引脚。

在Arduino中使用​

您需要将至少3个引脚连接到微控制器:DS、SHCP和STCP。

OE引脚可用于禁用移位寄存器的输出。如果您需要该功能,请将其连接到您的微控制器。否则,将其连接到地面以永久启用输出。

移位寄存器的输出引脚Q0到Q7,通常连接到LED或7段数码显示器。

以下代码示例假设您将DS连接到Arduino引脚2,SHCP连接到Arduino引脚3,并且STCP到Arduino的4号引脚。它输出一个8位的数,该数每秒翻转两次:

const int dataPin = 2;   /* DS */
const int clockPin = 3;  /* SHCP */
const int latchPin = 4;  /* STCP */void setup() {pinMode(dataPin, OUTPUT);pinMode(clockPin, OUTPUT);pinMode(latchPin, OUTPUT);
}int pattern = 0b10101010;
void loop() {digitalWrite(latchPin, LOW);shiftOut(dataPin, clockPin, LSBFIRST, pattern);digitalWrite(latchPin, HIGH);delay(500);pattern = ~pattern; // Invert the pattern
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/139572.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

快速教程|如何在 AWS EC2上使用 Walrus 部署 GitLab

Walrus 是一款基于平台工程理念的开源应用管理平台,致力于解决应用交付领域的深切痛点。借助 Walrus 将云原生的能力和最佳实践扩展到非容器化环境,并支持任意应用形态统一编排部署,降低使用基础设施的复杂度,为研发和运维团队提供…

MyBatis总结

简介 MyBatis是一款持久层框架,是基于JDBC的开发。 基本使用 mybatis配置文件设计标签和顶层结构如下: configuration(配置) properties(属性) settings(设置) typeAliases&…

ChatGPT辅助下的小组学习

1 网上分享会-主题 1.9曾子曰:“慎终追远,民德归厚矣。” Master Zeng said:“Be circumspect in funerary services and continue sacrifices to the distant ancestors, and the virtue (de 德) of the common people will thrive.” 2 过程记录 听…

Solr搜索参数详解

Solr 页面搜索 1.1 基本查询 参数意义q查询的关键字,此参数最为重要,例如,qid:1,默认为q:,fl指定返回哪些字段,用逗号或空格分隔,注意:字段区分大小写,例如,…

459. 重复的子字符串

459. 重复的子字符串 原题链接:完成情况:解题思路:参考代码:__459重复的子字符串_枚举__459重复的子字符串_字符串匹配__459重复的子字符串_KMP算法__459重复的子字符串_优化的KMP算法 错误经验吸取 原题链接: 459. …

酷开科技持续推动智能投影行业创新发展

近年来,投影仪逐渐成为年轻人追捧的家居时尚单品。据国际数据公司(IDC)报告显示,2022年中国投影机市场总出货量505万台,超80%为家用投影仪。相比于电视,投影仪外观小巧、屏幕大小可调节,无论是卧…

OpenCV:图像旋转与缩放

人工智能的学习之路非常漫长,不少人因为学习路线不对或者学习内容不够专业而举步难行。不过别担心,我为大家整理了一份600多G的学习资源,基本上涵盖了人工智能学习的所有内容。点击下方链接,0元进群领取学习资源,让你的学习之路更加顺畅!记得…

从白日梦到现实:推出 Elastic 的管道查询语言 ES|QL

作者:George Kobar, Bahubali Shetti, Mark Settle 今天,我们很高兴地宣布 Elastic 的新管道查询语言 ES|QL(Elasticsearch 查询语言)的技术预览版,它可以转换、丰富和简化数据调查。 ES|QL 由新的查询引擎提供支持&am…

Git基础知识学习常用命令一

常用命令 $ git status 工作区域与仓库保持一致step2: 暂存状态 $ git add --all # 当前项目下的所有更改 $ git add . # 当前目录下的所有更改 $ git add xx/xx.py xx/xx2.py # 添加某几个文件Step3: commit $ git commit -m"<这里写commit的描述>" 已提…

vmware16.2内部win7联网

1、主机配置 前置条件&#xff1a;DHCP和NAT服务已启动 设置无线IP与虚拟机IP为自动获取 二者都是&#xff1a;右键-属性 选择IPv4 自动获取 2、虚拟机配置 设置虚拟机上网方式为NAT 菜单栏-虚拟机-设置 NMnet8改为NAT模式 菜单栏-编辑-虚拟网络编辑器 win7系统内部网…

android studio离线tips

由于种种原因&#xff08;你懂的&#xff0c;导致我们使用android studio会有很多坑&#xff0c;这里记录一下遇到的问题以及解决方案 环境问题 无法下载gradle 因为android studio采用gradle作为构建工具&#xff0c;国内gradle没有镜像下载非常慢&#xff0c;并且大概率失…

13. 高精度延时

13. 高精度延时 GPT 定时器简介GPT 定时器结构GPT 定时器工作模式 GPT 定时器相关寄存器GPTx_CRGPTx_PRGPTx_SRGPTx_CNTGPTx_OCR GPT 配置步骤程序编写bsp_delay.hbsp_delay.cmain GPT 定时器简介 GPT 定时器是一个 32 位向上定时器&#xff0c;也就是从0x00000000 开始向上递…

大数据开发数据治理方向

模型合规&#xff08;包括了元数据治理&#xff0c;原来只到了元数据层次&#xff09;&#xff1a;1.数据标准重制定及修复&#xff0c;包括对原来数据域重构&#xff0c;表字段命名体系重构&#xff0c;并对原来模型按照新标准合规改造 2.元数据补充 owner、使用说明、字段中文…

【算法与数据结构】93、LeetCode复原 IP 地址

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析&#xff1a;参照【算法与数据结构】131、LeetCode分割回文串的思路&#xff0c;需要将IP字符串进行分割&#xff0…

ChatGPT王炸升级

刚刚出炉的新GPT&#xff0c;可以在公司内部共享或对所有人公开。 从此&#xff0c;“GPT开发者”像“iOS开发者”一样成为了新的职业&#xff0c;让AI替你赚钱的梦想成真了。 与此同时&#xff0c;现有的GPT-4也迎来一大波更新。 新版本GPT-4 Turbo&#xff0c;支持128k上下…

K8S篇之k8s常用操作指令

1、常见kubectl操作指令 // 获取k8s集群node信息 kubectl get nodes // 描述一个node 信息 kubectl desctibe nodes NODE_NAME // 描述所有pod信息 kubectl describe pods // 查看namespace列表 kubectl get namespaces // 创建namespace kubectl create ns 命名空间名称 // 查…

No181.精选前端面试题,享受每天的挑战和学习

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…

TreeMap

715. Range 模块 class RangeModule {TreeMap<Integer, Integer> m = new TreeMap<>

k8s-实验部署 1

1、k8s集群部署 更改所有主机名称和解析 开启四台实验主机&#xff0c;k8s1 仓库&#xff1b;k8s2 集群控制节点&#xff1b; k8s3 和k8s4集群工作节点&#xff1b; 集群环境初始化 使用k8s1作为仓库&#xff0c;将所有的镜像都保存在本地&#xff0c;不要将集群从外部走 仓库…

班级新闻管理系统asp.net+sqlserver

班级新闻管理系统 附加功能 新闻图片&#xff0c;点击次数访问自增&#xff0c;每个人都只能增删改查自己发布的新闻&#xff0c;并可以看到所有人发布的新闻 运行前附加数据库.mdf&#xff08;或sql生成数据库&#xff09; 主要技术&#xff1a; 基于asp.net架构和sql serve…