RGB与HSV原理

RGB与HSV原理
RGB与HSV原理

RGB和HSV是两种颜色表示方法。

RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。目前的显示器大都是采用了RGB颜色标准,在显示器上,是通过电子枪打在屏幕的红、绿、蓝三色发光极上来产生色彩的,目前的电脑一般都能显示32位颜色,约有一百万种以上的颜色。

RGB是从颜色发光的原理来设计定的,通俗点说它的颜色混合方式就好象有红、绿、蓝三盏灯,当它们的光相互叠合的时候,色彩相混,而亮度却等于两者亮度之总和(两盏灯的亮度嘛!),越混合亮度越高,即加法混合。

有色光可被无色光冲淡并变亮。如蓝色光与白光相遇,结果是产生更加明亮的浅蓝色光。知道它的混合原理后,在软件中设定颜色就容易理解了.

红、绿、蓝三盏灯的叠加情况,中心三色最亮的叠加区为白色,加法混合的特点:越叠加越明亮。

红、绿、蓝三个颜色通道每种色各分为255阶亮度,在0时“灯”最弱——是关掉的,而在255时“灯”最亮。当三色数值相同时为无色彩的灰度色,而三色都为255时为最亮的白色,都为0时为黑色。

HSV是基于人的眼睛对色彩的识别,是一种从视觉的角度定义的颜色模式。是将色彩分解为色调,饱和度及亮度。通过调整色调,饱和度及亮度得到颜色和变化。

下面来了解下HSV颜色空间

(这图大家将就看下)

红,蓝,绿三种颜色夹角120度,就是RGB模式下的3个颜色分量。按我的理解,他们就相当于3个向量,这个六棱锥空间内的点代表了所有的颜色,R(红),G(绿),B(蓝)三个向量相加便可以得到空间中任意一点。当三个向量强度(亮度)相等时,加起来的方向就是V,即灰色。当灰色最亮时,即三个向量强度最大时,便得到白色。当三个向量强度最低时(亮度为0),便得到黑色。

HSV也是这样三个向量,分别代表色调,亮度,饱和度。因为HSV是基于人的眼睛对色彩的识别,所以我们可以通过慢慢调整三个分量的大小,来得到我们想要的颜色。而在GRB 模式下,我们是不可能这样做的。要注意的是H是一个角度,这三个向量相加同样可以得到这个六棱锥空间中的任意一点。所以RGB与HSB可以相互转换。

在计算机中往往使用RGB颜色系统,因为它操作简单并且和典型的显示硬件直接对应。一般使用32位来表示一个颜色。开始8位代表透明度,接下来每个颜色分量占8位,依次是R,G,,B。所以在编程时,我们往往使用一个int型的变量来储存一种颜色。当我们要对颜色做运算时,需要先将颜色分解在合成。

让我们来看下面这段代码:

/* 输入一个颜色,将它拆成三个部分:

* 红色,绿色和蓝色

*/

public static function retrieveRGBComponent( color:uint ):Array

{

var r:Number = (color >> 16) & 0xff;

var g:Number = (color >> 8) & 0xff;

var b:Number = color & 0xff;

return [r, g, b];

}

上面这个函数中将颜色值依次右移16位,8位,0位,目的是将个颜色分量移到最后8位,然后和OxFF做与运算,0xFF就是前面都是0,最后8位1。与运算的法则就是遇0得0,遇1就是本身。这样就把个颜色分量分离了出来。接下来就可以对每个颜色分量做运算了。

/*

* 红色,绿色和蓝色三色组合

*/

public static function generateFromRGBComponent( rgb:Array ):uint

{

if( rgb == null || rgb.length != 3 ||

rgb[0] < 0 || rgb[0] > 255 ||

rgb[1] < 0 || rgb[1] > 255 ||

rgb[2] < 0 || rgb[2] > 255 )

return 0xFFFFFF;

return rgb[0] << 16 | rgb[1] << 8 | rgb[2];

}

将运算好的各颜色分量重新依次左移16位,8位,0位,就组合得到新的颜色值了。

16×16点阵显示屏电路印制板图的设计

《基础强化训练》报告 题目:16×16点阵显示屏电路印制板图的设计专业班级: 学生姓名: 指导教师: 武汉理工大学信息工程学院 2010 年7 月13 日

基础强化训练任务书 学生姓名:专业班级: 指导教师:工作单位: 题目: 16×16点阵显示屏电路印制板图的设计 主要目的就是对学生进行基础课程、基本技能、基本动手能力的强化训练,提高学生的基础理论知 识、基本动手能力,提高人才培养的基本素质。 一、训练内容和要求 1、基础课程和基本技能强化训练 (1)设计一个16 ×16点阵显示屏电路; (2)对所设计电路的基本原理进行分析; 2、文献检索与利用、论文撰写规范强化训练 要求学生掌握基本的文献检索方法,科学查找和利用文献资料,同时要求学生获得正确地撰写论文的基本能力,其中包括基本格式、基本排版技巧和文献参考资料的写法、公式编排、图表规范制作、中英文摘要的写法等训练。 3、基本动手能力和知识应用能力强化训练 (1)学习PROTEL软件; (2)绘制电路的原理图和PCB版图,要求图纸绘制清晰、布线合理、符合绘图规范; 4、查阅至少5篇参考文献,按《武汉理工大学课程设计工作规范》要求撰写基础强化训练报告书,全文用A4纸打印。 二、初始条件 计算机;Microsoft Office Word 软件;PROTEL软件 三、时间安排 1、20010年7 月12日集中,作基础强化训练具体实施计划与报告格式要求的说明;学生查阅相关资料,学习电路的工作原理。 2、2010 年7 月12 日,电路设计与分析。 3、2010 年7 月13日至2010 年7 月15日,相关电路原理图和PCB版图的绘制。 4、2010年7 月16日上交基础强化训练成果及报告,进行答辩。 指导教师签名:年月日 系主任(或责任教师)签名:年月日

