1、用四个8x8点阵显示可构成16x16点阵显示器,其连接方法如图3所示。图中,将(A)和(B)的8列、(C)和(D)的8列分别对应相连,同时将(A)和(C)的8行、 (B)和(D)的8行分别对应相连。即可形成一个16行(每一行有16个LED)、16列(每一列也有16个LED)的16x16点阵显示器,可将这256个点称为一页,这样,显示字符时。只要对一页中对应的亮灭进行控制即可。1.LED点阵显示器的扫描驱动LED显示屏驱动电路的设计应与所用控制系统相配合。驱动通常分为动态扫描型及静态锁存型驱动二大类。本文以动态扫描型驱动电路的设计为例来进行分析。动态扫描型驱动方式是指显示屏上的16行发光二极管共
2、用一组列驱动寄存器,然后通过行驱动管的分时工作,来使每行LED的点亮时间占总时间的116。只要每行的刷新速率大于50 Hz,利用人眼的视觉暂留效应,人们就可以看到一幅完整的文字或画面。74HC138 作用原理于高性能的存贮译码或要求传输延迟时间短的数据传输系统,在 高性能存贮器系统中,用这种译码器可以提高译码系统的效率。将快速赋能电路用于高速存贮器时,译码器的延迟时间和存贮器的赋能时间通常小于存贮器的典型存取时间,这就是说由肖特基钳位的系统译码器所引起的有效系统延迟可以忽略不计。HC138 按照三位二进制输入码和赋能输入条件,从8 个输出端中译出一个 低电平输出。AT89S52单片机有四个IO
3、口(P0、P1、P2、P3),每个IO口有8位,如果都采用并行输出,显然不能满足要求,因此,本设计中的行扫描驱动采用并口输出,而场扫描驱动采用串口输出。2.行扫描驱动由于16x64点阵显示器有16行,为充分利用单片机的接口,本电路中加入了一个4-16线译码器74LS154,其输入是一个16进制码,解码输出为低态扫描信号,它们的管脚示意图如图4所示。把74LS154的G1和G2引脚接地,然后以A、B、C、D四脚为输入端。就会形成16种不同的输入状态,分别为00001111,然后使每种状态只控制一路输出,即会有16路输出。如果一行64点全部点亮,则通过74LS154的电流将达640 mA,而实际上
4、,74LS154译码器提供不了足够的吸收电流来同时驱动64个LED同时点亮,因此,应在74LS154每一路输出端与16x64点阵显示器对应的每一行之间用一个三极管来将电流信号放大,本文选用的是达林顿三极管TIP127。这样,74LS154某一输出脚为低电平时,对应的三极管发射极为高电平,从而使点阵显示器的对应行也为高电平。3.列扫描驱动本系统场扫描驱动电路的设计可用串入并出的通用集成电路74HC595来作为数据锁存。74HC595是一个八位串行输入三态并行输出的移位寄存器,其管脚见图4所示,其中SI是串行数据的输入端,RCK是存储寄存器的输入时钟,SCK是移位寄存器的输入时钟,QH是串人数据的
5、输出,G是对输人数据的输出使能控制,QAQH为串入数据的并行输出。从SI口输入的数据可在移位寄存器的SCK脚上升沿的作用下输入到74HC595中。并在RCK脚的上升沿作用下将输入的数据锁存在74HC595中,这样,当G为低电平时,数据便可并行输出。为了避免与PC机串口输入的数据相互干扰,也可使用模拟串口P14P1.7来分别输出串行数据、移位时钟SCK、存储信号RCK和并行输出的使能信号G。为了消除电源电压的波动及行扫描管压降(第一行点亮的点数不同,将引起管压降的变化,从而影响通过LED管的电流)的变化对LED显示屏亮度的影响,设计时可采用列恒流驱动电路,可选用三极管8550和外围元件构成列恒流
6、驱动电路,并通过调整100 k可调电阻使三极管处于放大状态,同时将集电极电流调整为10 mA,从而使点亮对应点阵时通过LED的电流不变。4.扫描显示工作过程将8片74HC595进行级连,可共用一个移位时钟SCK及数据锁存信号RCK。这样,当第一行需要显示的数据经过8x8=64个SCK时钟后便可将其全部移入74HC595中,此时还将产生一个数据锁存信号RCK将数据锁存在74HC595中,并在使能信号G的作用下,使串入数据并行输出,从而使与各输出位对应的场驱动管处于放大或截止状态;同时由行扫描控制电路产生信号使第一行扫描管导通,相当于第一行LED的正端都接高,显然,第一行LED管的亮灭就取决于74
7、HC595中的锁存信号;此外,在第一行LED管点亮的同时,再在74HC595中移入第二行需要显示的数据,随后将其锁存,同时由行扫描控制电路将第一行扫描管关闭而接通第二行,使第二行LED管点亮,以此类推,当第十六行扫描过后再回到第一行,这样,只要扫描速度足够高,就可形成一幅完整的文字或图像。5.Protues原理图四、 软件设计7.4.2 程序代码#includechar tab32=0x00,0x00,0x10,0x00,0x90,0x3F,0x90,0x10,0xFF,0x10,0x90,0x10,0x90,0xBF,0x10,0x40,0x00,0x30,0xFE,0x0F,0x22,0x
8、02,0x22,0x42,0x22,0x82,0xFE,0x7F,0x00,0x00,0x00,0x00;char tab132=0x10,0x04,0x10,0x03,0xD0,0x00,0xFF,0xFF,0x90,0x00,0x10,0x11,0x00,0x08,0x10,0x04,0x10,0x03,0xD0,0x00,0xFF,0xFF,0xD0,0x00,0x10,0x03,0x10,0x04,0x10,0x08,0x00,0x00;char tab232=0x10,0x04,0x60,0x04,0x02,0x7C,0x0C,0x03,0xC0,0x20,0x04,0x20,0x0
9、4,0x20,0x04,0x20,0x04,0x20,0xFC,0x3F,0x04,0x20,0x04,0x20,0x04,0x20,0x04,0x20,0x00,0x20,0x00,0x00 ; void delay(int z) int x,y; for(x=z;x0;x-) for(y=10;yy-);void main(void) int i,j;while(1) for(i=200;ii-) P3 = 0xf0; P0 = tab0; P2 = tab1; delay(1); P3 = 0xf1; P0 = tab2; P2 = tab3; P3 = 0xf2; P0 = tab4;
10、 P2 = tab5; P3 = 0xf3; P0 = tab6; P2 = tab7; P3 = 0xf4; P0 = tab8; P2 = tab9; P3 = 0xf5; P0 = tab10; P2 = tab11; P3 = 0xf6; P0 = tab12; P2 = tab13; P3 = 0xf7; P0 = tab14; P2 = tab15; P3 = 0xf8; P0 = tab16; P2 = tab17; P3 = 0xf9; P0 = tab18; P2 = tab19; P3 = 0xfa; P0 = tab20; P2 = tab21;P3 = 0xfb; P0
11、 = tab22; P2 = tab23; P3 = 0xfc; P0 = tab24; P2 = tab25; P3 = 0xfd; P0 = tab26; P2 = tab27; P3 = 0xfe; P0 = tab28; P2 = tab29; P3 = 0xff; P0 = tab30; P2 = tab31; for(j=200;jj-) P3 = 0xf0; P0 = tab10; P2 = tab11; P0 = tab12; P2 = tab13; P0 = tab14; P2 = tab15; P0 = tab16; P2 = tab17; P0 = tab18; P2 = tab19;P3 = 0xf5; P0 = tab110; P2 = tab111; P0 = tab112; P2 = tab113; P0 = tab114; P2 = tab115; P0 = tab116; P2 = tab117; P0 = tab118; P2 = tab119; P0 = tab120; P2 = tab121; P3 = 0xfb; P0 = tab122; P2 = t
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1