51单片机控制LED显示汉字

合集下载

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

单片机课程设计---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仿真图 (10)4性能分析 (11)5.总结和心得 (12)6.参考文献 (13)附录:程序代码 (14)摘要LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。

文章给出了一种基于MCS-51单片机的16×16 点阵LED显示屏的设计方案。

包括系统具体的硬件设计方案,软件流程图和部分汇编语言程序等方面。

在负载范围内, 只需通过简单的级联就可以对显示屏进行扩展,是一种成本低廉的图文显示方案。

关键词:MCS-51;LED;单片机AbstractAs 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;MCU1设计原理1.1 MCS-51单片机的结构及编程方法MCS-51单片机的组成: CPU(进行运算、控制)、RAM(数据存储器)、ROM(程序存储器)、I/O口(串口、并口)、内部总线和中断系统等。

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

基于51单片机点阵LED汉字显示屏设计
3.产品结构多样化
信息化社会的形成,信息领域愈加广泛,LED显示屏的应用前景更为广阔。预计大型或超大型LED显示屏的主流产品局面将会发生改变,适合于服务行业特点和专业性要求的小型LED显示屏会有较大提高,面向信息服务领域的LED显示屏产品门类和品种体系将更加丰富,部分潜在市场需求和应用领域将会有所突破,如公共交通、停车场、餐饮、医院等综合服务方面的信息显示屏需求量将有更大的提高,大批量、小型化的标准系统LED显示屏在LED显示屏市场总量中将会占有多数份额。
在短短的十来年中,LED点阵显示屏就以亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定的优点迅速成长为平板显示的主流产品,在信息显示领域得到了广泛的应用。LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性、可靠性、全色化方向发展。LED显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影,广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所,具有投影仪、电视墙、液晶显示屏无法比拟的优点。因此对它的研究已经成为一种需要,它在社会中的广泛应用促使我们不断的去更新它、改进它,达到我们的各种需要。LED显示屏的发展是很迅猛的,在技术上有它的独特之处,虽然现在的我们还无法做出很高端的关于LED显示屏的产品,但是我们可以做一些小的作品,了解它的基本原理,基本结构,通过不断的实践来提高我们的动手能力以及我们对知识的掌握。对于本次毕业设计,我充满了信心,与其说是让我们完成学校给我们的任务,还不如说是给我们一次检验自己,锻炼自己的机会。科技是第一生产力,为了明天,我一定会高质1.1.1 选题背景
LED显示屏是一种通过控制半导体发光二极管的显示方式,用来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。它是八十年代后期在全球迅速发展起来的新型信息显示媒体,显示屏由几万……几十万个半导体发光二极管像素点均匀排列组成,具有亮度高、工作电压低、功耗小、微型化、易与集成电路匹配、驱动简单、寿命长、耐冲击、性能稳定等特点。

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

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

辽宁工业大学
毕业设计(论文)
开题报告
题目基于51单片机汉字显示设计
软件学院院(系)专业班
学生姓名
学号
指导教师
开题日期:2010年3月5日
(注)开题报告要点:1、毕业设计(论文)题目的来源,理论或实际应用意义。

2、题目主要内容及预期达到的目标。

3、拟采用哪些方法及手段。

4、完成题目所需要的实验或实习条件。

5、完成题目的工作计划等。

(开题报告不够用时可另附同格式A4纸)
1
3
4
5
开题须知
一、学生要认真填写开题报告。

在毕业设计(论文)答辩时学生须向答辩委员会(或答辩小组)提交开题报告,作为答辩评分的参考材料,没有开题报告不能参加答辩。

如果丢失要及时办理补交手续。

学生毕业后,开题报告与学生毕业设计(论文)一并存档备案。

二、毕业设计(论文)题目一经确定,指导教师要给学生下达毕业设计(论文)任务书,学生根据任务书的要求进行开题,一般安排在毕业设计(论文)正式开始的第二周至第三周进行。

三、开题报告的审查由各专业教研室主持,每个学生的报告时间为10—15分钟。

开题通过后学生才能正式获得毕业设计(论文)的资格。

四、学生要充分理解毕业设计(论文)题目的内容和要求,在指导教师的指导下制定切实可行的工作计划,并且要具备进行毕业设计(论文)所要求的实验或实习(调研)条件。

五、学生要按照指导教师所下达的毕业设计(论文)任务书的要求,认真进行文献资料的检索、搜集和查阅,并做好记录。

六、开题审查不合格的学生,必须在一周内重新进行开题。

51单片机汉字显示

51单片机汉字显示

基于单片机的液晶汉字显示屏的设计摘要:本课题为基于51单片机的LCD汉字显示技术。

基于在对单片机研究的基础上,本文提出了一种以AT89C51为核心的单片机构成液晶显示器的方法。

该钟的显示电路采用160128点阵的图形点阵的液晶屏。

关键字:单片机,LCD1引言............................................................................................................................................. - 2 -1.1课题背景 .. (2)1.28051单片机输入输出口 (2)1.38051单片机的指令时序 (4)2单片机的编程软件及仿真软件介绍......................................................................................... - 6 -2.1.1Proteus的简介........................................................................................................... - 6 -2.1.2Keil软件及其调试功能简介..................................................................................... - 7 -2.1.3软件连接使用 ............................................................................................................ - 9 -3控制系统硬件设计....................................................................................................................- 11 -3.1硬件电路图 .. (11)3.2显示部分 (12)4软件设计................................................................................................................................... - 12 -4.1程序仿真 (12)5结论......................................................................................................................................... - 13 -6谢辞......................................................................................................................................... - 14 -7参考文献................................................................................................................................... - 14 -附录:程序 (15)1引言1.1 课题背景目前单片机已渗透到生活的各个领域,几乎很难找到哪个领域没有单片机的足迹。

基于51单片机的图形液晶显示器汉字显示方法分析