12864点阵型液晶显示屏的基本原理与使用方法(很详细)

12864点阵型液晶显示屏的基本原理与使用方法(很详细) 点阵LCD的显示原理 在数字电路中,所有的数据都是以0和1保存的,对LCD控制器进行不同的数据操作,可以得到不同的结果。对于显示英文操作,由于英文字母种类很少,只需要8位(一字节)即可。而对于中文,常用却有6000以上,于是我们的DOS前辈想了一个办法,就是将ASCII表的高128个很少用到的数值以两个为一组来表示汉字,即汉字的内码。而剩下的低128位则留给英文字符使用,即英文的内码。 那么,得到了汉字的内码后,还仅是一组数字,那又如何在屏幕上去显示呢?这就涉及到文字的字模,字模虽然也是一组数字,但它的意义却与数字的意义有了根本的变化,它是用数字的各位信息来记载英文或汉字的形状,如英文的'A'在字模的记载方式如图1所示: 图1“A”字模图 而中文的“你”在字模中的记载却如图2所示:

图2“你”字模图 12864点阵型LCD简介 12864是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×64全点阵液晶显示器组成。可完成图形显示,也可以显示8×4个(16×16点阵)汉字。 管脚号管脚名称LEVER管脚功能描述 1VSS0电源地 2VDD+5.0V电源电压 3V0-液晶显示器驱动电压 4D/I(RS)H/L D/I=“H”,表示DB7∽DB0为显示数据 D/I=“L”,表示DB7∽DB0为显示指令数据5R/W H/L R/W=“H”,E=“H”数据被读到DB7∽DB0 R/W=“L”,E=“H→L”数据被写到IR或DR 6E H/L R/W=“L”,E信号下降沿锁存DB7∽DB0 R/W=“H”,E=“H”DDRAM数据读到DB7∽DB0 7DB0H/L数据线 8DB1H/L数据线 9DB2H/L数据线 10DB3H/L数据线 11DB4H/L数据线 12DB5H/L数据线 13DB6H/L数据线 14DB7H/L数据线 15CS1H/L H:选择芯片(右半屏)信号 16CS2H/L H:选择芯片(左半屏)信号 17RET H/L复位信号,低电平复位

LED点阵原理图

LED点阵书写显示屏的设计 2011-12-23 22:51:14 来源:21IC 关键字:STC89C58LED双色点阵红外光电三板管光笔 近年来,点阵LED显示屏利用发光二极管构成的点阵模块或像素单元组成可变面积的显示屏幕,以可靠性高、使用寿命长、环境适应能力强、性能价格比高、使用成本低等特点,已成为众多显示媒体以及户外作业显示的电子工具,广泛地应用于车站、宾馆、金融、证券、邮电、体育等广告发布或交通运输等行业。目前LED显示屏的设计已经有多种方法可以实现,本设计是基于STC89C58单片机利用自制的光笔中红外光电三极管检测光笔触及位置处红色LED灯的点亮,计算出光笔位置的行列坐标,并根据按键设置的不同工作模式控制LED显示,从而实现点亮、划亮、反显、清屏、笔画拖动、轮流显示等功能。 1 系统设计方案 用双色LED点阵(红色和绿色)模块组合成32×32的LED点阵屏。其中红色LED作微亮扫描检测用,绿色LED作显示用,用红外光电三极管自制光笔。在检测时依次点亮红色LED,当点亮到某个LED时,如果此时光笔放在该LED时,这时红外光电三极管的阻值会发生变化,通过相应的检测电路可以得出一个高低电平的变化,单片机检测到信号变化时就可以判断光笔的当前位置。 该方案简单易行,对光笔位置判断的灵敏度较高,抗外界干扰能力强。采用双色点阵和红外光电三极管能够有效地减少环境可见光和显示LED(绿色)所发的光线对光笔中光电三极管的干扰。 2 系统结构及单元模块设计 2.1 系统总体框图 系统主要由微处理器STC89C58,32×32双色LED点阵显示、光笔及检测电路、外界光照强度检测电路、按键输入电路、液晶显示模块等几个部分组成。系统硬件结构框图如图1所示。

点阵显示屏成功点亮 原理图 程序

16×16点阵显示屏成功点亮!! 看到江同学的3216屏(),对于我来说,稍显复杂,所以决定做个1616的 屏看看效果,原理图就是以下了,注意做1616时,要去掉一个74LS154(当然这里也能换用 74HC154,虽然功耗大,但价格较低),经过两天的奋斗,终于完工了。简单的调试后,点亮 了!!编个流动显示的程序,哈哈,很炫啊。心动不如赶快行动啊!! 我是把点阵块焊到一块板子上,可方便检查有无虚焊,控制部分放到了另一张板上,做成 的实物图就是下面的了,视频在这里:(注:以下原理图均来自 )

/********************************************************* 程序名称:LED1616点阵流动显示汉字 简要说明:最大可显示16*16汉字 P0口接上行线,P2口接下行线,P3口接扫描线编写:https://www.360docs.net/doc/a15636724.html, 改编:springvirus *********************************************************/ #include

