基于单片机的LED电子广告牌设计与实现_第1页
基于单片机的LED电子广告牌设计与实现_第2页
基于单片机的LED电子广告牌设计与实现_第3页
基于单片机的LED电子广告牌设计与实现_第4页
基于单片机的LED电子广告牌设计与实现_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课 程 设 计 报 告设计名称 基于单片机的LED电子广告牌设计与实现 学 院 电子工程学院专 业 电子信息工程技术班 级 15级07班姓 名 唐正虎指导教师 聂弘颖陕 西 电 子 科 技 职 业 学 院2017年10月25日第1章 绪论1.1 课题背景1.1.1 选题背景LED显示屏是八十年代后期在全球迅速发展起来的新型信息显示媒体,显示屏由几万到几十万个半导体发光二极管像素点均匀排列组成。利用不同的材料可以制造不同色彩的LED像素点。目前应用最广的是红色、绿色、黄色。而蓝色和纯绿色LED的开发已经达到了实用阶段。LED显示屏可以显示变化的数字、文字、图形图像;不仅可以用于室内环境还可以用于室外环境,具有投影仪、电视墙、液晶显示屏无法比拟的优点1。在短短的十来年中,LED点阵显示屏就以亮度高、工作电压低、功耗小、小型化、寿命长、耐冲击和性能稳定的优点迅速成长为平板显示的主流产品,在信息显示领域得到了广泛的应用。LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性、可靠性、全色化方向发展。LED显示屏的应用涉及社会经济的许多领域,主要包括证券交易、金融信息显示、机场航班动态信息显示、港口、车站旅客引导信息显示、体育场馆信息显示、道路交通信息显示、调度指挥中心信息显示、邮政、电信、商场购物中心等服务领域的业务宣传及信息显示、广告媒体新产品等。第2章 方案论证与选择2.1 系统硬件方案大多数的LED显示屏都在户外,所以对硬件的质量要求非常的高。为方便检修和维护硬件电路设计时常常采用模块化的设计方法。硬件的设计采用模块化设计,既要满足模块本身功能又要能够和整个系统兼容。如图2-1所示,根据显示系统的功能特点确定系统硬件由显示屏部分,控制部分,通信系统三部分组成。单片机通过通信部分发送控制指令和显示内容代码,执行显示指令并将显示代码处理后控制显示部分的显示内容和显示方式。通信部分控制部分显示部分图2-1 系统硬件组成框图2.1.1 显示屏主控制器控制部分是整个系统的核心部分,其功能为发送数据和控制指令处理后控制显示部分显示内容。其常用的电子设计方法有单片机、DSP、及EDA技术。几种设计方法比较各有其特点:(1)单片机单片机是集成了CPU,ROM,RAM和I/ O口的微型计算机。它有很强的接口性能,非常适合于工业控制,因此又叫微控制器(MCU)。单片机品种齐全,型号多样 CPU 从8,16,32到64位,多采用RISC 技术,片上I/O非常丰富,有的单片机集成有A/ D,“ 看门狗”,PWM,显示驱动,函数发生器,键盘控制等。(2)DSP 芯片DSP 又叫数字信号处理器。顾名思义,DSP主要用于数字信号处理领域,非常适合高密度,重复运算及大数据容量的信号处理。现在已经广泛应用于通信、便携式计算机和便携式仪表、雷达、图像、航空、家用电器、医疗设备等领域,DSP具有修正的哈佛结构,多总线技术以及流水线结构。(3)EDAEDA(即Electronic Design Automation) 即电子设计自动化,它是以计算机为工具,在EDA 软件平台上,对用硬件描述语言HDL 完成的设计文件自动地逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至对于特定目标芯片进行适配编译、逻辑影射和编程下载等。2.1.2 通信系统通信部分要满足的设计要求就是稳定、快速、简单易实现。计算机数据通信主要采用并行通信和串行通信两种方式。(1)并行通信并行通信时数据的各个位同时传送,可以字或字节为单位并行进行。并行通信速度快,但用的通信线多、成本高,故不宜进行远距离通信。(2)串行通信串行通信数据是一位一位顺序传送,只用很少几根通信线,串行传送的速度低,但传送的距离长,因此串行适用于长距离而速度要求不高的场合。在串行发送时,数据是一位一位按顺序进行的,而计算机内部的数据是并行的。因此,当计算机向外发送数据时,必须将并行数据转换为串行数据再发送。反之,又必须将串行数据转换为并行数据输入计算机中。 综上所述,题目设计已经选定了单片机为开发方式而单片机的UART已经集成在单片机内,所以通信系统选择串行通信为通信方式。2.1.3 LED点阵显示屏显示部分包括了一块至少可以显示一个汉字的显示屏,以及驱动该显示屏的驱动电路。由于单片机的I/O口有限要不能直接用I/O口来驱动LED显示屏,所以需要对单片机IO口进行扩展增加单片机并行输出的能力。LED显示屏是由一个一个的发光二极管点阵构成的,要构成大屏幕的LED显示屏就需要多个发光二极管。构成LED屏幕的方法有两种,一是由单个的发光二极管逐点连接起来,如图2-2所示;二是选用一些由单个发光二极管构成的LED点阵子模块构成大的LED点阵模块。目前市场上普遍采用的点阵模块有88、1616几种;这两种屏幕构成方法各有有缺点,单个发光二极管构成显示屏优点在于当单个的发光二极管出现问题时只需更换一个二极管即可,检修的成本较低,缺点在于连接线路复杂;而点阵模块构成的方法却正好与之相反,模块构成省约了大量的连线,不过当一个LED出现问题时同在一个模块的所有LED都必须被更换。这就加大了维修的成本。两种方法相比较,决定采取模块构成的方法来制作一个LED点阵显示屏。为了避免模块的缺点,选择点阵数较小的模块来减小出现这一问题的风险。一个1616的LED显示屏行和列各有16支引脚,不能单靠51单片机的端口驱动所以必须要对单片机的端口个数进行扩展。经常采用的端口扩展方法是用串并转换芯片进行译码。常用的串并转换芯片有74LS154(4线-16线译码器)、74LS164(8位串并转换器)、74HC595等。51系列单片机端口低电平时,吸入电流可达20mA,具有一定的驱动能力;而为高电平时,输出电流仅数十A甚至更小(电流实际上是由脚的上拉电流形成的),基本上没有驱动能力,所以单片机不能直接驱动LED显示屏显示。在单片机和显示屏之间还需要增加以功能放大位目的的驱动电路。2.1.4 硬件设计方案最终方案如图2-3所示,以单片机机作为核心控制器件存储和处理显示内容,用串行通信的方式将显示内容和控制指令传输到单片机系统,单片机根据传输来的内容和指令通过端口译码扩展后驱动4块88LED点阵模块构成的1616的LED点阵显示屏。题目将以此方案为指导思想展开具体的硬件电路设计。串行通信单片机译码电路显示驱动电路1616LED显示屏图2-3 硬件设计方案2.2 系统软件方案软件的设计除了满足设计功能外还必须要满足易读写,方便下载和编译。设计目标和硬件总体结构确定的情况下,软件可以分为主程序,显示子程序,各种特效显示子程序,通信程序三个主要部分组成。具体结构如图2-4所示。静态显示程序主程序控制程序特效显示程序通信程序图2-4 软件功能结构框图软件的编写需要借助软件编辑器和编译软件,编译完成后还需要下载到单片机中执行。编写软件之前得首先选择一种合适的语言以及配套的编辑器和编译软件。最后还要选择一款与所选单片机的下载器或下载软件来把编写的程序下载到单片机中执行。第3章 系统硬件设计3.1 硬件整体设计概述及功能分析 显示系统具体设计主要由通信系统,单片机系统,译码电路,显示驱动电路和1616的点阵屏五部分组成。具体工作流程为:单片机通过通信系统发送控制指令和显示代码内容,执行控制指令处理显示代码将显示内容通过I/O口串行输出并且控制译码电路完成串并转换并行输出,最后由显示驱动电路进行电压和电流的处理以达到LED显示屏的显示电流,电压要求进而使显示屏显示内容。根据硬件的功能结构图选取合适器件,器件不但要求能实现所要求的功能还要能兼容至整个系统之中。通过查阅资料和对比最终的硬件原理图如图3-1所示。AT89C51电源74LS16474LS16474LS164ULN2803ULN280337374LS37374LS37374LS1648550三极管LED点阵模块阳极4块8*8点阵模块构成16*16LED点阵屏LED点阵模块阴极MAX232图3-1 硬件原理图3.2 控制单元设计控制单元是整个显示系统的核心,该系统中采用51系列单片机为核心器件,用来发送控制指令和显示内容,并且直接输出数据通过译码电路控制LED显示屏的显示内容和显示状态。在51系列单片机中选定一款合适的机型来作为控制单元的主控芯片。根据题目的要求该芯片必须要具有的就是方便的编程能力,因为在软件设计时方便的程序下载对程序的验证和编写非常有用。还有就是为了提高LED显示屏的扫描速度,单片机的执行速度要尽可能的快。根据这两点要求,选择美国ATMEL公司生产的AT89C51为控制单元的主控芯片。3.2.1 AT89C51简介AT89C51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4k bytes的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集Flash程序存储器既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中,ATMEL公司的功能强大,低价位AT89C51单片机可提供许多高性价比的应用场合,可灵活应用于各种控制领域。3.2.2 控制系统设计控制电路设计中采用的是单片机系统,该系统必须要是工作在一个最小系统(指单片机的可以的最小配置系统)。AT89C51的最小系统包括了外界时钟电路和复位电路,选定一定数量的IO口作为控制口控制外部的各种器件和数据的输出。根据功能选择一定的单片机端口添加外围的器件,具体电路如图3-2所示。在该系统中,P1各口主要用作LED显示数据的控制输出。由于端口的驱动能力有限所以该端口外接了5K的上拉电阻来提高驱动能力。其中P1.5P1.6P1.7还复用为ISP下载功能口。具体接法为:P1.0,P1.1,P1.4,P1.5分别接四块74LS164的A端,向74LS164送入串行数据经过其转换后并行输出;P1.2和P1.6分别接列和行的74LS164的CLOCK端,产生移位脉冲是串行数据并行输出;P1.3和P1.7接列和行的CLEAR端,在一组数据完成串并转换后清除164芯片中的内容转换新的数据;其中P1.5P1.6P1.7还复用为ISP下载功能口。P2.0接164芯片的使能控制端,当为高电平使允许输出;P2.2和P2.3接锁存器74LS373的OE和LE端控制锁存器的工作状态。端口3.0,EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000HFFFFH),EA端必须保持低电平(接地)。因为没有扩展外部程序存储器所以将EA置为高电平。AT89C51单片机的P1在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,P2口在访问外部程序存储器或16位地址的外部数据存储器时,P2口送出高8位地址数据。所以P1和P2口留为外部数据存储器和程序存储器的扩展用,以备内部存储器和程序存储器不够用时使用。3.3 译码电路设计 单片机的引脚输出的高低电平要在芯片的识别范围内,由于采用了列选通行传送显示代码的方法所以行译码电路上也加上了74L373锁存芯片。这就要求74LS164芯片的输出要满足锁存芯片的高低电平区分范围和频率要求。 3.4 驱动电路设计3.4.1 行驱动电路设计发光二极管,LED(Light Emitting Diodes),即是在在某些半导体材料的PN结中,注入的少数载流子与多数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。PN结加反向电压,少数载流子难以注入,故不发光。这种利用注入式电致发光原理制作的二极管叫发光二极管,通称LED。8550为PNP型三极管,发射极e接5V电源,基极接译码信号输出端,集电极接输出驱动LED点阵屏。当译码器端口输出为低电平时,发射极与基极电势差为5V基极中带负电的电子越过PN结扩散到发射区。发射极产生和电子扩散方向相反的电流,由于基极电子大量扩散到发射极集电极电子扩散到基极中形成了电流。当译码器端口输出高电平时发射极与基极之间的电势差为5V,由于发射极与基极之间电势差的减少基极电子向发射极扩散的电子数量减少故集电极电流也随之减少。故8550在驱动电路中起到提供驱动电流和选通开关的作用。3.4.2 列驱动电路设计列驱动采用ULN2803。ULN2803是一种高电压大电流达林顿管阵列内部结构如图,该阵列中的八个NPN达林顿连接晶体管是低逻辑电平数字电路(如TTL,CMOS或PMOS)和大电流高电压的灯,继电器,打印机锤和其他类似负载间的接口的理想器件。广泛用于计算机,工业和消费类产品中。所有器件有集电极开路输出和用于瞬变抑制的续流箝位二极管。集电极输出功率可达50V600mA。ULN2803作为列驱动执行的是列选的工作,当选通的列输入高电平时其对应的输输出低电平。相对应的输出取反,并能提供较大的灌电流来吸收行驱动流出进过显示屏后的电流。3.5 通信系统硬件设计AT89C51单片机具有全双工串行UART通道,支持单片机进行数据的串行传输。单片机与计算机不能直接相连进行通信必须将RS-232C与TTL电平进行转换。在通用的电平转换芯片中MAX232系列的芯片以集成度高,单5V电源工作,只需外接5个小电容即可完成RS-232C与TTL电平之间的转换而成为单片机系统中的常用芯片。在该显示系统中,MAX232为通信系统中最重要的硬件组成部分。3.6 电源设计在系统中MAX232、74LS164、74LS373、AT89C51都需要5V的供电电压,在系统开发过程中可以使用电脑USB供电。在实际的大屏幕LED显示屏设计中,用电脑USB供电明显不切实际。此时需要对民用的220V进行降压整流为5V直流电压为显示系统供电。如图所示,用220V转12V的变压器进行降压后再通过一个桥式整流电路将交流电整流为直流电。最后通过5V三端稳压模块LM7805得出稳定的5V输出。3.7 级连大屏幕LED显示屏要实现LED的大屏幕显示主要采用内部译码器级连和多个单片机系统级连的方法。译码器级连如图3-7所示将第1个74LS164的Q7端接第2个74LS164的A端,将第2个74LS164的Q7端接第3个74LS164的A端,如此炮制当N块74LS164相级连时就变为一个串行输入7N口输出的串并转换器。这种级连的优点在于一块单片机可以同时控制更多的LED点阵显示屏,且74LS164的价格低廉整体成本得到了降低。但是这种级连方法也存在一定的缺点,51系列的单片机的晶振频率不高74LS164级连过多会增加一次扫描的时间从而导致显示出现闪烁。从端口输出的显示数据的显示也要作出相应的改变。构建大屏幕LED显示屏的另一种方法是将以较小的LED显示系统做为模块进行级连。由独立的LED显示系统组成一个大的LED显示系统。其中各子显示系统之间在功能和控制上都是相互独立的,将一幅大屏幕画面拆分为几块小画面再分别送入到各子系统中,各子系统同步显示便可以得到一幅大的画面。使用这种级连的办法可以避免51单片机晶振频率低的弱点,更容易实现大屏幕的显示。但这种方法仍然存在难点,一是各独立的子系统的通信和协调性要求更高了,如果要实现显示内容的实时性必须需要不断更新显示内容则增加了通信数据量,逐个的单片机传送数据也会影响整个画面的更新速度;二是成本提高了。在实际应用中通常采用内部扩展和外部级连联合使用的方法来构建大屏幕LED显示屏幕。即增加单个显示系统显示屏幕大小的同时又将单个的显示系统级连。第4章 系统软件设计4.1 程序设计系统软件采用C语言编写,按照模块化的设计思路设计。首先分析程序所要实现的功能,程序要实现串口通信,静态显示,动态显示三大功能。其功能结构如图2-4所示。通信程序接收数据,交给主程序处理再通过控制程序选择不同的显示程序进行显示。主程序的工作流程如图4-1所示:中断开始R1=1?起始位?接收显示数据及控制命令将显示数据移入显示数组将控制命令赋值给控制字符中断返回开始系统初始从显示数组读取数据到显示寄存读取显示控制命令选择显示调用相应显示程序图4-1 主程序流程图程序开始时首先必须对单片机进行初始化,其中初始化的内容包括:中断优先级的设定,中断初始化,串行通信时通信方式的选择和波特率的设定,各IO口功能的设定等。初始化完成后部中断源由按键的电平变化触发,外部中断主要功能是选择LED点阵显示屏的控制程序进入待机状态等待中断的发生,该程序中主要用到了两个外部中断源和串行中断。外方式。串行中断包括发送中断和接收中断都是由软件触发。中断产生后由预先初始化时设定跳转执行中断子程序。中断程序设定了LED点阵显示屏所要显示的内容和显示的方式,最后执行的是各种显示程序。按照设定的方式和内容显示出所需要的内容。4.2 显示程序的设计4.2.1 LED显示屏的显示方式 LED点阵屏显示方式主要由静态显示和动态扫描显示两种。 对静态显示来说,每一个发光二极管都需要一套驱动电路,一帧画面输入以后便可一劳永逸地显示,除非我们改变了显示内容,需要重新输出新的点阵数据这种方式系统原理相对简单一些,但所需的译码驱动装量很多,引线多而繁杂,不便于大屏幕的制造,成本高,其可靠性也较低另一种动态扫描显示是把整个LED屏幕分成若干部分,每一幅画面的显示是显示完一部分后,又显示第二部分直到显示完最后一部分又重新开始显示第一部分,重复循环进行在重复扫描速度足够快的情况下,我们看到的就是一幅稳定的画面也就是说采用动态扫描显示需要不断进行画面的刷新在这种方式下其显示驱动电路可重复利用,引线也大大减少,从而使硬件成本降低,且屏幕上的发光二极管轮流发光,使用时的耗电量大大降低大屏幕的制造、维护要容易许多,可靠性也增加了两种显示方式的比较再结合51单片机IO口数量有限的原因决定采用动态扫描的方式进行显示。动态扫描分为行扫描和列扫描两种方式区别在于选通端和数据输入端分别是行还是列。在该显示系统中扫描显示的工作原理如图4-2所示,先选通列然后再从行送入对应列的数据,这样从第1列到第16列循环往复,只要切换的速度足够的快利用人眼的延时特性就可以看见一幅稳定的画面。从数据中读取第1列对应的行数据从数据中读取第16列对应的行数据从数据中读取第2列对应的行数据选通第1列选通第2列选通第16列16*16LED16*16LED16*16LED选通LED第1列选通LED第2列选通LED第16列按数据导通相应行按数据导通相应行按数据导通相应行读取所需要显示的数据至显示寄存器图4-2 扫描显示程序原理图4.2.2 点阵数据表达方式该显示系统的显示数据采取纵向取模方向正向的数据存储方式如图4-3, 图4-3 点阵数据原理图4.2.3 显示程序的设计显示程序分为静态显示程序、左移显示、右移显示、上移显示、下移显示五种种显示方式。其中上下左右移动程序都调用了静态显示程序为子程序。静态显示程序流程图如图4-4所示: 开始初始化读取显示数依次选通列,行74LS164的CLOCK端置低,锁存器禁止输出对应行数组元素与0X01相与,相与结果写入单片机端口输出右移次数是否为8?锁存器允许输出Y图4-4 静态显示程序流程图显示采用的是列扫描的显示方式,选通一列后按照列与数据元素的对应关系第i列对应的行数据为数组中的第i和第i+16个元素。将对应元素的由低至高位依次从端口输出具体做法为将元素向右逻辑移位后再与0X01相与,所得结果通过单片机端口输出到串并转换器的A端,锁存在锁存器里完成一列数据移位后再将其输出。如此依次循环选通各列来显示所需画面。开始读入显示数组显示显示数组元素在数组中的位置左/右移一位移动次数是否是16YN开始读入显示数组显示显示数组元素在数组中的位置前/后移一位移动次数是否是16NY图4-5 左右移/上下移程序流程图 动态显示程序流程如图4-5所示,根据显示数据的存储原理通过改变实际LED列与数据逻辑列的方法来实现程序的左右移动。显示数据与列的对应关系为:第i列对应的数据为数组中i和第2i个数据。所以当ULN2803选通时,而送入后一列的数据则相当于画面左移移位,同理送入前一列数据相当于右移一位。如此循环则产生一幅稳定运动的画面。 显示数组中,第1至16个元素的第8至第1位LED显示屏中的第1至第8行。同理第17至32个元素的第8至第1位LED显示屏中的第9至第16行。所以将元素数据进行逻辑位移便能产生上下移动的效果。4.3 通信程序的设计系统采用串行中断的方式进行通信。MCS-51单片机的五个中断源两种类型:一类是外部中断源;另一类是内部中断源,包括两个定时器/计数器(T0和T1)的溢出中断和串行口的接收和发送中断。MCS-51单片机设置了4个专用寄存器用于中断控制,分别为定时器控制寄存器(TCON),串行口中断控制器(SCON),中断允许控制寄存器(IE),中断优先级控制寄存器(IP)。编程时通过设置其状态来管理中断系统。在编辑中断程序时首先是将中断控制寄存器(IE)初始化。其控制位分布如表。EA为中断允许总控制位,EA=1时CPU开发中断;EA1时。CPU屏蔽所有中断。ES、ET、EX1、ET0、EX0为对应的串行口中断、定时器/计数器1中断、外部中断1中断、定时器/计数器0中断、外部中断0中断的中断允许位。对应位为1时允许其中断,对应位为0时,禁止其中断。表4-1 中断允许寄存器格式D7D6D5D4D3D2D1D0EAESET1EX1ET0EX0所以初始化时设定中断允许寄存器初值为0XFF,指令为 IE=0XFF。程序设计时还要考虑到中断优先级的问题。因为不同的中断同时产生而CPU响应的顺序取决于内部查询顺序。设置串口工作方式1,波特率9600,计算可得计数器初值的十六进制表示为0XFD。通信协议如表4-2所示:表4-2 串口通信数据结构数据结构第1个字节第2至第33个字节第34个字节内容起始标志位S显示数据控制指令作用判断是否开始接收数据LED的显示内容控制LED显示方式具体串口中断程序流程图如图4-6所示,在主程序中先进行了串行中断的初始化,初始化内容包括了串行工作方式选择,波特率的设定,计数初值的设定。程序开始进入中断等待,当向单片机发送数据时产生中断接收允许位RI置1,将SBUF(缓冲寄存器)中的值输入到暂存器中进行数据处理。首先判断数据是否设定的起始标志位S如果是则开始接收起始位后的33个字节,不是则中断返回继续等待。接收到第34个字节后便将收到的数据进行验证比较接收串口数据接收起始位后33位数据中段开始R1=1?起始位S接收到第34位?将第2位起的32位数据发回控制系统中段返回图4-6 通信程序流程图所有软件编写完成后都必须经过编译才能被单片机识别使用。为了减小软件的修改和优化难度,先把各子程序写为一个可单独执行的完整程序。各子程序编译没有错误后再输入单片机进行验证,这两项都通过后再将所有的程序整合到一起形成一个完整的程序再进行编译和验证。5.仿真结果图5.1结 论 经过一段时间的工作,终于算是完成了基于51单片机的LED显示系统的设计,项目所要求的功能全部达到。通过这次设计收获颇多,不仅是所作题目涉及到的软硬件知识还有更为重要的实际经验和过程中所发现的问题。接手题目之后从互联网上对LED进行了详细的资料收集,从技术和产业的两方面对LED进行了了解。通过了解我认识到LED是一门当今应用非常广泛的技术,整个产业每年都会有巨大的产值而且技术还在不断发展和创新。从设计之初就确定了参照大屏幕显示屏的实现方法和实际情况设计一款小屏幕的LED点阵显示屏。在查阅了大量的大屏幕显示屏资料后确定了题目的设计方案。整个设计采用AT89C51做核心控制器,74LS164和74LS373组成译码电路,三极管8550和ULN2803做行和列驱动。在实现这一设计的过程中所遇到的问题和困难给我留下了宝贵的经验和深刻教训。这些经验和教训是:(1)设计之前应该进行大量的资料收集和分析,确定一个清晰的设计思路;(2)器件选择时要详细阅读器件使用手册,不但要考虑器件的功能实现还要考虑器件在整个系统中的兼容性;(3)硬件的系统的建立必须合理和稳定,实物建立之前最好进行仿真这样才能为软件提供一个可靠的试验平台;(4)软件的编写不但要实现功能还要不断的优化、简练、易读。随着课题的进行,对LED的了解也越来越深入。认为LED技术也会进一步发展,LED应用将会更加广泛。可以设想利用LED的高稳定性和低能耗,再与无线通信技术相结合在沙漠深处或者人迹罕至的雪山之颠树立一块依靠太阳能充电,通过无线传输方式更改显示内容的信息板为登山者提供指示和天气信息,为沙漠迷路的人指引方向。设计结束了,但学习还在继续。我相信通过此次设计所得到的知识、心得、经验乃至感受都会让我在以后的日子里受益匪浅。 附录 1: 硬件原理图附录 2: 程序清单/主程序主要为各功能子程序提供运行平台,子程序分为显示程序,特效显示程序,/按键输入中断子程序/#include/#include /#include #include/#include#define COUNT 34#define W 0X01unsigned char bufferCOUNT;unsigned char point;sbit A1=P10; /定义第一列对应端口sbit A2=P11; / 第二列 sbit A3=P14; / 第一行sbit A4=P15; / 第二行sbit CLK_L=P12; /列移位时钟 上升沿触发sbit CLEAR_L=P13; /列清除控制位 低电平有效sbit CLK_H=P16; /行移位时钟sbit CLEAR_H=P17; / 行清除控制位 低电平有效sbit EN=P20; sbit P21=P21;sbit OE=P22; /三态允许控制端 低电平有效sbit LE=P23; /锁存允许端unsigned char code H116=1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,H216=0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0; /分别暂存行(H)列(L)所要显示的数据unsigned char L1,L2,i,command,k,j;char z,l,m,n,x;unsigned char data ziku32;unsigned char idata sort32;unsigned int data temp;unsigned char code Bmp019= /静态显示内容/*- 源文件 / 文字 : 寿 宽高(像素): 1616 字模格式/大小 : 单色点阵液晶字模,纵向取模,字节正序/32字节 数据转换日期 : 2007-5-31 16:26:59-*/0x00,0x22,0x22,0x2A,0x2A,0x2A,0x2F,0xFA,0x2A,0x2A,0x2A,0x2B,0x2A,0x2A,0x22,0x00,0x04,0x04,0x08,0x10,0x20,0xC0,0x20,0x5C,0x48,0x42,0x41,0xFE,0x40,0x40,0x40,0x00;/*/串口中断程序/功能:接收数据,当接收满34位后将接收到的数据发送返回/*com_interrupt(void)interrupt 4 using 3 unsigned char RECEIVR_buffer; if(RI=1) RECEIVR_buffer=SBUF; RI=0; TI=0; if(point=0) if(RECEIVR_buffer=s) point+; else point=0; if(point0&point35) bufferpoint+=RECEIVR_buffer; else point=0;/TI=0; if(point=35&RI=0) command=buffer34; point=0; x=0; for(k=2;k34;k+) SBUF=bufferk; sortk-2=bufferk; while(TI=0); TI=0; void delay(int k) /延时程序 while(k-);/*/静态显示程序/功能:将显示数据处理后,控制串并转换器并行输出控制LED显示/* void display() /显示子程序 EN=1; P21=1; CLEAR_L=0;delay(5);CLEAR_L=1; for(i=0;i16;i+) CLK_L=0;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论