基于51单片机的图形液晶显示器汉字显示方法分析
#include <reg52.h> #include <absacc.h> #define uchar unsigned char #define lcd_cmd XBYTE[0x8100] / / 图形液晶显示器指令通道地址 #define lcd_dat XBYTE[0x8000] / / 图形液晶显示器数据通道地址 void wait01(void); / / 查询读写指令和读写数据状态位 void wait03(void); // 查询数据自动写状态位 void wr_dat(uchar dat); // 写数据子程序 void wr_cmd(uchar cmd); // 写指令子程序 void wr_2para(uchar para1,uchar para2,uchar cmd); / / 双字节参数指令写入函数 void wr_1para(uchar para,uchar cmd); / / 单字节参数指令写入函数 void wr_npara(uchar cmd);// 无参数指令写入函数 void lcd_init(void); // 初始化LCD void lcd_show_haizi(uchar* ch,uchar x,uchar wide); / / 显示汉字程序 Code const unsigned char ch[ ] = {0x08,0x08, 0x08,0x12,0x12,0x32,0x51,0x91,0x10, 0x10,0x10,0x10,0x11,0x12,0x14,0x18,0x00,0x80, 0x64,0x24,0x04,0x08,0x08,0x10,0x90,0xA0,0x40, 0xA0,0x10,0x08,0x0E,0x04 , // 仪 0x01,0x01,0x7F, 0x01,0x3F,0x01,0x01,0xFF,0x02, 0x05,0x0C,0x34,0xC4,0x05,0x06,0x04,0x00,0x08, 0xFC,0x00,0xF8,0x00,0x04,0xFE,0x00,0x10,0xA0, 0x40,0x30,0x0E,0x04,0x00};// 表 主程序中首先调用 l c d _ i n i t ( ) 初始化液晶显示器,具 体 内 容 如 下: void lcd_init(void){ wr_2para(0x00,0x00,0x42); / / 设置图形显示区域首地址 wr_2para(0x10,0x00,0x43); / / 设置图形显示区域宽度,即一行显示占字节数 wr_npara(0xa7); // 光标形状设置 wr_npara(0x98); // 显示开关设置 } 接着调用 lcd_show_haizi(uchar* ch,uchar x,uchar wide) 显示汉字,c h 为指针指向字模常量数组首地址,x 为 显示缓冲区初始地址,w i d e 为一行显示所占字节数,具体 内 容 如 下: void lcd_show_haizi(uchar* ch,uchar x,uchar wide)

51单片机实现多级液晶显示中文菜单

51单片机实现多级液晶显示中文菜单

51单片机实现多级液晶显示中文菜单【摘要】以AT89C51单片机控制使用比较普遍的YM12864液晶显示器为基础,介绍了一种采用分页原理实现多级中文菜单操作的方法。

给出了YM12864主要技术参数、显示特性和核心的程序。

设计的中文菜单具有一定的通用性,只需更改其中的菜单项即可将此设计应用到家电、仪器仪表等设备上,为操作者提供友好方便的中文操作界面。

【关键词】单片机;分页;YM12864液晶;中文菜单一、引言目前小型的显示器主要有LCD和LED,LED显示器只能显示数字和有限个英文字符,不能显示汉字,显示内容不直观,操作人员只能根据约定格式了解显示内容。

而LCD则可显示各种汉字和图形,尤其能实现中文菜单显示,为操作者提供方便友好的操作界面,并且功耗低,因此LCD得到广泛应用。

而现在市面上带中文字库的LCD比比皆是,价格适中,且大部分具有与MCU统一的标准接口,为使用LCD实现中文菜单操作提供了很大的方便。

相信更多的电子产品在提升性能的同时,设计更加人性化的中文菜单交互界面,将会使产品具有更广阔的前景。

二、YM12864液晶显示模块简介YM12864汉字图形点阵液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM (GDRAM)。

主要技术参数和显示特性:电源:VDD 3.3V~+5V(内置升压电路,无需负压)显示内容:128列×64行与MCU接口:8位或4位并行/3位串行多种软件功能:光标显示、画面移位、自定义字符、睡眠模式等。

其引脚功能为通用20脚LCD接口,用户指令集也为通用128*64LCD用户指令集,相关资料很容易获取。

因其内置中文字库,省去了自己造字库的工作量,而只需写入相应的汉字和字符内码即可显示所需要的汉字和字符,这在许多程序开发软件中很容易实现,如:WA VE、KEIL等。

所以使用带中文字库的LCD来实现中文菜单操会更加简便。

89S51单片机的16×16点阵汉字显示的设计

89S51单片机的16×16点阵汉字显示的设计

• 134•针对LED 点阵显示汉字需要占用单片机多个并行口的问题,提出了基于89S51单片机的16×16点阵汉字显示设计,利用74HC138和74HC595对单片机并行口进行扩展,从硬件设计、软件设计方案等关键环节,分别进行了详细讨论。

随着单片机技术的发展,LED 点阵屏作为文字和图形显示的新型媒体,由于亮度高、耗能低、色彩鲜艳、寿命长等特点,迅速出现在学校、医院、车站等场所。

但LED 点阵显示需要占用单片机多个并行口,而通用移位寄存器74HC595T 和译码器74HC138,可以实现对单片机IO 的扩展,从而节约了大量的并口资源。

本设计详细介绍了74HC138和74HC595芯片在1616×16点阵LED 显示屏的应用。

1 电路总体设计16×16点阵汉字显示电路如图1所示,它由一片16×16点阵LED 显示屏、两片74HC138构成的行控制单元、两片74HC595构成的列控制单元及AT89S51单片机构成。

列控制单元用于输入数据,而行控制单元用于逐行扫描。

图1 系统总体结构1.1 16×16点阵工作原理本设计采用的是共阴16×16点阵显示模块。

它由256只发光二极管按一定规律安装成方阵,从内部结构如图2所示,可以看出,总共有16行和16列,每行的发光二极管阴极相连,每列的发光二极管阳极相连。

在行和列的交叉处有一个发光二极管,要使其中任一个二极管发光,则其对应行为低电位,而对应的列为高电位即可。

1.2 行控制单元行控制单元的控制原理是:先使第一行Y 0为低电平,其余行为高电平,显示第一行数据;然后第二行Y 1为低电平,其余行电平,显示第二行数据。

按照这个规律每行以较快的速度不断进行刷新,由于发光二极管的余辉效应和人的视觉暂留现象两个因素,给人的印象就是一组静态的数据,不会产生闪烁感。

动态显示能够节省I/O 端口,且功耗低。

本设计采用74HC138三位译码器。

基于单片机控制的LED汉字显示.doc

