AiBOM
首页 > 文章 > 74HC595 > 74HC595控制8位数码管 51单片机
为您找到相关搜索
NXP  74HC595N  移位寄存器, 串行至并行、串行至串行, 1元件, DIP, 16 引脚, 2 V, 6 V
恩智浦半导体(NXP Semiconductors)是全球前十大半导体公司,成立于2006年(前身为皇家飞利浦公司的事业部之一) ,先前由飞利浦于50多年前所创立,公司位于荷兰Eindhoven. NXP拥有50年以上的半导体经验,在全球20多个国家拥有37000名员工(欧洲37%、亚洲37%、大中国区21%、美洲5%),2007年公布的销售额达63亿美元。 NXP主要产品有:汽车工业用 5V CMOS 逻辑产品;汽车车内网络汽车音响数字信号处理器;电子护照中非接触式识别技术;数字无线芯片移动设备用 FM 收音机芯片;GSM/GPRS/EDGE 系统解决方案;接口产品移动扬声器系统;NFC 近距离无线通信;PC TV 芯片有线电视与卫星调谐器用 RF 产品;大众运输电子票务系统用RFID;汽车防盗器与非钥匙遥控门锁用系统解决方案;电视芯片 USB等。其产品技术与解决方案应用于以下五个市场领域:汽车电子、智能识别、家庭娱乐、手机及个人移动通信以及多重市场半导体,进而建立各大市场中的领导地位。 NXP主要业务有:提供半导体、系统解决方案和软件,为手机、个人媒体播放器、电视、机顶盒、识别应用、汽车以及其他广泛的电子设备提供更优质的感官体验。2006年11月16日NXP半导体正式宣布将以“恩智浦半导体”为其中文品牌名称,在大中华地区进行相关的市场营销与运营活动。除原有的英文品牌名NXP之外, 恩智浦半导体希望借此进一步其新品牌与大中华地区客户的沟通, 进而提升品牌知名度。
查看详情
在数字电路中,移位寄存器(英语:Shift Register)是一种在若干相同时间脉冲下工作的以触发器为基础的器件,数据以并行或串行的方式输入到该器件中,然后每个时间脉冲依次向左或右移动一个比特,在输出端进行输出。这种移位寄存器是一维的,事实上还有多维的移位寄存器,即输入、输出的数据本身就是一些列位。实现这种多维移位寄存器的方法可以是将几个具有相同位数的移位寄存器并联起来。
查看详情
热门推荐
74HC595引脚图和真值表
74HC595引脚图和真值表
元器件的Datasheet PDF数据手册如何阅读?如何快速掌握产品引脚图及功能等关键信息?
元器件的Datasheet PDF数据手册如何阅读?如何快速掌握产品引脚图及功能等关键信息?
TL494是什么芯片?TL494 工作原理及典型电路,十分钟带你快速搞懂TL494
TL494是什么芯片?TL494 工作原理及典型电路,十分钟带你快速搞懂TL494

74HC595控制8位数码管 51单片机

网络整理 2020-05-13 06:05 407次阅读 74HC595

// 注意 此代码没有什么技术含量,也没有按规范些,旨在说明595怎么控制,大家不要模仿。

// 此代码刷新速度有点慢,注意想办法优化,time变量用定时器中断处理,主函数不断地刷新显示函数,这样就不会有闪屏,当然在STM32平台毫无压力

#include


sbit SCK = P3^2; // 数据输入时钟线,脉冲

sbit SI = P3^3; // 数据线

sbit RCK = P3^4; // 锁存

unsigned char code SMG[10] = {0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90};

unsigned char Wei[8] = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80};//位选

unsigned char Val[8] = {0};


void Output(void)

{

RCK = 0;

RCK = 1;

}


void Write_Byte(unsigned char dat)

{

unsigned char i = 0;

//每次发送一位数据,8次发送完毕,先发送高位(切记)

for(i=0; i<8; i++)

{

SCK = 0;

SI = dat & 0x80;

SCK = 1;


dat <<= 1;

}

}


void Display(unsigned char * p)

{

unsigned char * pt = Wei;

//注意,先发送位选,因为控制位选的595芯片在控制段选的595芯片下一级

Write_Byte(*(pt+0));//位选,

Write_Byte(SMG[*(p+0)]);//段选

Output();//发送到595 输出


Write_Byte(*(pt+1));

Write_Byte(SMG[*(p+1)]);

Output();


Write_Byte(*(pt+2));

Write_Byte(SMG[*(p+2)]);

Output();


Write_Byte(*(pt+3));

Write_Byte(SMG[*(p+3)]);

Output();


Write_Byte(*(pt+4));

Write_Byte(SMG[*(p+4)]);

Output();


Write_Byte(*(pt+5));

Write_Byte(SMG[*(p+5)]);

Output();


Write_Byte(*(pt+6));

Write_Byte(SMG[*(p+6)]);

Output();


Write_Byte(*(pt+7));

Write_Byte(SMG[*(p+7)]);

Output();


}

int main(void)

{

unsigned long int time = 0;

unsigned int t = 0;


while(1)

{

t++;


if(100==t)

{

t= 0;

time++;


Val[0] = time / 10000000 % 10;

Val[1] = time / 1000000 % 10;

Val[2] = time / 100000 % 10;

Val[3] = time / 10000 % 10;

Val[4] = time / 1000 % 10;

Val[5] = time / 100 % 10;

Val[6] = time / 10 % 10;

Val[7] = time % 10;

}


Display(Val);

}


return 0;

}

74HC595控制8位数码管 51单片机


温馨提示:本文由网友投稿,经网站编辑整理发布,转载请注明出处和本文链接,如有侵犯您的权益,请及时与我们联系,我们将核实情况后进行相关处理!
相关推荐
74HC595引脚图和真值表
74HC595引脚图和真值表
74HC595具有输出锁存器的8位串行输入,串行或并行输出寄存器,3状态。
74HC595 / 引脚图 1208
【C51】单片机芯片之——图解74HC595
【C51】单片机芯片之——图解74HC595
74HC595是一个8位串行输入、并行输出的位移缓存器:并行输出为三态输出。在SCK 的上升沿,串行数据由SDL输入到内部的8位位移缓存器,并由Q7'输出,而并行输出则是在LCK的上升沿将在8位位移缓存器的数据存入到8位并行输出缓存器。当串行数据输入端OE的控制信号为低使能时,并行输出端的输出值等于并行输出缓存器所存储的值。
74HC595 538
关注

关注采芯网

回复型号,查元件信息

采芯网 FindIC 用户意见反馈
问题类型
网站页面问题或建议
数据问题或错误
元器件采购询价
其他
意见建议
联系方式
反馈和联系