06-移位寄存器74HC595芯片编程
移位寄存器74HC595芯片编程
1. 硬件介绍
原理图:
2块595芯片用以拓展IO口
0#595芯片控制数码管段选和LCD1602数据传输脚
1#595芯片控制数码管位选
74HC595性能简介:
74HC595是典型的移位串转并三态输出驱动器。
8 位并行三态输出,并且可以级联输出。
74HC595引脚功能:
74HC595时序图 :
74HC595传输2字节过程:
2. 软件编程
- 定义595的控制管脚,并在初始化函数配置标准IO口模式,即2.2,2.3,2.4配置成低电平
注:
只将部分位配置成标准IO口模式:按位与(&)操作
- 由时序图定义管脚初始状态
- 创建595底层驱动(数据发送函数)
创建函数
声明函数
调用函数
- 发送环节
已创建的变量HC595_Write_Buffer [2]
有两个数组存储数据:HC595_Write_Buffer [0]、HC595_Write_Buffer [1]
数据移动从0号595芯片到1号595芯片
数据传输先进先出,先发送HC595_Write_Buffer [1]里的数据,再发送HC595_Write_Buffer [0]里的数据
具体发送步骤:
- SH脚低电平
- 缓存数据的最高位拷贝到DS脚(&0x80),每次只拷贝当前最高位,&运算结果遵循非0即1
- 缓存数据左移1位,次高位变成最高位,等待下一次循环发送
- SH脚高电平,DS脚上数据左移一位
- 2个字节发送完,ST发送一次高电平
- 查看发送结果
逻辑仪打开,结果符合
更改发送数据继续测试
- 发送第二个字节的数据
代码和前一次发送一样
发送数组0的数据,将原本在0号595芯片内的数组1的数据挤进1号595芯片
为数组0赋值
逻辑仪观察发送结果
- 输出
截止目前,只是将数据发送到595芯片,并没有输出到管脚
代码
- SPI协议解码
解码结果
06-移位寄存器74HC595芯片编程相关推荐
- 【单片机基础篇】74HC595芯片详解
74HC595芯片详解 芯片简述:74HC595是一个8位串行输入.并行输出的位移缓存器:并行输出为三态输出.在SCK 的上升沿,串行数据由SER输入到内部的8位位移缓存器,并由QA~QH'输出,而并 ...
- 51单片机之IO口扩展——74HC595芯片串行转并行实验
我们都知道通信从大的方面有两种:串行和并行.串行的最大优点是占用总线少,但是传输速率低:并行恰恰相反,占用总线多,传输速率高.市面上有很多这样的芯片,有串入并出的(通俗讲就是 一个一个进,最后一块出来 ...
- 【74HC595】51单片机(普中A2开发板)LED点阵屏点亮以及74HC595芯片的使用笔记
使用74HC595芯片驱动LED点阵屏的使用笔记 1.控制显示LED点阵屏的思路 2.74HC595芯片的学习 2.1.74HC595芯片是什么? 2.2.74HC595芯片各引脚解释以及分析 2.3 ...
- 74HC595芯片实现原理及跑马灯数码管应用程序-----day2
74HC595芯片应用-----day2 1.CMOS移位寄存器–74HC595 可串行输出控制下一级级联芯片.![在这里插入图片描述](https://img-blog.csdnimg.cn/2fa ...
- IO口扩展 74HC595芯片
74HC595芯片目的:扩展IO口数量(一个芯片扩展8个IO口) 上面是A2-A4的芯片,下面是A5-A6的芯片,其中右端的QA--->QH'连接LED8*8点阵的A1-A8 A2-A4 上半部 ...
- 8*8LED点阵图原理(74HC595芯片使用方法)
1.LED灯排线图 1.该线为共阳极点阵图,一行的阳极都是接在一条线上的 如果要亮第一排第一个灯,需要9号行位置为1(即5V),13号列为0(即0V)形成电流,该灯就亮. 2.故行为1000 000控 ...
- 保持寄存器和输入寄存器的区别_串行移位寄存器74HC595
74HC595是8位串行移位寄存器,其中带有移位寄存器和存储寄存器,这两个寄存器分别采用不同的时钟控制.串行数据输入到内部8位移位寄存器然后再并行输出. 01 74HC595内部结构 如图所示为74H ...
- 74HC595芯片使用说明
74HC595是具有8位移位寄存器和一个存储器,三态输出功能. 移位寄存器和存储器是分别的时钟.数据在SHcp的上升沿输入,在STcp的上升沿进入的存储寄存器中去.如果两个时钟连在一起,则移位寄存器总 ...
- 74HC595 芯片详细介绍
74HC595是8 位串行输入/输出或者并行输出移位寄存器,具有高阻关断状态.三态. 特点: 1,8 位串行输入 2,8 位串行或并行输出 3,存储状态寄存器,三种状态 4,输出寄存器可以直接清除 5 ...
- 74HC595芯片介绍和使用详解【干货】
引脚介绍 3态高速位移寄存器.串行输入,并行输出. 14脚:DS,串行数据输入引脚 12脚:ST_CP,存储寄存器时钟输入引脚.上升沿时,数据从移位寄存器转存带存储寄存器. 11脚:SH_CP,移位寄 ...
最新文章
- 【Java】LeetCode 20 有效的括号 (运用数据结构:栈 解题)
- shared_ptr 的使用及注意事项
- Centos7 系统下搭建.NET Core2.0+Nginx+Supervisor+Mysql环境
- MySQL入门系列:存储程序(二)之存储函数简介
- 中国电动汽车充电桩行业十四五发展预测及未来战略规划建议报告2022-2027年版
- linux文件 内存映射 锁,linux – mmap:将映射文件立即加载到内存中吗?
- 转:在RHEL5系统中搭建iSCSI存储服务器
- C++实现链栈的基本操作
- C/C++ 按行读取文件
- spring boot api文档_Spring Boot: Spring Doc生成OpenAPI3.0文档
- oracle12c数据库命令,oracle 12c 常用命令
- ubuntu下载安装google浏览器
- 继电器rc吸收电路取值_RC吸收电路的参数选取
- mp3播放器 遍历本地音乐显示在listview上,点击每一项item并传送音乐地址
- 路由概述与静态路由、默认路由、浮动路由基本配置
- [量化-027]段永平投资哲学整理
- 优酷弹幕穿人「渲染技术」揭秘
- H3C WX2510h无线控制器如何网关式部署无线网络
- 基于SFM的三维重建点云合并及位移测量
- 如何在浏览器中点击复制微信号并且跳转到微信
热门文章
- 福禄克光纤OTDR测试与光损耗测试的区别分析
- 华为云IoT体验:基于IoT平台构建智慧路灯应用
- 《机器学习算法竞赛实战》学习笔记1.竞赛简介
- C# List集合排序方法小结
- 开源考试系统 -微信小程序开发
- 向日葵如何远程桌面Linux,最快的远程桌面向日葵软件
- 逻辑函数的化简方法——数电第二章学习
- 华为鸿蒙2048小游戏,从零开始使用华为DevEco Studio编写2048小游戏
- 灰色系统理论及其应用 (七) :道路交通事故灰色 Verhulst 预测模型
- gotoxy c语言,C语言中的gotoxy()到c++中变成什么了?