基于单片机控制的LED汉字显示.doc

分类号 TP 单位代码 11395 密级公开学号 0605230学生毕业设计(论文)题目LED汉字显示作者院 (系) 能源工程学院专业电气工程及自动化指导教师答辩日期2010年月日毕业设计(论文)诚信责任书本人郑重声明:所呈交的毕业设计(论文),是本人在导师的指导下独立进行研究所取得的成果。

毕业设计(论文)中凡引用他人已经发表或未发表的成果、数据、观点等,均已明确注明出处。

尽我所知,除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经公开发表或撰写过的研究成果。

对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。

本人毕业设计(论文)与资料若有不实,愿意承担一切相关的法律责任。

论文作者签名:年月日LED汉字显示摘要目前,作为方便、快捷的信息显示方式,LED汉字显示的应用非常广泛。

车站、银行、超市等大型公共场所的即时信息及广告的显示,无不应用LED汉字显示屏。

在能源日渐危机以及信息日渐重要的今天,具有低耗能、频更新、易维护的LED汉字显示屏必将受到广泛的应用,其具有非常的发展前景。

本文从LED的发展及单片机的简单原理开始,深入的研究了基于AT89C51单片机16×16 LED汉字滚动显示屏的设计并运用Proteus软件的仿真和实现。

主要介绍了LED汉字显示屏的硬件电路设计、汇编程序设计与调试、Proteus 软件仿真和实物制作等方面的内容,本显示屏的设计具有体积小、硬件少、电路结构简单及容易实现等优点。

能帮助广大电子爱好者了解汉字的点阵显示原理,认识单片机的基本结构、工作原理及应用方法,并提高单片机知识技术的运用能力。

关键词:单片机 LED 点阵 Proteus仿真ABSTRACTNow, as a convenient, quick, LED display mode of information that is very extensive application. Station, bank, supermarket and large public places of instant messaging and advertisement of the application of Chinese characters, LED display screen. In the energy crisis and information increasingly more important today, with low energy consumption, easy maintenance and update frequency of the Chinese character screen will be LED by the widespread application, it has very development prospects.In this paper, based on AT89C51 microcontroller 16 × 16LED scrolling display character design and the use of software in the simulation and realization of Proteus. Introduces the character LED display hardware design, assembly programming and debugging, Proteus software simulation and other aspects of physical production, the design of the screen is small, less hardware, the circuit structure is simple and easy to implement. Can help the fans understand the character of the lattice electronic display principle, understanding the basic structure of SCM, working principle and application of methods and technologies to improve knowledge and ability to use single chip.Keywords:microcontroller, LED dot matrix ,Proteus simulation.LED汉字显示目录摘要 (1)ABSTRACT (2)目录 (2)1 引言 (1)1.1 LED汉字显示研究背景及意义 (2)1.2本设计的研究内容及方法 (2)1.3 本设计的主要工作 (3)2 硬件电路组成及工作原理 (4)2.1 硬件电路组成 (4)2.1.1 A T89C51简介 .......................................................................................... (4)2.1.2 时钟电路设计 (7)2.1.3复位电路设计 (15)2.1.4 16×16LED点阵屏 (9)2.2 元器件选择 (10)2.3 硬件电路工作原理 (19)3 LED汉字显示原理及字库代码获取方法 (20)3.1 汉字的点阵显示原理 (20)3.2 字库代码获取方法 (20)3.3 LED屏的显示 (22)4 程序设计 (25)4.1 主程序 (25)4.2 显示子程序、延时子程序 (25)4.3 程序编译、仿真 (19)5 基于PROTEUS的电路仿真 (30)5.1用PROTEUS 绘制原理图 (30)5.2 PROTEUS 对单片机内核的仿真 (31)6 结束语 (33)参考文献 (35)致谢 (37)1 引 言1.1 LED 汉字显示研究背景及意义受到体育场馆用LED 显示屏需求快速增长的带动,近年来,中国 LED 显示屏应用逐步增多。

基于51单片机的动态点阵LED汉字显示屏的设计

基于51单片机的动态点阵LED汉字显示屏的设计
由LED点阵显示器的内部结构可知,器件宜采用动态扫描驱动方式工作,由于LED管芯大多为高亮度型,因此某行或某列的单体LED驱动电流可选用窄脉冲,但其平均电流应限制在20mA内,多数点阵显示器的单体LED的正向压降约在2V左右,但大亮点∮10的点阵显示器单体LED的正向压降约为6V[2]。
大荧幕显示系统一般是将由多个LED点阵组成的小模组以搭积木的方式组合而成的,每一个小模组都有自己的独立的控制系统,组合在一起后只要引入一个总控制器控制各模组的命令和资料即可,这种方法既简单而且具有易展、易维修的特点。
(2)竖直方向(Y方向)扫描,即逐行扫描方式(简称行扫描方式):此时用一个P口输出决定哪一行能亮(相当于位码),另一个P口输出列码(行数据,行数据为将列数据的点阵旋转90度的数据)决定该行上哪些LED灯亮(相当于段码)。能亮的行从上向下扫描完16行(相当于位码循环移位16次)即显示一帧完整的图像。
每一个字由16行16列的点阵形成显示,即每个字均由256个点阵来表示,我们可以把每一个点理解为一个像素。一般我们使用的16×16的点阵宋体字库,即所谓的16×16,是每一个汉字在纵横各16点的区域内显示的。汉字库从该位置起的32字节信息记录了该字的字模信息。事实上这个汉字屏不仅可以显示汉字,也可以显示在256像素范围内的任何图形。
2.2
8×8的LED点阵是由64个发光二极管按矩阵形式排列而成,每一行上的发光管有一个公共的阳极(或阴极),每一列上的发光管有一个公共的阴极(或阳极),一般按动态扫描方式显示汉字或图形。扫描分为点扫描、行扫描和列扫描三种方式。
当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,如图2-1,2-2所示,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:一根竖柱:对应的列置1,而行则采用扫描的方法来实现。一根横柱:对应的行置0,而列则采用扫描的方法来实现。

51单片机驱动16×16LED点阵显示动画汉字总汇编程序

51单片机驱动16×16LED点阵显示动画汉字总汇编程序

