基于AT89C51单片机的16x16点阵LED显示器设计说明_第1页
基于AT89C51单片机的16x16点阵LED显示器设计说明_第2页
基于AT89C51单片机的16x16点阵LED显示器设计说明_第3页
基于AT89C51单片机的16x16点阵LED显示器设计说明_第4页
基于AT89C51单片机的16x16点阵LED显示器设计说明_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、. . . . 单片机课程设计报告书设计题目:基于AT89C51单片机的16*16点阵LED显示器设计姓 名:院 系:专 业:学 号:指导教师:教师职称:2012年11月25日25 / 26目录摘要1第1章 引言11.1 LED与LED显示屏 11.2 功能要求21.3 方案论证2第2章 系统总体方案与硬件设计32.1 AT89C51的原理与说明32.2 显示屏总体设计方案32.3 列驱动电路42.4 行驱动部分 4第 3 章 系统硬件电路的设计83.1单片机系统与外围电路83.2列驱动电路83.3 行驱动电路9第 4 章 系统程序的设计104.1显示驱动程序104.2系统主程序114.3单片

2、机汇编程序11第5章系统调试 22第6章设计心得 22参考文献 22附录 23摘要:本设计使用简单单片机AT89C51作为主控制模块,利用简单的外围电路来驱动16×16的点阵LED显示屏。在本设计中主要用两个74HC595来驱动16×16点阵显示屏的列,用AT89C51来驱动16×16点阵显示屏的行,可以最终实现“十六乘十六点阵可调速显示屏设计” 十五个汉字的自动左移,而且它们的“进”和“出”是以滚动形式设计的。也就是说,硬件电路大致上可以分成单片机系统与外围电路、列驱动电路和行驱动电路三部分。从而可以实现一个室用的16×16点阵LED图文显示屏,在目测

3、条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形或文字应稳定、清晰无串扰,图形或文字显示有静止、移入移出等显示方式。最后,利用烧录器可以很方便的实现单片机与PC机等外围存储设备的数据传输,并能利用软件方便的进行显示容的多样变化,另一方面,LED点阵显示屏作为一种新兴的显示器件,是由多个独立的LED发光二极管封装而成。进行了单片机AT89C51的软件仿真并成功完成了仿真验证。结果表明包括系统具体的硬件设计方案,软件流程图和部分C语言程序等方面。具有在负载围, 只需通过简单的级连就可以对显示屏进行扩展,是一种成本低廉的图文显示方案意义。它在实际生活中具有广泛的应用。关键词:单片机、

4、16*16点阵、滚动显示第1章 引言1.1 LED与LED显示屏LED显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影,广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。在实际应用中的显示屏由于成本和可靠性的因素常采用一种称为动态扫描的显示方法。LED 就是Light Emitting Diode(发光二极管)的缩写。在某些半导体材料的PN结中,注入的少数载流子与多数载流子复合时会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。PN结加反向电压,少数载流子难以注入,故不发光。这种利用注入式电致发光原理制作的二极管叫发光二极

5、管,通称LED。LED显示屏是一种通过控制半导体发光二极管的显示方式,用来显示文字、图形、图像、动画、行情、视频、录像信号等各种信息的显示屏幕。LED显示屏分为图文显示屏和视频显示屏,均由LED矩阵块组成。图文显示屏可与计算机同步显示汉字、英文文本和图形;视频显示屏采用微型计算机进行控制,图文、图像并茂,以实时、同步、清晰的信息传播方式播放各种信息,还可显示二维、三维动画、录像、电视、VCD节目以与现场实况。LED显示屏显示画面色彩鲜艳,立体感强,静如油画,动如电影,广泛应用于车站、码头、机场、商场、医院、宾馆、银行、证券市场、建筑市场、拍卖行、工业企业管理和其它公共场所。它的优点:亮度高、工

