当前位置:文档之家› 8x8LED点阵汉字显示设计

8x8LED点阵汉字显示设计

8x8LED点阵汉字显示设计
8x8LED点阵汉字显示设计

重庆文理学院

基于单片机

的课程设计

题目:8x8LED点阵汉字显示设计

学院:电子电气工程学院

专业:电子信息科学与技术[职]

学生姓名:罗成芳、黄普娟

学号: 201020084027、201020084025

指导教师:杨保亮

2010级电子信息科学与技术[职]

二○一三年三月十四日

8x8LED点阵汉字显示设计

摘要

本文研究了基于P89C51单片机LED8×8点阵显示屏的设计并运用Proteus 软件进行原理图绘制,运用Keil软件进行仿真和调试。主要介绍了LED8×8点阵显示屏的硬件电路设计、c语言程序设计与调试、Proteus软件绘制原理图和实物制作等方面的内容。本显示屏的设计具有体积小、硬件少、电路结构简单及容易实现等优点。能帮助广大电子爱好者了解8x8点阵汉字显示原理,认识单片机的基本结构、工作原理及应用方法,并提高单片机知识技术的运用能力。利用单片机来设计的系统,既能实现系统所需的功能,也可以满足计数的准确性、迅速性,并且电路简单、操作简单、通用性强。

目录

1 绪论 (1)

1.1 前言 (1)

1.2 选题背景 (1)

1.3设计要求 (2)

1.4此次设计研究的主要内容应解决的问题 (2)

2 总体设计方案 (2)

2.1 硬件电路组成 (2)

2.2 系统各单元电路设计 (3)

2.2.1 STC89C52单片机最小系统 (3)

2.2.2 按键控制电路 (4)

2.2.3 三极管驱动电路 (4)

2.2.4 8×8 LED点阵介绍 (5)

2.3 字符的点阵显示原理及字库代码获取方法 (6)

3 程序设计 (7)

3.1程序流程图 (7)

3.2程序设计 (7)

4 调试及性能分析 (8)

4.1系统调试 (8)

4.1.1软件调试 (8)

4.1.2硬件调试 (8)

4.2设计分析 (8)

总结 (9)

致谢 (10)

参考文献 (11)

附录 (12)

附录1 原件清单 (12)

附录2硬件原理图 (13)

附录3程序清单 (14)

1 绪论

1.1 前言

LED点阵显示屏是集微电子技术、计算机技术、信息处理技术于一体的大型显示屏系统。它以其色彩鲜艳,动态范围广,亮度高,寿命长,工作稳定可靠等优点而成为众多显示媒体以及户外作业显示的理想选择。同时也可广泛应用到军事、车站、宾馆、体育、新闻、金融、证券、广告以及交通运输等许多行业。目前大多数的LED点阵显示系统自带字库。其显示和动态效果(主要是显示内容的滚动)的实现主要依靠硬件扫描驱动,该方法虽然比较方便,但显示只能按照预先的设计进行。而实际上经常会遇到一些特殊要求的动态显示,比如电梯运行中指示箭头的上下移动、某些智能仪表幅值的条形显示、广告中厂家的商标显示等。这时一般的显示系统就很难达到要求。另外,由于受到存储器本身的局限,其特殊字符往往难以显示,同时显示内容也不能随意更改。因此就提出了一种利用PC机和单片机控制的LED显示系统通信方法。该方法可以对显示内容进行实时控制,从而实现诸如动态显示效果。同时用户也可以在PC机上进行显示效果的预览,显示内容亦可以即时修改。同时它具有发光率高、使用寿命长、组态灵活、色彩丰富以及对室内外环境适应能力强等优点。并广泛的用于公交汽车、商店、体育场馆、车站、学校、银行、高速公路等公共场所的信息发布和广告宣传。LED 显示屏发展较快,本文讲述了基于STC89C52单片机8×8 LED汉字点阵滚动显示的基本原理、硬件组成与设计、程序编写与调试、Proteus软件仿真等基本环节和相关技术。

1.2 选题背景

LED电子显示屏是随着计算机及相关的微电子﹑光电子技术的迅猛发展而形成的一种新型信息显示媒体。它利用发光二极管构成的点阵模块或像素单元组成可变面积的显示屏幕,以可靠性高、使用寿命长、环境适应能力强、性能价格比高、使用成本低等特点,在短短的十来年中,迅速成长为平板显示的主流产品,在信息显示领域得到了广泛的应用。LED 点阵电子显示屏是集微电子技术、计算机技术、信息处理技术于一体的大型显示屏系统。它以其色彩鲜艳,动态范围广,亮度高,寿命长,工作稳定可靠等优点而成为众多显示媒体以及户外作业显示的理想选择。同时也可广泛应用到军事、车站、宾馆、体育、新闻、金融、证券、广告以及交通运输等许多行业。

1.3设计要求

利用一块点阵数码板,按编程者要求实现任意符号、简单汉字的显示。

1.4此次设计研究的主要内容应解决的问题

此次设计研究的主要内容是设计一个符号显示牌:通过程序控制符号显示牌,使符号显示牌,在无按键按下时,显示”I ?U 生日快乐”,当第一次按下按键时,显示字母“μ”,当第二次按下按键时显示汉字“土”。

应解决的问题:单片机P1口的输出电流不足以驱动二极管,需要加驱动,本次研究中以S8050作为驱动,同时在S8050NPN晶体管基极加4.7K的电阻。实验前要弄清晶体管三个引脚代表的极性,以免符号显示牌不亮导致而设计失败。

2 总体设计方案

2.1 硬件电路组成