51单片机驱动16×16LED点阵显示动画汉字汇编程序这里提供一个完整的AT89S51单片机驱动驱动led点阵显示具有动画效果的汉字的汇编程序列子.ORG 0000HST: MOV A,#0FFH ;初始化MOV P1,AMOV P2,AMOV P3,AMOV P0,ACLR AMOV R0,#50H ;显示缓存清0MOV R1,#20H ;控制清0的次数ST0: MOV R0,AINC R0DJNZ R1,ST0;正文显示CHINESE: MOV DPTR,#TAB1 ;查表指针指向TAB1LCALL HZ;结束动画SCREE:MOV DPTR,#TAB2;查表指针指向TAB2ACALL DDMOV DPTR,#TAB3;查表指针指向TAB3ACALL DDMOV DPTR,#TAB4;查表指针指向TAB4ACALL DDLJMP CHINESE;显示8幅画面子程序,SCREE专用,用字模软件字要倒置(表必须深256字节)DD: MOV B,#00HMOV R0,#08H ;显示8幅画面AJMP CCCC0: MOV A,BADD A,#20H ;指向下一幅画面MOV B,ACC: MOV R7,#08H ;画面停留时间MOV R3,BMOV 37H,R0LCALL ENTERDIS00: LCALL DISPLAYDJNZ R7,DIS00MOV R0,37HDJNZ R0,CC0RET;汉字上移子程序,可显示8个汉字,(表必须深256字节)HZ: MOV R3,#00H ;查表偏移量MOV R5,#81H ;查表128次MOVBACK: MOV R4,#10H ;使显示完一个汉字MOVBACK0: MOV R7,#02H ;一桢画面显示时间MOV R0,#6DH ;低8位R0指向显示缓存倒数第3个字节,以备与最后1个字节交换MOV R1,#6CH ;高8位R1指向显示缓存倒数第4个字节,以备与倒数第2个字节交换MOV R2,#10H ;存后移的次数DJNZ R5,MOVBACK1RET ;显示完该表,返回MOVBACK1: MOV A,R0 ;低8位被后移的存单元数据暂存入AINC R0 ;后移两字节INC R0MOV R0,A ;放入要移的低8位数据MOV A,R0 ;R0指向下一个要后移的存单元SUBB A,#04HMOV A,R1 ;高8位被后移的存单元数据暂存入A INC R1 ;后移两字节INC R1MOV R1,A ;放入要移高8位的数据MOV A,R1 ;R1指向下一个要后移的存单元SUBB A,#04HMOV R1,A ;R1指向下一个要后移的存单元DJNZ R2,MOVBACK1 ;显示缓存数据依次后移MOV A,R3 ;从表TAB1读入要移进50H,51H的数据MOVC A,A+DPTR;先给50H读数据MOV 50H,AMOV A,R3 ;指向下一字节INC AMOV R3,AMOVC A,A+DPTR;再给51H读数据MOV 51H,AMOV A,R3 ;指向下一字节INC AMOV R3,AMOV 30H,R3 ;保护数据MOV 31H,R4MOV 32H,R5DISMOV: LCALL DISPLAY ;显示当前数据DJNZ R7,DISMOVMOV R3,30HMOV R4,31HMOV R5,32HDJNZ R4,MOVBACK0MOV 30H,R3 ;保护数据MOV R7,#24H ;显示当前数据延时DISMOV0: LCALL DISPLAYDJNZ R7,DISMOV0MOV R3,30HMOV R5,32HLJMP MOVBACK;放进一幅显示数据到显示缓存子程序,要先设好指针DPTR和R3,影响R1,R2,R3 ENTER: MOV R1,#50H ;从50H单元起把表存入MOV R2,#20H ;查表次数MOV A,R3CLLOOP_: MOVC A,A+DPTR ;查表MOV R1,A ;将表放进5X,6X单元INC R1 ;R1指向下一个地址空间MOV A,R3 ;查表指针后移INC AMOV R3,A ;将指针修改结果存入R3DJNZ R2,CLLOOP_;没查完转CLLOOP_RET;15MS,显示子程序,一桢32个字节,影响A,R0,R1,R3,R4,R5,R6;;.51hei./单片机网提供汉字取模工具,可显示任意汉字DISPLAY: MOV A,#0FFHMOV P0,AMOV P1,AMOV P2,AMOV P3,ASETB CMOV R6,#7FH ;赋扫描字初值,左移后初值为0FEHMOV R5,#00H ;列扫描低8位控制MOV R0,#50H ;行的高8(p1)位要显示的数据起始地址MOV R1,#10H ;扫描次数DISLOOP: MOV A,R0 ;从存读数据MOV P2,#0FFH ;装入数据时不显示任何东西MOV P3,#0FFHCPL A ;数据取反以适合显示MOV P1,A ;送入行的高8(p1)位要显示的数据INC R0 ;修改R0指向低8位要显示的数据MOV A,R0 ;读低8位要显示的数据CPL A ;数据取反以适合显示MOV P0,A ;送入行的低8(p0)位要显示的数据INC R0 ;R0指向下一个高8(p0)位要显示的数据LCALL NEXT ;调用列扫描程序LCALL DELAY1MS ;显示延时DJNZ R1,DISLOOP;一桢显示完返回MOV P3,#0FFH ;全灭RET;列扫描子程序DISLOOP专用NEXT: JNC NEXT1 ;C=0转扫描高8(p3)位行MOV A,R6 ;修改扫描字RL AMOV R6,AINC R5CJNE R5,#09H,NEXT0 ;R6=#0FEH时C=0 AJMP NEXT1BACK: RETNEXT0: MOV P2,R6 ;扫描低8(p2)位行AJMP BACKNEXT1: MOV P2,#0FFHMOV P3,R6 ;扫描高8(p3)位行MOV A,R6 ;修改扫描字RL AMOV R6,AAJMP BACK;延时1MS子程序DELAY1MS: MOV R3,#10D0: MOV R4,#50D1: DJNZ R4,D1DJNZ R3,D0RETTAB1:DB 01FH,0F8H,001H,000H,07FH,0FEH,041H,004H,01DH,070H,001H,000H,01DH,070H,000H,000H DB 01FH,0F0H,011H,010H,01FH,0F0H,011H,010H,01FH,0F2H,001H,002H,001H,002H,000H,0FEH;電DB 000H,000H,03FH,0F0H,000H,020H,000H,040H,000H,080H,001H,000H,001H,000H,001H,004HDB 0FFH,0FEH,001H,000H,001H,000H,001H,000H,001H,000H,001H,000H,005H,000H,002H,000H;子DB 008H,000H,008H,0FCH,07EH,084H,008H,084H,0FFH,094H,041H,088H,022H,080H,014H,0FEH DB 07EH,0A4H,008H,0A4H,008H,098H,0FFH,098H,008H,0A4H,008H,0A6H,008H,0C4H,008H,080H;報DB 000H,000H,000H,010H,03FH,0F8H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000HDB 000H,000H,000H,000H,000H,000H,000H,004H,07FH,0FEH,000H,000H,000H,000H,000H,000H;二DB 01FH,0F8H,001H,000H,07FH,0FEH,041H,004H,01DH,070H,001H,000H,01DH,070H,002H,080H DB 004H,060H,01AH,01EH,0E1H,008H,01FH,0E0H,000H,040H,002H,080H,001H,000H,001H,000H;零DB 01FH,0F8H,001H,000H,07FH,0FEH,041H,004H,01DH,070H,001H,000H,01DH,070H,002H,080H DB 004H,060H,01AH,01EH,0E1H,008H,01FH,0E0H,000H,040H,002H,080H,001H,000H,001H,000H;零DB 004H,000H,003H,000H,001H,080H,001H,000H,0FFH,0FEH,000H,000H,000H,000H,004H,080HDB 006H,040H,004H,020H,008H,010H,008H,018H,010H,00CH,020H,00CH,040H,008H,000H,000H;六DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000HDB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H;(空) ;结束动画;-- 水纹-- ** 宋体, 12 **; 当前所选字体下一个汉字对应的点阵为: 宽度x高度=128x16, 调整后为: 128x16TAB2:DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,001H,080HDB 001H,080H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000HDB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,001H,080H,003H,0C0HDB 003H,0C0H,001H,080H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000H,000HDB 000H,000H,000H,000H,000H,000H,000H,000H,001H,080H,002H,040H,004H,020H,008H,010HDB 008H,010H,004H,020H,002H,040H,001H,080H,000H,000H,000H,000H,000H,000H,000H,000HDB 000H,000H,001H,0C0H,006H,030H,008H,008H,008H,008H,010H,004H,020H,002H,020H,002HDB 020H,002H,010H,004H,008H,008H,008H,008H,006H,030H,001H,0C0H,000H,000H,000H,000HDB 003H,0C0H,00CH,030H,010H,008H,010H,008H,060H,006H,040H,002H,080H,001H,080H,001HDB 080H,001H,080H,001H,040H,002H,060H,006H,010H,008H,010H,008H,00CH,030H,003H,0C0HDB 000H,000H,038H,01CH,046H,062H,081H,081H,080H,001H,040H,002H,040H,002H,020H,004HDB 020H,004H,040H,002H,040H,002H,080H,001H,081H,081H,046H,062H,038H,01CH,000H,000HDB 0C0H,003H,0A0H,005H,058H,01EH,024H,024H,024H,024H,01EH,078H,005H,0A0H,002H,040HDB 002H,040H,005H,0A0H,01AH,078H,024H,024H,024H,024H,058H,01AH,0A0H,005H,0C0H,003HDB 000H,000H,0C0H,003H,0B0H,00DH,088H,011H,044H,022H,025H,0A4H,012H,048H,00DH,0B0HDB 00DH,0B0H,012H,048H,025H,0A4H,044H,022H,088H,011H,0B0H,00DH,0C0H,003H,000H,000H;--福-- ** 宋体, 12 **; 当前所选字体下一个汉字对应的点阵为: 宽度x高度=16x16, 调整后为: 16x16TAB3:DB 0AAH,055H,055H,0AAH,0AAH,055H,055H,0AAH,0AAH,055H,055H,0AAH,0AAH,055H,055H,0A AHDB 055H,0AAH,0AAH,055H,055H,0AAH,0AAH,055H,055H,0AAH,0AAH,055H,055H,0AAH,0AAH,055H DB 0AAH,055H,055H,0AAH,0AAH,055H,055H,0AAH,0AAH,055H,054H,02AH,0A8H,015H,050H,00AH DB 050H,00AH,0A8H,015H,054H,02AH,0AAH,055H,055H,0AAH,0AAH,055H,055H,0AAH,0AAH,055H DB 0AAH,055H,054H,02AH,0A8H,015H,050H,00AH,0A0H,005H,040H,002H,080H,001H,000H,000HDB 000H,000H,080H,001H,040H,002H,0A0H,005H,050H,00AH,0A8H,015H,054H,02AH,0AAH,055HDB 0A0H,005H,040H,002H,091H,0F9H,000H,000H,074H,0F0H,019H,008H,031H,008H,058H,0F0HDB 014H,000H,011H,0F8H,012H,044H,013H,0FCH,012H,044H,091H,0F9H,040H,002H,0A0H,005HDB 020H,000H,013H,0FEH,010H,000H,0FDH,0FCH,005H,004H,009H,004H,011H,0FCH,030H,000HDB 05BH,0FEH,096H,022H,012H,022H,013H,0FEH,012H,022H,012H,022H,013H,0FEH,012H,002HDB 000H,004H,07FH,0C8H,000H,008H,03FH,0BFH,020H,0A0H,020H,090H,03FH,088H,000H,00CHDB 07FH,0DAH,044H,069H,044H,048H,07FH,0C8H,044H,048H,044H,048H,07FH,0C8H,040H,048HDB 010H,040H,010H,080H,091H,000H,073H,0FFH,014H,080H,018H,040H,040H,0FFH,05EH,092HDB 052H,092H,052H,092H,052H,0FEH,052H,092H,052H,092H,05EH,092H,040H,0FFH,000H,000HDB 012H,002H,013H,0FEH,012H,022H,012H,022H,013H,0FEH,012H,022H,096H,022H,05BH,0FEHDB 030H,000H,011H,0FCH,009H,004H,005H,004H,0FDH,0FCH,010H,000H,013H,0FEH,020H,000HTAB4:DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0F8H,0FFH,0F8H,0FFH,0C0H,0FFH,0C0H DB 0FEH,000H,0FEH,000H,0F0H,000H,0F0H,007H,0B0H,002H,0C8H,002H,048H,006H,030H,002H;STEP1 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0F8H,0FFH,0F8H,0FFH,0C0H,0FFH,0C0HDB 0FEH,000H,0FEH,000H,0F6H,000H,0F9H,007H,089H,002H,086H,001H,000H,005H,000H,002H;STEP2 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0F8H,0FFH,0F8H,0FFH,0C0H,0FFH,0C0HDB 0FEH,0C0H,0FFH,020H,0F1H,020H,0F0H,0C7H,080H,001H,080H,007H,000H,001H,000H,007H;STEP3 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0F8H,0FFH,0F8H,0FFH,0D8H,0FFH,0E4HDB 0FEH,024H,0FEH,018H,0F0H,000H,0F0H,001H,080H,001H,080H,007H,000H,005H,000H,005H;STEP4 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FBH,0FFH,0FCH,0FFH,0C4H,0FFH,0C3HDB 0FEH,000H,0FEH,000H,0F0H,000H,0F0H,007H,080H,001H,080H,007H,000H,004H,000H,007H;STEP5 DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,000H,000H,000H,000H,000H,000HDB 000H,000H,000H,000H,000H,000H,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 000H,000H,0F4H,058H,084H,0D4H,085H,052H,0F5H,052H,085H,052H,086H,054H,0F4H,058HDB 000H,000H,022H,05EH,022H,050H,022H,050H,023H,0DEH,022H,050H,022H,050H,0FAH,05EHEND咕哝了很多天终于成功了,发出来供大家交流,没准儿还能对别人有些帮助,总之百利无一害……点阵大小是16*32的。