6、作电压低、功耗小、微型化、易与集成电路匹配、驱动简单、寿命长、耐冲击、性能稳定。1.2 功能要求设计一个室用16×16点阵LED图文显示屏,要求在目测条件下LED显示屏各点亮度均匀、充足,可显示图形和文字,显示图形或文字应稳定、清晰无串扰,图形或文字显示有静止、移入移出等显示方式。1.3 方案论证16×16的点阵显示屏共有256个发光二极管,显然单片机没有这么多端口,如果我们采用锁存器来扩展端口,按8位的锁存器来计算,16×16的点阵需要256/8=32个锁存器。这个数字很庞大,因为我们仅仅是16×16的点阵,在实际应用中的显示屏往往要大的多,这样在锁存

7、器上花的成本将是一个很庞大的数字。因此在实际应用中的显示屏几乎都不采用这种设计,而采用另一种称为动态扫描的显示方法。动态扫描的意思简单地说就是逐行轮流点亮,这样扫描驱动电路就可以实现多行(比如16行)的同名列共用一套列驱动器。具体就16×16的点阵来说,我们把所有同一行的发光管的阳极连在一起,把所有同一列的发光管的阴极连在一起(共阳的接法),先送出对应第一行发光管亮灭的数据并锁存,然后选通第一行使其燃亮一定的时间,然后熄灭;再送出第二行的数据并锁存,然后选通第二行使其燃亮一样的时间,然后熄灭; 第十六行之后又重新燃亮第一行,这样反复轮回。当这样轮回的速度足够快(每秒24次以上),由于

8、人眼的视觉暂留现象,我们就能看到显示屏上稳定的图形了。采用串行传输的方法,控制电路可以只用一根信号线,将列数据一位一位传往列驱动器,在硬件方面无疑是十分经济的。但是,串行传输过程较长,数据按顺序一位一位地输出给列驱动器,只有当一行的各列数据都已传输到位之后,这一行的各列才能并行地进行显示。这样,对于一行的显示过程就可以分解成列数据准备(传输)和列数据显示两个部分。对于串行传输方式来说,列数据准备时间可能相当长,在行扫描周期确定的情况下,留给行显示的时间就太少了,以至影响到LED的亮度。解决串行传输中列数据准备和列数据显示的时间矛盾问题,可以采用重叠处理的方法。即在显示本行各列数据的同时,传送下

9、一行的列数据。为了达到重叠处理的目的,列数据的显示就需要具有锁存功能。经过上述分析,可以归纳出列驱动器电路应具备的主要功能。对于列数据准备来说,它应能实现串入并出的移位功能;对于列数据显示来说,应具有并行锁存的功能。这样,本行已准备好的数据打入并行锁存器进行显示时,串并移位寄存器就可以准备下一行的列数据,而不会影响本行的显示。第2章 系统总体方案与硬件设计2.1 AT89C51的原理与说明AT89C51是美国Intel公司生产的低电压,高性能CHMOS8位单片机,片含4k bytes的可反复擦写的只读程序存储器(PEROM)和蔼可亲128 bytes的随机存取数据存储器(RAM),器件采用In

10、tel公司的高密度、非易失性存储技术生产,片置通用4位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机适合于许多较为复杂控制应用场合。AT89C51引脚图2.2 显示屏总体设计方案列驱动器 单片机 行驱动器LED显示点阵2.3 列驱动电路列驱动电路有集成电路74HC595构成。它具有一个8位串入并出的移位寄存器和一个8位输出锁存器的结构,而且移位寄存器和输出锁存器的控制是各自独立的,可以实现在显示本行列数据的同时,传送下一行的列数据,既达到重叠处理的目的。74HC595的外形与部结构如图所示。它的输入侧有8个串行移位寄存器,每个移位寄存器的输出都连接一个输出锁存器。引脚S

11、I是串行数据的输入端。引脚SCK是移位寄存器的移位时钟脉冲,在其上升沿发生移位,并将SI的下一个数据打入最低位。移位后的各位信号出现在各移位寄存器的输出端,也就是输出锁存器的输入端。RCK是输出锁存器的打入信号,其上升沿将移位寄存器的输出打入输出锁存器。引脚G是输出三态门的开放信号,只有当其为低时锁存器的输出才开放,否则为高组态。SCLR信号是移位寄存器清零输入端,当其为低时移位寄存器的输出全部为零。由于SCK和RCK两个信号是互相独立的,所以能够做到输入串行移位与输出锁存互不干扰。芯片的输出端为QAQH,最高位QH可作为多片74HC595级联应用时,向上一级的级联输出。但因为QH受输出锁存器