本次设计是采用以STC89C52单片机为核心芯片的电路来实现,主要由STC89C52芯片、晶振电路、三极管驱动电路、按键控制电路、8×8 LED点阵5部分组成,电路框图如图1所示。其中,STC89C52是一种带4kB闪烁可编程可擦除只读存储器(Falsh Programmable and Erasable Read OnlyMemory,FPEROM)的低电压、高性能CMOS型8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,工业标准的MCS一51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,能够进行1 000次写/擦循环,数据保留时间为10年。他是一种高效微控制器,为很多嵌人式控制系统提供了一种灵活性高且价廉的方案。因此,在智能化电子设计与制作过程中经常用到STC89C52芯片。时钟电路由STC89C52的18,19脚的时钟端(XTAI 1及XTAL2)以及12 MHz晶振X 、电容C2、C3组成,采用片内振荡方式。复位电路采用简易的上电复位电路,主要由电阻R ,R2,电容C ,开关K 组成,分别接至STC89C52的RST复位输人端。LED点阵显示屏采用8x8共64个象素的点阵,可通过万用表检测发光二极管的方法测试判断出该点阵的引脚分布。

我们把行列总线接在单片机的I/O口,然后把上面分析到的扫描代码送入总线,就可以得到显示的字符了。我们在实际应用中是将LED点阵的8条列线通过驱动电路接在P1口,8条行线通过限流电阻接在P0口。单片机STC89C52按照设定的程序在P1和P0接口输出与内部字符对应的代码电平送至LED点阵的行列线(高

电平驱动),从而选中相应的象素LED发光,并利用人眼的视觉暂留特性合成整个字符的显示。再改变取表地址实现字符的滚动显示。硬件电路组成框图如图5所示。

2.2 系统各单元电路设计

2.2.1 STC89C52单片机最小系统

最小系统包括晶体振荡电路、复位电路和电源部分。图2-2为STC89C52单片机的最小系统。

图2-2 STC89C52单片机最小系统

2.2.2 按键控制电路

单片机开始工作时,P2.0是高电平。当按键按下时,检测到一个低电平信号,改变P0口输出信号,控制8×8 LED点阵显示屏显示不同字符。

R1

10k

P2.0

图2-3 按键控制电路

2.2.3 三极管驱动电路

扫描驱动电路的功能主要是有P1口输出高电平使三极管发射结导通,发射结输出足够大的电流使二极管导通。

Q1

s8050

Q2

S8050

Q3

S8050

Q4

S8050

Q5

S8050

Q6

S8050

Q7

S8050

Q8

S8050

R1

4.7k

R2

4.7k

R3

4.7k

R4

4.7k

R5

4.7k

R6

4.7k

R7

4.7k

R8

4.7k

P1.0P1.1P1.2P1.3

P1.4P1.5P1.6P1.7

0123

4567

图2-4 三极管驱动电路

2.2.4 8×8 LED 点阵介绍

图(4)为8×8点阵LED 外观及引脚图,,只要其对应的X 、Y 轴顺向偏压,即可使LED 发亮。例如如果想使左上角LED 点亮,则电子模块中的0口为1,A 口为0即可。应用时限流电阻可以放在横轴或列轴。

图2-5 8×8点阵LED 外观及引脚

(1)把“单片机系统”区域中的P0端口用8芯排芯连接到“点阵模块”区域中的“A~H ”端口上;

(2)把“单片机系统”区域中的P1端口用8芯排芯连接到“点阵模块”区域中的“0~7”端口上;

为了方便于单片机连接,我们在焊接的过程中特意将0~7接口排列出来作为列,将A~H接口作为行,这样我们就可以直接将STC89C52单片机的P0口与0~7接口一次连接,将STC89C52单片机的P1口与A~H接口一次连接。要使LED发亮即使给予数字端高电平,字母端给予低电平,就能使二极管发亮。

2.3 字符的点阵显示原理及字库代码获取方法

我们以UCDOS中文宋体字库为例,每一个字由8行8列的点阵组成显示。我们可以把每一个点理解为一个象素,而把每一个字的字形理解为一幅图像。事实上这个汉字屏不仅可以显示汉字,也可以显示在64象素范围内的任何图形。如查用8位的STC89C52单片机控制,如图所示

图2-6 8×8点阵等效电路

为了弄清楚汉字的点阵组成规律,首先通过列扫描方法获取汉字的代码。首先将8行分成4位的上、下两部分,把发光的象素位编为0不发光的象素位为1的十六进制代码。这样就把要显示的“土“字编为如下代码:

{0xff,0xbf,0xb7,0xb7,0x81,0xb7,0xb7,0xbf}

由这个原理可以看出,无论显示何种字体或图像,都可以用这个方法来分析出他的扫描代码从而显示在屏幕上。上述方法虽然能够让我们弄清楚字符点阵代码的获取过程。字符点阵显示一般有点扫描、行扫描和列扫描3种。为了符合视觉暂留要求,点扫描方法的扫描频率必须大于16×64—1024 Hz,周期小于1 ms 即可。行扫描和列扫描方法的扫描频率必须大于16×8—128 Hz,周期小于7.8 ms 即可。

3 程序设计

3.1程序流程图

图3-1 主程序流程图3.2程序设计

根据上述所说的程序流程图,设计程序如附录3。

4 调试及性能分析

4.1系统调试

4.1.1软件调试

首先根据各单元电路模块,利用Proteus软件将总的硬件原理图绘制好,设计好各模块要使用的I/O口,如:8×8点阵LED显示屏时候插反,先检测下,无硬件错误后,再进行程序编程。