16X16LED汉字点阵系统设计(8051单片机)

16X16LED汉字点阵系统设计(8051单片机)

电子技术综合设计总结报告姓名:专业与班级:设计题目:16*16 LED汉字点阵系统设计起始时间: 2010 ~ 2011 学年第(1)学期第14 周~第 19 周指导教师:成绩:日期:一、系统的基本理论概述⏹1.1前言当今世界,电子技术迅猛发展,点阵式显示器件作为现代信息显示的重要媒体,在金融证券、体育、机场、交通、商业、广告宣传、邮电电信、指挥调度、国防军事等许多领域中得到了广泛应用。

因此点阵式显示器件的研制、生产也的到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。

由于LED电子显示屏具有所显内容信息量大,外形美观大方,操作使用方便灵活.适用于火车,汽车站,码头,金融证券市场,文化中心,信息中心体育设施等公共场所。

该项目广泛涉及了计算机及电子技术中的电源技术、单片机技术、数据通讯技术、显示技术、存储技术、系统软件技术、接口及驱动等技术。

⏹1.2课题设计内容该电路系统是采用AT89C51单片机为控制器,控制点阵LED显示器进行显示,左移显示“百年矿大盛世华章”的内容。

⏹1.3设计目的1.使学生更深入地理解和掌握该课程中的有关基本概念,程序设计思想和方法。