#define hang1 P0 //上行线 #define hang2 P2 //下行线 #define lie P1 //列线 #define sum sizeof(hanzi)/32 //自动计算汉字字数 /*****参数设置*****/ #define ziti 16 //字体大小(宽度) #define light 50 //显示亮度 #define move_speed 50 //移动速度 unsigned char code hanzi[]={ /*-- 文字: 自--*/ /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/ 0x00,0x00,0x00,0xF8,0x48,0x48,0x4C,0x4B,0x4A,0x48,0x48,0x48,0xF8,0x00,0x00,0x00 , 0x00,0x00,0x00,0xFF,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0xFF,0x00,0x00,0x00, /*-- 文字: 制--*/ /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/ 0x00,0x50,0x4F,0x4A,0x48,0xFF,0x48,0x48,0x48,0x00,0xFC,0x00,0x00,0xFF,0x00,0x00, 0x00,0x00,0x3F,0x01,0x01,0xFF,0x21,0x61,0x3F,0x00,0x0F,0x40,0x80,0x7F,0x00,0x00, /*-- 文字: 小--*/ /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/ 0x00,0x00,0x00,0xC0,0x70,0x20,0x00,0xFF,0x00,0x10,0x20,0xC0,0x80,0x00,0x00,0x00, 0x04,0x02,0x01,0x00,0x00,0x40,0x80,0x7F,0x00,0x00,0x00,0x00,0x01,0x07,0x02,0x00, /*-- 文字: 型--*/ /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/ 0x10,0x12,0x92,0x7E,0x12,0x12,0xFE,0x12,0x12,0x10,0xFC,0x00,0x00,0xFF,0x00,0x00 , 0x40,0x42,0x49,0x48,0x48,0x48,0x49,0x7E,0x48,0x48,0x48,0x4A,0x4C,0x4B,0x40,0x00 , /*-- 文字: 点--*/ /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/ 0x00,0x00,0x00,0xE0,0x20,0x20,0x20,0x3F,0x24,0x24,0x24,0xF4,0x24,0x00,0x00,0x00, 0x00,0x40,0x30,0x07,0x12,0x62,0x02,0x0A,0x12,0x62,0x02,0x0F,0x10,0x60,0x00,0x00, /*-- 文字: 阵--*/ /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/ 0xFE,0x02,0x12,0x2A,0xC6,0x88,0xC8,0xB8,0x8F,0xE8,0x88,0x88,0x88,0x88,0x00,0x0 0, 0xFF,0x00,0x02,0x04,0x03,0x04,0x04,0x04,0x04,0xFF,0x04,0x04,0x04,0x04,0x04,0x00, /*-- 文字: 显--*/

8×8点阵LED原理及电路图

8×8点阵LED原理及电路图 2010-01-10 11:26:18 来源:互联网电子工程师论坛 点阵LED原理及电路图 8×8 点阵LED的工作原理。 图(1)为8×8点阵LED外观及引脚图,其等效电路如图(2)所示,只要其对应的X、Y轴顺向偏压,即可使LED发亮。例如如果想使左上角LED点亮,则Y0=1,X0=0即可。应用时限流电阻可以放在X轴或Y轴。 图(1)8×8点阵LED外观及引脚图

图(2)8×8点阵LED等效电路

图(3)8×8点阵LED电路原理 点阵LED扫描法介绍 点阵LED一般采用扫描式显示,实际运用分为三种方式: (1)点扫描; (2)行扫描; (3)列扫描。 若使用第一种方式,其扫描频率必须大于16×64=1024Hz,周期小于1ms即 可。若使用第二和第三种方式,则频率必须大于16×8=128Hz,周期小于7.8ms即可符合视觉暂留要求。此外一次驱动一列或一行(8颗LED)时需外加驱动电路提高电流,否则LED亮度会不足。如图3所示。

下面是一个用P1口控制扫描,用74HC164控制显示输出,使8×8点阵LED显示一个“×”的例程。如图(3)所示。 CLK EQU P3.2 DINA EQU P3.3 DINB EQU P3.4 CLEAR EQU P3.5 ORG 0000H AJMP MAIN ORG 0100H MAIN: MOV SP,#70H ;设堆栈指针 MOV 50H,#07EH ;设置发送的列数据(Y0~Y7) MOV 51H,#0BDH MOV 52H,#0DBH MOV 53H,#0E7H MOV 54H,#0E7H MOV 55H,#0DBH MOV 56H,#0BDH MOV 57H,#07EH CLR CLEAR ;初始化I/O口 SETB CLK SETB DINA SETB DINB

8×8点阵LED原理及应用

8×8点阵LED原理及应用 作者:华信培训来源:本站原创点击数:5672更新时间:2005-6-30 为配合《实验108×8LED扫描输出实验》,特给出8×8点阵LED的工作原理。图(1)为8×8点阵LED外观及引脚图,其等效电路如图(2)所示,只要其对应的X、Y轴顺向偏压,即可使LED发亮。例如如果想使左上角LED点亮,则Y0=1,X0=0即可。应用时限流电阻可以放在X轴或Y轴。 图(1)8×8点阵LED外观及引脚图

图(2)8×8点阵LED等效电路 图(3)8×8点阵LED电路原理 点阵LED扫描法介绍 点阵LED一般采用扫描式显示,实际运用分为三种方式: (1)点扫描; (2)行扫描; (3)列扫描。 若使用第一种方式,其扫描频率必须大于16×64=1024Hz,周期小于1ms即可。若使用第二和第三种方式,则频率必须大于16×8=128Hz,周期小于7.8ms即可符合视觉暂留要求。此外一次驱动一列或一行(8颗LED)时需外加驱动电路提高电流,否则LED亮度会不足。如图3所示。 下面是一个用P1口控制扫描,用74HC164控制显示输出,使8×8点阵LED显示一个“×”的例程。如图(3)所示。 CLK EQU P3.2 DINA EQU P3.3 DINB EQU P3.4 CLEAR EQU P3.5

