课程设计LED1616点阵显示设计
1616点阵课程设计

16 16点阵课程设计一、课程目标知识目标:1. 学生能理解16点阵的基本概念,掌握点阵在计算机图形学中的应用。
2. 学生能运用16点阵进行图案设计和创作,了解点阵与二进制之间的关系。
3. 学生了解点阵显示原理,掌握点阵屏幕的基本操作。
技能目标:1. 学生能够运用16点阵软件或编程工具进行图案设计,具备基本的点阵编程能力。
2. 学生能够通过小组合作,共同解决点阵图案设计中的问题,提高沟通与协作能力。
3. 学生能够运用所学知识,创新设计具有个性和特色的点阵作品。
情感态度价值观目标:1. 学生培养对计算机图形学的兴趣,激发探索精神,提高学习积极性。
2. 学生在创作过程中,体验团队合作的力量,培养集体荣誉感。
3. 学生通过点阵创作,培养审美观念,提高对美的感知能力。
课程性质:本课程为信息技术课程,以实践操作为主,注重培养学生的动手能力和创新能力。
学生特点:六年级学生具备一定的计算机操作基础,对新鲜事物充满好奇心,喜欢动手实践。
教学要求:教师应注重理论与实践相结合,以学生为主体,引导他们主动探索,培养他们的创新意识和团队协作能力。
在教学过程中,关注学生的个体差异,提供有针对性的指导。
通过本课程的学习,使学生能够达到上述课程目标,实现学习成果的分解和落实。
二、教学内容本章节教学内容主要包括以下三个方面:1. 点阵基础知识:- 点阵概念及其在计算机图形学中的应用。
- 点阵与二进制的关系。
- 点阵显示原理。
2. 点阵图案设计与创作:- 点阵软件或编程工具的使用。
- 点阵图案设计的基本方法。
- 点阵作品创作实例分析。
3. 点阵编程与应用:- 点阵屏幕的基本操作。
- 点阵编程基础。
- 点阵作品展示与评价。
教学大纲安排如下:第一课时:点阵基础知识- 引导学生了解点阵概念,分析点阵在计算机图形学中的应用。
- 讲解点阵与二进制的关系,探讨点阵显示原理。
第二课时:点阵图案设计与创作- 介绍点阵软件或编程工具,指导学生进行图案设计。
单片机课程设计16×16led点阵显示

16×16LED点阵显示摘要单片微型计算机(single chip microcomputer)简称单片机,它是为各类专用控制器而设计的通用或专用微型计算机系统,高密度集成了普通计算机微处理器,一定容量的RAM和ROM以及输入/输出接口,定时器等电路于一块芯片上构成的。
单片机自20世纪70年代问世以来,以极其高的性价比受到人们的重视和关注,所以应用很广,发展很快。
单片机的优点是体积小、重量轻、抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好,开发较为容易。
在现代工业控制和一些智能化仪器仪表中,越来越多的场所需要用点阵图形显示器显示汉字,汉字显示屏也广泛应用到汽车报站器,广告屏等。
所以研究LED显示有实用的意义。
LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成. LED点阵显示屏可以显示数字或符号, 通常用来显示时间、速度、系统状态等。
本设计是4个16×16点阵LED电子显示屏的设计。
整机以美国ATMEL公司生产的40脚单片机AT89C51为核心,介绍了以它为控制系统的LED点阵电子显示屏的动态设计和开发过程。
通过该芯片控制一个行驱动器74LS154和八个列驱动器74HC595来驱动显示屏显示。
该电子显示屏可以显示各种文字或单色图像,全屏能显示4个汉字,采用16块8 x 8点阵LED显示模块来组成4个16x16点阵显示模式。
显示采用动态显示,使得图形或文字能够实现静止、移入移出等多种显示方式。
文中详细介绍了LED点阵显示的硬件设计思路、硬件电路各个部分的功能及原理、相应软件的程序设计,以及使用说明等。
关键词:AT89C51单片机 LED 16*16点阵显示动态显示目录第一章绪论 (1)1.1 设计课题背景知识 (1)1.2 问题提出 (3)1.3 LED显示屏的发展 (4)第二章功能要求及方案论证 (6)2.1 功能要求 (6)2.1 功能要求 (6)第三章系统电路的设计 (9)3.1 设计框图及介绍 (9)3.2 51系列单片机简介 (9)3.3 单片机最小应用系统电路设计 (13)3.4 LED点阵介绍 (14)3.5 LED显示方式 (14)3.6 点阵的移动 (17)3.7 点阵的颜色 (21)3.8 LED阵列驱动电路 (21)3.9 单片机延时子程序 (22)第四章系统程序的设计 (24)4.1 显示驱动程序 (24)4.2 系统主程序 (25)第五章调试及性能分析 (32)5.1 开发环境介绍 (32)5.2 理论性能分析 (32)5.3 系统调试 (33)第六章总结 (34)致谢 (35)附录 (36)一. 程序代码 (36)系统主程序 (37)二.主要芯片介绍 (42)三.点阵左移显示的流程图 (46)四.元件清单 (47)五.参考文献 (47)六.仿真电路图 (48)第一章绪论1.1 设计课题背景知识单片微型计算机(single chip microcomputer)简称单片机,它是为各类专用控制器而设计的通用或专用微型计算机系统,高密度集成了普通计算机微处理器,一定容量的RAM和ROM以及输入/输出接口,定时器等电路于一块芯片上构成的。
LED1616点阵显示课程设计