2.培养学生勇于探索、严谨推理、实事求是、有错必改,用实践来检验理论,全方位考虑问题等科学技术人员应具有的素质。

3.提高学生对工作认真负责、一丝不苟,对同学团结友爱,协作攻关的基本素质。

4.培养学生从资料文献、科学实验中获得知识的能力。

5. 对学生掌握知识的深度、运用理论去处理问题的能力、实验能力、课程设计能力、书面及口头表达能力进行考核。

⏹1.4方案比较与选择:对于扫描LED点阵的方法有以下三种:(1)点扫描;(2)行扫描;(3)列扫描。

对于8*8的LED点阵而言:若使用第一种方式,其扫描频率必须大于16×64=1024Hz,周期小于1ms即可。

若使用第二和第三种方式,则频率必须大于16×8=128Hz,周期小于7.8ms即可符合视觉暂留要求。

51单片机控制LED显示汉字电路设计及程序

51单片机控制LED显示汉字电路设计及程序

51单片机控制LED显示汉字电路设计及程序用51单片机控制led显示汉字,电路中行方向由p0口和p2口完成扫描,由于p0口没有上拉电阻,因此接一个4.7k*8的排阻上拉。

如没有排阻,也可用8个普通的4.7k 1/8w 电阻。

为提供负载能力,接16个2n5551的NPN三极管驱动。

列方向则由4—16译码器74LS154完成扫描,它由89C51的P1.0---P1.3控制。

同样,驱动部分则是16个2N5401的三极管完成的。

电路的供电为一片LM7805三端稳压器,耗电电流为100ma左右。

采用一块12*20cm的万能电路板,应当选用质量好些的发光管,(否则有坏点现象,更换起来较麻烦)首先将256个发光管插入电路板,注意插入方向,同时使高度一致,行方向直接焊接起来,列方向则搭桥架空焊接,完成后用万用表测试一下如有不亮的更换掉。

然后找一个电脑硬盘的数据线,截取所需的长度,分别将行,列线引出至电路的相关管脚即可。

原理图为了简洁,故只画出了示意图,行列方向只画出了2个三极管,屏幕只画出4个发光管,实际上发光管为256只,三极管行列方向各16只,一共32只。

焊接过程认真仔细一天时间即可完成全部制作。

将程序编译后烧写入89c51, 插入40pin Ic座,即可看到屏幕轮流显示:“倚天一出宝刀屠龙”。

当然,你可将程序的汉字代码部分更换为您所需要的代码即可显示你所需要的汉字。

程序清单:ORG 00HLOOP: MOV A,#0FFH ;开机初始化,清除画面MOV P0,A ;清除P0口ANL P2,#00 ;清除P2口MOV R2,#200D100MS: MOV R3,#250 ;延时100毫秒DJNZ R3,$DJNZ R2,D100MSMOV 20H,#00H ;取码指针的初值l100: MOV R1,#100 ;每个字的停留时间L16: MOV R6,#16 ;每个字16个码MOV R4,#00H ;扫描指针清零MOV R0,20H ;取码指针存入R0L3: MOV A,R4 ;扫描指针存入AMOV P1,A ;扫描输出INC R4 ;扫描指针加1,扫描下一个MOV A,R0 ;取码指针存入AMOV DPTR,#TABLE ;取数据表的上半部分的代码MOVC A,@A+DPTRMOV P0,A ;输出到P0INC R0 ;取码指针加1,取下一个码。