ORG0000H AJMP MAIN ORG0100H MAIN: MOV SP,#70H;设堆栈指针 MOV50H,#07EH;设置发送的列数据(X0~X7)列数据编码,列为阴极,行为阳极(由于实验中74HC164输出至LED点阵之间接有一非门驱动电路,故行为低电平有效) MOV51H,#0BDH MOV52H,#0DBH MOV53H,#0E7H MOV54H,#0E7H MOV55H,#0DBH MOV56H,#0BDH MOV57H,#07EH CLR CLEAR;初始化I/O口 SETB CLK SETB DINA SETB DINB SETB CLEAR mainloop: mov r6,#8h;设置扫描次数 mov dptr,#09000h;读取扫描端口数据 MOV R1,#50H;指定列数据指针 flashcy: MOV A,@R1;读取列数据 MOV R0,A INC R1;列数据指针加1 CLR A MOVC A,@A+DPTR MOV P1,#0FFH LCALL SENDTO MOV P1,A INC DPTR

88点阵LED显示屏的原理详细讲解与汉字代码

首先我们看一下8*8led显示屏?的原理 从图中可以看出,8X8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;要实现显示图形或字体,只需考虑其显示方式。通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭。例如:要实现一根柱形的亮法,如图所示,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:一根竖柱:对应的列置1,而行则采用扫描的方法来实现。一根横柱:对应的行置0,而列则采用扫描的方法来实现 下图是4个8*8LED组成的显示屏。

这里我把点阵LED显示屏制作的电路原理分成两个部分来介绍即显示屏电路和显示屏驱动电路。 一、显示屏电路 本人用的是共阴极的8*8点阵屏,在市场上是比较容易买到,下图是8*8点阵屏的实物图。 点阵屏有两个类型,一类为共阴极(左),另一类则为共阳极(右),下图给出了两种类型的内部电路原理及相应的管脚图。

LED阵列的显示方式是按显示编码的顺序,一行一行地显示。每一行的显示时间大约为4ms,由于人类的视觉暂留现象,将感觉到8行LED是在同时显示的。若显示的时间太短,则亮度不够,若显示的时间太长,将会感觉到闪烁。本文采用低电平逐行扫描,高电平输出显示信号。即轮流给行信号输出低电平,在任意时刻只有一行发光二极管是处于可以被点亮的状态,其它行都处于熄灭状态。 为了方便调试本文把4块8*8组成的16*16的点阵屏的行信号扫描输出管脚和列信号显示输出管脚分别引到显示屏的两边。 Protel原理图如下: 如图4 所示的原理图中的Si(i=1,2,3,…,16) 代表行扫描信号输出,Di(i=1,2,3,…,16)代表列显示信号输出。 实物电路图的正反面如下:

LED点阵电子显示屏电路原理图

点阵式汉字LED显示屏电路原理图及单片机程序: 程序清单: ORG 00H LOOP: MOV A,#0FFH ;开机初始化,清除画面 MOV P0,A ;清除P0口 ANL P2,#00 ;清除P2口 MOV R2,#200 D100MS: MOV R3,#250 ;延时100毫秒 DJNZ R3,$ DJNZ R2,D100MS MOV 20H,#00H ;取码指针的初值 l100: MOV R1,#100 ;每个字的停留时间 L16: MOV R6,#16 ;每个字16个码 MOV R4,#00H ;扫描指针清零 MOV R0,20H ;取码指针存入R0 L3: MOV A,R4 ;扫描指针存入A MOV P1,A ;扫描输出 INC R4 ;扫描指针加1,扫描下一个 MOV A,R0 ;取码指针存入A MOV DPTR,#TABLE ;取数据表的上半部分的代码 MOVC A,@A+DPTR MOV P0,A ;输出到P0 INC R0 ;取码指针加1,取下一个码。 MOV A,R0 MOV DPTR,#TABLE ;取数据表下半部份的代码 MOVC A,@A+DPTR MOV P2,A ;输出到P2口 INC R0

MOV R3,#02 ;扫描1毫秒 DELAY2: MOV R5,#248 ; DJNZ R5,$ DJNZ R3,DELAY2 MOV A,#00H ;清除屏幕 MOV P0,A ANL P2,#00H DJNZ R6,L3 ;一个字16个码是否完成? DJNZ R1,L16 ;每个字的停留时间是否到了? MOV 20H,R0 ;取码指针存入20H CJNE R0,#0FFH,L100 ;8个字256个码是否完成? JMP LOOP ;反复循环 TABLE : ;汉字“倚”的代码 db 01H,00H,02H,00H,04H,00H,1FH,0FFH db 0E2H,00H,22H,00H,22H,0FCH,26H,88H db 2AH,88H,0F2H,88H,2AH,0FAH,26H,01H db 63H,0FEH,26H,00H,02H,00H,00H,00H 希望能帮你

LED点阵显示屏设计原理及制作

LED点阵显示屏设计原理及制作 汉字显示屏到处可见,被广泛应用于与汽车报站器,广告屏等。本文中的16*16LED显示屏是采用4块8*8LED合并而成的。 下图是4个8*8LED组成的显示屏。 (图1) 这里我把点阵LED显示屏制作的电路原理分成两个部分来介绍即显示屏电路和显示屏驱动电路。 一、显示屏电路 本人用的是共阴极的8*8点阵屏,在市场上是比较容易买到,下图是8*8点阵屏的实物图。

(图2) 点阵屏有两个类型,一类为共阴极(左),另一类则为共阳极(右),下图给出了两种类型的内部电路原理及相应的管脚图。 (图3)