利用C语言的编程方式,将系统要求的基本功能,以及创新功能根据程序流程图编写出来,用Keil软件调试无误后,生成Hex文件。

双击Proteus中的STC89C52芯片,将Keil生成的Hex加载到芯片内,进行仿真,经调试后所编写的程序能够完美实现系统所需的各种功能。

4.1.2硬件调试

硬件调试主要是检测硬件电路是否有短路、断路、虚焊等。具体步骤及测试结果如下:

(1) 检查电源与地线是否全部连接上,用万用表对照电路原理图测试各导线是否完全连接,对未连接的进行修复。

(2) 参照原理图,检查各个器件之间的连接是否连接正确,是否存在虚焊,经测试,各连接不存在问题。

(3) 以上两项检查并修复完后,给该硬件电路上电,电源指示灯点亮。

(4) 将烧录好程序的最小单片机系统接入各模块后,各模块能过正常工作,如:数码管正常发光。

4.2设计分析

将烧录好程序的最小单片机系统与各模块连接好后,8×8点阵LED显示屏显示初始值。按键一次之后,显示屏显示滚动字符μ,再按键一次,显示屏显示汉字“土”。

经软件调试和硬件调试后,所设计的系统完美实现了所需的控制要求和创新要求。

本文设计一个8×8点阵LED汉字显示屏。经过测试,LED各点亮度均匀,可显示字母和文字,且稳定清晰无串扰。本系统具有硬件少、结构简单、容易实现,性能稳定可靠等特点。通过查阅资料,了解了LED发光原理和LED显示技术的原理和现状。在LED点阵显示屏的设计过程中,学到了很多东西,复习了Protel、Proteus、Keil等软件的基础应用。基本了解了整个嵌入式开发的流程。例如,在进行整个设计之前,应该先根据需求分析,对单片机进行选型,然后对各个硬件模块进行搭试。在画PCB电路板的时候,要注意基本的布板原则。在焊接电路板的时候,应该从最基本的最小系统开始,分模块,逐个进行焊接测试。在对各个硬件模块进行测试时,要保证软件正确的情况下去测试硬件,要不然发生错误时,不知道到底是哪一方出错了。总之,这次单片机设计,让我们受益非浅,在以后的设计过程中一定总结经验,吸取教训,为以后的学习工作打好基础。

本次课程设计是在杨老师的悉心指导下完成的,从课题的选择到设计的最终完成的每一个环节,自始至终得到杨老师的精心指导和帮助。杨老师渊博的学识、严谨的治学态度、求实创新的工作作风、对事业和科学的执着追求,以及对我们小组谆谆教诲给我留下了深刻的印象,使我受益终身。在课题的研究设计过程中,我不仅从杨老师那里学到许多专业知识,更重要的是学会了学习新知识并将其巩固的方法,这无疑是一把开启未来生活的钥匙,特此向杨老师表示衷心的感谢!

在此,还要感谢我们的同学,感谢你们的无私奉献和热情的帮助,使我们克服了很多困难,最终完成了单片机课程设计。

参考文献

[1] 潘永雄.新编单片机原理与应用(第二版)[M].西安:西安电子科技大学出版社,2007

[2] 张志良.单片机原理及控制技术[M].北京:机械工业出版社,2005

[3] 李华.MCS-51单片机实用接口技术[M].北京:北京航空航天出版社,1997

[4] 诸昌钤.LED显示屏系统原理及工程技术[M].成都:电子科技大学出版社,2000

附录

附录1 原件清单

器件名称数量

NPN(8050)8

8*8点阵数码管 3mm红色 1

电阻470欧8

电阻4.7K 8

电阻10K 1

按钮 1

万能板 1

40PIN2.54mm单排针20

排插16

连接线(杜邦线)22

极性电容10uf 1

晶振(12MHZ) 1

瓷片电容30pf 2

STC89C52 1

附录2硬件原理图

附录3程序清单

#include

#define uchar unsigned char

#define uint unsigned int

uchar i,j,k,scan,num,count;

sbit key=P2^0;

uchar code table1[]=

{0xdf,0xc1,0xdf,0xdf,0xdf,0xc1,0xbf,0x7f}; //μuchar code table2[]=

{0xff,0xbf,0xb7,0xb7,0x81,0xb7,0xb7,0xbf}; //土uchar code table[][8]=

