介绍

  74HC595是一个8位串行输入、并行输出的位移缓存器:并行输出为三态输出。在SCK 的上升沿,串行数据由SDL输入到内部的8位位移缓存器,并由Q7’输出,而并行输出则是在LCK的上升沿将在8位位移缓存器的数据存入到8位并行输出缓存器。当串行数据输入端OE的控制信号为低使能时,并行输出端的输出值等于并行输出缓存器所存储的值。
  其实595不一定支持三态输出。针对自己的应用,确定下自己需要输出哪些状态。需不需要输出高电平。比如这款就可以输出高电平、低电平、高阻态:

但是这款就只能输出低电平、高阻态:

别像我一样,被坑了一次。

引脚

真值表

内部逻辑图


从逻辑图可以得到几个信息:
1、拉低SCLR(10脚)会复位移位寄存器,值全为0。正常工作时应该拉高。
2、移位寄存器有8位,SCK(11脚)给一个上升沿,移位寄存器就会往前移动1位。比如此时状态为

SI(14脚)为低电平,OH(9脚)为高电平,则SCK(11脚)来一个上升沿,就会变为:

3、移位寄存器中的8位值不会影响输出引脚状态,输出引脚的状态是由存储寄存器中的8位值决定的,给RCK(12引脚)一个上升沿,移位寄存器中的8位值才会赋值给存储寄存器。假如要让QA~QH输出(1,0,0,1, 0,1,1,0),要首先控制SI、SCK把值赋给移位寄存器,最后给RCK一个上升沿,值才真正输出。
4、G(13脚)是输出控制脚,拉高QA~QH会输出高阻态,拉低才会输出有效值。

时序图


从时序图可以知道74HC595的使用流程为:
1、拉高SCLR(10脚)。如果不用,设计原理图时可以直接拉高。
2、控制SI(14引脚)、SCK(11脚)把移位寄存器的值赋好(使用8个上升沿)。
3、给RCK(12引脚)一个上升沿。
4、拉低G(13脚)。

给个参考程序:

/**********************************************************************************************************
*   函 数 名:HC595_Out1Byte
*   功能说明:HC595输出一个字节
*   形    参:
*   返 回 值:
**********************************************************************************************************/
void HC595_Out1Byte(uint8_t dat)
{unsigned char i; HC595_LATCH_LOW();           Delay_us(1); for(i=0;i<8;i++){HC595_SRCLK_LOW();       //先将串行时钟输入端SRCLK置成低电平Delay_us(1);if(dat&0x80)HC595_SER_HIGH();  //每次只取一位elseHC595_SER_LOW();dat<<=1;             //每次只取一位进行左移HC595_SRCLK_HIGH();     //数据在串行时钟输入端SRCLK的上升沿输入到移位寄存器中Delay_us(1);            //空指令}HC595_LATCH_HIGH();         //LATCH上升沿并行数据输出    Delay_us(1); HC595_LATCH_LOW();
}

常见的原理图

级联使用

把前一个的OH(9脚)接到下一个的SI(11脚)就可以级联使用了。

74HC595的使用相关推荐

  1. 74HC595驱动程序

    文章原始地址:http://feotech.com/?p=44 一. 74HC595芯片介绍 74HC595是串口转并口芯片,可输出三种状态:高电平.低电平和高组态. 一片74HC595芯片可实现3根 ...

  2. Ardino基础教程 18_驱动74HC595

    实验十八:驱动74HC595 概述: 74HC595 是一款漏极开路输出的CMOS 移位寄存器,输出端口为可控的三态输出端,亦能串行输出控制下一级级联芯片. 特点: 管脚图: 管脚说明: 74HC59 ...

  3. 保持寄存器和输入寄存器的区别_串行移位寄存器74HC595

    74HC595是8位串行移位寄存器,其中带有移位寄存器和存储寄存器,这两个寄存器分别采用不同的时钟控制.串行数据输入到内部8位移位寄存器然后再并行输出. 01 74HC595内部结构 如图所示为74H ...

  4. 74HC595芯片使用说明

    74HC595是具有8位移位寄存器和一个存储器,三态输出功能. 移位寄存器和存储器是分别的时钟.数据在SHcp的上升沿输入,在STcp的上升沿进入的存储寄存器中去.如果两个时钟连在一起,则移位寄存器总 ...

  5. 【51单片机快速入门指南】2.4:74HC595、LED点阵屏及其SPI控制

    目录 硬知识 IO 口扩展方式-串转并 74HC595 芯片介绍 硬件设计 测试源码 HC74595.c HC74595.h main.h 实验现象 SPI控制 普中51-单核-A2 STC89C52 ...

  6. 定时器驱动数码管c语言程序,74hc595驱动数码管时间程序

    74hc595驱动数码管时间程序 这里是电路图: 下面是51单片机驱动74hc595芯片的程序: #include                            //包含51单片机的头文件 # ...

  7. 单线驱动74hc595(转)

    源:http://blog.chinaunix.net/uid-10701701-id-91938.html 这个电路是国外一个哥们2009年的时候发表的. http://www.romanblack ...

  8. 51单片机学习笔记(清翔版)(13)——LED点阵、74HC595

    如图3,点阵屏分单色和彩色,点阵屏是由许多点组成的,在一个点上,只有一颗一种颜色的灯珠,这就是单色点阵屏,彩色的在一个点上有三颗灯珠,分别是RGB三原色. 图4你可能没看出来,那么大块黄色的就是点阵屏 ...

  9. 【单片机基础篇】74HC595芯片详解

    74HC595芯片详解 芯片简述:74HC595是一个8位串行输入.并行输出的位移缓存器:并行输出为三态输出.在SCK 的上升沿,串行数据由SER输入到内部的8位位移缓存器,并由QA~QH'输出,而并 ...

最新文章

  1. JavaScript Array reverse 方法:颠倒数组中元素的顺序
  2. 【微信小程序企业级开发教程】页面的生命周期和参数传递
  3. android 串口开发_详细分析Esp8266上电信息打印的数据,如何做到串口通讯上电不乱码打印...
  4. 笔记本禁用自带键盘攻略-------针对shift默认按下的解决方案
  5. 《C和指针》学习备忘
  6. centos7 nginx yum 配置
  7. 数字图像处理—亮度变换与空间滤波—亮度变换函数
  8. [css] 怎样修改chrome记住密码后自动填充表单的黄色背景?
  9. Dynamics CRM 开启图表的3D效果展示
  10. 异质图神经网络及其在电商领域中的应用
  11. bzoj2127: happiness
  12. C#模板引擎NVelocity实战项目演练
  13. 高光谱图像结合机器学习方法无损检测猕猴桃
  14. Qt之QMessageBox详解
  15. python 高斯烟羽模型_高斯扩散模型-高斯烟羽大气污染扩散模型
  16. 不理解 Java Steam?一步步梳理其工作方式
  17. java mp3剪切_mp3剪切器如何剪切mp3音频文件
  18. c语言模拟uart协议的收发
  19. 解决Chrome 的右键谷歌网页翻译失效 20221107更新
  20. IDEA自动生成注解 及 解决 Wrong tag ‘Author‘ 等警告信息

热门文章

  1. 怎么配置mysql的ip_设置MYSQL允许用IP访问
  2. 拦截器获取请求参数post_「SpringBoot WEB 系列」RestTemplate 之自定义请求头
  3. 防范最新勒索病毒--坏兔子病毒(伪造Adobe Flash Player更新)的方法
  4. [unreal4入门系列之三] 初探UE4安装文件目录结构
  5. 一文看懂百度云智峰会:发布两大中台、八大方案,落地细节精准到发丝
  6. 谷歌官方TensorFlow开发者认证来了,吴恩达:学我的课,报名费五折
  7. 快手在直播间里养起了AI宠物,连柳岩、大鹏都爱不释手
  8. 世界AI大会三马纵论:马云乐观、马斯克悲观,马化腾认为技术孤立主义有大危害...
  9. jmeter获取时间_time 函数
  10. NLPIR语义挖掘建互联网内容处理全技术链条