LED阵列的显示方式是按显示编码的顺序,一行一行地显示。每一行的显示时间大约为4ms,由于人类的视觉暂留现象,将感觉到8行LED是在同时显示的。若显示的时间太短,则亮度不够,若显示的时间太长,将会感觉到闪烁。本文采用低电平逐行扫描,高电平输出显示信号。即轮流给行信号输出低电平,在任意时刻只有一行发光二极管是处于可以被点亮的状态,其它行都处于熄灭状态。 为了方便调试本文把4块8*8组成的16*16的点阵屏的行信号扫描输出管脚和列信号显示输出管脚分别引到显示屏的两边。 Prot EL原理图如下:

(图4) 如图4 所示的原理图中的Si(i=1,2,3,...,16) 代表行扫描信号输出,Di(i=1,2,3, (16) 代表列显示信号输出。 实物电路图的正反面如下:

(图5) 二、显示屏驱动电路 显示屏驱动电路的原理图如下: 显示屏驱动电路主要由主芯片控制电路、电源电路、控制信号放大电路等组成。 1、主芯片控制电路 该部分电路主要由AT89S52和74LS154组成。单片机的P0和P2号控制显示信号的输出,P1号的低4位控制74LS154的译码输入,从而控制扫描信号的输出。 2、电源电路 整个电路的供电由USB电源提供,利用我们的电脑主机USB接口可以输出+5V电压,方便我们在实验室调试

8X8_LED点阵显示驱动程序以及原理图

在8x8led点阵上显示柱形,让其先从左到右平滑移动三次,其次从右到左平滑移动三次,再次从上到下平滑移动三次,最后从下到上平滑移动三次,如此循环下去。 2.电路原理图 图4.24.1 3.硬件电路连线 (1).把“单片机系统”区域中的p1端口用8芯排芯连接到“点阵模块”区域中的“dr1-dr8”端口上; (2).把“单片机系统”区域中的p3端口用8芯排芯连接到“点阵模块”区域中的“dc1-dc8”端口上;4.程序设计内容 (1).8x8点阵led工作原理说明 8x8点阵led结构如下图所示

图4.24.2 从图4.24.2中可以看出,8x8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,如图49所示,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述: 一根竖柱:对应的列置1,而行则采用扫描的方法来实现。 一根横柱:对应的行置0,而列则采用扫描的方法来实现。 5.汇编源程序 org 00h start: nop mov r3,#3 lop2: mov r4,#8 mov r2,#0 lop1: mov p1,#0ffh

mov dptr,#taba mov a,r2 movc a,@a+dptr mov p3,a inc r2 lcall delay djnz r4,lop1 djnz r3,lop2 mov r3,#3 lop4: mov r4,#8 mov r2,#7 lop3: mov p1,#0ffh mov dptr,#taba mov a,r2 movc a,@a+dptr mov p3,a dec r2 lcall delay djnz r4,lop3 djnz r3,lop4 mov r3,#3 lop6: mov r4,#8 mov r2,#0 lop5: mov p3,#00h mov dptr,#tabb mov a,r2 movc a,@a+dptr mov p1,a inc r2 lcall delay djnz r4,lop5 djnz r3,lop6 mov r3,#3 lop8: mov r4,#8 mov r2,#7 lop7: mov p3,#00h mov dptr,#tabb mov a,r2 movc a,@a+dptr mov p1,a dec r2 lcall delay

点阵屏显示原理及实验详解讲解

标题:LED点阵屏学习攻略共享资料

LED点阵屏学习攻略 在经历了将近一个学期断断续续的点阵屏学习后,最后终于在AVR平台下完成了128*32点阵屏的无闪烁显示。现把整个学习过程总结如下: 无论是51单片机还是AVR单片机,点阵屏的显示原理是一样的,所以首先从51讲起。 说明:以下所有试验如无特殊说明均在Keil uVision3 + Proteus 6.9 SP5下仿真完成。 一.基于51的点阵屏显示:(1)点亮第一个8*8点阵: 1.首先在Proteus下选择我们需要的元件,AT89C52、74LS138、MATRIX-8*8-GREEN(在这里使用绿色的点阵)。在Proteus 6.9中8*8的点阵总共有四种颜色,分别为MATRIX-8*8-GREEN,MATRIX-8*8-BLUE,MATRIX-8*8-ORANGE ,MATRIX-8*8-RED。 在这里请大家牢记:红色的为上列选下行选;其它颜色的为上行选下列选!而所有的点阵都是高电平选中列,低电平选中行!也就是说如果某一个点所处的行信号为低,列信号为高,则该点被点亮!此结论是我们编程的基础。 2.在选择完以上三个元件后,我们开始布线,具体如下图: 这里P2是列选,P3连接38译码器后作为行选。 选择38译码器的原因:38译码器每次可输出相应一个I/O口的低电平,正好

与点阵屏的低电平选中行相对,并且节省了I/O口,大大方便了我们的编程和以后的扩展。 3.下面让我们把它点亮,先看一个简单的程序: (将奇数行偶数列的点点亮,效果如下图) 下面是源代码: /************8*8LED点阵屏显示*****************/ #include void delay(int z) //延时函数 { int x,y; for(x=0;x

单色点阵原理图

8 8点阵原理图 8×8 点阵LED的工作原理。 图(1)为8×8点阵LED外观及引脚图,其等效电路如图(2)所示,只要其对应的X、Y轴顺向偏压,即可使LED发亮。例如如果想使左上角LED点亮,则Y0=1,X0=0即可。应用时限流电阻可以放在X轴或Y轴。 图(1)8×8点阵LED外观及引脚图 图(2)8×8点阵LED等效电路

图(3)8×8点阵LED电路原理 点阵LED扫描法介绍 LED一般采用扫描式显示,实际运用分为三种方式: (1)点扫描; (2)行扫描; (3)列扫描。 16×64=1024Hz,周期小于1ms即 可。若使用第二和第三种方式,则频率必须大于16×8=128Hz,周期小于7.8ms即可符合视觉暂留要求。此外一次驱动一列或一行(8颗LED)时需外加驱动电路提高电流,否则LED 亮度会不足。如图3所示。 P1口控制扫描,用74HC164控制显示输出,使8×8点阵LED显示一个“×”的例程。如图(3)所示。 MOV SP,#70H ;设堆栈指针 MOV 50H,#07EH ;设置发送的列数据(Y0~Y7) MOV 51H,#0BDH MOV 52H,#0DBH MOV 53H,#0E7H MOV 54H,#0E7H MOV 55H,#0DBH MOV 56H,#0BDH

MOV 57H,#07EH CLR CLEAR ;初始化I/O口 SETB CLK SETB DINA SETB DINB SETB CLEAR mov r6,#8h ;设置扫描次数 mov dptr,#09000h ;读取扫描端口数据MOV R1,#50H ;指定列数据指针flashcy: MOV A,@R1 ;读取列数据 MOV R0,A INC R1 ;列数据指针加1 CLR A MOVC A,@A+DPTR MOV P1,#0FFH LCALL SENDTO MOV P1,A INC DPTR LCALL DELAY DJNZ R6,flashcy SJMP MAINLOOP sendt ;发送数据子程序PUSH ACC CLR CLK MOV R7,#08H MOV A,R0 CLR C SENDCY: RRC A MOV DINA,C SETB CLK CLR CLK DJNZ R7,SENDCY POP ACC RET DELAY: MOV R7,#01 ;延时子程序

点阵LED的工作原理

针对我们在用的单元板,简要做个控制说明 常用的是08接口的LED显示板,这种板子原理相对简单,数据走线也很直观,所以就以此现实板来举例。 1,单元板输入08接口的接口定义: 接口解释:ABCD是4个行选信号,实际上是用4个二进制位计数来实现的。 A为最低位,D为最高位,从0记录到15,板子上的2个138组成一个4-16译码器,会自动选通第0行和第15行。 R0、R1、G0、G1分别是红色和绿色595的数据,SCK和LT分别是595的时钟和锁存,OE是整个单元板的显示时能,OE为0时单元板暗亮,为1时高亮。OE是为了适应不同厂家的单元板信号的。

08接口单元板工作原理简介: 一个单元板的宽和高的点数是64*32点,分上下两个半屏,两个半屏共用时钟、锁存和OE,R0、 G0是上半屏数据,R1、G1是下半屏数据。从单元板的显示面看,数据是从右侧向左输入,一行是64个点,也就是通过8个595控制,因为是双色,每个半屏是两行595,整个屏是4行595。 以一个单元板为例介绍控制卡工作顺序:把显示缓冲里的第一行红色数据送往R0、第一行绿色数据送往G0;显缓的第8行红色数据送往R1、第8行绿色数据送往G1,每行是8个数据——>关闭OE使能——>行选选中第0行、LT锁存——>开启OE使能,数据显示。 间隔一定时间3-5ms,重复以上循环,行选第1行,送第1行和第9行数据... 间隔一定时间3-5ms,重复以上循环,行选第2行,送第2行和第10行数据... 以此类推

附加资料:仅作了解之用。 8×8 点阵LED的工作原理 8×8 点阵LED的工作原理。 图(1)为8×8点阵LED外观及引脚图,其等效电路如图(2)所示,只要其对应的X、Y轴顺向偏压,即可使LED发亮。例如如果想使左上角LED点亮,则Y0=1,X0=0即可。 图(1)8×8点阵LED外观及引脚图

点阵LCD的显示原理(12864)

点阵LCD的显示原理 在数字电路中,所有的数据都是以0和1保存的,对LCD控制器进行不同的数据操作,可以得到不同的结果。对于显示英文操作,由于英文字母种类很少,只需要8位(一字节)即可。而对于中文,常用却有6000以上,于是我们的DOS前辈想了一个办法,就是将ASCII表的高128个很少用到的数值以两个为一组来表示汉字,即汉字的内码。而剩下的低128位则留给英文字符使用,即英文的内码。 那么,得到了汉字的内码后,还仅是一组数字,那又如何在屏幕上去显示呢?这就涉及到文字的字模,字模虽然也是一组数字,但它的意义却与数字的意义有了根本的变化,它是用数字的各位信息来记载英文或汉字的形状,如英文的'A'在字模的记载方式如图1所示: 图1 “A”字模图 而中文的“你”在字模中的记载却如图2所示: 图2 “你”字模图 12864点阵型LCD简介

12864是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×64全点阵液晶显示器组成。可完成图形显示,也可以显示8×4个(16×16点阵)汉字。 管脚号管脚名称LEVER 管脚功能描述 1 VSS 0 电源地 2 VDD +5.0V 电源电压 3 V0 - 液晶显示器驱动电压 4 D/I(RS) H/L D/I=“H”,表示DB7∽DB0为显示数据 D/I=“L”,表示DB7∽DB0为显示指令数据 5 R/W H/L R/W=“H”,E=“H”数据被读到DB7∽DB0 R/W=“L”,E=“H→L”数据被写到IR或DR 6 E H/L R/W=“L”,E信号下降沿锁存DB7∽DB0 R/W=“H”,E=“H”DDRAM数据读到DB7∽DB0 7 DB0 H/L 数据线 8 DB1 H/L 数据线 9 DB2 H/L 数据线 10 DB3 H/L 数据线 11 DB4 H/L 数据线 12 DB5 H/L 数据线 13 DB6 H/L 数据线 14 DB7 H/L 数据线 15 CS1 H/L H:选择芯片(右半屏)信号 16 CS2 H/L H:选择芯片(左半屏)信号 17 RET H/L 复位信号,低电平复位 18 VOUT -10V LCD驱动负电压 19 LED+ - LED背光板电源 20 LED- - LED背光板电源 表1:12864LCD的引脚说明 在使用12864LCD前先必须了解以下功能器件才能进行编程。12864内部功能器件及相关功能如下:1. 指令寄存器(IR) IR是用于寄存指令码,与数据寄存器数据相对应。当D/I=0时,在E信号下降沿的作用下,指令码写入IR。 2.数据寄存器(DR) DR是用于寄存数据的,与指令寄存器寄存指令相对应。当D/I=1时,在下降沿作用下,图形显示数据写入DR,或在E信号高电平作用下由DR读到DB7∽DB0数据总线。DR和DDRAM之间的数据传输是模块内部自动执行的。

LCD12864液晶显示原理电路图程序

LCD12864系列点阵型液晶显示模块 使用说明书 一、OCM12864液晶显示模块概述 1.OCM12864液晶显示模块是128×64点阵型液晶显示模块,可显示各种字符及图形,可与CPU 直接接口,具有8位标准数据总线、6条控制线及电源线。采用KS0107控制IC。 2.外观尺寸:113×65×11mm(ocm12864-1), 93×70×10mm(ocm12864-2) 78×70×10mm(ocm12864-3), 3.视域尺寸:×38.8mm(ocm12864-1) ×38mm(ocm12864-2), 64×44mm(ocm12864-3) 4.< 5.重量:大约g 补充说明:外观尺寸可根据用户的要求进行适度调整。 二、最大工作范围 1、逻辑工作电压(Vcc):~ 2、电源地(GND):0V 3、LCD驱动电压(Vee):0~-10V 4、输入电压:Vee~Vdd 5、工作温度(Ta):0~55℃(常温) / -20~70℃(宽温) } 6、保存温度(Tstg):-10~65℃ 三、电气特性(测试条件 Ta=25,Vdd=+/ 1、输入高电平(Vih): 2、输入低电平(Vil): 3、输出高电平(Voh): 4、输出低电平(Vol): 5、工作电流: 四、接口说明 — 12864-3A接口说明表 管脚号管脚电平说明 1CSA H/L] 片选择信号,低电平时选择前64列。 2CSB H片选择信号,低电平时选择后64列。 3GND0V【 逻辑电源地。 4VCC5V逻辑电源。 5VEE-10V' LCD驱动电源。 6D/I H/L数据\指令选择,高电平:数据D0-D7将送入显示RAM; 低电平:数据D0-D7将送入指令寄存器 执行。 7R/W% 读\写选择,高电平:读数据;低电平:写数据。 H/L 8E L读写使能,高电平有效,下降沿锁定数据。