{{0xff,0xe3,0xeb,0x00,0xeb,0xe3,0xff,0xff}, //中{0xff,0xbf,0xbd,0xbd,0x81,0xbd,0xbd,0xff}, //I {0xff,0xf3,0xed,0xdd,0xbb,0xdd,0xed,0xf3}, //?{0xff,0xff,0x81,0x7f,0x7f,0x7f,0x81,0xff}, //U {0xbf,0xaf,0xab,0xab,0x80,0xab,0xa8,0xa7}, //生{0xff,0xff,0x00,0x76,0x76,0x76,0x00,0xff}, //日{0xbf,0xa3,0xc0,0xab,0xbf,0xcf,0x00,0xf3}, //快{0xb7,0xd6,0xa5,0x05,0xe5,0xd1,0xbf,0xff}, //乐{0xff,0xff,0xc9,0xb6,0xb6,0xc9,0xff,0xff}, //8 {0xff,0xff,0xc1,0xb6,0xb6,0xd9,0xff,0xff}}; //9 void delay(uint z)

{

uint x,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

void main()

{

key=1;

num=0;

while(1)

{

if(num==0)

{

for(j=0;j<10;j++)

{

if(key==0)

{

delay(10);

if(key==0)

{

num=1;

while(!key);

}

}

if(num!=0)

break;

for(k=0;k<30;k++)

{

scan=0x01;

for(i=0;i<8;i++)

{

P0=table[j][i];

P1=scan;

delay(10);

scan<<=1;

}

}

}

}

if(num==1)

{

for(j=0;j<8;j++) //8组数据{

if(key==0)

{

delay(10);

if(key==0)

{

num=2;

while(!key);

}

}

if(num!=1)

break;

for(k=0;k<10;k++)

{

scan=0x01; //初始扫描信号

for(i=8;i>0;i--) //扫描周期

{

if(i>j)P0=table1[8+(j-i)];

else P0=table1[j-i];

P1=scan;

delay(5);

scan<<=1;

}

}

}

}

if(num==2)

{

if(key==0)

{

delay(10);

if(key==0)

{

num=0;

while(!key);

}

}

scan=0x01;

for(i=0;i<8;i++)

{

P0=table2[count++];

if(count==8)count=0;

P1=scan;

delay(5);

scan<<=1;

}

}

}

}

汉字点阵显示屏设计报告

广西交通职业技术学院信息工程系 作品设计报告书 课程名称电子电路设计与制作_____________ 题目16*16 汉字点阵显示屏 _________________ 班级___________ 电信2011-1班_____________ 学号007 032 ____________________ 姓名_________________ 范杰________________

任课老师_____________ 韦家正 _______________ 二O 一三年一月 目录 摘要 一、系统方案选择和论证 (2) 1.1设计要求 (2) 2.1系统基本方案 (2) 2.1.1.主控电路选择 (2) 2.1.2.点阵显示屏部分 (2) 2.1.3.显示屏控制部分 (3) 二、电路模块的设计与分析 (3) 2.1.系统程序的设计 (3) 2.2.单片机系统及外围电路 (4) 23 LED点阵显示 (6) 24.汉字扫描的原理 (7) 25.方案的实现 (7) 三、系统软件设计 (8) 四、系统测试与分析 (10) 4.1点阵显示屏的仿真与程序调试 (10) 4.2整机测试 (10) 4.3系统主程序............................... 错误!未定义书签。 4.4系统测试结果分析 (21) 五、设计制作总结 (21) 5.1 总结 (21) 5.2 致谢词 (22) 六、参考文献 (22)

附录一:系统主要元件清单 (14)

摘要 摘要 LED点阵显示屏作为一种新兴的显示器件,是由多个独立的高亮度的LED发光二极管封装而成。LED点阵显示屏可以显示数字或符号,通常用来显示时间、速度、系统状态等灵活的动态显示。文章给出了一种基于MCS-51/52单片机的 16X16点阵LED显示屏的设计方案,包括系统具体的硬件设计方案,软件流程图和汇编语言程序等方面内容。在负载范围内,只需通过简单的级联就可以对显示屏进行扩展,是一种成本低廉、亮 度高、工作电压低、功耗小、微型化、易与集成电路匹配、驱动简单、寿命长、耐冲击、性能稳定的图文显示方案。 Abstract LED dot matrix display, as a new display device, by a nu mber of in depe ndent high- bright ness LED light-emitt ing diode packages. LED dot matrix display can display nu mbers or symbols, usually used to display time, speed, system status, and a flexible dyn amic display. Pap er, a microcomputer-based MCS-51/52 16 16 dot matrix LED display desig n, in cludi ng the system specific hardware desig n, software flowcharts and assembly Ian guage programs and other aspects. Withi n the load range, by simply cascad ing Jiu expa nsion can right display Jin Xin g, is a low cost, high brightness, low voltage Gong Hao Xiao, miniaturization, Yi Yu IC match, Qu Dong simple, Shou Ming Ion g, impact resista nee, stable performa nee, graphics and display opti ons.

1602字符液晶显示原理+实例详解

1602详细资料和实例 1602字符液晶在实际的产品中运用的也比较多了,前几天留意了一下,发现宿舍门前的自动售水机就是采 用的1602液晶进行显示的。而且对于单片机的学习而言,掌握1602的用法是每一个学习者必然要经历的过程。在此,我将使用1602过程中遇到的问题以及感受记录下来,希望能够给初学者带来一点指导,少走一点弯路。 所谓1602是指显示的内容为16*2,即可以显示两行,每行16个字符。目前市面上字符液晶绝大多 数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。 1602液晶的正面(绿色背光,黑色字体) 1602液晶背面(绿色背光,黑色字体)

另一种1602液晶模块,显示屏是蓝色背光白色字体 字符型LCD1602通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完全一样,引脚定义如下表所示:

HD44780内置了DDRAM、CGROM和CGRAM。 DDRAM就是显示数据RAM,用来寄存待显示的字符代码。共80个字节,其地址和屏幕的对应关系如下表:

也就是说想要在LCD1602屏幕的第一行第一列显示一个"A"字,就要向DDRAM的00H地址写入“A”字的代码(指A的字模代码,0x20~0x7F为标准的ASCII码,通过这个代码,在CGROM中查找到相应的字符显示)就行了。但具体的写入是要按LCD模块的指令格式来进行的,后面我会说到的。那么一行可有40个地址呀?是的,在1602中我们就用前16个就行了。第二行也一样用前16个地址。对应如下:DDRAM地址与显示位置的对应关系。 (事实上我们往DDRAM里的00H地址处送一个数据,譬如0x31(数字1的代码,见字模关系对照表)并不能显示1出来。这是一个令初学者很容易出错的地方,原因就是如果你要想在DDRAM的00H 地址处显示数据,则必须将00H加上80H,即80H,若要在DDRAM的01H处显示数据,则必须将01H 加上80H即81H。依次类推。大家看一下控制指令的的8条:DDRAM地址的设定,即可以明白是怎么样的一回事了),1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形(无汉字),如下表所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H)(其实是1个地址),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。

