74hc595

news/2024/11/20 19:30:28/文章来源:https://www.cnblogs.com/zhouyuqing1024/p/18431421

74htc595

功能

8位串行输入

8位串行或并行输出

3态输出的存储

寄存器带直接清零的移位寄存器100 MHZ(典型)

移出频率

ESD保护H

BM ELAJESD22-A114-A超过2000VMM

EIAJESD23-A115-A超过200 V

 

说明

74HC/HCT595是高速硅栅CMOS器件,

与低功率肖特基TTLLSTTL引脚兼容。

它们是根据JEDEC第号标准规定的。7

74HC/HCT595是一个8级串行移位寄存器,具有静态寄存器和3态输出。

移位寄存器和存储寄存器具有独立的时钟。

数据在SH_CP输入的正向转换中进行移位。

每个寄存器中的数据在ST _ CP输入的正向转换时传输到存储寄存器。

如果两个时钟连接在一起,则移位寄存器将始终领先存储寄存器一个时钟脉冲。

移位寄存器具有串行输入(DS)和串行标准输出(Q7),用于级联。

它还为所有8个移位寄存器级提供异步复位(有效低电平)。

存储寄存器具有8个并行的3态总线驱动器输出。

每当输出使能输入(OE)为LOW(低)时,存储寄存器中的数据就会出现在输出端

 

void TI74HC595_SendByte_1(uint8_t dat)

{

uint8_t mid;

GPIO_SetBits(PC15_SH1_PORT, PC15_SH1_PIN );

GPIO_SetBits(PC14_ST1_PORT, PC14_ST1_PIN );

for(mid=0;mid<8;mid++) //·¢ËÍ 8 λÊý

{

if((dat >> 7) == 0x01){

GPIO_SetBits(PC13_DS1_PORT, PC13_DS1_PIN );

}else{

GPIO_ResetBits(PC13_DS1_PORT, PC13_DS1_PIN);

}

dat <<= 1;

GPIO_ResetBits(PC15_SH1_PORT, PC15_SH1_PIN);

_74DELAY;

GPIO_SetBits(PC15_SH1_PORT, PC15_SH1_PIN );

_74DELAY;

}

 

}

 

void TI74HC595_CS_1(void)

{

  GPIO_ResetBits(PC14_ST1_PORT, PC14_ST1_PIN);

_74DELAY;

GPIO_SetBits(PC14_ST1_PORT, PC14_ST1_PIN );

_74DELAY;

 

}

void TI74HC595_SendMultiByte_1(uint8_t *data,uint16_t len)

{

 uint8_t i;

 

    for (i = 0; i < len; i ++ )

 

    {

 

        TI74HC595_SendByte_1(data[i]);

 

    }

 

    TI74HC595_CS_1();

}

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

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

相关文章

直接调拨单的酶活总量换算不正确

物料单位换算中的换算类型需要设置为浮动, 原来的是固定.

9月25日小学加减法的编程

根据问题要求来写程序,程序编写难度不高,交互更加友好 需要关注几个点 1加上目前是第几道题的说明 2如果输入错误要有提示第一第几道题是根据循坏的i来决定的但是要注意有些进入了循环但是没有进行答题的要写上i--; 第二要进行hasNextInt()的判断,防止错误输入导致的程序停…

Git - 初识版本库

版本库也叫仓库,英文名 repository。版本库也叫仓库,英文名 repository。 ‍ 创建版本库 之前我们说了版本库的概念:存储版本的地方(存放各个版本之间差异的地方),通常称为版本库。通常版本库是以文件(夹)的形式存放在磁盘上:Git 是用一个目录来存储各个版本和差异的文…

关于QT6.5.3版本安装、更新/添加组件的一些心得

目录引言 一、如何下载和卸载QT1.下载QT 2.卸载QT二、镜像引言 本文主要记录一下关于Visual Studio 2022和Qt Creator 14.0.1 (Community)的安装🛠️和配置⚙️ 起因是第一次下载QT时看着众多的组件不知如何选择,上网搜索攻略🔗看的头晕眼花(本来好简单的一件事🤣) 然…

超详细 Git 教程:二十篇博客,三万字干货

Git 是最流行的版本管理工具Git 是最流行的版本管理工具,可以说是任何程序员都应该掌握的工具。当然,其他人也可以学习它用来进行版本控制为此,我将之前学习 Git 时的笔记整理了下(预计有二十篇),作为博客发出来,希望能帮到你。本文简单介绍下什么是版本控制,以及常见的…

Python计算傅里叶变换

本文介绍了离散傅里叶变换和快速傅里叶变换的基本原理及其对应的Python代码实现,并将计算结果与numpy所集成的fft函数进行对比。其实现在FFT计算的成熟工具已经有很多了,不论是CPU上scipy的fft模块还是GPU上的cufft动态链接库,都有非常好的性能。但还是得真正去了解计算背后…

9月24日课件之动手动脑

在本次课件中有多个动手动脑作业,再次我逐一学习分析。 一、首先是关于枚举的学习代码为, 运行结果为。 首先第一个运行结果显而易见的是false,第二个是因为枚举为类所以不是基本类型,在.isprimitive()中基本类型是返回true,类的话将会返回false。 第三个是.valueof()会返…

如何在低成本ARM平台部署LVGL免费图形库,基于全志T113-i

LVGL简介 LVGL(Littlev Graphics Library)是一个开源的图形库,主要用于嵌入式系统创建图形用户界面(GUI),采用C语言编写,具有高效性和可定制性,在各种微控制器平台和显示硬件上开发用户界面时备受欢迎。LVGL具社区免费开源、控件资源丰富、跨平台可移植等特点。 社区免费开…

一万字全面解析CRM的定义、分类与核心价值

1、CRM定义与分类 1.1CRM的定义 CRM,英文Customer Relationship Management的缩写,中文全称为客户关系管理。通常情况下,人们通常用CRM直接表达客户关系管理软件系统——一个以客户为中心的专门用于管理与客户关系的软件工具,以确保与客户在营销、销售、服务的每一环节上都…

module collections has no attribute Hashable PyDocx 库报错

### 项目背景在测试PyDocx代码时```python from pydocx import PyDocXhtml = PyDocX.to_html("test.docx") with项目背景 在测试PyDocx代码时 ```python from pydocx import PyDocX html = PyDocX.to_html("test.docx") with open("test.html", …

SimpleAIAgent:使用免费的glm-4-flash即可开始构建简单的AI Agent应用FI

合集 - C#(80)1.使用C#将几个Excel文件合并去重分类2023-11-152.C#使用SqlSugar操作MySQL数据库实现简单的增删改查2023-11-163.C#中的类和继承2023-11-174.C#中的virtual和override关键字2023-11-175.C#中的属性2023-11-206.C#winform中使用SQLite数据库2023-11-237.C#简化工作…

VLAN原理和配置

VLAN原理和配置 VLAN:虚拟局域网,将一个物理的局域网在逻辑上划分成多个广播域 华为交换机默认4094个VLAN 在交换机上配置VLAN,同一个VLAN内的用户可以进行二层互访,而不同VLAN 间的用户被二层隔离 VLAN帧格式 Tag用于区分不同的VLAN 没有携带Tag的帧DMAC SMAC Type Data F…