关于74HC165的使用及一些经验
本文最后更新于 2025年3月20日 晚上
关于并串移位寄存器74HC165的使用及一些经验
前言
最近的一些项目用到了74HC165移位寄存器,此处介绍一些该器件的使用方法和使用经验
正文
74HC165 移位寄存器简介
74HC165是一种串并行输入/串行输出的8位移位寄存器,由NXP公司推出。它具有8个输入引脚和8个输出引脚,可以通过串行输入获得8位并行输出。
74HC165采用并行和串行两种输入方式,输入数据可以通过Q7引脚进行串行输出,并通过时钟信号控制数据的传输。
74HC165 引脚说明
引脚 | 功能 |
---|---|
PL# | 并行输入控制(低电平有效) |
CE# | 时钟使能(低电平有效) |
CP | 时钟信号输入(上升沿触发) |
Q7 | 串行输出 |
Q7# | 互补串行输出 |
DS | 串行输入 |
D0~D7 | 并行输入 |
VCC | 3.3V电源输入 |
GND | 接地 |
控制时序图:
采样(PL 低)
当PL为低电平时,移位寄存器处于采样状态:它读取引脚D0…D7 并存储它们。从D0到D7口输入的并行数据将被异步地读取进寄存器内,它还在Q7引脚中输出D7的值(因此Q7 == D7)。
换档(PL高电平)
当PL为高电平时,移位寄存器处于采样状态。它保留了从输入中读取的值,并允许您通过Q7引脚一次读取一位。您可以通过脉冲CP(串行时钟)上升沿来读取下一位,依次读取D7-D0的数据。
串行输入(级联)
以DS串行输入为信号源,PL为高电平,每一次时钟上升沿,输出寄存器Q0~Q7的数据向高位移动一位,DS的数据替代原本Q0的数据,Q7原本的数据溢出。因此可以利用此特性作级联,将另一74HC165的串行输出口Q7与此74HC165的串行输入口DS相连。两个移位寄存器同时进行并行装载,然后同时进行串行输出。因为PL为高电平,当Q7溢出后,新的Q0信号来自于上一个移位寄存器的Q7信号。
74HC165 使用经验
此器件电控编程简单,大致模板如下:
读取部分
1 |
|
使用中遇到的问题:
- Q7输出数据时延迟约20~50us,读取时可适当插入部分延时过程
- CP检测到上升沿时是将存储数据后移一位而非输出当前位,换句话说,CP线的第一个上升沿会让Q7输出D6的数据而非D7的数据,Q7接口永远输出当前存储数据的最后一位,每次检测到时钟上升沿时将存储数据后移一位,最高位变成0
- CE线可以悬空,不影响正常使用,担心干扰可以加入防干扰电路
结尾声明
本文属于东北大学盘古实验室,未经允许严禁转载,若有错误请指出,不胜感激。
作者 plumyT@PanGu_NEU