基于单片机的24×24点阵LED汉字显示系统设计

郑州华信学院 课程设计任务书 题目: 基于单片机的24×24点阵LED汉字显示系统设计 专业: 姓名: 学号: 班级: 完成期限:年月日 指导教师签名: 课程负责人签名: 年月日

主要内容: 利用单片机控制24×24点阵LED汉字显示屏,能够实现汉字、数字、字母的多样化显示。 基本要求: 1. 实现LED点阵屏核心功能即汉字、数字、字母的多样化显示; 2. 利用proteus软件完成设计电路和仿真,要求显示“郑州华信学院”字样,并且能够调整显示字样; 3. 掌握SPI串口进行数据传输的应用,并学会使用外部芯片辅助项目设计; 4 .通过此次设计将单片机软硬件结合起来对程序进行编辑、校验,锻炼实践能力和理论联系实际的能力。 主要参考资料: [1]阳进基于单片机的LED显示屏的汉字显示中国科技信息 [2]韩润萍陈小萍.点阵LED显示屏控制系统微计算机信息 [3]刘曙光 LED电子显示屏真彩显示的几种关键技术北京:国外电子测量技术 [4]李径达基于锁存方式LED显示屏的软件设计沈阳:计算机应用研究 [5]李全利,单片机原理及接口技术[M],高等教育出版社 [6]王文杰,单片机应用技术[M],冶金工业出版社 [7]朱清慧,PROTEUS教程——电子线路设计、制版与仿真[M],清华大学出版社

郑州华信学院 课程设计说明书 课题: 24*24点阵汉字显示设计 姓名: 院系: 专业班级: 学号: 指导老师: 成绩: 时间:年月日至年月日

目录 1 引言........................................................................................................................................................................................... - 1 - 1.1研究背景 ................................................................................................................................................................... - 1 - 1.2 LED显示屏简介..................................................................................................................................................... - 1 - 1.3 功能要求................................................................................................................................................................ - 2 -2设计方案 .................................................................................................................................................................................. - 2 - 2.1 核心元件的选用.................................................................................................................................................... - 2 - 2.2 整体设计思路 ...................................................................................................................................................... - 2 - 3 总体设计及核心元件的简介.......................................................................................................................................... - 2 - 3.1 总体设计结构图.................................................................................................................................................... - 2 - 3.2 硬件分析及设计.................................................................................................................................................... - 3 - 3.2.1时钟电路..................................................................................................................................................... - 3 - 3.2.2复位电路..................................................................................................................................................... - 3 - 3.2.3行数据传输电路 ...................................................................................................................................... - 4 - 3.2.4列控制电路 ................................................................................................................................................ - 5 - 3.2.5点阵组合电路 ........................................................................................................................................... - 6 - 3.2.6单片机和按键连接电路........................................................................................................................ - 7 - 3.3 取模软件的应用.................................................................................................................................................... - 7 - 3.4 软件设计分析 ...................................................................................................................................................... - 9 - 3.4.1 软件设计流程图 ..................................................................................................................................... - 9 - 3.4.2 系统源程序 ......................................................................................................................................... - 10 - 4 仿真与调试....................................................................................................................................................................... - 19 - 4.1 建立Keil uVision2工程、文件............................................................................................................... - 19 - 4.2 绘制总体电路图 .............................................................................................................................................. - 20 - 5 心得体会 ........................................................................................................................................................................... - 22 - 6 参考文献 ........................................................................................................................................................................... - 22 -附录一部分元件介绍...................................................................................................................................................... - 23 - 1 AT89C51芯片............................................................................................................................................................ - 23 - 2 8*8点阵LED元件介绍 ................................................................................................................................... - 24 -附录二整体电路 ............................................................................................................................................................... - 26 -

单片机课程设计---16×16点阵式汉字显示

目录 摘要 (1) Abstract (2) 1设计原理 (3) 1.1 MCS-51单片机的结构及编程方法 (3) 1.2 16*16点阵LED原理 (5) 1.3 3-8译码器原理 (6) 2.设计方案介绍 (7) 2.1 设计总体思路 (7) 2.2 与题目相关的具体设计 (7) 2.3程序设计流程图 (8) 3.源程序,原理图和仿真图 (9) 3.1程序清单(见附录) (9) 3.2电路图 (9) 3.2.1电路原理图 (9) 3.2.2电路图分析 (9) 3.3仿真图 (9) 4性能分析 (10) 5.总结和心得 (11) 6.参考文献 (12) 附录:程序代码 (13)

摘要 LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。文章给出了一种基于MCS-51单片机的16×16 点阵LED显示屏的设计方案。包括系统具体的硬件设计方案,软件流程图和部分汇编语言程序等方面。在负载范围内, 只需通过简单的级联就可以对显示屏进行扩展,是一种成本低廉的图文显示方案。 关键词:MCS-51;LED;单片机

Abstract As a popular display device component, LED dot-matrix display board consists of several independent LED (Light Emitting Diode). The LED dot-matrix display board can display the number or sign, and it is usually used to show time, speed, the state of system etc. This paper introduces a kind of simple 16x16 LED display screen design process based on MCS-51 single chip minicomputer . The detail hardware scheme, software flow and assemble language programmer design and so on is followed. The display part can be cascaded to meet the need. The practice proves the design is low-cost and effective. Key words: MCS-51;LED;MCU