LED点阵驱动电路设计

电子技术基础课程设计说明书题目:8x8 LED点阵驱动电路设计 学生姓名:王涉华 学号: 201306050122 院(系):理学院 专业:电子科学与技术 指导教师:戴庆瑜 2015 年 12 月 28日

目录 1 选题背景 (1) 1.1 基本设计任务 (1) 1.2 发挥设计任务 (1) 1.3 设计原理 (1) 1.4 方案论证 (1) 2 电路设计 (2) 2.1 电路设计框图 (2) 2.2 工作原理 (3) 3 各主要电路及部件工作原理 (3) 3.1 555多谐振荡电路 (3) 3.2 74HC161引脚图及工作原理 (5) 3.3 74HC138引脚图及工作原理 (6) 3.4 74HC573引脚图及工作原理 (7) 3.5 AT28C16引脚图及相关参数 (7) 3.6 上电复位及开关手动复位电路设计 (8) 3.7 8x8共阴点阵 (9) 3.8 74HC04引脚图及功能 (10) 4 原理总图 (12) 5 元件清单 (13) 6 调试过程及测试数据(采用分模块调试) (13) 6.1 通电前检查 (13) 6.2 复位电路及手动开关复位电路的调试 (13) 6.3 NE55的调试 (14) 6.4 AT28C16的调试 (14) 6.5 结果观察调试 (15) 7 电路实物 (15) 7.1 整体实物电路展示 (15) 7.2 电路功能部分展示 (16) 8 小结 (19) 9 设计体会及改进意见 (19) 9.1 设计体会 (19) 9.2 设计不足 (19) 9.3 设计改进意见 (19) 参考文献 (20)