基于51单片机的点阵式LED显示控制

基于51单片机的点阵式LED显示控制

目录摘要····················································目录 (2)第一章绪论 (3)1.1设计背景知识·····························1.2研究趋势及发展现状··························第二章8051单片机的体系结构2.1 单片机的基本内部资源································2.2 储存组织·································2.3 单片机系统外围电路···································第三章LED电路3.1 LED简介·······························3.2 16×16点阵LED原理及应用···································3.3 LED点阵的显示文字图形的原理···························3.4驱动方式·································3.5点阵的移动·····················第四章系统总体方案·····························摘要本设计是基于MCS-51的16×16点阵LED电子显示屏的设计。

单片机控制的LCD汉字显示电路设计(独家完整版)

单片机控制的LCD汉字显示电路设计(独家完整版)

单片机控制的LCD汉字显示电路设计1概述自20世纪以来,电子行业发生着翻天覆地的变化。

电子行业的发展推动着社会的发展,因此,世界各国也大力发展电子行业。

其中,在电子行业中,显示器产业是其中尤为重要的产业之一。

然而,在显示器产业中,LCD技术是最重要的技术之一。

众所周知,单片机像是电子行业中发挥着巨大作用的精灵。

它的能耗小、价格低廉,在简单的电子实验方面的应用非常广泛,在教育教学中深受广大电子教育工作者的喜爱。

1.1课题背景在电子行业中,LCD已被公认为是媒体时代的关键器件,它的低功耗、体积小、易于实现画面显示及优良的全色显示性能等特点,使其在现代社会中得到了广泛的应用。

可以说,LCD是本世纪初最有活力的电子产品之一。

与此同时,单片机的应用领域也非常广泛,大到导弹的导航装置,飞机上各种仪表的控制,小到广泛使用的智能IC卡,比如学校中使用的校园一卡通等,这些都离不开单片机。

因此,通过使用单片机可以使我们完成很多令我们意想不到的事情。

所以,本着理论与实践相结合的原则,本设计以单片机为核心控制器件控制LCD显示模块,通过硬件和软件的共同配合实现在128×64点阵液晶屏上显示汉字、字符等的功能,本系统由ATMEGA8单片机和点阵式液晶显示屏模块构成。

1.2设计要求系统硬件设计:系统选用ATMEGA8单片机作为主控和处理设备,LCD12864模块作为输出设备。

系统软件设计:微控制器处理和LCD模块显示部分的程序设计。

1.3 LCD简介及发展液晶显示器是一种采用了液晶控制透光度技术来实现色彩的显示器。

众所周知,即使长时间观看LCD显示屏幕也不会对眼睛造成伤害,这主要是因为LCD显示器没有辐射,画面图像很稳定。

LCD 可分为段位式LCD、字符式LCD 和点阵式LCD。

其中,段位式LCD 和字符式LCD 只能用于字符和数字的简单显示,不能满足图形曲线和汉字显示的要求;而点阵式LCD 不仅可以显示字符、数字,还可以显示各种图形、曲线及汉字,并且可以实现屏幕上下左右滚动、动画、分区开窗口、反转、闪烁等功能,用途十分广泛。

基于51单片机的汉字式LCD滚动显示

基于51单片机的汉字式LCD滚动显示

基于51单片机的汉字式LCD滚动显示系别:电气电子工程系学生姓名:专业班级:学号:指导教师:2 年4月25 日独创性声明本人声明所呈交的毕业论文是我个人在导师指导下进行的研究工作及取得的成果。

尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的研究成果。

对本文的研究做出贡献的个人和集体,均已在文中以明确方式标明。

本人完全意识到本声明的法律结果由本人承担。

论文作者签名:日期:年月日毕业论文版权使用授权书本毕业论文作者完全了解学校有关保留、使用毕业论文的规定,即:学校有权保留并向有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。

本人授权郑州职业技术学院要以将本论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本论文。

保密□,在________年解密后适用本授权书.本论文属于不保密□。

(请在以上方框内打“√”)毕业论文作者签名:指导教师签名:日期:年月日日期:年月日摘要电子技术的日新月异,使我们的生活更加方便、快捷。

任何一个领域,技术总是在不停地向前发展。

而随着技术的发展,新的产品应用也会跟着出现,然后成熟和普及。

正如在显示器领域,由球面CRT 到纯平CRT,由纯平CRT到如今主流的LCD液晶显示,而LCD汉字滚动显示更是应用广泛。

本文设计了一种以AT89C51单片机为核心的低成本、高精度、微型化LCD汉字滚动显示系统,并使用一些常用芯片如:AMPIRE128×64、SMG12864A等。

系统由单片机、外围电路、单片机最小系统以及显示电路构成。

本系统具有易安装检测、软件功能完善,工作可靠、准确度高等优点。

本文设计了一种以AT89C51单片机为核心的低成本、高精度、微型化LCD汉字滚动显示系统,并使用一些常用芯片如:AMPIRE128×64、SMG12864A等。

系统由单片机、外围电路、单片机最小系统以及显示电路构成。

基于单片机的LED显示屏的汉字显示

基于单片机的LED显示屏的汉字显示