12864液晶显示图片原理(完整版)

51单片机综合学习 12864液晶原理分析1 辛勤学习了好几天,终于对12864液晶有了些初步了解~没有视频教程学起来真有些累,基本上内部程序写入顺序都是根据程序自我变动,然后逆向反推出原理…… 芯片:YM12864R P-1 控制芯片:ST7920A带中文字库 初步小结: 1、控制芯片不同,寄存器定义会不同 2、显示方式有并行和串行,程序不同 3、含字库芯片显示字符时不必对字符取模了 4、对芯片的结构地址一定要理解清楚

5、显示汉字时液晶芯片写入数据的顺序(即显示的顺序)要清楚 6、显示图片时液晶芯片写入数据的顺序(即显示的顺序)要清楚 7、显示汉字时的二级单元(一级为八位数据写入单元)要清楚 8、显示图片时的二级单元(一级为八位数据写入单元)要清楚 12864点阵液晶显示模块(LCM)就是由128*64个液晶显示点组成的一个128列*64行的阵列。每个显示点对应一位二进制数,1表示亮,0表示灭。存储这些点阵信息的RAM称为显示数据存储器。要显示某个图形或汉字就是将相应的点阵信息写入

到相应的存储单元中。图形或汉字的点阵信息由自己设计,问题的关键就是显示点在液晶屏上的位置(行和列)与其在存储器中的地址之间的关系。由于多数液晶显示模块的驱动电路是由一片行驱动器和两片列驱动器构成,所以12864液晶屏实际上是由左右两块独立的64*64液晶屏拼接而成,每半屏有一个512*8 bits显示数据RAM。左右半屏驱动电路及存储器分别由片选信号CS1和CS2选择。显示点在64*64液晶屏上的位置由行号(line,0~63)与列号(column,0~63)确定。512*8 bits RAM中某个存储单元的地址由页地址(Xpage,0~7)和列地址(Yaddress,0~63)确定。每个存储单元存储8个液晶点的显示信息。

字模生成原理

字模生成原理 本设计中因为使用汉字的点阵显示,需要提取汉字字模,因此我们首先来了解汉字点阵字模的提取方法。 汉字的点阵字模是从点阵字库文件中提取出来的。例如常用的16×16点阵HZK16文件,12×12点阵HZK12文件等等,这些文件包括了GB 2312字符集中的所有汉字。现在只要弄清汉字点阵在字库文件中的格式,就可以按照自己的意愿去显示汉字了。 下面以HZK16文件为例,分析取得汉字点阵字模的方法。 HZK16文件是按照GB 2312-80标准,也就是通常所说的国标码或区位码的标准排列的。国标码分为94 个区(Section),每个区94 个位(Position),所以也称为区位码。其中01~09 区为符号、数字区,16~87 区为汉字区。而10~15 区、88~94 区是空白区域。 如何取得汉字的区位码呢?在计算机处理汉字和ASCII字符时,使每个ASCII字符占用1个字节,而一个汉字占用两个字节,其值称为汉字的内码。其中第一个字节的值为区号加上32(20H),第二个字节的值为位号加上32(20H)。为了与ASCII字符区别开,表示汉字的两个字节的最高位都是1,也就是两个字节的值都又加上了128(80H)。这样,通过汉字的内码,就可以计算出汉字的区位码。 具体算式如下: qh=c1-32-128=c1-160 wh=c2-32-128=c2-160 或 qh=c1-0xa0 wh=c2-0xa0 qh,wh为汉字的区号和位号,c1,c2为汉字的第一字节和第二字节。 根据区号和位号可以得到汉字字模在文件中的位置: location=(94*(qh-1)+(wh-1))*一个点阵字模的字节数。 那么一个点阵字模究竟占用多少字节数呢?我们来分析一下汉字字模的具体排列方式。 例如下图中显示的“汉”字,使用16×16点阵。字模中每一点使用一个二进制位(Bit)表示,如果是1,则说明此处有点,若是0,则说明没有。这样,一个16×16点阵的汉字总共需要16*16/8=32个字节表示。字模的表示顺序为:先从左到右,再从上到下,也就是先画左上方的8个点,再是右上方的8个点,然后是第二行左边8个点,右边8个点,依此类推,画满16×16个点。 对于其它点阵字库文件,则也是使用类似的方法进行显示。例如HZK12,但是HZK12文件的格式有些特别,如果你将它的字模当作12*12位计算的话,根本无法正常显示汉字。因为字库设计者为了使用的方便,字模每行的位数均补齐为8的整数倍,于是实际该字库的位长度是16*12,每个字模大小为24字节,虽然每行都多出了4位,但这4位都是0(不显示),并不影响显示效果。还有UCDOS下的HZK24S(宋体)、HZK24K(楷体)或HZK24H(黑体)这些打印字库文件,每个字模占用24*24/8=72字节,不过这类大字模汉字库为了打印的方便,将字模都放倒了,所以在显示时要注意把横纵方向颠倒过来就可以了。 这样我们就完全清楚了如何得到汉字的点阵字模,这样就可以在程序中随意的显示汉字了。 5.7.2 字模提取程序 如果在程序中使用的汉字数目不多,也可以不必总是在程序里带上几百K的字库文件,也

基于51单片机的汉字点阵显示设计

湖南科技大学测控技术与仪器专业
单 片 机 课 程 设 计
题 姓 学 名 号

指导教师 成 绩 ____________________
湖南科技大学机电工程学院 二〇一五年十二月制

