LED点阵汉字显示屏的设计

上传人:txadgkn****dgknqu... 文档编号:66784876 上传时间:2022-03-29 格式:DOC 页数:29 大小:198KB
返回 下载 相关 举报
LED点阵汉字显示屏的设计_第1页
第1页 / 共29页
LED点阵汉字显示屏的设计_第2页
第2页 / 共29页
LED点阵汉字显示屏的设计_第3页
第3页 / 共29页
点击查看更多>>
资源描述
精选优质文档-倾情为你奉上2013届本科毕业论文(一号黑体居中) LED点阵汉字显示屏的设计院 (系) 名 称物理与电子信息学院(小三号黑体)专 业 名 称物理学(小三号黑体)学 生 姓 名张三丰(小三号黑体)学 号(小三号Times New Roman)指 导 教 师何大壮教授(小三号黑体)完 成 时 间2013年5月8日(小三号黑体)目 录摘要.Abstract.第1章 概述.11.1 LED点阵数码显示屏概述.11.1.1 LED的简介.11.1.2 点阵的概述.11.1.3 LED点阵数码显示屏的前景和发展.1第2章单片机的基础知识32.1 单片机的简介.32.1.1 单片机的种类.42.1.2 汇编语言及其优点.4第3章 系统硬件设计.63.1 硬件设计主框图.63.2 LED点阵数码显示屏的驱动原理.63.3 8*8LED点阵连接成数码显示屏的硬件连接.73.4单片机与74HC595的硬件连接.73.5 89S51单片机、显示模块及驱动模块的硬件连接.7第4章 软件设计.94.1 显示原理10 4.1.1 LED的显示原理10 4.1.2 点阵的显示原理.114.2 设计思路124.3 16点点阵字库字模的提取124.4 扫描输出框图 .144.5 主程序流程图154.6 逐字显示及从左到右滚动显示时的流程图174.7 程序17第5章 单片机的硬件与软件调试21 5.1 硬件调试21 5.2 软件调试21总结22致谢.23参考文献.24专心-专注-专业摘 要随着国民经济高速增长,对公众场合发布信息的需求日益强烈,LED显示屏的出现正好适应了这一市场形势,因而在LED显示屏的设计制造技术与应用水平上都得到了迅速的提高,生产也得到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。本设计是为了实现单片机控制LED数码点阵显示模块从右到左滚动显示“九州光电科技”。它以单片机89S51为核心,以公司生产的1588双色点阵为显示模块,以移位寄存器74HC595实现点阵的列扫描。采用单片机汇编语言进行编程,通过编程控制各显示点对应LED阳极和阴极端的电平,就可以有效的控制各显示点的亮灭,所显示字符的点阵数据可以自行编写(即直接点阵画图),也可从标准字库中提取。关键词 单片机 键盘显示 LED 点阵 移位寄存器 AbstractWith national economy high speed growing, to public the situation release the need of information day by day mightiness, LED manifestation hold of emergence at the right moment orientation this market situation, as a result at LED manifestation hold of design manufacturing technique and application level top all got quick of exaltation, produce also got quick of development, and gradually formation industry, become the newly arisen industry realm of photoelectron profession .This design is for the sake of realization list slice machine control LED figures point manifestation mold piece from right arrive left roll over manifestationnine state light electricity science and technology.It take list slice the machine 89 S51 as core, with the company produce of 1588 pairs of color point is manifestation the mold piece scan by moving a the row which deposit the machine 74 HC595 a realization point.Adoption list slice the machine edit collected materials language to carry on plait distance and pass plait distance control each manifestation point rightness should LED anode and cathode carry of electricity even, can valid of control each manifestation point of bright put out, the character list show of point the data can write(namely direct point draw) by oneself, can also withdraw from the standard the word database.Key word: List slice machine Keyboard and Display LED Point Move to deposit a machine第1章概述11 LED点阵数码显示屏概述111 LED的简介 LED是英文light emitting diode(发光二极管)的缩写,发光二极管的核心部分是由p型半导体和 n型半导体组成的晶片,在p型半导体和n型半导体之间有一个过度层p-n结,注入的少数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。 LED在我们日常生活的电器中随处可见,极为普通也广为人知。LED具有效率高、光线质量高、能耗小、寿命长等特点,主要可用于平面显示领域、便携设备显示屏、照明以及红外线LED领域等下游应用产品市场。 与传统的照明工具相比,LED照明产品,尤其是氮化镓基(GaN)白光LED照明光源体积小、重量轻、方向性好并可耐各种恶劣条件,在功耗、寿命以及环保等方面均有不可比拟的优越性。112 点阵的概述LED点阵显示器,以发光二极管为像素,它用高亮度发光二极管芯阵列组合后,环氧树脂和塑模封装而成。具有高亮度、功耗低、引脚少、视角大、寿命长、耐湿、耐冷热、耐腐蚀等特点。点阵显示器有单色和双色两类,可显示红,黄,绿,橙等。LED点阵有44、48、57、58、88、1616、2424、4040等多种;根据像素的数目分为等,双基色、三基色等,根据像素颜色的不同所显示的文字、图象等内容的颜色也不同,单基色点阵只能显示固定色彩如红、绿、黄等单色,双基色和三基色点阵显示内容的颜色由像素内不同颜色发光二极管点亮组合方式决定,如红绿都亮时可显示黄色,如果按照脉冲方式控制二极管的点亮时间,则可实现256或更高级灰度显示,即可实现真彩色显示。图1-5示出几种LED点阵显示器的内部电路结构和外型规格,其它型号点阵的结构与引脚可试验获得。LED点阵显示器单块使用时,既可代替数码管显示数字,也可显示各种中西文字及符号如5 x 7点阵显示器用于显示西文字母58点阵显示器用于显示中西文,8 x 8点阵用于显示中文文字,也可用于图形显示。用多块点阵显示器组合则可构成大屏幕显示器,但这类实用装置常通过微机或单片机控制驱动。113 LED点阵数码显示屏的前景和发展LED电子显示屏是随着计算机及相关的微电子光电子技术的迅猛发展而形成的一种新型信息显示媒体。它利用发光二极管构成的点阵模块或像素单元组成可变面积的显示屏幕,以可靠性高、使用寿命长、环境适应能力强、性能价格比高、使用成本低等特点,在短短的十来年中,迅速成长为平板显示的主流产品,在信息显示领域得到了广泛的应用。LED 点阵电子显示屏是集微电子技术、计算机技术、信息处理技术于一体的大型显示屏系统。它以其色彩鲜艳,动态范围广,亮度高,寿命长,工作稳定可靠等优点而成 为众多显示媒体以及户外作业显示的理想选择。同时也可广泛应用到军事、车站、宾馆、体育、新闻、金融、证券、广告以及交通运输等许多行业。目前大多数的LED点阵显示系统自带字库。其显示和动态效果(主要是显示内容的滚动)的实现主要依靠硬件扫描驱动,该方法虽然比较方便,但显示只能按照预先 的设计进行。而实际上经常会遇到一些特殊要求的动态显示,比如电梯运行中指示箭头的上下移动、某些智能仪表幅值的条形显示、广告中厂家的商标显示等。这时 一般的显示系统就很难达到要求。另外,由于受到存储器本身的局限,其特殊字符或图案也往往难以显示,同时显示内容也不能随意更改。本文提出一种利用PC机 和单片机控制的LED显示系统通讯方法。该方法可以对显示内容(包括汉字和特殊图符)进行实时控制,从而实现诸如闪动、滚动、打字等多种动态显示效果。该 方法同时还可以调节动态显示的速度,同时用户也可以在PC机上进行显示效果的预览,显示内容亦可以即时修改。另外,通过标准的RS232485 转换模块还可以实现对显示系统的远程控制。在我国改革开放之后,特别是进入90年代国民经济高速增长,对公众场合发布信息的需求日益强烈,LED显示屏的出现正好适应了这一市场形势,因而在LED显示屏的设计制造技术与应用水平上都得到了迅速的提高,生产也得到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。第2章 单片机基础知识2.1 单片机简介单片微型计算机(single chip microcomputer)简称单片机,它是为各类专用控制器而设计的通用或专用微型计算机系统,高密度集成了普通计算机微处理器,一定容量的RAM和ROM以及输入/输出接口,定时器等电路于一块芯片上构成的。1976年Intel公司推出的MCS48系列8位单片机,以其体积小,功能全,价格低等特点赢得了广泛的应用。MCS48为单片机的发展奠定了基础,成为单片机发展过程中的一个重要阶段。在MCS48成功的激励下,许多半导体公司和计算机公司竞相研制和开发自己的单片机系列。其中包括MOTOROLA,Zilog,Philips,Atmel等公司的产品。尽管目前单片机品种繁多,但其中最具有典型性的当数Intel公司的MCS51系列。MCS51系列是在MCS48系列的基础上于80年代发展起来的,虽然它仍然是8位单片机,但其功能较MCS48有很大的增强。此外,它还具有品种全,兼容性强,软硬件资源丰富的特点,因此应用较为广泛,成为继MCS48之后最重要的单片机品种。直到现在,MCS51仍不失为一种单片机是主流芯片。在8位单片机之后,16位的单片机也有很大的发展。例如,1983年Intel公司的MCS96系列单片机就是其中的典型代表。与MCS51相比,MCS96不但字长增加了一倍,而且还具有4路或8路的10位的A/D转换功能。此外,在其他性能方面也有一定的提高。在单片机的基础上发展起来的嵌入式系统已成功进入商业市场。嵌入式计算机系统是以应用为中心,以计算机技术为基础,软,硬件可裁减,适应应用系统对功能,可靠性,成本,体积,功耗等严格要求的专用计算机系统。1981年,Ready Systen开发出世界上第一个商业嵌入式实时内核,这个实时内核包含了许多传统操作系统的特征,包括任务间通信,同步与相互排斥,中断支持,内存管理等功能。此后一些公司也纷纷推出了自己的嵌入式操作系统,这些嵌入式操作系统都具有嵌入式的典型特点:它们均采用占先式的调度,响应时间短,任务执行的时间可以确定;系统内核很小,具有可裁减性。可扩充性和可移植性,可移植到各种处理器上,较强的实时性和可靠性。适合嵌入式应用。如今,实时内核逐渐发展为多任务操作系统,并作为一种软件平台逐步成为目前国际嵌入式系统的主流。嵌入式系统由软件和硬件两大部分组成。从硬件方面来讲。嵌入式系统的核心部件是嵌入式处理器。据不完全统计,全世界嵌入式处理器的品种数量已经超过1000多种,其中8051体系占大多数。嵌入式系统的软件一般由嵌入式操作系统和应用软件组成。操作系统是连接计算机硬件与应用程序的系统程序。操作系统有两个基本功能:使计算机硬件便于使用,高效组织和正确使用计算机系统。如今,嵌入式系统主要应用于工业控制,交通管理,信息家电,家庭智能管理系统,POS网络及电子商务,环境监测,机器人等领域。单片机具有以下特点:1)小巧灵活,成本低,易于产品化。它能方便的组合成各种智能化的控制设备及各种智能仪器与仪表。2)面向控制,能针对性的解决从简单到复杂的各类控制任务,因而能获得最佳的价格性能比。3)抗干扰能力强,适应温度范围宽,在各种恶劣环境下都能可靠性工作,这是其它机种无法比拟的。4)可以很方便的实现多机和分布控制。使整个控制系统的效率和可靠性大幅度提高。 单片机具有体积小、功耗低,价格便宜等优点,近年来还还开发了一些以单片机母片为核(如80C51),在 片中嵌入更多功能的专用型单片机(或者叫专用微控制器),因此单片机在计算机控制领域中应用越来越广泛。8051是MCS51系列单片机的一个产品。MCS51系列单片机是Intel公司推出的通用型单片机,在本设计中我选用的是89S51。2.1.1 单片机的种类单片机可按应用领域、通用性、总线结构分类。(1) 按应用领域分为:家用类、工控类、通信类、个人信息终端等。(2) 按通用性分为:通用型和专用型(如计费率电表、电子记事本)。(3) 按总线结构分为:总线型和非总线型。单片机的供应状态按提供的存储器类型可分为以下五种状态。(1) MASKROM类:程序在芯片封装过程中掩膜工艺制作到ROM区中,如80C51,适合大批生产。(2) EPROM类:紫外线可擦写存储器如87C51,价格较贵。(3) ROMless类:无ROM存储器,如80C31,电路扩展复杂,较少用。(4) OTPROM类:可一次性写入程序。2.1.2 汇编语言及其优点 本设计采用的是汇编语言编程,所以下面我们对汇编语言及其优点做一些简介。汇编语言(Assembly Language)是面向机器的程序设计语言。在汇编语句中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。这样符号代替机器语言的用二进制码,就把机器语言变成了汇编语言。于是汇编语言亦称为符号语言。使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。汇编程序是系统软件中语言处理系统软件。汇编语言把汇编程序翻译成机器语言的过程称为f汇编。作为最基本的编程语言之一,汇编语言虽然应用的范围不算很广,但重要性却勿庸置疑,因为它能够完成许多其它语言所无法完成的功能。汇编语言的主要优点有:1)速度快,可以直接对硬件进行操作(这对诸如图形处理等关键应用是非常重要的)2)能够直接访问与硬件相关的存储器或 I/O 端口3)能够不受编译器的限制,对生成的二进制代码进行完全的控制4)能够对关键代码进行更准确的控制,避免因线程共同访问或者硬件设备共享引起的死锁5)能够根据特定的应用对代码做最佳的优化,提高运行速度6)能够最大限度地发挥硬件的功能。第3章 系统硬件设计31硬件设计主框图如下图3-1所示:(P1.0P1.7) (P2.0P2.7)MSC-8051 (P0.0P0.7)1588点阵8*81588点阵 8*81588点阵 8*81588点阵 8*81588点阵 8*81588点阵 8*874HC59574HC59574HC59574HC59574HC59574HC595 图3-1硬件设计主框图单片机的P1、P2口控制8*8点阵行信号,P0.0作为74HC595 DS扫描信号的输入,P0.1、P0.2作为SCK和RCK时钟脉冲信号的输入。SCK为串行输入右移寄存器的时钟信号,RCK为并行输出时钟脉冲。SHCP上升沿进入移位寄存器,在STCP上升沿输出到并行端口。3.2 LED显示屏的驱动原理24片8*8LED点阵,成两行12列,组成6位16*16显示单元。每一只74HC595驱动一片8*8LED点阵。74HC595的8位并口Q0Q7 分别对应8*8LED点阵公共阳极A1A8,我们是通过列扫描实现全屏显示。同一时刻只能将信号加到某一列,使该列的LED通过所对应的信号将其点亮。我们要把信号加到指定的那一列是由74HC595的移位脉冲控制的,当我们高电平脉冲移到下一位时,我们的LED点阵下一位公共阳极就被驱动,信号也就加到了该列,这样便实现了扫描。每一只二极管的驱动电流是10mA,当某一列的二极管全点亮时,驱动电流I=10 X 8mA = 80mA。我们的74HC595能够满足驱动力,不会影响当某一列全点亮时所至该列亮度偏暗。33 8*8LED点阵连接成显示屏的硬件连接因为要显示6个字并且我使用16*16点阵的方法,所以需要24块1588点阵模块。1588是红绿双色点阵,共有24个PIN脚,在本次设计当中我们只使用的红色LED,也就是没有接绿色LED的PIN脚,通过单片机P1口和P2口作为行信号与1588的行连接,通过74HC595对1588的列进行扫描,每块1588都对应一块74HC595。 34单片机与74HC595的硬件连接单片机与74HC595的硬件连接如下图3-2所示:图3-2单片机与74HC595的硬件连接图 单片机的P0.0端口与第一块74HC595的DS(串行移位输入)相连,第一块74HC595的Q7端口(串行输出)与第二块的74HC595的DS相连,用以当列扫描信号移位到第一块74HC595的Q7时驱动第二块74HC595,同理第二块的74HC595的Q7端口(串行输出)与第一块的74HC595的DS相连依次下去。 单片机P0.1端口与74HC595的SHCP移位寄存器时钟输入相连,通过软件的置一和清零给74HC595送入移位寄存器时钟信号,然后在STCP的上升沿送到存储寄存器端口。单片机的P0.2端口与74HC595的MR(复位)相连,当给P0.2低电平时74HC595都处于复位状态。35 89S51单片机、显示模块及驱动模块的硬件连接89S51单片机、显示模块及驱动模块的硬件连接如下图3-3所示:1)单片机P1口和P2口作为行信号与点阵的行连接,P0口的0,1。2)端口与74HC595相连,通过控制74HC595对点阵的列进行扫描,然后通过P1口和P2口输入的行信号点亮。 图3-3 89S51单片机、显示模块及驱动模块的硬件连接图第4章软件设计41显示原理411LED的显示原理数码管是由8个发光二极管构成的显示器件,如图4-1为发光亮段,可显示09十个数字。在数码管中,若将二极管的阳极连接在一起,称为共阳极数码管;若将二极管的阴极连接在一起,称为共阴极数码管如图4-2当发光二极管导通时,它就会发光。每个二极管就是一笔画,若干个二极管发光时,就构成了一个显示字符。 图4-2发光二极管图4-1发光亮段将单片机的I/O口与数码管的ag及h相连,高电平的位对应的发光二极管亮,这样,由I/O口输出不同的大妈,就可以控制数码管的显示不同的字符。例如:当I/O口输出的代码为0011 1111时,数码管显示的字符为0。这样形成的显示字符的代码称为显示代码或段选码。88点阵LED显示器组成原理图如下图4-3所示,88点阵LED引脚的排列图如图4-4: 图4-3 88点阵LED显示器组成原理图图4-4 88点阵LED引脚的排列图十六进制数h g f e d c b a显示代码0 1 2 3 4 5 6 7 8 9 A B C D E F .0 0 1 1 1 1 1 10 0 0 0 0 1 1 00 1 0 1 1 0 1 10 1 0 0 1 1 1 10 1 1 0 0 1 1 00 1 1 0 1 1 0 10 1 1 1 1 1 0 10 0 0 0 0 1 1 10 1 1 1 1 1 1 10 1 1 0 1 1 1 10 1 1 1 0 1 1 10 1 1 1 1 1 0 00 0 1 1 1 0 0 10 1 0 1 1 1 1 00 0 1 1 1 1 1 00 1 1 1 0 0 0 10 0 0 0 0 0 0 03FH 06H 5BH 4FH 66H 6DH 7DH 07H 7FH 6FH 77H 7CH 39H 5EH 79H 71H 80H表41十六进制数字的显示代码数码管显示器有两种工作方式,即静态显示方式和动态显示方式。在静态显示方式下,每位数码管的ag和h端与一个8位的I/O口相连。要在某一位数码管上显示字符,只要从对应的I/O口输出并锁存其显示代码即可。其特点为:数码管中的发光二极管恒定的导通和截止,直到显示字符改变为止。动态显示方式的每位数码管都需要一个数据锁存器,因此,其硬件电路较为复杂。但它的显示程序非常简单。在动态显示方式中,各位数码管的ag和h端并连在一起,与单片机系统的一个I/O口相连,从该I/O口输出显示代码。每只数码管的共阳级或共阴极与另一I/O口相连,控制被电亮的位。动态显示的特点:每一时刻只能有一位数码管被点亮,各位依次轮流被点亮;对于每一位来说,每隔一段时间点亮一次。为了每位数码管能充分被点亮,二极管应持续发光一段时间,利用发光二极管的余辉和人眼的驻留效应,通过适当调整每位数码管被点亮的时间间隔,可以观察到稳定的显示输出。94.1.2点阵的显示原理 (a) (b)图4-5 (a)点阵外观原理图(b)内部元件图在UCDOS中文宋体字库中,每一个字由16行16列的点阵组成显示。如果用 8位我们以UCDOS中文宋体字库为例,每一个字由16行16列的点阵组成显示。即国标汉字库中的每一个字均由256点阵来表示。我们可以把每一个点理解为一个像素,而把每一个字的字形理解为一幅图像。事实上这个汉字屏不仅可以显示汉字, 也可以显示在256像素范围内的任何图形。我们以显示汉的89S51单片机控制, 由于单片机的总线为8位一个字需要拆分为2个部分。 一般我们把它拆分为上部和下部,上部由8*16点阵组成,下部也由8*16点阵组成。 在本例中单片机首先显示的是左上角的第一列的上半部分,即第列的p00-p07口。方向为p00到p07 ,显示汉字“大”时,p05点亮,由上往下排列,为p0.0灭,p0.1 灭, p0.2 灭p0.3 灭, p0.4 灭, p0.5 亮,p0.6 灭,p0.7 灭。即二进制转换为16进制为 04h.。 上半部第一列完成后,继续扫描下半部的第一列,为了接线的方便,我们仍设计成由上往下扫描,即从p27向p20方向扫描,从上图可以 列,仍为p05点亮,为,即16进制04h. 这一列完成后继续进行下半部分的扫描,p21点亮,为二进制,即16进制02h. 依照这个方法,继续进行下面的扫描,一共扫描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.2设计思路 本设计是一个用LED点阵显示16*16点阵汉字,显示屏长为六个汉字、高为一个汉字。总共显示“九洲光电科技”六位汉字从右到左滚动显示。设计思路,实现六个汉字从右到左滚动显示这一动作而且给人以连续显示不闪烁的感觉,就必须要求每帧的频率大于25HZ。由于屏幕较大,所以我们就必须放弃直观简单的静态扫描,而使用动态扫描。将点阵显示屏逐列显示,由于人眼惰性,在很短的的时间下从左到右将点阵逐列点亮,就会使人感觉一整屏在显示。我们采用的是8*8的LED点阵,8个共阳极COM端(A1A8),每一个公共端都对应一列的LED共8只。本设计的屏幕需要24块的LED点阵,即16行*96列。显示信号从行输入,低电平有效,分别用单片机的P1、P2输出。列我们用移位寄存器74HC595作为列扫描和驱动。该芯片主要功能能将串行数据移位后8位并行输出。移位时钟脉冲 SHcp控制串行DS移位输入。此时的输入的数据被放在芯片内的寄存器里。STcp寄存器输出到端口锁存器。当我们把一个脉冲从DS输入,把SHcp和STcp接在一起每移位一个脉冲都从寄存器输出到并行端口,实现扫描。移位脉冲由程序控制它和该列的信号同步一一对应,DS脉冲的宽度比移位小于或等于移位脉冲的宽度,周期为96个移位脉冲的周期,即一帧的时间。滚动显示由于每帧的画面都在向左移动变化,把每帧的图片连续起来就成了一滚动的效果。4.3 16点阵字库字模的提取如果通过描点来造字的话,任务量太大。现在有很多现成的汉字字模生成软件, 我们就不必自己去画表格算代码了。软件打开后输入汉字,点“生成字模”,十六进制数据的汉字代码即可自 动生成,但是我们要根据自己硬件的连接方式来在选项中选择取码方式为从上到下或从下到上的方式,然后把我们所需要的竖排数据复制到我们的程序中即可。我们把行列总线接在单片机的i0口,然后把上面分析到的扫描代码送入总线,就可以得到显示的汉字了。通过软件提取了“九洲光电科技”这六个字的字模,为后面的单片机编程打下基础。提取此软件是我们完成本设计的一个重要的辅助软件,它能够很容易的将我们需要的汉字翻译成16*16的汉字字模。这六个字的扫描代码如下:九的十六进制数据的横向代码为:04H,00H,04H,00H,04H,00H,04H,20H0FFH,0F0H,04H,20H,04H,20H04H,20H,04H,20H,08H,20H,08H,20H10H,22H,10H,22H,20H,1EH,0C0H,00H九的十六进制数据的竖向代码为:08H,01H,08H01H,08H,02H,08H,0CH,08H,30H,OFFH,0C0H,08H,00H,08H,00H,08H,00H,08H,08H,00H,1FH,0FCH,08H,02H,00H,02H,00H,02H,00H,OEH,00H,00H 洲的十六进制数据的横向代码为: 01H,04H,41H,04H,31H,24H,11H,24H 81H,24H,65H,0B4H,23H,6CH,08H,6CH 11H,24H,21H,24H,0E1H,24H,21H,24H 22H,24H,22H,24H,24H,04H,20H,04H洲的十六进制数据的竖向代码为: 08H,20H,44H,20H,26H,7FH,30H,80H 01H,00H,04H,02H,03H,0CH,0FFH,0F0H 04H,00H,03H,00H,3FH,0FCH,04H,00H 03H,00H,0FFH,0FFH,00H,00H,00H,00H光的十六进制数据的横向代码为: 01H,00H,21H,08H,11H,0CH,09H,10H 09H,20H,01H,04H,0FFH,0FEH,04H,40H 04H,40H,04H,40H,04H,40H,08H,40H 08H,42H,10H,42H,20H,3EH,40H,00H光的十六进制数据的竖向代码为: 02H,00H,02H,01H,42H,02H,22H,04H 1AH,18H,03H,0E0H,02H,00H,0FEH,00H 02H,00H,03H,0FCH,0AH,02H,12H,02H 62H,02H,26H,02H,02H,0EH,00H,00H电的十六进制数据的横向代码为: 02H,00H,02H,00H,02H,10H,7FH,0F8H 42H,10H,42H,10H,7FH,0F0H,42H,10H 42H,10H,7FH,0F0H,42H,10H,02H,00H 02H,04H,02H,04H,01H,0FCH,00H,00H电的十六进制数据的竖向代码为: 00H,00H,1FH,0E0H,12H,40H,12H,40H 12H,40H,12H,40H,0FFH,0FCH,12H,42H 12H,42H,12H,42H, 12H,42H,3FH,0E2H 10H,02H,00H,0EH,00H,00H,00H,00H科的十六进制数据的横向代码为: 04H,10H,0EH,10H,0F8H,90H,08H,50H 08H,10H,0FEH,90H,08H,50H,1CH,14H 1AH,1EH,29H,0F0H,28H,10H,48H,10H 88H,10H,08H,10H,08H,10H,08H,10H科的十六进制数据的竖向代码为: 24H,08H,24H,10H,24H,60H,25H,80H 7FH,0FFH,0C5H,00H,44H,80H,00H,40H 24H,40H,12H,40H,00H,40H,0FFH,0FFH, 00H,80H,01H,80H,00H,80H,00H,00H技的十六进制数据的横向代码为: 10H,40H,10H,40H,10H,48H,13H,0FCH 0FCH,40H,10H,40H,10H,40H,13H,0F8H 1AH,08H,31H,10H,0D1H,10H,10H,0A0H 10H,40H,10H,0B0H,51H,0EH,26H,04H技的十六进制数据的竖向代码为: 08H,20H,08H,22H,08H,41H,0FFH,0FEH 08H,80H,08H,01H,11H,81H,11H,62H 11H,14H,0FFH08H,11H,14H,11H,64H 31H,82H,10H,03H,00H,02H,00H,00H4.4扫描的输出框图扫描输出框图4-6示:选中显示屏第一列单片机P0.0输出高电平至74HC595 DSP0.1输出高电平至74HC595 RCK、SCK延时几个机器周期后将P0.1、P0.0置0第一列信号上8位信号至P1下八位送至p2 延时200us将P0.1输出高电平延时几个机器周期后将P0.1置0下一列信号上8位送至P1下8位送盘至P2延时200us延时200us后判断是否已到96列是否 图4-6扫描输出框图4.5主程序流程图主程序流程图如下图4-7示判断扫描一帧是否已结束判断扫描的帧数是否已到设定值取信号的设定值自减1上电复位开始一个周期脉宽扫秒脉冲等待一个机器周期判断是否开始设置开始取信号的列数初始值为95列扫描给位存器移位脉冲判断是否可开始读取显示内容信号读取显示信号延时200us延时200us扫描累加计数器自加1清零扫描累加器帧数累加计数器自加1信号指针指向下一列是是是是否否否否图4-7主程序流程图取信号设定值是否为1,即汉字从屏左滚动消失汉字消失程序是否4.6逐字显示及从左到右滚动显示时的流程图逐字显示及从左到右滚动显示时的流程图如下4-8示:逐字向右移显示开始设1帧显示时间及换帧步距寄存器B、R4、R5赋初值调显示子程序(DISPLAY)(R4)1=0?(B)=#68H?显示首址修改:(B)+R5(B)转START1 图4-8 逐字显示及从左到右滚动显示时的流程图47程序ORG 0000HMAIN:JB P3.0,MAINGO:MOV A,#95 ;信号始读初始值 VAL EQU 64H ;信号始读设定值单元 MOV VAL,A ; MOV R4,#00H ;列扫描初始值 MOV R0,#00H MOV R2,#10 ;10帧START: MOV A,#00H MOV P0,A ;P0.0移位脉冲,P0.1串行输入,P0.2MR复位 SETB P0.2 SETB P0.1START1:SETB P0.0 MOV A,R4 ;扫描的列数 CLR P0.0 CLR P0.1 CJNE A,VAL,COM ;判断是否可开始读信号COM: JC PLAY1 SJMP READPLAY1:INC R4 ;只扫描不读信号 LCALL DELAYCON: SJMP START1READ:INC R4 LCALL PLAY LCALL DELAY MOV A,R4 CJNE A,#96,CON ;帧周期 MOV R4,#00H MOV R0,#00H MOV A,#0FFH MOV P1,A MOV P2,A DJNZ R2,SKIP MOV R2,#0AH DEC VAL MOV A,VAL JZ READ1 ;是否已全屏显示SKIP:SJMP STARTDELAY:MOV R1,#0FFHWAIT: DJNZ R1,WAIT;延时200us RETREAD1:MOV R0,#00H ;信号列数 消失 MOV R5,#00HREAD2: MOV A,#00H MOV P0,P0 MOV R4,#00H SETB P0.2SETB P0.1READ3:SETB P0.0 INC R4 CLR P0.1 CLR P0.0 LCALL PLAY LCALL DELAY MOV A,R4 CJNE A,#96,READ3 ;帧周期 LCALL READY CJNE A,#193,SKIP2 ; 判断是否滚动显完 SJMP GOSKIP2:SJMP READ2PLAY:MOV DPTR,#TAB ;数据指针指到TABLE MOV A,R0 ;取码指针载入A MOVC A,A+DPTR ;到TABLE取码 MOV P1,A ;输出至P1显示 INC R0 ;取下一个码 MOV A,R0 ;取码指针载入A MOVC A,A+DPTR ;到TABLE取码 MOV P2,A ;输出至P2显示 INC R0 ;取下一个码 RETREADY:DJNZ R2,SKIP3 INC R5 INC R5SKIP3:MOV A,R5 MOV R0,A RETTAB: DB 08H,01H,08H,01H,08H,02H,08H,0CH ;九 DB 08H,30H,0FFH,0C0H,08H,00H,08H,00H DB 08H,00H,08H,00H,1FH,0FCH,08H,02H DB 00H,02H,00H,02H,00H,0EH,00H,00H DB 08H,20H,44H,20H,26H,7FH,30H,80H ;洲 DB 01H,00H,04H,02H,03H,0CH,0FFH,0F0H DB 04H,00H,03H,00H,3FH,0FCH,04H,00H DB 03H,00H,0FFH,0FFH,00H,00H,00H,00H DB 02H,00H,02H,01H,42H,02H,22H,04H ;光 DB 1AH,18H,03H,0E0H,02H,00H,0FEH,00H DB 02H,00H,03H,0FCH,0AH,02H,12H,02H DB 62H,02H,26H,02H,02H,0EH,00H,00H DB 00H,00H,1FH,0E0H,12H,40H,12H,40H ;电 DB 12H,40H,12H,40H,0FFH,0FCH,12H,42H DB 12H,42H,12H,42H,12H,42H,3FH,0E2H DB 10H,02H,00H,0EH,00H,00H,00H,00H DB 24H,08H,24H,10H,24H,60H,25H,80H ;科 DB 7FH,0FFH,0C5H,00H,44H,80H,00H,40H DB 24H,40H,12H,40H,00H,40H,0FFH,0FFH DB 00H,80H,01H,80H,00H,80H,00H,00H DB 08H,20H,08H,22H,08H,41H,0FFH,0FEH ;技 DB 08H,80H,08H,01H,11H,81H,11H,62H DB 11H,14H,0FFH,08H,11H,14H,11H,64H DB 31H,82H,10H,03H,00H,02H,00H,00H END第5章 单片机的硬件与软件调试 5.1 硬件调试 硬件调试是利用开发系统、基本测试仪器,通过执行开发系统有关命令或运行适当的测试程序来检查用户系统硬件中是否存在故障。其具体操作步骤如下:第一步是目测,在印好电路板之后,先检查印制线是否有断线、是否有毛刺、是否与其它线或焊盘粘连、焊盘是否有脱落、过孔是否有未金属化现象。而在目测的过程中,我们发现有一条印制线断开,因此我们用焊锡使这条断线连在一起。第二步是用万用表测量。在目测完之后,利用万用表来测量连线和接点,检查它们的通断状态是否和设计一样。再检查各种电源线和地线是否有短路现象,在检查的过程中,发现不管是连线还是接点都符合设计规定,电源和地线也没有短路现象。第三步是加电检查。给印制板加电时,我们检查到的器件的电源端符合要求的电压值+5V,同时接地端的电压为0。第四步是联机检查。利用系统和单片机开发系统用仿真电缆连接起来,发现联机检查完后以上是连接都正确、畅通、可靠。5.2 软件调试 软件调试是通过对用户所编程序的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除的过程。其具体的操作步骤是:第一步是在具有汇编软件的主机上和用户系统连接起来,进行调试准备。第二步是单步运行。第三步是系统连调,即
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!