灭,CA2 灭, CA3 灭 CA4 灭, CA5 灭,CA6 灭,CA7 灭 CA8 亮。即二进制 00000001,转换 为 16 进制为 01h.。
上半部第一行完成后,继续扫描右半部的 第一行,为了接线的方便,我们仍设计成由左往 右扫描,即从 C 1 向 C 8 方向扫描,从上图可以 看到,这一行全部为不亮,即为 00000000,16 进 制则为 00h。
for(i=0;i<16;i++) { if(i<8)
ROW_1=temp; else { ROW_1=0x00; ROW_2=temp; }
LINE_A1=ModeTable[index*16+i*2]; / / 左红
LINE_B1=ModeTable[index*16+i*2]; / / 左绿
然后单片机转向左半部第二行,仍为 C8 点 亮,为 00000001,即 16 进制01h.这一行完成后 继续进行下部分的扫描。依照这个方法,继续进 行下面的扫描,一共扫描 32 个 8 位, 可以得出 汉字“大”的扫描代码为以下数组里的值。
图2
3.汉字显示的程序实现
以下是笔者用 C 语言对 L E D 显示屏实现 ‘大’字显示
我们用 89C51 单片机来控制显示屏, 由于 单片机的总线为 8 位,一个字需要拆分为 4 个部 分即上下左右,分别由 8*8 点阵组成。
在本例图 2 中单片机首先显示的是左上角 的第一行的左半部分,即第 0 行的 CA1---CA8 或 CB1 — CB8。方向为 C1 到 C8 ,显示汉字“大” 时,C A 7 或 C B 7 点亮, 由左到右排列,为 C A 1
-112-
LINE_A2=ModeTable[index*16+1+i*2]; // 右红

51单片机带字库12864液晶动态汉字显示C语言源程序

51单片机带字库12864液晶动态汉字显示C语言源程序

51单片机带字库12864液晶动态汉字显示C语言源程序2009-10-17 19:36实验芯片为:AT89S52,带字库液晶屏:12864,实现的目的:动态一个汉字一个汉字显示。

其实和显示汉字的程序一样,只是稍做一下修改即可。

C语言源程序如下:#include <stdio.h>#include <math.h>#include <reg52.h>#include <string.h>sbit RS=P2^4;sbit WRD=P2^5;sbit E=P2^6;sbit PSB=P2^1;sbit RES=P2^3;void TransferData(char data1,bit DI);void delayms(unsigned int n);void delay(unsigned int m);void lcd_mesg003(unsigned char code *addr1);unsigned char code IC_DAT[]={"我是一个中国人啊"};void initinal(void){delay(40);PSB=1; //并口工作模式delay(1);RES=0; //复位delay(1);RES=1; //复位置高delay(10);TransferData(0x30,0);delay(100);TransferData(0x30,0);delay(37);TransferData(0x08,0);delay(100);TransferData(0x10,0);delay(100);TransferData(0x0C,0);delay(100);TransferData(0x01,0);delay(10);TransferData(0x06,0);delay(100);}void main(void){while(1){initinal();//调用LCD字库初始化程序delay(100);lcd_mesg003(IC_DAT);}}void lcd_mesg003(unsigned char code *addr1){unsigned char i;//第一行TransferData(0x80,0);delay(100);for(i=0;i<16;i++){TransferData(*addr1,1);addr1++;delayms(50);}}void TransferData(char data1,bit DI) //传送数据或是命令,当DI=0时,传送命令,当DI=1时,传送数据{WRD=0;RS=DI;delay(1);P0=data1;E=1;delay(1);E=0;}void delayms(unsigned int n){unsigned int i,j;for(i=0;i<n;i++)for(j=0;j<2000;j++);}void delay(unsigned int m){unsigned int i,j;for(i=0;i<m;i++)for(j=0;j<10;j++);}原理就是在显示每个汉字的时候加了一个延时程序,当然可以用定时器来实现,这样的话,不占用CPU处理时间。

用51单片机实现在88 LED点阵上显示汉字“中”

用51单片机实现在88 LED点阵上显示汉字“中”

用51单片机实现在8*8 LED点阵上显示汉字“中”1.实验任务用汇编语言利用51单片机在8*8 LED点阵上显示单个汉字“中”2.硬件电路连线图把“单片机系统”区域中的P0端口与P2端口分别用8芯排芯连接到“8*8LED点阵模块”的端口上,如下图所示。

3.8*8 LED点阵工作原理8*8 LED点阵结构如下图所示8*8 LED点阵共由64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,要使某一个二极管发光,只需该二极管对应的列输入‘0’,其他列输入‘1’,该二极管对应的行输入‘1’,其他行输入‘0’。

本次采用逐列扫描的方式,即P2口输出列码决定哪一列能亮,P0口输出行码决定列上哪些LED亮,能亮的列从左向右扫描完8列即显示出一帧完整的图像,因为单片机扫描速度很快,人的视觉有暂停现象,所以看见的就是一个字了。

4.汇编程序ORG 0000HLJMP L0ORG 0050HL0: MOV P0,#00HMOV P2,#7FHMOV P0,#0HMOV P0,#00HMOV P2,#0BFHMOV P0,#10HMOV P0,#00HMOV P2,#0DFHMOV P0,#7CHMOV P0,#00HMOV P2,#0EFHMOV P0,#54HMOV P0,#00HMOV P2,#0F7HMOV P0,#7CHMOV P0,#00HMOV P2,#0FBHMOV P0,#10HMOV P0,#00HMOV P2,#0FDHMOV P0,#10HMOV P0,#00HMOV P2,#0FEHMOV P0,#10HLJMP L0END5 . 执行结果。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

51单片机控制LED显示汉字
用51单片机控制led显示汉字,电路中行方向由p0口和p2口完成扫描,由于p0口没有上拉电阻,因此接一个4.7k*8的排阻上拉。

如没有排阻,也可用8个普通的4.7k 1/8w电阻。

为提供负载能力,接16个2n5551的NPN三极管驱动。

列方向则由4—16译码器74LS154完成扫描,它由89C51的P1.0---P1.3控制。

同样,驱动部分则是16个2N5401的三极管完成的。

电路的供电为一片LM7805三端稳压器,耗电电流为100ma左右。

采用一块12*20cm的万能电路板,应当选用质量好些的发光管,(否则有坏点现象,更换起来较麻烦)首先将256个发光管插入电路板,注意插入方向,同时使高度一致,行方向直接焊接起来,列方向则搭桥架空焊接,完成后用万用表测试一下如有不亮的更换掉。

然后找一个电脑硬盘的数据线,截取所需的长度,分别将行,列线引出至电路的相关管脚即可。

原理图为了简洁,故只画出了示意图,行列方向只画出了2个三极管,屏幕只画出4个发光管,实际上发光管为256只,三极管行列方向各16只,一共32只。

焊接过程认真仔细一天时间即可完成全部制作。

将程序编译后烧写入89c51, 插入40pin Ic座,即可看到屏幕轮流显示:“倚天一出宝刀屠龙”。

当然,你可将程序的汉字代码部分更换为您所需要的代码即可显示你所需要的汉字。

程序清单:
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口
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
end。

相关文档
最新文档