湖南科技大学课程设计
摘要
LED 显示屏在我们的周围随处可见,它的应用已经普及到社会中的方方面面。作为 一种新型的显示器件,在许多场合都可以见到它的身影,不仅是它的应用使呈现出来的 东西更加美观,更重要的是它的应用方便,成本很低,除了能给人视觉上的冲击外,更 能给人一种美的享受。LED 显示屏是由多个发光二极管按矩阵形式排列封装而成,通常 用来显示时间、图文等各种信息。本设计是基于 ATS52 单片机的 16*16 点阵式显示屏, 该 LED 显示屏能实现 16*16 个汉字,简单的显示图像, 然后一直循环着显示下去。该设 计包含了硬件、软件、调试等方案,只需简单的级联就能实现显示屏的拓展,但要注意 不要超过负载能力。本次设计的作品体积小、功能多、方便实用、花费小,电路具有结 构简单、操作方便、精度高、应用广泛的特点。 关键词: LED,ATS51 单片机,显示屏
-2-

湖南科技大学课程设计
目录
摘要…………………………………………………………………………i 第一章 系统功能要求 ……………………………………………………1 1.1 系统设计要求 ……………………………………………………1 第二章 方案论证 …………………………………………………………1 2.1 方案论证 …………………………………………………………1 第三章 系统硬件电路设计 ………………………………………………1 3.1 AT89S51 芯片的介绍 ………………………………………………1 3.1.1 系统单片机选型…………………………………………………1 3.1.2 AT89S51 引脚功能介绍 …………………………………………2 3.2 LED 点阵介绍………………………………………………………2 3.2.1LED 点阵……………………………………………………………2 3.3 系统各硬件电路介绍 ………………………………………………3
3.3.1 系统电源电路设计介绍……………………………………………3 3.3.2 复位电路……………………………………………………………4 3.3.3 晶振电路……………………………………………………………4 3.4 系统的总的原理图……………………………………………………5 第四章 系统程序设计 ………………………………………………………5 4.1 基于 PROTEUS 的电路仿真……………………………………………5 4.2 用 PROTEUS 绘制原理 ………………………………………………6
4.3PROTEUS 对单片机内核的仿真 ………………………………………6
-3-

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复位信号,低电平复位

点阵字库的原理

点阵字库的原理 2010-12-06 17:12:46 分类: 点阵字库的原理(引文) 所有的汉字或者英文都是下面的原理, 由左至右,每8个点占用一个字节,最后不足8个字节的占用一个字节,而且从最高位向最低位排列。 生成的字库说明:(以12×12例子) 一个汉字占用字节数:12÷8=1····4也就是占用了2×12=24个字节。 编码排序A0A0→A0FE A1A0→A2FE依次排列。 以12×12字库的“我”为例:“我”的编码为CED2,所以在汉字排在CEH-AOH=2EH区的D2H-A0H=32H个。所以在12×12字库的起始位置就是[{FE-A0}*2EH+32H]*24=104976开始的24个字节就是我的点阵模。 其他的类推即可。 英文点阵也是如此推理。 在DOS程序中使用点阵字库的方法 首先需要理解的是点阵字库是一个数据文件,在这个数据文件里面保存了所有文字的点阵数据.至于什么是点阵,我想我不讲大家都知道的,使用过"文曲星"之类的电子辞典吧,那个的液晶显示器上面显示的汉子就能够明显的看出"点阵"的痕迹.在PC 机上也是如此,文字也是由点阵来组成了,不同的是,PC机显示器的显示分辨率更高,高到了我们肉眼无法区分的地步,因此"点阵"的痕迹也就不那么明显了. 点阵、矩阵、位图这三个概念在本质上是有联系的,从某种程度上来讲,这三个就是同义词.点阵从本质上讲就是单色位图,他使用一个比特来表示一个点,如果这个比特为0,表示某个位置没有点,如果为1表示某个位置有点.矩阵和位图有着密不可分的联系,矩阵其实是位图的数学抽象,是一个二维的阵列.位图就是这种二维的阵列,这个阵列中的(x,y) 位置上的数据代表的就是对原始图形进行采样量化后的颜色值.但是,另一方面,我们要面对的问题是,计算机中数据的存放都是一维的,线性的.因此,我们需要将二维的数据线性化到一维里面去.通常的做法就是将二维数据按行顺序的存放,这样就线性化到了一维. 那么点阵字的数据存放细节到底是怎么样的呢.其实也十分的简单,举个例子最能说明问题.比如说16*16 的点阵,也就是说每一行有16个点,由于一个点使用一个比特来表示,如果这个比特的值为1,则表示这个位置有点,如果这个比特的值为0,则表示这个位置没有点,那么一行也就需要16个比特,而8个比特就是一个字节,也就是说,这个点阵中,一行的数据需要两个字节来存放.第一行的前八个点的数据存放在点阵数据的第一个字节里面,第一行的后面八个点的数据存放在点阵数据的第二个字节里面,第二行的前八个点的数据存放在点阵数据的

大学本科毕业设计_点阵LED汉字显示系统的设计(硬件部分)

点阵LED汉字显示系统的设计(硬件部分) 摘要 LED电子显示屏由于具有所显内容信息量大,外形美观大方,操作方便灵活,制作简单,安装方便,是近年来得到广泛应用的重要信息设备,被广泛应用于各种公共场合,如汽车报站器、广告屏以及公告牌等。本文介绍了一款以单片机AT89S51为控制器的LED点阵显示屏系统的设计。考虑到所需元器件的易购性,本设计使用了8×8的点阵发光管模块,组成16×16发光点阵,显示待定的中文、字符以及数字。由显示驱动模块驱动一个16×16分辨率的LED点阵显示屏的扫描显示。所选用的AT89S51单片机具有价格低廉程序写入方便的特点使得整个系统方便维护和检修。除此之外,该系统只占用了单片机少量的I /O口和内存,为系统留下了功能扩展的空间。关键词LED点阵;16X16点阵;单片机;显示屏;扫描