16*16LED点阵滚动显示屏课程设计专业:班级:姓名:学号:指导教师:题目LED16*16点阵显示系统设计一、任务设计一款基于AT89C51单片机的汉字LED16*16点阵显示块,实现汉字循环左移。
二、设计要求[1] 通过对AT89C51单片机的编程,实现点阵循环左移显示“测控技术与仪器”7个汉字。
[3] 写出详细的设计报告。
[4] 给出全部电路和源程序。
三、参考资料[1]李忠国.单片机应用技能实训[M] .北京:人民邮电出版社,2006.[2]康华光.电子技术基础数字部分[M] .北京:清华大学出版社,2005.[3]张义和.例说51单片机[M] .北京:人民邮电出版社,2008.[4]王让定.汇编语言与接口技术[M] .北京:清华大学出版社, 2005.[5]蒋芳芳.单片机智能数字设计[J].计算机教育,2001,(6).[6]孙玉艳.实现PC机与单片机通信与控制 [J].电站设备自动化,2002 ,(4).[7]李海涛.关于如何提高单片机系统可靠性的探讨 [J].宁夏机械,2003 ,(2)目录第1章绪论 (3)1.1 LED电子显示屏简介 (3)1.2 LED显示屏的发展趋势 (4)1.3设计任务 (5)第2 章总体方案论证与设计 (6)2.1 LED驱动模块 (6)2.2 数据存储模块 (6)2.3 总体硬件组成框图 (7)第3章系统硬件设计 (8)3.1 LED动态显示原理 (8)3.2 AT89C51单片机 (9)3.3 驱动电路的设计 (10)3.4 数据存储电路设计 (11)第4章系统的软件设计 (12)4.1 程序流程图 (12)4.2 驱动显示子程序设计 (13)第5章系统调试与测试结果分析 (14)5.1 使用的仪器仪表 (14)5.2 系统调试 (14)5.3 测试结果 (14)结论 (15)参考文献 (16)附录1 程序 (17)附录2 仿真效果图 (20)第1章绪论LED是发光二极管英文Light Emitting Diode的简称,是六十年代末发展起来的一种半导体显示器件,七十年代,随着半导体材料合成技术、单晶制造技术和P-N结形成技术的研究进展,发光二极管在发光颜色、亮度等性能得以提高并迅速进入批量化和实用化。
16乘16点阵设计课程设计

