利用74HC595实现多位LED显示的新方法
- 格式:doc
- 大小:42.50 KB
- 文档页数:4
74HC595驱动LED的电路设计方案2012年10月14日11:26来源:本站整理作者:胡哥我要评论(0)标签:LED(2)方案(14)74HC595(13)74HC595 芯片是74 系列芯片的一种, 具有速度快、功耗小、操作简单的特点, 可以很方便地用于单片机接口进行驱动LED 的操作。
本文介绍这种芯片的特点和使用方法, 并给出软硬件的设计实例。
七段发光二极管显示器, 又叫LED 显示器, 因其价格低廉、功耗较小和性能可靠等优点, 在各种仪器仪表中得到了广泛的应用。
现在市场上出售的专用LED 驱动器种类有很多, 且大多数功能较多, 但价格相应地也较高, 如果用在低成本的简单系统中, 不仅是一种资源的浪费, 而且增加了产品的成本。
用74HC595 芯片驱动LED 有以下特点: 速度较快, 功耗较小, LED 的数目多少随意, 既可以控制共阴极的LED 显示器, 也可以控制共阳极的LED 显示器, 可以软件控制LED 的亮度, 还可以在必要的时候关断显示(数据保留) , 以减小功耗, 并可随时唤醒显示。
用它设计的电路, 不仅软硬件设计简单, 而且功耗低, 驱动能力强, 占用的I/ O 口线较少, 是一种造价低廉, 应用灵活的设计方案。
1 74HC595 的使用说明74HC595 内含8 位串入、串/ 并出移位寄存器和8位三态输出锁存器。
寄存器和锁存器分别有各自的时钟输入(SCLK和SLCK) , 都是上升沿有效。
当SCLK从低到高电平跳变时, 串行输入数据(SDA) 移入寄存器; 当SLCK 从低到高电平跳变时, 寄存器的数据置入锁存器。
清除端(CLR) 的低电平只对寄存器复位(QS 为低电平) , 而对锁存器无影响。
当输出允许控制(EN) 为高电平时, 并行输出(Q0~Q7) 为高阻态, 而串行输出(QS) 不受影响。
74HC595 最多需要5 根控制线, 即SDA、SCLK、SLCK、CLR 和EN。
移位寄存器芯片74HC595实现LED动、静态显示的基本原理摘要:本文介绍了应用移位寄存器芯片74HC595实现LED动、静态显示的基本原理。
提出了一种用74HC595实现多位LED显示的新方法。
同时对该系统的硬件组成和软件实现作了详细说明。
实际应用表明,此方法连线简单方便,成本低廉,可用于24位LED或更多位LED显示。
关键词:LED 74HC595 动态显示静态显示1 引言单片机应用系统中使用的显示器主要有LED和LCD两种。
近年来也有用CRT显示的。
前者价格低廉,配置灵活,与单片机接口方便;后者可进行图形显示,但接口较复杂,成本也较高。
LED(Ling Emiting Diode)是发光二极管的缩写。
实际应用非常普遍的是八段LED显示器。
LED显示器在大型报时屏幕,银行利率显示,城市霓虹灯建设中,得到广泛应用。
在这些需要多位LED显示的场合,怎样实现系统稳定,价格低廉的显示,成为决定其成本的关键所在。
2 74HC595实现LED静、动态显示基本原理74HC595是美国国家半导体公司生产的通用移位寄存器芯片。
并行输出端具有输出锁存功能。
与单片机连接简单方便,只须三个I/O口即可。
而且通过芯片的Q7引脚和SER引脚,可以级联。
而且价格低廉,每片单价为1.5元左右.2.1 静态显示每位LED显示器段选线和74HC595的并行输出端相连,每一位可以独立显示(见图1)。
在同一时间里,每一位显示的字符可以各不相同(每一位由一个74HC595的并行输出口控制段选码)。
N位LED显示要求N个74HC595芯片及N+3条I/O口线,占用资源较多,而且成本较高。
这对于多位LED显示很不利。
2.2 动态显示在多位LED显示时,为了简化电路,降低成本,节省系统资源,将所有的N位段选码并联在一起,由一片74HC595控制(见图2)。
由于所有LED的段选码皆由一个74HC595并行输出口控制,因此,在每一瞬间,N位LED会显示相同的字符。
74HC595芯片中文资料8位串行输入/输出或者并行输出移位寄存器,具有高阻关断状态。
三态。
特点8位串行输入8位串行或并行输出存储状态寄存器,三种状态输出寄存器可以直接清除100MHz的移位频率输出能力并行输出,总线驱动串行输出;标准中等规模集成电路应用串行到并行的数据转换Remote control holding register.描述595是告诉的硅结构的CMOS器件,兼容低电压TTL电路,遵守JEDEC标准。
595是具有8位移位寄存器和一个存储器,三态输出功能。
移位寄存器和存储器是分别的时钟。
数据在SCHcp的上升沿输入,在STcp的上升沿进入的存储寄存器中去。
如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。
移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。
参考数据符号参数条件TYP单位HC HCtt PHL/t PLH传输延时SHcp到Q7’STcp到Qn MR到Q7’C L=15pFVcc=5V161714212019NsNsNsf max STcp到SHcp最大时钟速度10057MHzC L输入电容Notes 1 3.53.5pF C PD Power dissipation Notes2 115 pFC PD 决定动态的能耗,P D =C PD ×V CC ×f 1+∑(C L ×V CC 2×f 0)F 1=输入频率,C L =输出电容 f 0=输出频率(MHz ) Vcc=电源电压 引脚说明 符号 引脚 描述 Q0…Q7 15, 1, 7 并行数据输出 GND 8 地Q7’ 9 串行数据输出 MR 10 主复位(低电平) SH CP11移位寄存器时钟输入ST CP12存储寄存器时钟输入OE13 输出有效(低电平) D S14串行数据输入capacitance per package.130V CC16 电源功能表输入输出功能SH CP ST CP OE MR D S Q7’Q n××L ↓×L NC MR为低电平时紧紧影响移位寄存器×↑L L ×L L 空移位寄存器到输出寄存器××H L ×L Z 清空移位寄存器,并行输出为高阻状态↑×L H H Q6’NC 逻辑高电平移入移位寄存器状态0,包含所有的移位寄存器状态移入,例如,以前的状态6(内部Q6”)出现在串行输出位。
基于单片机的时钟设计6位LED1. 引言时钟是我们日常生活中必不可少的工具之一。
设计一个基于单片机的6位LED时钟,不仅可以提供时间显示功能,还能够增加一些附加功能,如闹钟、计时器等。
本文将介绍基于单片机的时钟设计方案,并提供详细的电路原理图和源代码。
2. 设计思路基于单片机的时钟设计通常采用时分秒的显示方式,并通过按键进行时间的调整和功能的切换。
考虑到使用方便和成本等因素,我们选择采用6位LED数码管作为显示屏,并使用74HC595芯片进行驱动。
2.1 电路设计电路的主要部分包括单片机、时钟模块、数码管及驱动芯片。
单片机的核心是时钟芯片,用于计时和存储时间数据。
时钟模块提供了精确的时间信号,可以与单片机进行通信。
数码管通过74HC595芯片进行驱动,以实现数字的显示。
2.2 软件设计软件设计是基于单片机的时钟设计中非常重要的一环。
主要包括以下功能:•时间显示:将时、分、秒的数据转换为数码管的显示信息,并实现动态显示效果。
•时间调整:通过按键对时钟进行时间的调整,包括调整小时、分钟、秒钟。
•附加功能:实现闹钟、计时器等附加功能,可以通过按键进行设置和开关。
3. 电路原理图电路的原理图如下:+--------------+| 数码管 |+--------------+|+--------------------------+| 74HC595驱动芯片 |+--------------------------+|+--------------+| 单片机 |+--------------+|+---------------------+| 时钟模块 |+---------------------+4. 源代码以下是基于单片机的时钟设计的部分源代码示例:#include <reg52.h>sbit SCLK=P1^0; // 74HC595芯片时钟输入sbit RCLK=P1^1; // 74HC595芯片锁存输出sbit DIO=P1^2; // 74HC595芯片串行数据输入// 数字码表unsigned char code number[10]={0x3F, // 00x06, // 10x5B, // 20x4F, // 30x66, // 40x6D, // 50x7D, // 60x07, // 70x7F, // 80x6F// 9};void delay(unsigned int t){unsigned int i, j;for(i=0; i<t; i++)for(j=0; j<123; j++);}void display(unsigned char *num){unsigned char i;for(i=0; i<8; i++){DIO = num[i];SCLK = 0;SCLK = 1;}RCLK = 0;RCLK = 1;}void main(){unsigned char time[8] = {0, 0, 0, 0, 0, 0, 0, 0};unsigned char i, j;while(1){// 获取当前时间// 进行时间调整// 显示时间display(time);// 延时0.5秒delay(500);}}5. 结语基于单片机的6位LED时钟设计,通过硬件和软件的设计实现了时间的显示和调整功能,并可以扩展其他附加功能。
74hc595驱动串行led显示串行驱动led显示//一个74hc595位移寄存器驱动三极管驱动led位,//两个74hc595驱动led段,方式位5位x8段x2=10个数码管//5分频,每次扫描时间位1.25ms//定义特殊符号#define nul 0xf#define qc 0xc#define qb 0xb#define q_ 0xa#define q__ 0xd#define q___ 0xe#define qp 0x10#define qe 0x11#define qj 0x12#define qn 0x13#define qf 0x14#define qa 0x15#define qr 0x16#define qd 0x17#define qu 0x18#define ql 0x19#define qh 0x1a#define qwen 0x1b#define qt 0x1c#define qlb 0x1e#define qlc 0x1f#define qld 0x20#define qle 0x21#define qlf 0x22#define qlg 0x23#define qldp 0x24//显示段信息,不同led排列组合的段信息只需更改8个数值即可。
//因此,该定义具有通用性。
// 显示// -d 20// |c 40 |e 10// - g 80// |b 2 |f 4// _a1 .dp 8#define pa 1#define pb 2#define pc 0x40#define pd 0x20#define pe 0x10#define pf 4#define pg 0x80#define pdp 8//--------------#define l0 pdp+pg#define l1 255-pf-pe#define l3 pdp+pc+pb#define l4 pdp+pa+pb+pd#define l5 pdp+pb+pe#define l6 pdp+pe#define l7 pdp+pc+pg+pb+pa#define l8 pdp#define l9 pdp+pb#define la pdp+pa#define lb pdp+pd+pe#define lc pdp+pg+pe+pf#define ld pdp+pc+pd#define le pdp+pe+pf#define lf pdp+pe+pf+pa#define l_ 255-pg#define lnul 255#define ll pdp+pg+pd+pf+pe#define lp pdp+pa+pf#define lt pdp+pd+pe+pf#define lr pdp+pe+pf+pg+pa#define ln pdp+pg+pa#define lh pdp+pd+pe+pa#define ly pdp+pb+pd#define lu pdp+pg+pd#define l__ pdp+pg+pb+pc+pe+pf #define l___ l__-pg#define l_1 255-pa#define l_2 255-pa-pg#define lj 255-(pe+pf+pa)#define lwen 255-(pd+pe+pg+pb)#define lall 0#define lla 255-pa#define llb 255-pb#define llc 255-pc#define lld 255-pd#define lle 255-pe#define llf 255-pf#define llg 255-pg#define lldp 255-pdp//串行送出的位信息,目前是10位led显示。
多位L E D 串行显示电路设计与应用马 彪(辽宁信息职业技术学院,辽宁省辽阳市111000)【摘 要】 74HC595A 芯片具有串行输入、并行输出功能,利用该集成电路可设计多位LED (发光二极管)串行显示电路。
文中介绍了利用该芯片设计的12位LED 串行显示电路,详细说明了该电路的工作原理及编程思路,并给出了参考程序。
该电路只占用单片机3根口线,较并行显示方式极大地节省了系统资源,已在实际系统中得到应用。
关键词:串行显示,74HC595A,LED 显示中图分类号:T N873.3收稿日期:2005207225;修回日期:2005209229。
0 引 言在单片机系统设计中,LED (发光二极管)显示方式由于具有使用方便、价格低廉等优点而得到广泛应用。
在采用并行显示方式时,显示电路的段码与位控码要占用单片机的较多口线,尽管可采用8155等接口芯片进行扩展,但口线利用率仍较低,不能满足大型控制系统的要求。
采用串行显示方式则只需占用2根或3根口线,节约单片机大量的I/O 线,且使用效果很好。
下面介绍一种基于74HC595A 的12位LED 串行显示电路。
1 74HC595A 工作原理74HC595A 内部含有8位移位寄存器和8位D 锁存器,内部结构如图1所示。
图1 74HC595A 内部逻辑结构 串行移位寄存器接收外部输入串行数据,一方面可进行串行数据输出,同时向锁存器提供8位并行输入数据,并具有异步复位功能;8位锁存器可三态输出并行数据。
该芯片具有串行输入、并行输出两个独立的时钟信号。
表1为该芯片的逻辑功能表。
表1 74HC595A 逻辑功能表工作状态输入输出SRCLR SER SRCLK RCLK RCLK S QH Q0~Q7复 位L ××LH ↓L L U 串行输入H D ↑LH ↓L SRG SRH U锁存输出H×LH ↓↑L UN 高 阻××××HZ 注:U 为不变;N 为数据刷新;Z 为高阻。
最详细的74HC595芯片使用方法介绍2010-01-17 00:07:05 来源: 电子工程师论坛Arduino采用的ATmega168芯片带12个数字I/O管脚,其中每个都可以对一个数字量进行控制,从而实现类似于点亮一个发光二极管这样的功能。
在实际的工程应用里,有时我们可能会遇到需要对更多的数字量进行控制的场合,比如同时控制16个发光二极管,这时Arduino自带的数字I/O管脚就不够用了,必须进行相应的扩展。
其中一种可行的办法就是借助74HC595这样一个8位串入并出移位寄存器,这个芯片能够多个级连起来一起使用,因此理论上能够通过Arduino上有限的几个管脚(最少三个)产生任意多个的数字输出。
74HC595同数据相关的引脚可以分为三类:DS:串行数据输入,接Arduino的某个数字I/O引脚。
Q0~Q7:8位并行数据输出,可以直接控制8个LED,或者是七段数码管的8个引脚。
Q7′:级联输出端,与下一个74HC595的DS相连,实现多个芯片之间的级联。
74HC595同控制相关的引脚一共有四个:SH_CP:移位寄存器的时钟输入。
上升沿时移位寄存器中的数据依次移动一位,即Q0中的数据移到Q1中,Q1中的数据移到Q2中,依次类推;下降沿时移位寄存器中的数据保持不变。
ST_CP:存储寄存器的时钟输入。
上升沿时移位寄存器中的数据进入存储寄存器,下降沿时存储寄存器中的数据保持不变。
应用时通常将ST_CP置为低点平,移位结束后再在ST_CP端产生一个正脉冲更新显示数据。
MR:重置(RESET),低电平时将移位寄存器中的数据清零,应用时通常将它直接连高电平(VCC)。
OE:输出允许,高电平时禁止输出(高阻态)。
引脚不紧张的情况下可以用Arduino的一个引脚来控制它,这样可以很方便地产生闪烁和熄灭的效果。
实际应用时可以将它直接连低电平(GND)。
对于一个最简单的74HC595应用来讲,可以用Arduino的三个数字I/O端口分别控制DS、SH_CP和ST_CP,然后将MR和OE分别接VCC和地。
利用74HC595实现多位LED显示的新方法1 引言目前,双基色发光二极管(LED)显示屏的生产制造数量比较多,其技术也相对成熟。
各个企业制造的显示屏的结构、原理基本相似,有些专业生产显示多媒体卡,因此,提高显示屏的技术性能、降低成本是各个企业竞争的关键所在。
现在,市场上销售的LED显示屏的价格基本相同,但是,不同的企业生产的显示屏的质量不同,其原因是多方面的,主要有:①LED显示模块的质量、亮度、亮度均匀性、封装等技术;②数据的通讯传送方式,抗干扰能力;③显示扫描电路电流的多点调整,控制每一点的电流。
经过多点调整的显示屏不仅均匀性比较好,而且显示图像的亮度、颜色效果更好,专用显示扫描电路具有比较好的显示效果,但是价格相对较贵。
现在,市场上销售的LED显示屏是很多企业利用相同的设计技术、方法、显示模块生产的,但其性能差别比较大。
颜色配比的不同,产生图像效果差别就很大;模块的扫描频率、工作电流既影响亮度,又涉及到使用寿命等问题。
因此,正确地确定各项技术参数是制造显示屏的关键所在,也可以说是技术经验的体现。
2 显示扫描原理各个企业制造的LED显示屏的控制结构有所不同,但是,显示屏的显示扫描电路基本相同。
双基色LED显示屏的显示扫描电路如图1所示。
在图1中,IC1、IC2是数据锁存器电路74HC595,分别锁存红色、绿色数据,它们的性能是:①串行输入8位并行输出;②数据锁存、数据清除功能;③输出具有比较强的驱动能力。
电阻RPB1、RPB2是限流电阻,根据颜色和模块的亮度来选择他们的数值。
ML1是双色LED显示模块,共有8行X8列=64个LED,其中,8个引脚是红色信号输入端,8个引脚是绿色信号输入端,8个引脚是行控制输入端,共有24个引脚。
三极管Q0,Q2,…Q7是行选通、驱动作用。
IC3是3-8地址译码电路74HC138,8个选通输出端分别控制相应的行。
图中电路是显示屏的原理电路,其数据传送方式是数据传送与行信号异步进行:首先,同时传送8位红、绿颜色数据到电路IC1、IC2并将数据锁存,然后再传送锌刂菩藕诺懔烈恍校蹋牛模 酉吕粗馗瓷鲜霾僮鳎 皇切行藕乓浦料乱恍校 来蔚降诎诵形 梗 词且淮瓮暾 纳 韫 獭?br> 显示扫描电路板的设计要求具有比较低的生产成本,因此,许多企业都设计成双面电路板,这样可以节省约三分之一的电路板成本。
利用74HC595实现多位LED显示的新方法
摘要:本文介绍了应用移位寄存器芯片74HC595实现LED动、静态显示的基本原理。
提出了一种用74HC595实现多位LED显示的新方法。
同时对该系统的硬件组成和软件实现作了详细说明。
实际应用表明,此方法连线简单方便,成本低廉,可用于24位LED或更多位LED显示。
关键词:LED 74HC595 动态显示静态显示
1 引言
单片机应用系统中使用的显示器主要有LED和LCD两种。
近年来也有用CRT显示的。
前者价格低廉,配置灵活,与单片机接口方便;后者可进行图形显示,但接口较复杂,成本也较高。
LED(Ling Emiting Diode)是发光二极管的缩写。
实际应用非常普遍的是八段LED 显示器。
LED显示器在大型报时屏幕,银行利率显示,城市霓虹灯建设中,得到广泛应用。
在这些需要多位LED显示的场合,怎样实现系统稳定,价格低廉的显示,成为决定其成本的关键所在。
2 74HC595实现LED静、动态显示基本原理
74HC595是美国国家半导体公司生产的通用移位寄存器芯片。
并行输出端具有输出锁存功能。
与单片机连接简单方便,只须三个I/O口即可。
而且通过芯片的Q7引脚和SER引脚,可以级联。
而且价格低廉,每片单价为1.5元左右.
2.1 静态显示
每位LED显示器段选线和74HC595的并行输出端相连,每一位可以独立显示(见图1)。
在同一时间里,每一位显示的字符可以各不相同(每一位由一个74HC595的并行输出口控制段选码)。
N位LED显示要求N个74HC595芯片及N+3条I/O口线,占用资源较多,而且成本较高。
这对于多位LED显示很不利。
2.2 动态显示
在多位LED显示时,为了简化电路,降低成本,节省系统资源,将所有的N位段选码并联在一起,由一片74HC595控制(见图2)。
由于所有LED的段选码皆由一个74HC595并行输出口控制,因此,在每一瞬间,N位LED会显示相同的字符。
想要每位显示不同的字符,就必须采用扫描的方法,即在每一瞬间只使用一位显示字符。
在此瞬间,74HC595并行输出口输出相应字符段选码,而位选则控制I/O口在该显示位送入选通电平,以保证该位显示相应字符。
如此轮流,使每位分时显示该位应显示字符。
由于74HC595具有锁存功能,而且串行输入段选码需要一定时间,因此,不需要延时,即可形成视觉暂留效果。
N位LED显示时,只需要一片74HC595即可完成,成本最低。
但是,此种方法的最大弱点就是当LED的位数大于12位时,出现闪烁现象,这是所有动态LED显示方式共同的弱点。
3 多位LED显示方法的实现
图3 多位LED动态显示驱动电路连线图
为实现24位或更多位LED显示,本文提出了一种全新的方法。
此方法结合了动态和静态显示的优点,可以说是两者的结合。
连线图如图3所示。
段选码由三片74HC595控制,段选数据由74HC595的SER引脚串行输入,由于输出使能时钟RCLK并接在一起,因此,三片74HC595并行输出端同时输出。
而三个LED位选信号也并接在一起,因此,一次可以同时点亮三位LED。
此过程类似于静态显示。
每片74HC595并行输出端并接8位LED,用于扫描输出,此过程类似于动态扫描过程。
此方法运用3片74HC595,n条位选信号,即可实现3n位LED显示。
成本低廉,而且节省资源。
此种方法实现多位LED显示程序框图为图4所示,MCU为89S52。
示例程序如下(24位LED显示):
4 结论
实践证明,此多位LED显示方法性能稳定,如再级联一片74HC595,在不需要增加I/O口线的情况下,即可实现32位LED显示。
笔者做过48位LED显示,应稳定可靠。