LED点阵屏设计一

news/2024/10/28 18:30:16/

LED点阵屏设计一

象棋小子    1048272975

1. LED点阵屏显示原理概述

图1-1为一种8x8的LED点阵单色行共阳模块的内部等效电路图,对于红光LED其工作正向电压约为1.8v,其持续工作的正向电流一般10ma左右,峰值电流可以更大。如下图,当某一行线为高电平而某一列线为低时,其行列交叉的点就被点亮,当某一行线为低电平时,无论列线如何,对应的这一行的点全部为暗。LED点阵屏显示就是通过一定的频率进行逐行扫描,数据端不断输入数据显示,只要扫描频率足够高,由于人眼的视觉残留效应,就可以看到完整的文字或图案信息。通常有4、8、16线扫描方式,扫描行数越少,点阵的显示亮度越好,但相应硬件数据寄存器需求也越多。


图1-1 点阵内部原理图

2. 硬件设计

通常为了显示较复杂的图案以及较多的信息,是需要较大的点阵屏的。而大的点阵屏都是可以通过小的点阵屏级联拼接而成。因此,点阵屏模块通常都会有这一级的输入信号以及下一级模块的输入信号接口,以便级连。笔者此处以设计单一16x16点阵模块为例,级联成32x32点阵显示来作分析。

2.1. 电源设计

模块由5v供电,应注意级联总的最大功率需求,同时如果电源有较大的纹波(如开关电源供电),将造成点阵显示的不稳定,感觉到闪。因此有必要在各个芯片供电引脚,扫描线三极管驱动处加入滤波电容,并且靠近相应的器件引脚放置。5v电源及三极管驱动线需通过较大的电流,应加大走线宽度。

2.2. 数据接口

数据接口如果采用并口,只会造成布线困难,基本无法级连,宜采用串入并出的数据传输方式。笔者采用两块串入并出接口芯片74hc595级连成16位数据接口。为保证点阵发光均匀,LED灯应该采用恒流驱动方式,而不是用恒压驱动。虽然LED灯在脉冲驱动下可以通过更大的峰值电流,如60ma以上,但如果扫描线故障未动态扫描时,未加限流,长时间有很大的电流通过LED,将造成LED烧毁。因此,应加入限流电阻,使LED灯不管在什么情况下都不会有烧毁的危险。设置LED灯的静态驱动电流为ID =15ma,这个电流点亮度好,并且有一定的裕度,即使电源输出电压偏高也不会烧毁LED,限流电阻值

R = (VCC- VCE – VOL – VLED) / ID (图2.2-1电路)

VCC为5v供电,VCE为三极管C、E间饱和电压,估为0.2v,具体查看相应三极管的曲线图,VOL为74hc595输出低电平时电压,不同灌电流,此值不一样,估为0.2v,具体查看规格书,VLED为红光驱动电压,估为1.7v,根据上式可算出限流电阻为R = 200R。数据接口兼容3.3v / 5v,输出低电平时,对应的LED灯才能点亮。


图2.2-1 数据口驱动图示

2.3. 线扫描接口

LED点阵屏需接收逐行扫描信号,扫描到相应行时,对应的数据接口数据有效,即显示这一行的数据信息。笔者采用16线逐行扫描方式,为减少接口信号,是需要采用译码器来产生16线扫描信号的。此处通过两块74hc138级连成4线16线译码器,任一时刻只选中某一线进行显示,输出低电平选择有效。

2.4. 线扫描驱动

由于线扫描作为一行LED的公共端,一行LED全亮时,线扫描电流最大为16 X ID = 240ma,远超出74hc138的最大承受电流,应加驱动电路,本模块采用能输出较大电流的三极管作为驱动。由于译码器低电平有效,故只有PNP型三极管才能在VEB导通时,三极管C、E才能导通。三极管无特殊要求,集电极电流能达500ma以上即可,此处选用PNP s8550三极管。三极管应工作在饱和开关状态,不然三极管具有较大的电流和较大的压差,系统能效较低。三极管驱动电流应大于行LED全亮时的电流,不然LED亮度会不均,影响效果。由s8550规格书基极、集电极电流曲线图可知,当基极电流IB= 2ma时,最大集电流 IC约为250ma,大于行LED全亮时的最大电流ID(240ma)。IB电流只要保证最大的集电流满足要求即可,无需过大,不然只是增加IB电流的消耗。设置IB电流为2.5ma,从而确保三极管饱和工作,集电流最大输出电流能大于行LED全亮时的电流。基极偏置电阻