16X16点阵设计摘要本设计利用简单单片机AT89C51作为主操纵模块,利用简单的外围电路来驱动16×16的点阵LED显示屏。
在本设计中要紧用两个74HC595来驱动16×16点阵显示屏的列,用AT89C51来驱动16×16点阵显示屏的行,能够最终实现——“十六乘十六点阵可调速显示屏设计” 十五个汉字的自动左移,而且它们的“进”和“出”是以转动形式设计的。
也确实是说,硬件电路大致上能够分成单片机系统及外围电路、列驱动电路和行驱动电路三部份。
从而能够实现一个室内用的16×16点阵LED图文显示屏,在目测条件下LED显示屏各点亮度均匀、充沛,可显示图形和文字,显示图形或文字应稳固、清楚无串扰,图形或文字显示有静止、移入移出等显示方式。
最后,利用烧录器能够很方便的实现单片机与PC机等外围存储设备的数据传输,并能利用软件方便的进行显示内容的多样转变,它在实际生活中具有普遍的应用。
关键词:单片机,16x16点阵,转动显示目录1 绪论 0课题描述 0功能要求 0方案论证 02 系统整体方案及硬件设计 (1)显示屏整体设计方案 (1)AT89C51的原理及说明 (1)列驱动电路 (2)行驱动电路 (2)3 系统硬件电路的设计 (6)单片机 (7)单片机系统及外围电路 (8)4 系统程序的设计 (8)系统主程序 (9)显示驱动程序 (9)单片机汇编程序 (10)总结 (18)致谢 (18)参考文献 (18)附录1.硬件原理图 (19)附录2.元器件清单表 (23)1 绪论课题描述随着LED显示技术日趋成熟和普遍公共场合需求量增大,现代工业操纵和一些智能化仪器仪表中,愈来愈多的场合所需要用点阵图形显示器显示汉字,广告屏等。
因此研究LED显示有有效意义。
功能要求设计一个室内用16×16点阵LED图文显示屏,要求在目测条件下LED显示屏各点亮度均匀、充沛,可显示图形和文字,显示图形或文字应稳固、清楚无串扰,图形或文字显示有静止、移入移出等显示方式。
16×16点阵LED电子显示屏的设计

一.课程设计意义二.课程设计任务书三、课程设计进度计划及检查情况记录表四、成绩评定与评语目录一.课程设计意义 (1)二.课程设计任务书 (2)三、课程设计进度计划及检查情况记录表 (3)四、成绩评定与评语 (3)一、总体设计方案 (5)1.1 总体设计 (5)1.2 硬件设计 (6)1.3 软件设计 (13)二、设计内容 (15)2.1 系统硬件原理图与仿真 (15)2.2 程序清单 (17)三.结论、建议及课程设计体会 (21)四.参考文献 (21)一、总体设计方案1.1 总体设计1.1.1 工作原根据功能要求,应采用动态显示的设计方法,同时为简化设计,减少硬件数量,显示数据的传输采用串行传输方式。
(1)熟悉AT89S51单片机系统的使用方法。
(2)掌握动态显示原理及实现方法。
(3)初步掌握AT89S51单片机编程方法。
(4)掌握串行数据传输方式的应用。
(5)实现利用AT89S51单片机控制的LED图文屏正常工作。
1.1.2 硬件部分总体设计根据功能要求,采用AT89C51单片机,动态显示的设计方法,同时为简化设计,减少硬件数量,显示数据的传输采用串行传输方式,列扫描地址用P1口控制,总体结构框图如下:图1-1 系统总体结构框图1.2 硬件设计系统的组成,硬件的选用,芯片的特点1.2.1 8051系列的单片机AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
图片见下图:图 1-2 89C51管脚图(1).管脚说明VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
1616点阵LED显示屏的原理与制作实验报告

16*16点阵LED显示屏的原理与制作实验报告一、实验目的1.学会LED点阵模块的引脚判别,学会多块LED点阵模块的拼接使用。
2.进一步了解LED点阵的显示原理。
3.了解用单片机控制LED点阵显示字符的基本原理。
4.学会根据电路图连接电路。
二、实验内容在4块8*8LED合并而成的16*16LED显示屏上显示名字。
三、实验过程1.显示屏驱动电路原理图2.程序编写#include<reg52.h>#define CCED2 0x0000 /*吴*/unsigned char code word_zai[16][2] = {/*吴CCED2 */0x00,0x84,0x00,0x84,0x80,0x44,0xBE,0x44,0xA2,0x24,0xA2,0x14,0xA2,0x0C,0xA 2,0x07,0xA2,0x0C,0xA2,0x14,0xA2,0x24,0xBE,0x64,0x80,0xC4,0x00,0x44,0x00,0x04,0x0 0,0x00};/*"吴",0*/void main(){ char scan,i,j;P0=0;P1=0;P2=0;while(1){ scan=0;for(i=0;i<16;i++){ P1=scan;for(j=0;j<50;j++) //显示五十次{ P2=word_zai[i][0] ;P0=word_zai[i][1] ;}P0=0;P2=0;scan++;}}}四、实验总结在本次的实验里,我感觉本次实验的任务对我的挑战蛮大,因为在实验中要编写一个C语言有点麻烦,需要算的数据比较多,一不小心的话可能就会导致最后的实验结果出现问题,所以要非常的仔细才行。
单片机课程设计--+16x16点阵LED电子显示屏的设计