12、的打入控制,所以还从输出锁存器前引出QH,作为与移位寄存器完全同步的级联输出。2.4 行驱动器由于4点阵显示器有16行,为充分利用单片机的接口,本电路中运用了单片机AT89C51的P1口和P2口,其输入是一个16进制码,解码输出为低态扫描信号,单片机P1口和P2口输出生产16条行选通讯信号线,再经过驱动器驱动对应的线。74LS241三态八缓冲器/线驱动器/线接收器(3S,两组控制)简要说明:241为三态输出的八组缓冲器和总线驱动器,其主要电器特性的典型值如下(不同厂家具体值有差别):型号tPLHtphlPD54LS241/74LS24112ns12ns110mW引出端符号:1A11A4,2A1

13、2A4输入端/1G, /2G三态允许端(低电平有效)1Y11Y4,2Y12Y4输出端逻辑图:双列直插封装极限值:电源电压 .7V输入电压.5.5V输出高阻态时高电平电压.5.5V工作环境温度54XXX.-5512574XXX.070存储温度.-65150功能表:推荐工作条件:54LS244/74LS244单位最小额定最大电源电压Vcc544.555.5V744.7555.25输入高电平电ViH2V输入低电平电ViL540.7V740.8输出高电平电流IOH54-12mA74-15输出低电平电流IOL5412mA7424动态特性(TA=25)参 数测 试 条 件LS244单位最大tPLH输出由低

14、到高传输延迟时间Vcc =5VCL=45pFRL=66718nstPHL输出由高到低传输延迟时间18nstPZH输出由高阻态到高允许时间23nstPZL输出由高阻态到低允许时间30nstPHZ输出由高到高阻态禁止时间Vcc=5V CL=5pFRL=90 18nstPLZ输出由低到高阻态禁止时间25ns静态特性(TA为工作环境温度围)参 数测 试 条 件1LS244单位最小最大VIK输入嵌位电压Vcc=最小,Iik=-18mA-1.5VVT滞后电压Vcc最小0.2VVOH输出高电平电压Vcc最小,VIL最大,VIH=2V,IOH3mA2.4VVOL输出低电平电压Vcc=最小,VIL最大, IOL

15、=最大540.4V740.5II最大输入电压时输出电流Vcc最大,VI=7V0.1mAIIH输入高电平电流Vcc最大,VIH=2.7V20uAIIL输入低电平电流1A,2AVcc最大,VIL=0.4V-0.2mAIOS输出短路电流Vcc最大-40-225mAIOZH输出高阻态时高电平电流Vcc最大,VIH=2VVIL=最大,VO=2.7V20uAIOZL输出高阻态时低电平电流Vcc最大,VIH=2V,VIL最大,VO=0.4V-20uAIcc电源电流Vcc最大1Y,2Y均为高电平27mA1Y,2Y均为低电平461Y,2Y均为高阻态54测试条件中的“最小”和“最大”用推荐工作条件中的相应值。第