Abstract Because the LED electron display monitor has the institute content information content to be obviously big, the contour elegant appearance, the ease of operation is flexible, the manufacture is simple, the easy installation, was the recent years obtains the widespread application important information equipment, is widely applied in each kind of public area, like the automobile newspaper stood, the advertisement screen as well as the notice board and so on. This article introduced one section take monolithic integrated circuit AT89S51 as controller's LED lattice display monitor system's design. Considered needs primary device's Yi Gou, this design has used 8×8 lattice photo tube module, composition 16×16 illumination lattice, demonstration undetermined Chinese, character as well as digit. Actuates a 16×16 resolution by the demonstration actuation module the LED lattice display monitor's scanning demonstration. Selects at89S51 monolithic integrated circuit has the low in price procedure to read in the convenience the characteristic to cause the overall system convenience maintenance and the overhaul. In addition, this system has only taken the monolithic integrated circuit few I /O mouth and the memory, has left behind the space which for the system the function expands. Keywords LED dot-matrix; 16X16 dot matrix; singlechip; display; scan

12864点阵液晶显示模块的原理

12864点阵液晶显示模块的原理 12864 点阵液晶显示模块的原理12864 点阵液晶显示模块(LCM)就是由128*64 个液晶显示点组成的一个128 列*64 行的阵列。每个显示点对应一位二 进制数,1 表示亮,0 表示灭。存储这些点阵信息的RAM 称为显示数据存储器。要显示某个图形或汉字就是将相应的点阵信息写入到相应的存储单元中。图形 或汉字的点阵信息当然由自己设计,问题的关键就是显示点在液晶屏上的位置(行和列)与其在存储器中的地址之间的关系。由于多数液晶显示模块的驱动 电路是由一片行驱动器和两片列驱动器构成,所以12864 液晶屏实际上是由左 右两块独立的64*64 液晶屏拼接而成,每半屏有一个512*8 bits 显示数据RAM。左右半屏驱动电路及存储器分别由片选信号CS1 和CS2 选择。(少数厂 商为了简化用户设计,在模块中增加译码电路,使得128*64 液晶屏就是一个 整屏,只需一个片选信号。)显示点在64*64 液晶屏上的位置由行号 (line,0~63)与列号(column,0~63)确定。512*8 bits RAM 中某个存储单元的地址由页地址(Xpage,0~7)和列地址(Yaddress,0~63)确定。每个存储单元存储8 个液晶点的显示信息。为了使液晶点位置信息与存储地址的对应关系更直 观关,将64*64 液晶屏从上至下8 等分为8 个显示块,每块包括8 行*64 列个 点阵。每列中的8 行点阵信息构成一个8bits 二进制数,存储在一个存储单元 中。(需要注意:二进制的高低有效位顺序与行号对应关系因不同商家而不同) 存放一个显示块的RAM 区称为存储页。即64*64 液晶屏的点阵信息存储在8 个存储页中,每页64 个字节,每个字节存储一列(8 行)点阵信息。因此存储单 元地址包括页地址(Xpage,0~7)和列地址(Yaddress,0~63)。例如点亮128*64 的屏中(20,30)位置上的液晶点,因列地址30 小于64,该点在左半屏第29 列,所以CS1 有效;行地址20 除以8 取整得2,取余得4,该点在RAM 中页

点阵式汉字LED显示屏的原理与制作(精)

单片机应用 电子报 /2004年 /08月 /08日 /第 011版 / 点阵式汉字 L ED 显示屏的原理与制作 深圳石学军 本文介绍一种实用汉字显示屏的制作。该显示屏使用 256只高亮度发光二极管组成 16×16点阵。为降低制作难度 , 此处仅作了一个字的轮流显示。 每个字由 16×16点阵组成 , 每点为一个像素 , 每个字的字形为一幅图像 , 故此屏既可以显示汉字 , 也可以显示 256像素范围内的任何图形。下面以显示“大” 字为例说明其扫描原理。 在 UCDOS 宋体字库中 , 每个字由 16×16, , 一个字要拆分为上、下两部分 , 由两个 8×16 部分 , 即第 0列的 P00~, 时 , 只有 P05点亮 , 即 04H 。 , 即从 P27向 P20方向扫描 , 这一 , , , 依照这个方法 , 扫描 32个 8位 , 得出汉字“大” :04H、 00H 、 04H 、 02H 、 04H 、 02H 、 04H 、 04H 、 04H 、 08H 、 04H 、 30H 、 05H 、0C0H 、 0FEH 、 00H 、 05H 、 80H 、 04H 、 60H 、 04H 、 10H 、 04H 、 08H 、 04H 、 04H 、 0CH 、 06H 、 04H 、 04H 、 00H 、 00H 。 无论显示何种字体或图像 , 都可以用这个方法分析扫描代码。目前有很多现成的汉字字模生成软件 , 软件打开后输入汉字 , 点“检取” 键 , 即可自动生成十六进制汉字代码。此例使用 4-16线译码器 74L S154完成列显示 , 行的 16条线接 P0口和 P2口。源程序清单如下 : OR G 00H LOOP :MOVA , #0FFH ; 初始化

相关主题
文本预览
相关文档 最新文档