1 选题背景 LED 点阵显示是利用发光二极管点阵模块或像素单元组成的平面式显示方式。目前,由于成本及实用性的优势,以LED半导体发光器件为显示介质的大型显示屏在公共场合的广告宣传、通告发布等方面已得到广泛的应用,其驱动方式也随着技术的逐渐成熟而变得丰富多样,且各具特色。一个大型LED显示屏由上万个甚至更多的LED单元构成,而如何控制这些单一的单元按照我们的预期呈现显示内容,即LED的单元驱动电路的设计便显得尤为重要。如何设计一个既能满足显示要求又能尽量节省成本的LED驱动电路呢?在这里,我以8x8点阵为例进行研究。 1.1 基本设计任务 (1)能够显示0~9、a~z或A~Z,显示字符数量不少于8个; (2)能手动或自动循环显示字符。 1.2 发挥设计任务 可实现显示内容的左右移动。 1.3 设计原理 通过控制555单稳态触发器输入脉冲频率信号,再通过计数器作为存储器的输入,以存储器和译码器作为高低电平的输入,进而控制加在点阵 LED灯两端的电压,这样就可以实现LED的亮灭控制。 1.4 方案论证 方案一:以74HC161和74HC138构成顺序脉冲发生器,输出作为共阴8x8点阵的横向驱动,纵向驱动由三态门74HC244控制存储器AT28C16的输出来进行调节,三态门控制存储器的八位输出只有一位有效,其它处于高阻状态,依次循环。用两组8输出计数器74HC161作为AT28C16的地址输入,其中一组为另一组置位,每次可点亮一个灯,需要八分之一个字节,只需设置64个灯的总的点亮时间小于人眼的分辨时间(大概为0.02s),利用人眼

