IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 74HC595 8位移位寄存器介绍 -> 正文阅读

[嵌入式]74HC595 8位移位寄存器介绍

74HC595 8位移位寄存器介绍

74HC595是使用非常普遍的一个移位寄存器芯片,由TI公司提供。其主要功能是串转并,即通过串行信号输入转为并行信号输出,用于单片机引脚资源不足时补充引脚的作用,在数码管、继电器网络等的控制中广泛使用。其较宽的操作电压(2-6 V)使其可以使用在5V或3.3V的单片机系统中。有时,也可以避免单片机过多过长的走线。

1. 引脚定义

image-20211006121249760

其中,Q0-Q7是8位输出端;

VCC和GND分别为电源和接地;

Q7’是串行输入数据输出端(可以用于多个74HC595的级联);

ST_CP并行输出控制开关,高电平时触发;

SH_CP串行输入时钟,控制移位寄存器,高电平触发做一次移位;

MR低电平时数据清零,一般接高电平;

OE是使能端,高电平高阻态,输出禁止,一般接低电平。

2. 参考电路

image-20211006122150902

2. 驱动代码

sbit SRCLK1=P2^0;          //595的SH_CP端口要接的单片机上的端口P2^0(P2^0可以更改为任意端口)
sbit RCLK1=P2^1;           //595的ST_CP端口要接的单片机上的端口P2^1(P2^1可以更改为任意端口)
sbit SER1=P2^2;            //595的DS端 连接,可以更改为任意端口

void HC595SendByte(unsigned char dat1)
{
    u8 a;
    SRCLK1=0;
    RCLK1=0;
    for(a=0;a<8;a++)                  //串行输入过程
    {
        SER1=dat1>>7;        
        dat1<<=1;            
        SRCLK1=1;
        _nop_();
        _nop_();
        SRCLK1=0;    
    }
    RCLK1=1;                           //并行输出过程
    _nop_();
    _nop_();
    RCLK1=0;
}

3. 74HC595级联

3.1 级联方式一

image-20211006122515039

SH_CP和ST_CP公用时钟脉冲,这样仅需要三个引脚就可以完成级联,但缺点是后面的输出可能会有延迟(当然也可以在串行输入完成后所有芯片同时输出,就不会有延迟)。

3.2 级联方式二

image-20211006122800449

公用SH-CP、ST_CP,每个芯片分配不同的DS引脚,这样做的好处是每个芯片的输出认为可控且同步。

3.3 级联驱动代码

sbit SRCLK1=P2^0;         //四个芯片的SH-CP端 
sbit RCLK1=P2^1;          //四个芯片的ST-CP端 
sbit SER1=P2^2;           // 第一个芯片的DS端
sbit SER2=P2^3;           // 第二个芯片的DS端
sbit SER3=P2^4;           // 第三个芯片的DS端
sbit SER4=P2^5;           // 第四个芯片的DS端
void Hc595SendByte(unsigned char dat1,unsigned char dat2,unsigned char dat3,unsigned char dat4)    //每一个unsigned char都不可少啊,这是血的教训
{
    u8 a;
    SRCLK1=0;
    RCLK1=0;
    for(a=0;a<8;a++)               //串行输入过程
    {
        SER1=dat1>>7;        
        SER2=dat2>>7;
        SER3=dat3>>7;        
        SER4=dat4>>7;
        dat1<<=1;            
        dat2<<=1;
        dat3<<=1;            
        dat4<<=1;
        SRCLK1=1;
        _nop_();
        _nop_();
        SRCLK1=0;    
    }

    RCLK1=1;                       //并行输出过程
    _nop_();
    _nop_();
    RCLK1=0;
}

以上。

image-20211006123403150

参考:简述74HC595功能_lgzisme的博客-CSDN博客

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-10-07 13:59:53  更:2021-10-07 14:00:39 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 4:43:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码