单片机课程设计-- 16x16点阵LED电子显示屏的设计第一章系统总体方案设计LED驱动显示采用动态扫描方法, 动态扫描方式是逐行轮流点亮, 这样扫描驱动电路就可以实现多行的同名列共用一套列驱动器。
以16×16点阵为例, 把所有同一行的发光管的阳极连在一起, 把所有同一列的发光管的阴极连在一起(共阳的接法), 先送出对应第1行发光管亮灭的数据并锁存, 然后选通第1行使其燃亮一定的时间, 然后熄灭;再送出第2行的数据并锁存, 然后选通第2行使其燃亮相同的时间, 然后熄灭;…第16行之后, 又重新燃亮第1行, 反复轮回。
当这样轮回的速度足够快(每秒24次以上), 由于人眼的视觉暂留现象, 就能看到显示屏上稳定的图形。
该方法能驱动较多的LED, 控制方式较灵活, 而且节省单片机的资源。
显示数据传输采用串行传输的方法, 控制电路可以只用一根信号线, 将列数据一位一位传往列驱动器, 在硬件方面无疑是十分经济的。
但串行传输过程较长, 数据按顺序一位一位地输出给列驱动器, 只有当一行的各列数据都已传输到位之后, 这一行的各列才能并行地进行显示。
对于串行传输方式来说, 列数据准备时间可能相当长, 在行扫描周期确定的情况下, 留给行显示的时间就太少了, 以致影响到LED的亮度。
采用串行传输中列数据准备和列数据显示的时间矛盾, 可以采用重叠处理的方法。
即在显示本行各列数据的同时, 传送下一行的列数据。
为了达到重叠处理的目的, 列数据的显示就需要有锁存功能。
对于列数据准备来说, 它应能实现串入并出的移位功能。
这样, 本行已准备好的数据打入并行锁存器进行显示时, 串行移位寄存器就可以准备下一行的列数据, 而不会影响本行的显示。
系统框图如图一图一点阵显示器硬件系统框图第二章系统硬件电路的设计硬件电路大致上可以分为单片机系统及外围电路、列驱动电路和行驱动电路三部分。
一. 单片机系统及外围电路单片机采用89C51或更高频率的晶振, 以获得较高的刷新频率, 使得显示更稳定。
LED16X16点阵实验

