具体的LED显示屏控制电路如图1所示。整个电路由单片机89C52、点阵数据存储器6264、列驱动电路ULN2803、行驱动电路TIP122、移位寄存器4094及附属电路组成。该电路所设计的电子屏可显示10个汉字,需要40个8×8 LED点阵模块,可组成16×160的
西北民族大学单片机课程设计报告课题名称:16×16LED点阵显示学院:电气工程学院专业班级:09级电气工程及其自动化3班学号:P091812929姓名:蒋呈指导老师:马蕙兰16*16点阵设计摘要单片机自20世纪70年代问世以来,以极其高的性价比
ACALLD1MS;显示2MS ACALLD1MS DJNZR3,C16;一屏16列是否显示完 MOVR3,#16 DJNZR5,C1;未显示5次,继续 INCDPTR;一屏反复显示5次完,字码表初值加2 INCDPTR //INCDPTR;一屏反复显示5次完,字码表初值加2 //INCDPT
16x16点阵不用4片138的,用2片就够了,把第一片的A0、A1、A2和第二片的A0、A1、A2接在一起,第一片的s1接+5v,s2s3和第二片的s1接在一起,第二片的s2s3接在一起接地,将两个3线——8线译码器扩展成4线—
先定义一个128字节显示缓存,将要显示的数据填到里面,然后一行行的按你的电路输出数据,输出完一行后选择对应的列点亮LED,延时一端时间,再进行下一行的输出,如此循环扫描完所有的列.刷新频率就是你输出数据及延时的周期越短频
for(disrow=0;disrow <16;disrow++)//扫描16行 { loadoneline(); //装载一线点阵数据 sendoneline(); //发送一线点阵数据 XBYTE[0xFFFF]= 0x10 + disrow; // 点亮屏幕 XBYTE[0xFFFF] = 0x20 + disrow; //
16×16点阵LED电子显示屏的设计
define uchar unsigned char sbit DS=P2^0;sbit CLK=P2^1;sbit STB=P2^2;//sbit OE=P3^0;//取模软件:PCtoLCD2002 //取模方式: 阳码逐行逆向 uchar code Hz[][32]={ {0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
该电路所设计的电子屏可显示10个汉字,需要40个8×8 LED点阵模块,可组成16×160的矩形点阵。由于AT89C52仅有8k存储空间,而显示的内容由PC机控制,因此不可能预先把需要显示的内容做成点阵存在单片机中,而只能由PC机即时地把所需显示的点阵
1、单元板是LED的显示核心部件之一,单元板的好坏,直接影响到显示效果的。单元板由LED模块,驱动芯片和PCB电路板组成。LED模块,其实是由很多个LED发光点用树脂或者塑料封装起来点阵。2、驱动芯片主要是74HC595 74HC245/244 74
{ loadoneline(); //装载一线点阵数据 sendoneline(); //发送一线点阵数据 XBYTE[0xFFFF]= 0x10 + disrow; // 点亮屏幕 XBYTE[0xFFFF] = 0x20 + disrow; //锁住74LS595 } } col++; //列指针递增 } col =
先定义一个128字节显示缓存,将要显示的数据填到里面,然后一行行的按你的电路输出数据,输出完一行后选择对应的列点亮LED,延时一端时间,再进行下一行的输出,如此循环扫描完所有的列.刷新频率就是你输出数据及延时的周期越短频
点阵LED电子显示屏的设计
具体的LED显示屏控制电路如图1所示。整个电路由单片机89C52、点阵数据存储器6264、列驱动电路ULN2803、行驱动电路TIP122、移位寄存器4094及附属电路组成。该电路所设计的电子屏可显示10个汉字,需要40个8×8 LED点阵模块,可组成16×160的
板子上所配器件清单:74HC595 2个 74HC164 2个 三极管8550 16个 电阻1K 16个 电阻 200欧姆 16个 点阵底座圆排母 2根 弯排针 1根 点阵PCB空板 1个 参考资料:http://hi.baidu.com/dsu5566/a
点阵有分共阴和共阳的,还有得看你是行扫描和列扫描,硬件电路可以由串行控制和并行控制,如果单片机IO口够用的话,用并口是最简便的啦,如果是串行的,那可以欧诺个74HC154和74HC573,控制好移位数据就可以的了,不懂可以问我,
16×16的点阵共有256个发光二极管,显然单片机没有这么多端口,如果我们采用锁存器来扩展端口,按8位的锁存器来计算,1 6×16的点阵需要256/8=32个锁存器。这个数字很庞大,因为我们仅仅是16×16的点阵,在实际应用中的显示屏往往要大
首先是让汉字能够静态显示,显示一段时间后(时间可能很短)把所显示的汉字编码移一位重新送出,比如要向左移动,原本显示在第一列的数据就丢弃了,把第二列的数据送到第一列上显示,依次移动显示一屏,显示一段时间再进
DJNZ R4,SCAN8 MOV R4,#16 DJNZ R3,SCAN16 AJMP END16 SCAN16:MOV A,R2 CLR C SUBB A,#32 MOV R2,A AJMP START END16:INC DPTR INC DPTR MOV A,R2 CLR C SUBB A,#32 MOV R2,A MOV A,R0 MOV R3,A
基于51单片机的16×16点阵屏流动显示目录一,制作所需器材二,STC89C52简介三,点阵的简介四,程序五,演示六,总结一.制作所需器材1.单片机开发扳一块;2.16*16LED点阵一块;3.杜邦线若干;返回二.STC89C52简介STC89C52是S
基于51单片机的16x16 led点阵显示屏设计原理与电路图
用一个74HC138控制列四个74HC595控制行就行了,我现在也正在弄16X32的点阵
电阻计算用R=(Vcc-Vd)/I即可。Vcc电源电压。Vd是二极管压降。I取在0.015A~0.03A左右吧。1楼不串电阻在3.3V用着可能还好。如果是5V的话,一些小发光管可能会爆了。而且系统峰值电流会相当大。
74hc595要用四片 行列扫描 把两组(一组两片)的锁存脉冲接在一起。然后把第一片的Q7‘接入第二片的SDA。另外把每组SCK接在一起。十六位的移动是只 你往595里送个数据。那么595就会把最先送入的数据丢掉。然后整体向
SETB CHKCLKO DJNZ R2, HC59502 RET
四个74HC595联级驱动16x16点阵LED,如何设计驱动电路?
第一章 16*16点阵LED电子显示屏的方案论证 1.1 方案论证 从理论上讲,不论显示图形还是文字,只要控制与组成这些图形的或文字的各个点所在位置相对的LED器件发光,就可以得到我们想要的显示结果,这种同时控制各个发光电亮灭的
16*16led在proteus中叫汉字点阵图。16乘16的led点阵是比较常用的汉字显示工具,我们知道显示器都是由一个个点组成的,也可以理解成像素。因为英文字母及符号的显示最小单位为6乘8像素,所以要比较完整的显示英文字母,需要一
首先,从Proteus元件库中找到“MATRIX-8X8-RED”元器件,并将四块该元器件放入Proteus文档区编辑窗口中。此时需要注意,如果该元器件保持初始的位置(没有转动方向),我们要首先将其左转90°,使其水平放置,那么此时它的左面
制的16*16点阵显示汉字,出现字体是镜像的现象是由于取点阵时扫描方向搞反了。改正方法是逆序读点阵数组数据,即原来从数组0下标开始读
EDA点阵式led显示屏控制电路设计 控制16*16点阵显示字母,预置四个字母或汉字连续显示求程序
LED显示器是用发光二极管构成的显示器。构成方式有两大类:一是笔段字符式,一般又有三种:7段(/8段)数码管、15段(/17段)数码管和6段符号显示器;二是点阵字符式,一般有5×7、5×8、8×8和16×16等若干种
可左移和静态显示,程序如下:include
这个很简单,但说起来有点麻烦,LED点阵它是行列共用的,有两种方式扫描显示,分别是行扫和列扫,假如是行扫,那么列上输出的就是数据要采用横向取模,反之则纵向取模。也就是当行扫的时候在同一时间只有一行是亮的,此时
该电路所设计的电子屏可显示10个汉字,需要40个8×8 LED点阵模块,可组成16×160的矩形点阵。由于AT89C52仅有8k存储空间,而显示的内容由PC机控制,因此不可能预先把需要显示的内容做成点阵存在单片机中,而只能由PC机即时地把所需显示的点阵
Proteus中只有5×7和8×8等LED点阵,并没有16×16LED点阵,而在实际应用中,要良好地显示一个汉字,则至少需要16×16点阵。下面我们就首先介绍使用8×8点阵构建16×16点阵的方法,并构建一块16×16LED点阵,用于本例的
基于单片机的LED点阵显示设计
51和led点阵一般要用到动态扫描的方式,也就是显示的画面不是一下子就把整个画面的内容全部显示出来,而是逐行显示的,只不过显示的频率超过了50HZ 甚至更高,所以我们看起来是“不晃眼”的。也就是说,屏幕显示是由行显示组成的(即子程序)。行显示再细分就是有位显示组成,不过行显示就不用逐位显示了。其实行显示就是串入并出,即行显示是一下子就显示出来的。 我给你传一份资料你参考一下。。。。。。LED显示器是用发光二极管构成的显示器。构成方式有两大类:一是笔段字符式,一般又有三种:7段(/8段)数码管、15段(/17段)数码管和6段符号显示器;二是点阵字符式,一般有5×7、5×8、8×8和16×16等若干种点阵结构。为了适应不同电路的需要,根据构成LED显示器的发光二极管公共极的极性,有共阴极和共阳极两种形式。对共阴极数码管,公共阴极接地,当各段阳极上的电平为高电平时,该段接通亮,电平为0时,该段关断不亮。对共阳极数码管则刚好相反,高电平时不亮,低电平时亮。这种器件根据显示数位分类,可以分为一位、双位和多位LED显示器,一位LED显示器就称作LED数码管,两位以上的一般就称作LED显示器。 要实现LED的汉字显示在进行、列的扫描的同时还要对其进行供电,因为每行16个二极管点亮电流很大,普通芯片的输出电流远不能满足。下面为你提供实例参考 以16×16显示器为例,你可以用并行扩展芯片8255实现点阵的行扫描,8255可以将单片机一个8位并行I/O口扩展成16位(8255的PA口、PB口同时使用);列扫描的16位可以用两个TTL门74LS164(8位移位寄存器),74LS164再接ULN2803以对电流放大后再接16×16点阵。74LS164的移位触发端A、B可以接上一片的相邻输出端,Q1或Q7这样实现能实现多个芯片连续移位,以实现显示屏汉字从右到左或从左到右的移动显示功能。 由于百度知道不能插入图片,所以不提供图片了,将具体引脚接法告诉你:8255的D0--D7数据输入端接单片机P2.0--P2.7(任一并行I/O口),A0接P2.0,A1接P2.1,/WR接单片机的/WR,/RD接高电平,如果单片机资源足够,则片选端/CS接低电平;74LS164芯片的触发端A、B接到一起,与CK脚、CLK脚、随意接到单片机的I/O上。
什么主控芯片?C语言还是汇编?
一般会说16*16点阵,点阵有单色和双色还有三原色组成的彩色点阵,我猜想你这个2位16*16是不是就是说的那种双色点阵。 比如这个点阵有两种颜色,也就是每个点有两种颜色,那么每个点就需要用两个二进制位来控制,可能就是这个意思。 再啰嗦解释一下:如果普通单色点阵显示一个字需要16*2个字节的存储空间的话(8位为一个字节),那么你这种就显示一个两种混合色的字的话,就需要16*2*2个字节
要不了这么多驱动两个74HC59和一个74HC154.给你图你看看。
4个74HC595分两对儿,每一对儿第一个的串行输出接第二个的串行输入,时钟 -脉冲 -数据 分别定义。希望帮到你。。。
最简单的就是将32个IO全用上,然后按照连接顺序编写显示程序就可以了,加群131843360交流吧
请提供LED型号
/* 24MHZ的晶振,点线扫描地址为:0xFFFF */ #include #include #include #include #define uchar unsigned char #define uint unsigned int #define SPEED 6 uchar col, disrow; uint word; uchar code HZ[]; uchar BUFF[6]; void loadoneline(void); //装载某行一线点阵数据 void sendoneline(void); //串行发送一行线点阵数据 /****************************主函数***************************/ void main(void) { uchar i; col = 0; word = 0; while(1) { while(col <16) // 循环16次,点亮并移动一个汉字 { for(i=0; i <SPEED; i++) //汉字在屏幕上的停留时间(即移动速度快慢) { for(disrow=0;disrow <16;disrow++)//扫描16行 { loadoneline(); //装载一线点阵数据 sendoneline(); //发送一线点阵数据 XBYTE[0xFFFF]= 0x10 + disrow; // 点亮屏幕 XBYTE[0xFFFF] = 0x20 + disrow; //锁住74LS595 } } col++; //列指针递增 } col = 0; word= word + 32; // 一个汉字移动后,指向下一个汉字 if(word >= 1600) word = 0; // 移动50个汉字后,重新开始 } } /****************用"字模"等软件提出要显示的字符汉字点阵码*************************/ uchar code HZ[]= { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, //0x08,0x20,0x06,0x30,0x04,0x40,0x3F,0xF8,0x21,0x08,0x3F,0xF8,0x21,0x08,0x21,0x08, 0x3F,0xF8,0x21,0x08,0x01,0x00,0xFF,0xFE,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,/*"单",0*/ 0x00,0x40,0x10,0x40,0x10,0x40,0x10,0x44,0x1F,0xFE,0x10,0x00,0x10,0x00,0x10,0x00, 0x1F,0xF0,0x10,0x10,0x10,0x10,0x10,0x10,0x20,0x10,0x20,0x10,0x40,0x10,0x80,0x10,/*"片",1*/ 0x10,0x00,0x10,0xF8,0x10,0x88,0xFE,0x88,0x10,0x88,0x10,0x88,0x38,0x88,0x34,0x88, 0x54,0x88,0x50,0x88,0x91,0x08,0x11,0x0A,0x12,0x0A,0x12,0x0A,0x14,0x06,0x10,0x00,/*"机",2*/ 0x00,0x00,0x0F,0xF0,0x08,0x10,0x0F,0xF0,0x08,0x10,0x0F,0xF0,0x08,0x10,0x0F,0xF0, 0x }
单片机自20世纪70年代问世以来,以极其高的性能价格比受到人们的重视和关注,所以应用很广,发展很快。单片机的特点是体积小、集成度高、重量轻、抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好,开发较为容易。正因为单片机有如此多的优点,因此其应用领域之广,几乎到了无孔不入的地步。在我国,单片机已被广泛地应用在工业自动化控制、自动检测、智能仪表、智能化家用电器、航空航天系统和和国防军事、尖端武器等各个方面。我们可以开发利用单片机系统以获得很高的经济效益。更重要的意义是单片机的应用改变了控制系统传统的设计思想和方法。以前采用硬件电路实现的大部分控制功能,正在用单片机通过软件方法来实现。这种以软件结合硬件或取代硬件并能提高系统性能的控制技术称为微控制技术。例如,本文所要论述的通过单片机来控制LED点阵显示。 LED是发光二极管英文Light Emitting Diode 的简称,是六十年代末发展起来的一种半导体显示器件,七十年代,随着半导体材料合成技术、单晶制造技术和P-N结形成技术的研究进展,发光二极管在发光颜色、亮度等性能得以提高并迅速进入批量化和实用化。进入八十年代后,LED在发光波长范围和性能方面大大提高,并开始形成平板显示产品即LED显示屏。 LED电子显示屏是利用发光二极管点阵模块或像素单元组成的平面式显示屏幕。它是集微电子技术、光电子技术、计算机技术、信息处理技术于一体的显示系统,是目前国际上极为先进的显示媒体。由于它具有发光效率高、使用寿命长、组态灵活、色彩丰富、工作性能稳定以及对室内室外环境适应能力强等优点而日渐成为显示媒体中的佼佼者。在我国改革开放之后,特别是进入90年代国民经济高速增长,对公众场合发布信息的需求日益强烈,LED显示屏的出现正好适应了这一市场形势,因而在LED显示屏的设计制造技术与应用水平上都得到了迅速的提高,生产也得到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。LED显示屏经历了从单色、双色图文显示屏,到图像显示屏的发展过程。 随着信息产业的高速发展,LED显示屏作为信息传播的一种重要手段成为现代信息化社会的一个闪亮标志。近年LED显示屏已广泛应用于室内、外需要进行服务内容和服务宗旨宣传的公众场所如银行、营业部、车站、机场、港口、体育场馆等信息的发布,政府机关政策、政令,各类市场行情信息的发部和宣传等。目前,对于那些需要显示的信息量不是很大,分辨率不是很高,又需要制造成本相对比较低的场合,使用大、小屏幕LED点阵显示器是比较经济适用的,它可以用单片机控制实现显示字符、数字、汉字和简单图形,可以根据需要使用不同字号、字型。 汉字显示方式是先根据所需要的汉字提取汉字点阵(如16×16点阵),将点阵文件存入ROM,形成新的汉字编码。而在使用时则需要先根据新的汉字编码组成语言,再由MCU根据新编码提取相应的点阵进行汉字显示。具体显示技术和原理将会在正文中得到详细论述。 第二章 系统整体设计方案 2.1 需要实现的功能 设计一个室内用16×16点阵LED图文显示屏,要求在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形或文字应稳定、清晰无串扰。图形或文字显示有静止、移入移出等显示方式。 2.2 LED显示特点 LED发光灯可以分为单色发光灯、双色发光灯、三色发光灯、面发光灯、闪烁发光灯、电压型发光灯等多种类型。按照发光灯强度又可以分为普通亮度发光灯、高亮度发光灯、超高亮度发光灯等。这种单个的发光灯适宜用做指示灯,如电源指示、电路状态指示灯,进而对能够转变成电信号的各种物理量进行指示。也可以用多个LED发光灯组成固定的字符或图形进行显示,如大型剧场会堂的出入口及洗手间的显示。和很多应用术语一样,LED图文显示屏并没有一个公认的严格的定义,一般把显示图形和/或文字的LED显示屏称为图文屏。这里所说的图形,是指由单一亮度线条组成的任意图形,以便于不同亮度(灰度)点阵组成的图像相区别。图文显示屏的主要特征是只控制LED点阵中各发光器件的通断(发光或熄灭),而不控制LED的发光强弱。LED图文显示屏的外观可以做成条形,叫做条形图文显示屏(简称条屏),也可以按一定高度比例做成矩形的平面图文显示屏。其实条屏只不过是其宽度远大于高度的平面显示屏,在显示与控制的原理上并无区别。 从理论上说,不论显示图形还是文字,都是控制与组成这些图形或文字的各个点所在位置相对应的LED器件发光。通常事先把需要显示的图形文字转换成点阵图形,再按照显示控制的要求以一定的格式形成显示数据。对于只控制通断的图文显示屏来说,每个LED发光器件占据数据中的1位(1bit),在需要该LED器件发光的数据中相应的位填1,否则填0。当然,根据控制电路的安排,相反的定义同样是可行的。这样依照所需显示的图形文字,按显示屏的各行各列逐点填写显示数据,就可以构成一个显示数据文件。显示图形的数据文件,其格式相对自由,只要能够满足显示控制的要求即可。文字的点阵格式比较规范,可以采用现行计算机通用的字库字模。组成一个字的点阵,其大小也可以有16×16、24×24、32×32、48×48等不同规格。汉字的点阵结构相应的显示数据是用16进制格式以字节为单位表示的。 用点阵方式构成图形或文字,是非常灵活的,可以根据需要任意组合和变化,只要设计好合适的数据文件,就可以得到满意的显示效果。因而采用点阵式图文显示屏显示经常需要变化的信息,是非常有效的。 /* 24MHZ的晶振,点线扫描地址为:0xFFFF */ #include #include #include #include #define uchar unsigned char #define uint unsigned int #define SPEED 6 uchar col, disrow; uint word; uchar code HZ[]; uchar BUFF[6]; void loadoneline(void); //装载某行一线点阵数据 void sendoneline(void); //串行发送一行线点阵数据 /****************************主函数***************************/ void main(void) { uchar i; col = 0; word = 0; while(1) { while(col <16) // 循环16次,点亮并移动一个汉字 { for(i=0; i <SPEED; i++) //汉字在屏幕上的停留时间(即移动速度快慢) { for(disrow=0;disrow <16;disrow++)//扫描16行 { loadoneline(); //装载一线点阵数据 sendoneline(); //发送一线点阵数据 XBYTE[0xFFFF]= 0x10 + disrow; // 点亮屏幕 XBYTE[0xFFFF] = 0x20 + disrow; //锁住74LS595 } } col++; //列指针递增 } col = 0; word= word + 32; // 一个汉字移动后,指向下一个汉字 if(word >= 1600) word = 0; // 移动50个汉字后,重新开始 } } /****************用"字模"等软件提出要显示的字符汉字点阵码*************************/ uchar code HZ[]= { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, //0x08,0x20,0x06,0x30,0x04,0x40,0x3F,0xF8,0x21,0x08,0x3F,0xF8,0x21,0x08,0x21,0x08, 0x3F,0xF8,0x21,0x08,0x01,0x00,0xFF,0xFE,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,/*"单",0*/ 0x00,0x40,0x10,0x40,0x10,0x40,0x10,0x44,0x1F,0xFE,0x10,0x00,0x10,0x00,0x10,0x00, 0x1F,0xF0,0x10,0x10,0x10,0x10,0x10,0x10,0x20,0x10,0x20,0x10,0x40,0x10,0x80,0x10,/*"片",1*/ 0x10,0x00,0x10,0xF8,0x10,0x88,0xFE,0x88,0x10,0x88,0x10,0x88,0x38,0x88,0x34,0x88, 0x54,0x88,0x50,0x88,0x91,0x08,0x11,0x0A,0x12,0x0A,0x12,0x0A,0x14,0x06,0x10,0x00,/*"机",2*/ 0x00,0x00,0x0F,0xF0,0x08,0x10,0x0F,0xF0,0x08,0x10,0x0F,0xF0,0x08,0x10,0x0F,0xF0, 0x }
已发proteus仿真至邮箱,注意查收,附相关资料!望采纳!
看看行不?