16、3 章 系统硬件电路的设计硬件电路大致上可以分成单片机系统与外围电路、列驱动电路和行驱动电路三部分。3.1AT89C51单片机AT89C51是一种带4K字节闪烁可编程可擦除只读存储器,(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器。(1)AT89C51引脚图如图所: AT89C51单片机引脚图(2)AT89C51单片机P口的特点:P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数

17、据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。   P2口:P2口为一个部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出

18、电流。这是由于部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。  P3口:P3口管脚是8个带部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。3.2单片机系统与外围电路单片机采用89C51或其兼容系列的芯片,采用24M或

19、更高频率的晶振,以获得较高的刷新频率,使显示更稳定。单片机的串口与列驱动器相连,用来送显示数据。P1口与P2口为行驱动器,送出行信号;P3.5P3.7口则用来发送控制信号。P0口空着,在有必要时可以扩展系统的ROM和RAM。16×16点阵显示屏的硬件原理图如图3-1图3-1 16×16点阵显示屏硬件原理图3.3列驱动电路列驱动电路由集成电路74HC595构成,它具有一个8位串入并出的移位寄存器和一个8位输出锁存器的结构,而且移位寄存器和输出锁存器的控制是各自独立的,可以实现在显示本行各列数据的同时,传送下一行的列数据,即达到重叠处理的目的。74HC595的外形与部结构如图7

20、.3所示。它的输入侧有8个串行移位寄存器,每个移位寄存器的输出都连接一个输出锁存器。引脚SI是串行数据的输入端。引脚SCK是移位寄存器的移位时钟脉冲,在其上升沿发生移位,并将SI的下一个数据打入最低位。移位后的各位信号出现在各移位寄存器的输出端,也就是输出锁存器的输入端。RCK是输出锁存器的打入信号,其上升沿将移位寄存器的输出打入到输出锁存器。引脚G是输出三态门的开放信号,只有当其为低时锁存器的输出才开放,否则为高阻态。SCLR信号是移位寄存器的清零输入端,当其为低时移位寄存器的输出全部为零。由于SCK和RCK两个信号是互相独立的,所以能够做到输入串行移位与输出锁存互不干扰。芯片的输出端为QA

21、QH,最高位QH可作为多片74HC595级联应用时,向上一级的级联输出。但因QH受输出锁存器打入控制,所以还从输出锁存器前引出了QH,作为与移位寄存器完全同步的级联输出。图3-274HC595外形与部逻辑结构图3.4行驱动电路单片机P1口与P2口为行驱动器,送出行信号;P3.5P3.7口则用来发送控制信号。74LS154译码后生成16条行选通信号线,一条行线上要带动16列的LED进行显示。第 4 章 系统程序的设计显示屏软件的主要功能是向屏体提供显示数据,并产生各种控制信号,使屏幕按设计的要求显示。根据软件分层次设计的原理,我们可把显示屏的软件系统分成两大层:第一层是底层的显示驱动程序,第二层

22、是上层的系统应用程序。显示驱动程序负责向屏体送显示数据,并负责产生行扫描信号和其它控制信号,配合完成LED显示屏的扫描显示工作。显示驱动程序由定时器T0中断程序实现。系统应用程序完成系统环境设置(初始化)、显示效果处理等工作,由主程序来实现。从有利于实现较复杂的算法(显示效果处理)和有利于程序结构化考虑,显示屏程序适宜采用C语言编写。4.1显示驱动程序显示驱动程序在进入中断后首先要对定时器T0重新赋初值以保证显示屏刷新率的稳定,1/16扫描的显示屏的刷新率(帧频)的计算公式如下:其中fosc为晶振频率,t0为定时器T0初值(工作在16位定时器模式)。然后显示驱动程序查询当前燃亮的行号,从显示缓

23、存区读取下一行的显示数据,并通过串口发送给移位寄存器。为消除在切换行显示数据的时候产生拖尾现象,驱动程序先要关闭显示屏,即消隐,等显示数据打入输出锁存器并锁存,然后再输出新的行号,重新打开显示。图4-1为显示驱动程序(显示屏扫描函数)流程图。系统初始化“滚动出”显示效果“加速”显示效果“减速”显示效果“默认”显示效果开始图4-2系统主程序流程图定时器赋初值读取行号并增1送新行显示数据消隐切换显示数据送新行号、打开显示进入中断退出中断图4-1显示驱动程序流程图4.2系统主程序系统主程序开始以后首先是对系统环境初始化,包括设置串口、定时器、中断和端口。然后以“滚动出”效果显示一个字,停留约3秒,接

24、着向左滚动显示“十六乘十六点阵可调速显示屏设计”十五个汉字,停留约3秒,再向左滚动显示“十六乘十六点阵可调速显示屏设计”这十五个汉字,循环重复,由于单片机没有停机指令,所以我们可以设置系统程序不断地循环执行上述显示效果。图4-2是系统主程序的流程图。4.3单片机汇编程序#include <reg51.h>sbit SET=P35;sbit ADD=P36;sbit SUB=P37;sbit LOCK=P32;sbit DAT=P30;sbit CLK=P31;unsigned chart,cnt2,line,*p,*old,shift,t4;char speed,i;bit sec

25、,key_mark;unsigned char code Matrix00132=/*-转换字符 十 -*/0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0xFF,0xFE,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,;unsigned char code Matrix00232=/*-转换字符 六 -*/0x02,0x00,0x01,0x00,0x00,0x80,0x00,0x80,0

26、x00,0x00,0xFF,0xFE,0x00,0x00,0x00,0x00,0x04,0x40,0x04,0x20,0x08,0x10,0x08,0x08,0x10,0x08,0x20,0x04,0x40,0x04,0x00,0x00,;unsigned char code Matrix00332=/*-转换字符 乘 -*/0x00,0xF8,0x3F,0x00,0x01,0x00,0x7F,0xFC,0x01,0x00,0x09,0x24,0xF9,0x38,0x09,0x22,0x39,0x22,0xCB,0x9E,0x05,0x40,0x09,0x20,0x31,0x18,0xC1,0

27、x06,0x01,0x00,0x01,0x00,;unsigned char code Matrix00432=/*-转换字符 十 -*/0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0xFF,0xFE,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00, ;unsigned char code Matrix00532=/*-转换字符 六 -*/0x02,0x00,0x01,0x00,0x00,

28、0x80,0x00,0x80,0x00,0x00,0xFF,0xFE,0x00,0x00,0x00,0x00,0x04,0x40,0x04,0x20,0x08,0x10,0x08,0x08,0x10,0x08,0x20,0x04,0x40,0x04,0x00,0x00,;unsigned char code Matrix00632=/*-转换字符 点 -*/0x02,0x00,0x02,0x00,0x02,0x00,0x03,0xFC,0x02,0x00,0x02,0x00,0x3F,0xF0,0x20,0x10,0x20,0x10,0x20,0x10,0x3F,0xF0,0x00,0x00,

29、0x24,0x88,0x22,0x44,0x42,0x44,0x80,0x04,;unsigned char code Matrix00732=/*-转换字符 阵 -*/0x00,0x40,0x7C,0x40,0x44,0x40,0x4B,0xFE,0x48,0x80,0x50,0xA0,0x49,0x20,0x49,0xFC,0x44,0x20,0x44,0x20,0x44,0x20,0x6B,0xFE,0x50,0x20,0x40,0x20,0x40,0x20,0x40,0x20,;unsigned char code Matrix00832=/*-转换字符 可 -*/0x00,0x00,

30、0x7F,0xFE,0x00,0x10,0x00,0x10,0x1F,0x10,0x11,0x10,0x11,0x10,0x11,0x10,0x11,0x10,0x11,0x10,0x1F,0x10,0x11,0x10,0x00,0x10,0x00,0x10,0x00,0x50,0x00,0x20,;unsigned char code Matrix00932=/*-转换字符 调 -*/0x00,0x00,0x47,0xFC,0x24,0x44,0x24,0x44,0x05,0xF4,0x04,0x44,0xE4,0x44,0x27,0xFC,0x24,0x04,0x25,0xF4,0x25,

31、0x14,0x2D,0x14,0x35,0xF4,0x24,0x04,0x04,0x14,0x08,0x08,;unsigned char code Matrix01032=/*-转换字符 速 -*/0x00,0x40,0x20,0x40,0x17,0xFC,0x10,0x40,0x03,0xF8,0x02,0x48,0xF2,0x48,0x13,0xF8,0x10,0xE0,0x11,0x50,0x12,0x48,0x14,0x44,0x10,0x40,0x28,0x00,0x47,0xFE,0x00,0x00,;unsigned char code Matrix01132=/*-转换字符

32、显 -*/0x00,0x00,0x1F,0xF0,0x10,0x10,0x10,0x10,0x1F,0xF0,0x10,0x10,0x10,0x10,0x1F,0xF0,0x04,0x40,0x44,0x44,0x24,0x44,0x14,0x48,0x14,0x50,0x04,0x40,0xFF,0xFE,0x00,0x00,;unsigned char code Matrix01232=/*-转换字符 示 -*/0x00,0x00,0x3F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFE,0x01,0x00,0x01,0x00,

33、0x11,0x10,0x11,0x08,0x21,0x04,0x41,0x02,0x81,0x02,0x05,0x00,0x02,0x00,;unsigned char code Matrix01332=/*-转换字符 屏 -*/0x00,0x00,0x3F,0xF8,0x20,0x08,0x20,0x08,0x3F,0xF8,0x24,0x10,0x22,0x20,0x2F,0xF8,0x22,0x20,0x22,0x20,0x3F,0xFC,0x22,0x20,0x42,0x20,0x44,0x20,0x84,0x20,0x08,0x20,;unsigned char code Matri

34、x01432=/*-转换字符 设 -*/0x00,0x00,0x21,0xF0,0x11,0x10,0x11,0x10,0x01,0x10,0x02,0x0E,0xF4,0x00,0x13,0xF8,0x11,0x08,0x11,0x10,0x10,0x90,0x14,0xA0,0x18,0x40,0x10,0xA0,0x03,0x18,0x0C,0x06,;unsigned char code Matrix01532=/*-转换字符 计 -*/0x00,0x40,0x20,0x40,0x10,0x40,0x10,0x40,0x00,0x40,0x00,0x40,0xF7,0xFE,0x10,

35、0x40,0x10,0x40,0x10,0x40,0x10,0x40,0x10,0x40,0x14,0x40,0x18,0x40,0x10,0x40,0x00,0x40,;unsigned char code Matrix01632=/*-转换字符 代 -*/0x08,0x90,0x08,0x88,0x08,0x88,0x10,0x80,0x10,0xBE,0x37,0xC0,0x30,0x80,0x50,0x40,0x90,0x40,0x10,0x40,0x10,0x20,0x10,0x22,0x10,0x12,0x10,0x0A,0x10,0x06,0x10,0x02,;unsigned

36、char code Matrix10032=0;unsigned char code end;void SendData(unsigned char *q) unsigned char i,t; t=*q; for(i=0;i<16;i+) if(i=8) t=*(q+1); if(t&1) DAT=1; else DAT=0; CLK=0; CLK=1; t>>=1; LOCK=0; LOCK=1; void t0() interrupt 1 TH0=-50000>>8;TL0=-50000;if(+cnt2>speed) t2=0; sec=1;

37、 void t1() interrupt 3 TH1=-1000>>8;TL1=-1000;if(+cnt>=0) t=0; if(+line>15) line=0; P1=P2=0xff; t0=*(p+(line<<1);t1=*(p+1+(line<<1);t2=*(p+32+(line<<1);t3=*(p+33+(line<<1);if(shift<=7) t0=(t0<<shift)|(t1>>(8-shift); t1=(t1<<shift)|(t2>>(

38、8-shift);else t0=(t1<<(shift-8)|(t2>>(16-shift); t1=(t2<<(shift-8)|(t3>>(16-shift); SendData(t); if(line<8) P1=(1<<line); else P2=(1<<(line-8); void delay() unsigned char i,j;for(i=0;i<4;i+) for(j=0;j<100;j+) ;void key() if(!SET) p=Matrix001; shift=0; els

39、e if(!ADD) speed+=4; else if(!SUB) speed-=4; if(speed<=1) speed=1; void init_t0() TH0=-50000>>8;TL0=-50000;TMOD|=0X01;IE|=0X82;void init_t1() TH1=-1000>>8;TL1=-1000;TMOD|=0X10;IE|=0X88;void delay500ms() char n;IE=0X88; /DISABLE T0 INTERRUPT for(n=0;n<10;n+) TH0=-50000>>8; TL0=-50000; while(!TF0); TF0=0; IE=0X8A;main()p=Matrix001;i

温馨提示

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

评论

0/150

提交评论