2021-05-08 51单片机74HC164、74LS164、74HCT164、74HC154、74HCT154应用三极管控制继电器

74HC164、74HCT164是8位边沿触发式移位寄存器,串行输入数据,然后并行输出。数据通过两个输入端(DSA或DSB)之一串行输入;任一输入端可以用作高电平使能端,控制另一输入端的数据输入。两个输入端或者连接在一起,或者把不用的输入端接高电平,一定不要悬空。

时钟 (CP) 每次由低变高时,数据右移一位,输入到 Q0, Q0 是两个数据输入端(DSA和 DSB)的逻辑与,它将上升时钟沿之前保持一个建立时间的长度。

主复位 (MR) 输入端上的一个低电平将使其它所有输入端都无效,非同步地清除寄存器,强制所有的输出为低电平。

兼顾回复求大佬题目三,串行静态显示系统设计_编程语言-CSDN问答

发送数据时序可看到8个时钟脉冲对应的数据为11110010,程序与电路图如下。

cpp 复制代码
#include "reg52.h"
sbit Sab=P3^4;
sbit clk=P3^5;
void QD164(unsigned char sj)
{
	char aa=8;
	clk=0;
	while(aa--)
	{
//		Sab=sj%2;sj/=2;//数据发送从低位
//		Sab=(127+sj%2)/(sj%2);sj/=2;//对应位移八位
		Sab=sj&0x80;sj<<=1;//数据发送从高位
    clk=1;//上升沿发生移位 上升沿时数据寄存器的数据锁存。
    clk=0;
	}
}
void main()
{
	unsigned int ys=0;unsigned char xd=0,a=0x66;QD164(a);
	while(1)
	{
//		QD164(a);
		//if(!(++xd))
	}
}

相关推荐
笨笨没好名字10 小时前
怎么看懂51单片机电路图与功能实现的C语言编写(2-7入门篇)
c语言·嵌入式硬件·51单片机
智者知已应修善业14 小时前
【51单片机用T0定时器方式1,实现0.5S的时间间隔实现第一次一个灯亮、第二次二个灯亮,直到全部灯亮,然后重复整个过程】2023-12-29
c++·经验分享·笔记·算法·51单片机
智者知已应修善业15 小时前
【51单片机4位静态数码管显示1234】2023-11-14
c++·经验分享·笔记·算法·51单片机
项目題供诗15 小时前
STM32-TIM输入捕获(十四)
stm32·单片机·嵌入式硬件
cpsss068115 小时前
Freertos的Systick_Handler重定义
单片机·嵌入式硬件
国产电子元器件16 小时前
电流传感器的输出可以直接接示波器吗?
stm32·单片机·嵌入式硬件
zlinear数据采集卡17 小时前
SPI Flash存储电路深度解析:从芯片选型到ZLinear采集卡的实战设计
c语言·嵌入式硬件·自动化·硬件架构
m0_7471245319 小时前
单片机 VSCode 开发环境搭建
vscode·单片机·嵌入式硬件
嵌入式小站19 小时前
STM32 零基础可移植教程 21:1602A 并口 4 位模式,先显示 Hello
stm32·单片机·嵌入式硬件
夜月yeyue19 小时前
KCP 与 UDP 可靠传输
linux·网络·单片机·网络协议·udp·php