LED点阵板使用说明(原理图)

LED 16*16点阵板使用说明 V1.0 1.板子的组成 4 个大小为32mm*32mm 的8*8 共阳点阵组成16*16 点阵,点阵屏可拆装,采用圆 孔铜排针,连接性能非常好。驱动部份使用两个移位带存储器的74HC595 和两个移位寄存器74HC164 组成, 74HC595 负责列扫描数据,74HC164 负责行扫描数据。列扫描采用三极管放大电流,加大扫描强度,提 高点阵屏亮度。数据接口采用可并接方式,有输入和输出,方便并接多个单板,组成32*16、48*16、64*16 等点阵。 2.关于点阵屏。颜色有单色屏、双色屏和三基色屏,三基色屏是组成彩色屏 的最小元素。LED 点阵有4*4、4*8、5*7、5*8、8*8、16*16、24*24、40*40 等多种,很多大屏幕都是由 8*8 来组成的,比如256*128 像素的一块大屏幕,由每行32 个共16 行即512 个8*8 点阵组成。本板也 使用 4 个8*8 来组成16*16 点阵屏,多块合并可组成32*16、48*16,64*16 等。点阵屏分为共阳和共阴 两种,本板使用共阳型,如下图: 3. 电路板上主要IC A)74HC595:硅结构的CMOS 集成电路,兼容低电压TTL 电路。如图: 74HC595 是具有8 位移位寄存器和一个存储器,三态输出功能。移位寄存器和存储 器是分别的时钟。 数据在SCHcp 的上升沿输入,在STcp 的上升沿进入存储寄存器。如果两个时钟连 在一起,则移位寄存 器总是比存储寄存器早一个脉冲,电路中,将两个时钟分开控制,目的是先移好位, 再存储数据,这样 在移位的过程中,可保持输出的数据。移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’), 电路将其接入下一个IC 的输入(Ds)组成16 位移位存储。一个异步的低电平复位/MR,电路中不使用 复位信号,将此脚直接接入电源VCC)。存储寄存器有一个并行8 位的,具备三态的总线输出,当使能 OE 时(为低电平),存储寄存器的数据输出到总线,电路中直接将此脚接GND,做直接输出。详细信息 请查看74HC595 文档。 B)74HC164 :74HC164 是简单的8 位移位寄存器。 如图:输入A、B 在SCK 时钟脉冲作用下移入寄存器。A、B 是与的输 入,电路将其合并做一个输

LED点阵版使用说明(原理图)

LED 16*16点阵板使用说明 V1.1 1.板子的组成 4 个大小为32mm*32mm 的8*8 共阳点阵组成16*16 点阵,点阵屏可拆装,采用圆孔铜排针,连接性能非常好。驱动部份使用两个移位带存储器的74HC595 和两个移位寄存器74HC164 组成, 74HC595 负责列扫描数据,74HC164 负责行扫描数据。列扫描采用三极管放大电流,加大扫描强度,提 高点阵屏亮度。数据接口采用可并接方式,有输入和输出,方便并接多个单板,组成32*16、48*16、64*16 等点阵。 2.关于点阵屏。颜色有单色屏、双色屏和三基色屏,三基色屏是组成彩色屏 的最小元素。LED 点阵有4*4、4*8、5*7、5*8、8*8、16*16、24*24、40*40 等多种,很多大屏幕都是由 8*8 来组成的,比如256*128 像素的一块大屏幕,由每行32 个共16 行即512 个8*8 点阵组成。本板也 使用 4 个8*8 来组成16*16 点阵屏,多块合并可组成32*16、48*16,64*16 等。点阵屏分为共阳和共阴 两种,本板使用共阳型,如下图: 3. 电路板上主要IC A)74HC595:硅结构的CMOS 集成电路,兼容低电压TTL 电路。如图: 74HC595 是具有8 位移位寄存器和一个存储器,三态输出功能。移位寄存器和存储 器是分别的时钟。 数据在SCHcp 的上升沿输入,在STcp 的上升沿进入存储寄存器。如果两个时钟连 在一起,则移位寄存 器总是比存储寄存器早一个脉冲,电路中,将两个时钟分开控制,目的是先移好位, 再存储数据,这样 在移位的过程中,可保持输出的数据。移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’), 电路将其接入下一个IC 的输入(Ds)组成16 位移位存储。一个异步的低电平复位/MR,电路中不使用 复位信号,将此脚直接接入电源VCC)。存储寄存器有一个并行8 位的,具备三态的总线输出,当使能 OE 时(为低电平),存储寄存器的数据输出到总线,电路中直接将此脚接GND,做直接输出。详细信息 请查看74HC595 文档。 B)74HC164 :74HC164 是简单的8 位移位寄存器。 如图:输入A、B 在SCK 时钟脉冲作用下移入寄存器。A、B 是与的输 入,电路将其合并做一个输

相关文档
最新文档