哈尔滨理工大学单片机原理及接口技术课程设计报告设计题目: LED16*16点阵实验专业:目录1课程设计意义 (3)1.1本次课程设计的目的 (3)2.2本次课程设计的意义 (3)2设计功能 (3)3设计思路 (3)4设计步骤 (3)4.1总体设计 (3)4.2 硬件设计 (4)4.2.1 LED显示及其驱动 (4)4.2.2 可编程并行接口芯片8155 (5)4.3 软件设计 (5)4.3.1 程序框图 (6)4.3.2整体程序 (6)5调试过程 (7)5.1 硬件调试 (7)5.2 软件调试 (7)6结果分析与心得体会 (7)6.1结果分析 (7)6.2心得与体会 (8)7附录:整体程序 (8)1课程设计目的与意义1.1本次课程设计的目的1)熟悉单片机编程原理。
2)熟练掌握 51 单片机的控制电路和最小系统。
3)单片机基本应用系统的设计方法。
2.2本次课程设计的意义LED显示屏具有亮度高、工作电压低、功耗小、微型化、易与集成电路匹配、驱动简单、寿命长、耐冲击、性能稳定等特点。
广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。
因此16*16LED 点阵实验的课程设计对实际的生产和生活具有非常重要的指导意义2 设计功能设计一个能显示16X16点阵图文LED显示屏,要求能显示文字,文字应稳定、清晰,文字以卷帘形式向上滚动显示“欢迎使用星研实验仪”。
3 设计思路16×16点阵LED电子显示屏的设计:能依次显示“欢迎使用星研软件”几个字符。
LED点阵中没有16X16的点阵,可以通过四个8X8的LED点阵对应的行和列分别连接起来构成16X16点阵,此时共需要32根行列控制线,对单片机来说明显不够,需要外扩I/O接口。
可以选择的芯片有8255、8155等。
设计过程中注意LED的驱动电压。
本实验单片机采用AT89C51,扩展采用74LS244N、8255A、8155A、74LS240N。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计IV设计说明书LED16*16点阵显示设计学生姓名学号班级成绩指导教师数学与计算机科学学院2013年月日课程设计任务书专业:学号:姓名:课程设计名称:课程设计IV﹙10171010﹚设计题目:LED16*16点阵显示设计完成期限:自2013 年9 月 2 日至2013 年9 月14 日共 2 周设计依据要求及主要内容一、目的任务:依据实验器材提供的功能,利用并行接口芯片8255A和LED点阵模块显示字符,用取模软件建立标准字库,并编制程序实现点阵循环左移显示汉字。
二、设计内容:1. 复习相关课程内容:微机原理及应用课程相关内容;汇编语言程序设计的相关内容;熟悉模拟电路、数字电路的相关知识;2. 熟悉实验相关器材的主要功能。
3. 在上述基础上,根据课程设计的基本要求,完成以下各项任务(反映在设计说明书中):(1)题目要求涉及的硬件电路图及摘要说明。
(2)题目的工作原理及相应描述。
(3)程序流程框图。
三、设计要求:1.软件程序文档();2.硬件电路图(用专业软件);3.完成实验;4.完成设计说明书。
课程设计评阅评语:指导教师签名:年月日摘要利用微机接口芯片8255,并行控制LED点阵显示;其次就是掌握8088微机系统与LED点阵显示模块之间接口电路设计及编程,了解LED点阵显示的基本原理和如何来实现汉字的的循环左移显示。
在控制板MC1上以并行通信的方式控制LED点阵显示。
要求自建字库,编制程序实现点阵循环左移显示汉字;关键词:芯片;并行;循环目录1. 设计目的 (1)2. 设计内容 (2)3. 硬件电路设计 (3)3.1 8255 (3)3.2 138译码器 (3)3.3 371锁存器 (3)3.4 LED动态显示原理 (3)3.5 整个系统的仿真电路图 (6)4. 字模生成 (7)5. 程序设计 (8)5.1 程序设计整体思路 (8)5.2 程序流程图 (8)5.3 源程序 (10)6. 系统功能测试 (13)6.1 实物测试 (13)6.2 仿真测试 (13)7. 总结 (14)参考文献 (15)本次课程设计目的剖析试验箱,利用微机接口芯片8255,并行控制LED点阵显示;其次就是掌握8088微机系统与LED点阵显示模块之间接口电路设计及编程,了解LED 点阵显示的基本原理和如何来实现汉字的的循环左移显示。
利用598H试验系统扩展接口CZ7座,在控制板MC1上以并行通信的方式控制LED 点阵显示。
要求自建字库,编制程序实现点阵循环左移显示汉字,并要求通过protues 仿真软件画出电路图,运行程序。
3. 硬件电路设计整个电路由8088CPU,两片8255,1个74ls373,1个74LS138,1个16×16的LED,5个7407。
该电路可静态显示1个16*16位的汉字,也可循环显示。
3.1 8255Intel8255A是一种通用的可编程序并行I/O接口芯片,又称“可编程外设接口芯片”,是为Intel8080/8085系列微处理据设计的,也可用于其它系列的微机系统。
可由程序来改变其功能,通用性强、使用灵活。
通过8255A,CPU可直接同外设相连接,是应用最广的并行I/O接口芯片。
其中含3个独立的8位并行输入/输出端口,各端口均具有数据的控制和锁存能力。
可通过编程设置各端口的工作方式和数据传送方向(入/出/双向)。
3.2 138译码器译码器是组合逻辑电路的一个重要的器件,74LS138的输出是低电平有效,故实现逻辑功能时,输出端不可接或门及或非门,74LS138与前面不同,其有使能端,故使能端必须加以处理,否则无法实现需要的逻辑功能。
发光二极管点亮只须使其正向导通即可,根据LED的公共极是阳极还是阴极分为两类译码器,即针对共阳极的低电平有效的译码器;针对共阴极LED的高电平输出有效的译码器。
3.3 373锁存器74LS373是低功耗肖特基TTL8D锁存器,内有8个相同的D型(三态同相)锁存器,由两个控制端(11脚G或EN;1脚OUT、CONT、OE)控制。
当OE接地时,若G为高电平,74LS373接收由PPU输出的地址信号;如果G为低电平,则将地址信号锁存。
工作原理:74LS373的输出端O0—O7可直接与总线相连。
当三态允许控制端OE为低电平时,O0—O7为正常逻辑状态,可用来驱动负载或总线。
当OE为高电平时,O0—O7呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。
当锁存允许端LE为高电平时,O随数据D而变。
当LE为低电平时,O被锁存在已建立的数据电平。
3.4 LED 动态显示原理LED点阵显示系统中各模块的显示方式:有静态和动态显示两种。
静态显示原理简单、控制方便,但硬件接线复杂,在实际应用中一般采用动态显示方式,动态显示采用扫描的方式工作,由峰值较大的窄脉冲电压驱动,从上到下逐次不断地对显示屏的各行进行选通,同时又向各列送出表示图形或文字信息的列数据信号,反复循环以上操作,就可显示各种图形或文字信息。
点阵式LED绝大部分是采用动态扫描显示方式,这种显示方式巧妙地利用了人眼的视觉暂留特性。
将连续的几帧画面高速的循环显示,只要帧速率高于24帧/秒,人眼看起来就是一个完整的,相对静止的画面。
最典型的例子就是电影放映机。
在电子领域中,因为这种动态扫描显示方式极大的缩减了发光单元的信号线数量,因此在LED显示技术中被广泛使用。
以8×8点阵模块为例,说明一下其使用方法及控制过程。
图2.1中,红色水平线Y0、Y1……Y7叫做行线,接内部发光二极管的阳极,每一行8个LED的阳极都接在本行的行线上。
相邻两行线间绝缘。
同样,蓝色竖直线X0、X1……X7叫做列线,接内部每列8个LED的阴极,相邻两列线间绝缘。
在这种形式的LED点阵模块中,若在某行线上施加高电平(用“1”表示),在某列线上施加低电平(用“0”表示)。
则行线和列线的交叉点处的LED就会有电流流过而发光。
比如,Y7为1,X0为0,则右下角的LED点亮。
再如Y0为1,X0到X7均为0,则最上面一行8个LED全点亮。
现描述一下用动态扫描显示的方式,显示字符“B”的过程。
其过程如图3.1图3.1 用动态扫描显示字符“B”的过程Proteus中只有5×7和8×8等LED点阵,并没有16×16LED点阵,而在实际应用中,要良好地显示一个汉字,则至少需要16×16点阵。
下面我们就首先介绍使用8×8点阵构建16×16点阵的方法,并构建一块16×16LED点阵,用于本次设计。
首先,从Proteus7.5的元件库中找到“MATRIX-8X8-RED”元器件,并将四块该元器件放入Proteus文档区编辑窗口中。
此时需要注意,如果该元器件保持初始的位置(没有转动方向),我们要首先将其左转90°,使其水平放置,那么此时它的左面8个引脚是其行线,右边8个引脚是其列线(当然,如果你是将右转,则右边8个引脚是行线)。
然后我们将四个元器件对应的行线和列线分别进行连接,使每一条行线引脚接一行16个LED,列线也相同。
并注意要将行线和列线引出一定长度的引脚,以便下面我们使用。
连接好的16×16点阵如图3.2所示。
成如上图的16×16点阵只是第一步,这样分开的数块并不能达到好的显示效果,下面我们要将其进一步组合。
组合实际上很简单,首先选中如上图中右侧的两块8×8点阵,然后拖动并使其与左侧的两块相并拢,如图3.3所示。
图3.2 点阵模块组合图3.3可以看到原来的连线已经自动隐藏了,至于线上的交点,我们不要去动。
然后,我们再来最后一步,选中下侧的两块点阵,并拖动使其与上侧的两块并拢,最后的效果如图3.4所示。
看到,原来杂乱的连线现在已经几乎全部隐藏了,一块16×16的LED点阵做成了。
需要注意,做成的LED点阵的行线为左侧的16个引脚,下侧的16个引脚为其列线,而且其行线为高电平有效,列线为低电平有效。
然后,我们将其保存,以便以后使用。
图3.43.5 整个系统的仿真电路图图3.54. 字模生成文字的字模是一组数字,但它的意义却与数字的意义有着根本的变化,它是用数字的各位信息来记载英文或汉字的形状[1。
在电脑硬件中,根本没有汉字这个概念,也没有英文的概念,其认识的概念只有——内码(将ASCII表的高128个很少用到的数值以两个为一组来表示汉字,即汉字的内码。
而剩下的低128位则留给英文字符使用,即英文的内码)。
如果你用启动盘启动系统后用DIR命令可能得到一串串莫名其妙的字符,但那确确实实是汉字,如果你启动UCDOS或其他的汉字系统后,就会看到那是一个个熟悉的汉字。
在硬件系统内,英文的字模信息一般固化在ROM里,即使在没有进入系统的CMOS里,也可以让你看到英文字符。
而在DOS下,中文的字模信息一般记录在汉字库文件里(将制作好的字模放到一个个标准的库中,这就是点阵字库文件)。
在通过软件实现的技术中,目前有许多字模生成软件,软件打开后输入汉字,点“检取”,十六进制数据的汉字代码即可自动生成,把我们所需要的竖排数据复制到我们的程序中即可。
在通过硬件实现字模提取的技术中,有在系统中增加硬汉字库的方法,主控器发送的汉字是其机内码,用两个字节来表示一个汉字。
根据机内码,显示单元控制模块从汉字库中查取显示字模,实现汉字显示。
由于带有硬汉字库,进行动态文字显示时,通用智能显示单元仅接受汉字的机内码即可,这样数据通讯量大大减少。
因此,“动态文字显示速度快”。
5. 程序设计5.1 程序设计总体思路用简短的汇编程序设计,实现LED点阵显示内容,并使显示的内容在屏幕上从左到右的滚动显示。
系统采用模块化结构,包括主程序、显示子程序和循环扫描显示子程序。
用8088、74LS373、74LS138、7407芯片和1个16×16LED点阵显示器构成一个完整的16位点阵LED显示系统。
5.2 程序流程图程序主要由开始、初始化、主程序、子程序、字库组成(源程序详见附录)。
其中主程序和子程序的流程图为:图5.1循环扫描显示子程序流程图字库为:DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H DB 01H,00H,00H,80H,00H,60H,0FFH,0F8H,00H,07H,00H,00H,00H,04H,79H,24H ;信DB 49H,24H,49H,25H,49H,26H,49H,24H,49H,24H,79H,24H,00H,04H,00H,00HDB 40H,00H,30H,00H,00H,00H,03H,0FCH,39H,54H,41H,54H,41H,56H,45H,55H ;息DB 59H,54H,41H,54H,41H,54H,73H,0FCH,00H,00H,08H,00H,30H,00H,00H,00HDB 20H,00H,20H,04H,20H,04H,20H,04H,20H,04H,20H,04H,20H,04H,3FH,0FCH ;工DB 20H,04H,20H,04H,20H,04H,20H,04H,20H,04H,20H,04H,20H,00H,00H,00HDB08H,24H,06H,24H,01H,0A4H,0FFH,0FEH,01H,23H,06H,22H,40H,00H,49H,3EH ;程DB 49H,22H,49H,22H,7FH,22H,49H,22H,49H,22H,49H,3EH,41H,00H,00H,00HDB 04H,40H,04H,30H,04H,11H,04H,96H,04H,90H,44H,90H,84H,91H,7EH,96H ;学DB 06H,90H,05H,90H,04H,98H,04H,14H,04H,13H,04H,50H,04H,30H,00H,00HDB00H,00H,0FFH,0FEH,04H,22H,08H,5AH,07H,86H,80H,10H,41H,0CH,31H,24H ;院DB 0FH,24H,01H,25H,01H,26H,3FH,24H,41H,24H,41H,14H,71H,0CH,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H 5.3 源程序PA EQU 0040H ;行代码1PB EQU 0042H ;行代码2PCTL EQU 0046H ;行8255控制口地址XPA EQU 0048H ;列扫描1XPB EQU 004AH ;列扫描2XPCTL EQU 004EH ;列8255控制口地址DATA SEGMENT A T 0ORG 2DB0HFL DB ? ;选择列扫描R0 DW ? ;数据地址偏移量R6 DW ? ;扫描存储单元R1 DB ? ;列扫描通道选择DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TAORG 2DC0HSTART:MOV DX,XPCTLMOV AL,80HOUT DX,AL ;选择8255个端口工作方式MOV DX,PCTLOUT DX,ALCALL OFFLEDMOV AL,00H ;数据初始化MOV FL,ALMOV R6,0048HX0: MOV R0,0000HX1: CALL DEL1INC R0INC R0 ;R0+2CMP R0,00E0H ;304JNZ X1JMP X0DISPW:PUSH R0 ;LED点阵显示MOV R1,01HDISP1:MOV AX,R0MOV BX,OFFSET TABADD BX,AXMOV AL,CS:[BX]MOV DX,PBOUT DX,AL ;行代码1输入INC R0MOV AX,R0MOV BX,OFFSET TABADD BX,AXMOV AL,CS:[BX]MOV DX,PAOUT DX,AL ;行代码2输入MOV DX,R6MOV AL,R1NOT ALOUT DX,AL ;列扫描MOV CX,0010H ;循环128次LOOP $CALL OFFLEDINC R0RCL R1,1 ;扫描信号左移8次JNC DISP1CMP FL,00HJNZ EXITINC FLCLC ;标志位CF清零MOV R1,01HMOV R6,004AH ;切换到列扫描2JMP DISP1EXIT: MOV R6,0048H ;切换到列扫描1 MOV FL,00HPOP R0RETOFFLED: MOV DX,XPA ;灭灯MOV AL,0FFHOUT DX,ALMOV DX,XPBOUT DX,ALRETDEL1: MOV CX,0020H ;计数32次CON1: PUSH CXCALL DISPWPOP CXLOOP CON1RETTAB:DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H DB 01H,00H,00H,80H,00H,60H,0FFH,0F8H,00H,07H,00H,00H,00H,04H,79H,24H ;信DB 49H,24H,49H,25H,49H,26H,49H,24H,49H,24H,79H,24H,00H,04H,00H,00HDB 40H,00H,30H,00H,00H,00H,03H,0FCH,39H,54H,41H,54H,41H,56H,45H,55H ;息DB 59H,54H,41H,54H,41H,54H,73H,0FCH,00H,00H,08H,00H,30H,00H,00H,00HDB 20H,00H,20H,04H,20H,04H,20H,04H,20H,04H,20H,04H,20H,04H,3FH,0FCH ;工DB 20H,04H,20H,04H,20H,04H,20H,04H,20H,04H,20H,04H,20H,00H,00H,00HDB 08H,24H,06H,24H,01H,0A4H,0FFH,0FEH,01H,23H,06H,22H,40H,00H,49H,3EH ;程DB 49H,22H,49H,22H,7FH,22H,49H,22H,49H,22H,49H,3EH,41H,00H,00H,00HDB 04H,40H,04H,30H,04H,11H,04H,96H,04H,90H,44H,90H,84H,91H,7EH,96H ;学DB 06H,90H,05H,90H,04H,98H,04H,14H,04H,13H,04H,50H,04H,30H,00H,00HDB 00H,00H,0FFH,0FEH,04H,22H,08H,5AH,07H,86H,80H,10H,41H,0CH,31H,24H ;院DB 0FH,24H,01H,25H,01H,26H,3FH,24H,41H,24H,41H,14H,71H,0CH,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00HCODE ENDSEND START六、系统功能测试6.1 实物测试通过分析程序,了解LED点阵汉字循环循环左移的显示方法,自建字库,很成功的完成了实物测试,达到了预期的要求。