Rb =(VCC - VEB – VOL) / IB(图2.4-1电路)

VCC为5v供电,VEB为三极管E、B间的导通电压0.7v,VOL为74hc138输出低电平时电压,可根据规格书估为0.3v,故Rb = 1.6k,取Rb =1.5k即可。数据接口兼容3.3v / 5v。


图2.4-1 线扫描驱动图示

3. 最终模块原理图

4. 效果图


图4-1 16x16点阵模块级联成32x32点阵


图4-2 32x32汉字显示效果




http://www.ppmy.cn/news/444376.html

相关文章

【Python从入门到进阶】24、urllib获取网站电影排行

接上篇《23、urllib使用post请求百度翻译》 上一篇我们讲解了如何使用urllib实现百度翻译的效果。本篇我们来讲解如何使用urllib抓取某某电影排行榜信息。 一、某某电影介绍 1、某某电影网站 某某电影成立于2005年,最初只是一个小型的电影社区,但随着…

51-LED点阵屏

1.LED点阵屏由若干个独立的LED组成,LED以矩阵的形式排列,以灯珠亮灭来显示文字,图片,视频等。 点阵屏的驱动关键:移位寄存器74HC595; 可位寻址:可以对寄存器中的某一位进行定义;例如&#xff…

51单片机学习笔记(串口通信 LED点阵屏 DS1302)

四、串口通信 1.基本概念 通信中最重要的两个方面: 信息表示和解析方法; 信息的传输方法。 通信双方事先需要约定好信息的表示方法和解析方法,做到一致,否则信息不能有效传递。 信号的传输方法是指经过编码后的通信信息如何在传…

按键控制8*8led点阵C语言程序,单片机按键控制8X8LED点阵屏显示图形 程序的几个问题...

/* 名称:按键控制8X8LED点阵屏显示图形 说明:每次按下K1时,会使8X8LED点阵屏循环显示不同图形。 本例同时使用外部中断和定时中断。 */ #include #include #define uchar unsigned char #define uint unsigned int //待显示图形编码 uchar code M[][8]= {{0x00,0x7e,…

STC8H驱动hub75e接口的64*64LED点阵屏

由于最近在做毕业设计,应导师要求学习LED点阵屏的显示原理,学习并驱动hub75e接口的64*64LED点阵屏。点阵屏上一个点有三个颜色分量R,G,B,1为亮,0为灭。当这个点为110时,颜色为红色和绿色的混合-…

LED点阵屏实现文字滚动

void display_onechar(){//实现一个字滚动int i0;int j0;int k0;int m0;int n0;int change;for(i0;i<16;i){//16个状态&#xff0c;文字从无到有移动16次n0;while(1){m0;for(k16-i;k<16;k){change(my_char[0][m]<<8)|my_char[0][m16];LAT 0; for(j 0; j < 16;…

第八章、stc89c52中LED点阵屏的控制

1、LED点阵屏简介 LED点阵屏由若干个独立的LED组成&#xff0c;LED以矩阵的形式排列&#xff0c;以灯珠亮灭来显示文字、图片、视频等。LED点阵屏广泛应用于各种公共场合&#xff0c;如汽车报站器、广告屏以及公告牌等LED点阵屏分类 按颜色&#xff1a;单色、双色、全彩 …

51定时中断系统控制LED点阵屏显示逐帧动画

写在前面 最近回头看之前写的文章感到一种很浓的公式感&#xff0c;我确实是提前写好了模板每次都套用&#xff0c;整篇看下来感觉就像是在交老师布置的实验报告&#xff0c;看起来很成熟但实际上背离了自己的初衷&#xff0c;接下来我会尽可能的复现自己在做的时候的尝试和思…