首页资源分类嵌入式处理器51内核 > LED点阵广告牌设计

LED点阵广告牌设计

已有 445010个资源

下载专区

上传者其他资源

    文档信息举报收藏

    标    签:LED单片机点阵

    分    享:

    文档简介

    使用点矩阵显示字符以及动态显示效果,练习点矩阵显示的基本  使用。

    文档预览

     东 北 石 油 大 学 课 程 设 计 2014年 7 月 7 日 东北石油大学课程设计任务书 课程 单片机的控制系统课程设计 题目 LED点阵广告牌设计 专业 自动化 姓名 王冉 学号110601141223 主要内容、基本要求、主要参考资料等 主要内容:使用点矩阵显示字符以及动态显示效果,练习点矩阵显示的基本 使用。 基本要求:首先使双色点矩阵整屏(包括红色与绿色)点亮并持续一小段时间(大约1秒),然后全部熄灭并持续一小段时间;再使绿色整屏点亮并持续一小段时间,然后全部熄灭并持续一小段时间;再使红色整屏点亮并持续一小段时间,然后全部熄灭并持续一小段时间;接着依次显示英文字符A,B,C,D;然后使英文字符从左到右、从右到左、从上到下、从下到上动态显示;最后在屏幕上显示“钟表”图案并循环。 主要参考资料: [1] 张毅刚.MCS-51单片机应用设计[M].哈尔滨:哈尔滨工业大学出版社,2003 [2] 彭为.单片机典型系统设计实例精讲[M].北京:电子工业出版社,2000. [3] 康华光.电子技术基础第五版[M].北京:高等教育出版社,2006. [4] 陈有卿.新颖电子灯光控制器[M].北京:机械工业出版社,2001. [5] 周航慈.单片机程序设计基础[M].北京:北京航空航天大学出版社,2004. [6] 张世生.科技情报开发与经济[J].怎样分析单片机程序,2006,(3):25-27. [7] 刘湘涛, 江世明.单片机原理与应用[M].北京:电子工业出版社,2006. [8] 胡汉才.单片机原理及系统设计[M].北京:清华大学出版社,2002. 完成期限 2014.6.30-2014.7.4 指导教师 杨莉 于镝 专业负责人 2014年 6 月 27 日 目录 第1章 概述 4 第2章 系统结构及主要元器件 6 第3章 硬件设计 7 第4章 软件设计 12 第5章 系统PROTEUS仿真及调试 21 结论 23 参考文献 24 第1章 概述 1.1 LED点阵显示屏的设计背景及意义 在现代化和信息化社会的高速发展过程中,最具意义的莫过于LED大屏幕点阵显示已经渗透到各行各业的信息显示中。随着宽带网络的快速发展,数字化的多媒体内容将在信息世界中占据主流,新型的大屏幕显示设备将代替传统电视机成为人们享受信息和多媒体内容的中心。与传统的显示设备相比,正是这种未来的巨大需求让LED大屏幕点阵显示技术成为众人目光的焦点。 在各大商场、车站以及各类办事窗口甚至在我们学校校门口、食堂门口和移动营业厅门口都装了LED点阵显示屏来发布一些通知或广告。随着信息产业的高速发展,LED点阵显示作为信息传播的一种重要手段,已成为一个飞速发展的新兴产业,市场空间巨大,发展前景广阔,并已广泛应用于各种需要进行信息宣传的公众场所,例如各大商场里的广告宣传、火车站为旅客提供售票信息显示、公交车辆报站显示、证券与银行信息显示、交通信号灯的亮灭等。因此,LED点阵显示已成为现代化和信息化社会的一个重要标志。 LED点阵设计主要应用于LED点阵显示屏,它是利用发光二极管点阵模块组成的平面式显示屏幕。由于它具有发光效率高、使用寿命长、节能、组态灵活、色彩丰富、显示方式变化多样以及无电离辐射等优点,在国内外得到了极为广泛的应用。LED的发展前景极为广阔,目前正朝着更高亮度、更高耐气候性、更高的发光密度、更高的发光均匀性、可靠性、全色化方向发展。 1.2选题意义 该设计课题使我们能够掌握LED显示屏的基本显示原理和设计方法,对LED显示屏这个行业能有更为深刻的了解和认识。并且对本学期所学习的单片机课程理论进行了实践,使我们对单片机原理与应用课程的理论知识有了新的更深的认识,并且通过此次设计课题掌握了51单片机的的软硬件开发工具的使用方法,为以后从事相关行业的工作积累了实际工作经验。目前我国的信息行业发展迅速,作为主要平面显示媒介的LED显示屏的作用也越来越广泛,相关的从业人员也会越来越紧缺。但同时应该清楚的认识到我国的LED技术虽然发展迅速但和世界先进水平还有一定的差距。因此此课题不论是对自己的就业还是对我国LED显示技术的发展都有非常现实与积极的意义。 1.3 设计目标及采取的方案 1.3.1 本设计的目标 本设计的理论基础是单片机原理与应用,模电和数电。比如AT89C52芯片的一些工作原理是在MCS—52的基础上通过改进完成的。74LS154的工作原理数电里也学习过。 本设计完成了8*8 LED点阵动态显示英文字母,并可以自动上下左右移动。 通过本设计不仅可以复习之前学过的知识,而且可以通过查阅课外资料学到书本上没有的知识,还锻炼了我们的动手能力。通过这次课程设计把我们在学校学习的理论知识和实际应用有机地结合起来,把理论跟实践相结合,培养了我们的钻研精神。 1.3.2 本设计采取的方案 (1)根据实验指导书的要求确定系统应该具有的功能 (2)按照系统功能将系统分模块组合起来 (3)根据系统功能与结构编写实验程序,并通过keil软件进行编译并找出程序中的错误,改正这些错误 (4)确定所需的元器件,然后利用proteus软件画出系统电路图并进行仿真 (5)仿真成功后根据仿真图制作实际硬件图 (6)最终能在LED电路板上显示实验指导书上所要求的字母显示形式。 第2章 系统结构及主要元器件 2.1系统结构 电路原理图如图2-1所示。 图2-1 电路原理图 2.2主要元器件 表-1 主要元器件表 第3章 硬件设计 3.1主控制器——AT89S52单片机 与MCS-51单片机产品兼容 、8k可反复擦写(大于1000次)Flash ROM、 时钟频率:0Hz~24Hz 、 三级加密程序存储器 、 32个双向I/O口 、2个串行中断,可编程UART串行通道、3个16位可编程定时/计数器中断 、2个外部中断源,共8个中断源、低功耗空闲和掉电模式、软件设置睡眠和唤醒功能、2个读写中断口线、3级加密位、看门狗定时器 、双数据指针。 P0口--P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻 辑电平。对P0端口写“1”时,引脚用作高阻抗输入端用。 在Flash 编程时,P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。 P1口--P1 口是一个具有内部上拉电阻的8 位双向I/O 口,P1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。 此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表所示。在flash编程和校验时,P1口接收低8位地址字节。 P1端口引脚号第二功能:  P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出 P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制) P2口--P2口是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。 Flash 编程或校验时,P2亦接收高位地址和一些控制信号。 P3口--P3口是一组带有内部上拉电阻的8 位双向I/O 口。 P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。 在flash编程和校验时,P3口也接收一些控制信号。 P3端口引脚第二功能: P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 INTO(外中断0) P3.3 INT1(外中断1) P3.4 TO(定时/计数器0) P3.5 T1(定时/计数器1) P3.6 WR(外部数据存储器写选通) P3.7 RD(外部数据存储器读选通) RST--复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。 ALE/PROG--当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。 如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。 PSEN--程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。 EA/VPP--外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。 如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。 FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。 图3-1 89C52引脚图 3.2 8*8点阵显示模块的硬件设计及工作原理 本设计采用LED驱动显示采用动态扫描方法,动态扫描方式是逐行轮流点亮,这样扫描驱动电路就可以实现多行的同名列共用一套列驱动器。LED驱动显示采用动态扫描方法,动态扫描方式是逐行轮流点亮,这样扫描驱动电路就可以实现多行的同名列共用一套列驱动器。以8×8点阵为例,把所有同一行的发光管的阴极连在一起,把所有同一列的发光管的阳极连在一起(共阴的接法),先送出对应第1列发光管亮灭的数据并锁存,然后选通第1列使其燃亮一定的时间,然后熄灭;再送出第2列的数据并锁存,然后选通第2列使其燃亮相同的时间,然后熄灭;以此类推,第8列之后,又重新燃亮第1列,反复轮回。当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就能看到显示屏上的汉字的每一笔都是同时出现的。该方法能驱动较多的LED,控制方式较灵活,而且节省单片机的资源。 显示数据可通过单片机的P0,P2口传输到点阵行引脚。 LED点阵显示模块进行的方法有两种: (1)水平方向(X方向)扫描,即逐列扫描的方式(简称列扫描方式):此时用一个P口输出列码决定哪一列能亮(相当于位码),用另一个P口输出行码(列数据),决定该列上哪个LED亮(相当于段码)。能亮的列从左到右扫描完8列(相当于位码循环移动8次)即显示出一个完整的图像。 (2)竖直方向(Y方向)扫描,即逐行扫描方式(简称行扫描方式):此时用一个P口输出决定哪一行能亮(相当于位码),另一个P口输出列码(行数据,行数据为将列数据的点阵旋转90度的数据)决定该行上哪些LED灯亮(相当于段码)。能亮的行从上向下扫描完8行(相当于位码循环移位8次)即显示一帧完整的图像。 如图 图3-2 8×8点阵LED显示屏 图3-4为8×8点阵LED外观及引脚图,其等效电路如图(2)所示,只要其对应的X、Y轴顺向偏压,即可使LED发亮。例如如果想使左上角LED点亮,则Y0=1,X0=0即可。应用时限流电阻可以放在X轴或Y轴。 图3-4 8×8点阵LED外观及引脚图 其等效电路图如下: 图3-5 8×8点阵LED等效电路 3.3复位电路 当MCS -5l系列单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行复位操作。如果RST持续为高电平,单片机就处于循环复位状态。上电复位要求接通电源后,自动实现复位操作。当单片机已在运行当中时,按下复位键后松开,也能使RST为一段时间的高电平,从而实现上电或开关复位的操作。复位电路如3-6所示: 图3-6复位电路 第4章 软件设计 4.1主程序流程图 系统软件采用汇编语言编写,按照模块化的设计思路设计。首先分析程序所要实现的功能,程序要实现动态显示并能左右上下移动的功能。主程序流程图如图4-1所示: 图4-1 主程序流程图 源程序 #include //--定义要使用的IO口--// #define READPORTS P2 #define GREENPORTS P1 #define COMMONPORTS P0 //--列选通控制--// unsigned char code TAB[8] = {0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe}; //--点阵字码--// unsigned char code CHARCODE[220][8]={ {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, {0xff,0x7f,0x7f,0x7f,0x7f,0x7f,0x7f,0xff}, //A左到右 {0x7f,0xbf,0xbf,0xbf,0x3f,0xbf,0xbf,0xff}, {0x3f,0xdf,0xdf,0xdf,0x1f,0xdf,0xdf,0xff}, {0x9f,0x6f,0x6f,0x6f,0x0f,0x6f,0x6f,0xff}, {0xcf,0xb7,0xb7,0xb7,0x87,0xb7,0xb7,0xff}, {0xe7,0xdb,0xdb,0xdb,0xc3,0xdb,0xdb,0xff}, {0xf3,0xed,0xed,0xed,0xe1,0xed,0xed,0xff}, {0xf9,0xf6,0xf6,0xf6,0xf0,0xf6,0xf6,0xff}, {0xfc,0xfb,0xfb,0xfb,0xf8,0xfb,0xfb,0xff}, {0xfe,0xfd,0xfd,0xfd,0xfc,0xfd,0xfd,0xff}, {0xff,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xff,0x7f,0x7f,0xff,0x7f,0x7f,0xff,0x7f}, //B {0x7f,0xbf,0xbf,0x7f,0xbf,0xbf,0x7f,0xff}, {0x3f,0xdf,0xdf,0x3f,0xdf,0xdf,0x3f,0xff}, {0x1f,0x6f,0x6f,0x1f,0x6f,0x6f,0x1f,0xff}, {0x8f,0xb7,0xb7,0x8f,0xb7,0xb7,0x8f,0xff}, {0xc7,0xdb,0xdb,0xc7,0xdb,0xdb,0xc7,0xff}, {0xe3,0xed,0xed,0xe3,0xed,0xed,0xe3,0xff}, {0xf1,0xf6,0xf6,0xf1,0xf6,0xf6,0xf1,0xff}, {0xf8,0xfb,0xfb,0xf8,0xfb,0xfb,0xf8,0xff}, {0xfc,0xfd,0xfd,0xfc,0xfd,0xfd,0xfc,0xff}, {0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xff,0x7f,0xff,0xff,0xff,0x7f,0xff,0xff},//C {0x7f,0xbf,0xff,0xff,0xff,0xbf,0x7f,0xff}, {0x3f,0xdf,0xff,0xff,0xff,0xdf,0x3f,0xff}, {0x9f,0x6f,0x7f,0x7f,0x7f,0x6f,0x9f,0xff}, {0xcf,0xb7,0xbf,0xbf,0xbf,0xb7,0xcf,0xff}, {0xe7,0xdb,0xdf,0xdf,0xdf,0xdb,0xe7,0xff}, {0xf3,0xed,0xef,0xef,0xef,0xed,0xf3,0xff}, {0xf9,0xf6,0xf7,0xf7,0xf7,0xf6,0xf9,0xff}, {0xfc,0xfb,0xfb,0xfb,0xfb,0xfb,0xfc,0xff}, {0xfe,0xfd,0xfd,0xfd,0xfd,0xfd,0xfe,0xff}, {0xff,0xfe,0xfe,0xfe,0xfe,0xfe,0xff,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xff,0x7f,0x7f,0x7f,0x7f,0x7f,0xff,0xff},//D {0x7f,0xbf,0xbf,0xbf,0xbf,0xbf,0x7f,0xff}, {0x3f,0xdf,0xdf,0xdf,0xdf,0xdf,0x3f,0xff}, {0x1f,0x6f,0x6f,0x6f,0x6f,0x6f,0x1f,0xff}, {0x8f,0xb7,0xb7,0xb7,0xb7,0xb7,0x8f,0xff}, {0xc7,0xdb,0xdb,0xdb,0xdb,0xdb,0xc7,0xff}, {0xe3,0xed,0xed,0xed,0xed,0xed,0xe3,0xff}, {0xf1,0xf6,0xf6,0xf6,0xf6,0xf6,0xf1,0xff}, {0xf8,0xfb,0xfb,0xfb,0xfb,0xfb,0xf8,0xff}, {0xfc,0xfd,0xfd,0xfd,0xfd,0xfd,0xfc,0xff}, {0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xff,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xff},//A右到左 {0xfe,0xfd,0xfd,0xfd,0xfc,0xfd,0xfd,0xff}, {0xfc,0xfb,0xfb,0xfb,0xf8,0xfb,0xfb,0xff}, {0xf9,0xf6,0xf6,0xf6,0xf0,0xf6,0xf6,0xff}, {0xf3,0xed,0xed,0xed,0xe1,0xed,0xed,0xff}, {0xe7,0xdb,0xdb,0xdb,0xc3,0xdb,0xdb,0xff}, {0xcf,0xb7,0xb7,0xb7,0x87,0xb7,0xb7,0xff}, {0x9f,0x6f,0x6f,0x6f,0x0f,0x6f,0x6f,0xff}, {0x3f,0xdf,0xdf,0xdf,0x1f,0xdf,0xdf,0xff}, {0x7f,0xbf,0xbf,0xbf,0x3f,0xbf,0xbf,0xff}, {0xff,0x7f,0x7f,0x7f,0x7f,0x7f,0x7f,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xff},//B {0xfc,0xfd,0xfd,0xfc,0xfd,0xfd,0xfc,0xff}, {0xf8,0xfb,0xfb,0xf8,0xfb,0xfb,0xf8,0xff}, {0xf1,0xf6,0xf6,0xf1,0xf6,0xf6,0xf1,0xff}, {0xe3,0xed,0xed,0xe3,0xed,0xed,0xe3,0xff}, {0xc7,0xdb,0xdb,0xc7,0xdb,0xdb,0xc7,0xff}, {0x8f,0xb7,0xb7,0x8f,0xb7,0xb7,0x8f,0xff}, {0x1f,0x6f,0x6f,0x1f,0x6f,0x6f,0x1f,0xff}, {0x3f,0xdf,0xdf,0x3f,0xdf,0xdf,0x3f,0xff}, {0x7f,0xbf,0xbf,0x7f,0xbf,0xbf,0x7f,0xff}, {0xff,0x7f,0x7f,0xff,0x7f,0x7f,0xff,0x7f}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xff,0xfe,0xfe,0xfe,0xfe,0xfe,0xff,0xff},//C {0xfe,0xfd,0xfd,0xfd,0xfd,0xfd,0xfe,0xff}, {0xfc,0xfb,0xfb,0xfb,0xfb,0xfb,0xfc,0xff}, {0xf9,0xf6,0xf7,0xf7,0xf7,0xf6,0xf9,0xff}, {0xf3,0xed,0xef,0xef,0xef,0xed,0xf3,0xff}, {0xe7,0xdb,0xdf,0xdf,0xdf,0xdb,0xe7,0xff}, {0xcf,0xb7,0xbf,0xbf,0xbf,0xb7,0xcf,0xff}, {0x9f,0x6f,0x7f,0x7f,0x7f,0x6f,0x9f,0xff}, {0x3f,0xdf,0xff,0xff,0xff,0xdf,0x3f,0xff}, {0x7f,0xbf,0xff,0xff,0xff,0xbf,0x7f,0xff}, {0xff,0x7f,0xff,0xff,0xff,0x7f,0xff,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xff},//D {0xfc,0xfd,0xfd,0xfd,0xfd,0xfd,0xfc,0xff}, {0xf8,0xfb,0xfb,0xfb,0xfb,0xfb,0xf8,0xff}, {0xf1,0xf6,0xf6,0xf6,0xf6,0xf6,0xf1,0xff}, {0xe3,0xed,0xed,0xed,0xed,0xed,0xe3,0xff}, {0xc7,0xdb,0xdb,0xdb,0xdb,0xdb,0xc7,0xff}, {0x8f,0xb7,0xb7,0xb7,0xb7,0xb7,0x8f,0xff}, {0x1f,0x6f,0x6f,0x6f,0x6f,0x6f,0x1f,0xff}, {0x3f,0xdf,0xdf,0xdf,0xdf,0xdf,0x3f,0xff}, {0x7f,0xbf,0xbf,0xbf,0xbf,0xbf,0x7f,0xff}, {0xff,0x7f,0x7f,0x7f,0x7f,0x7f,0xff,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xed,0xff,0xff,0xff,0xff,0xff,0xff,0xff},//A上到下 {0xed,0xed,0xff,0xff,0xff,0xff,0xff,0xff}, {0xe1,0xed,0xed,0xff,0xff,0xff,0xff,0xff}, {0xed,0xe1,0xed,0xed,0xff,0xff,0xff,0xff}, {0xed,0xed,0xe1,0xed,0xed,0xff,0xff,0xff}, {0xed,0xed,0xed,0xe1,0xed,0xed,0xff,0xff}, {0xf3,0xed,0xed,0xed,0xe1,0xed,0xed,0xff}, {0xff,0xf3,0xed,0xed,0xed,0xe1,0xed,0xed}, {0xff,0xff,0xf3,0xed,0xed,0xed,0xe1,0xed}, {0xff,0xff,0xff,0xf3,0xed,0xed,0xed,0xe1}, {0xff,0xff,0xff,0xff,0xf3,0xed,0xed,0xed}, {0xff,0xff,0xff,0xff,0xff,0xf3,0xed,0xed}, {0xff,0xff,0xff,0xff,0xff,0xff,0xf3,0xed}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff},//B {0xed,0xe3,0xff,0xff,0xff,0xff,0xff,0xff}, {0xed,0xed,0xe3,0xff,0xff,0xff,0xff,0xff}, {0xe1,0xed,0xed,0xe3,0xff,0xff,0xff,0xff}, {0xed,0xe1,0xed,0xed,0xe3,0xff,0xff,0xff}, {0xed,0xed,0xe1,0xed,0xed,0xe3,0xff,0xff}, {0xe3,0xed,0xed,0xe1,0xed,0xed,0xe3,0xff}, {0xff,0xe3,0xed,0xed,0xe1,0xed,0xed,0xe3}, {0xff,0xff,0xe3,0xed,0xed,0xe1,0xed,0xed}, {0xff,0xff,0xff,0xe3,0xed,0xed,0xe1,0xed}, {0xff,0xff,0xff,0xff,0xe3,0xed,0xed,0xe1}, {0xff,0xff,0xff,0xff,0xff,0xe3,0xed,0xed}, {0xff,0xff,0xff,0xff,0xff,0xff,0xe3,0xed}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xf9,0xff,0xff,0xff,0xff,0xff,0xff,0xff},//C {0xf6,0xf9,0xff,0xff,0xff,0xff,0xff,0xff}, {0xf7,0xf6,0xf9,0xff,0xff,0xff,0xff,0xff}, {0xf7,0xf7,0xf6,0xf9,0xff,0xff,0xff,0xff}, {0xf7,0xf7,0xf7,0xf6,0xf9,0xff,0xff,0xff}, {0xf6,0xf7,0xf7,0xf7,0xf6,0xf9,0xff,0xff}, {0xf9,0xf6,0xf7,0xf7,0xf7,0xf6,0xf9,0xff}, {0xff,0xf9,0xf6,0xf7,0xf7,0xf7,0xf6,0xf9}, {0xff,0xff,0xf9,0xf6,0xf7,0xf7,0xf7,0xf6}, {0xff,0xff,0xff,0xf9,0xf6,0xf7,0xf7,0xf7}, {0xff,0xff,0xff,0xff,0xf9,0xf6,0xf7,0xf7}, {0xff,0xff,0xff,0xff,0xff,0xf9,0xf6,0xf7}, {0xff,0xff,0xff,0xff,0xff,0xff,0xf9,0xf6}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf9}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff},//D {0xf6,0xf1,0xff,0xff,0xff,0xff,0xff,0xff}, {0xf6,0xf6,0xf1,0xff,0xff,0xff,0xff,0xff}, {0xf6,0xf6,0xf6,0xf1,0xff,0xff,0xff,0xff}, {0xf6,0xf6,0xf6,0xf6,0xf1,0xff,0xff,0xff}, {0xf6,0xf6,0xf6,0xf6,0xf6,0xf1,0xff,0xff}, {0xf1,0xf6,0xf6,0xf6,0xf6,0xf6,0xf1,0xff}, {0xff,0xf1,0xf6,0xf6,0xf6,0xf6,0xf6,0xf1}, {0xff,0xff,0xf1,0xf6,0xf6,0xf6,0xf6,0xf6}, {0xff,0xff,0xff,0xf1,0xf6,0xf6,0xf6,0xf6}, {0xff,0xff,0xff,0xff,0xf1,0xf6,0xf6,0xf6}, {0xff,0xff,0xff,0xff,0xff,0xf1,0xf6,0xf6}, {0xff,0xff,0xff,0xff,0xff,0xff,0xf1,0xf6}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3},//A下到上 {0xff,0xff,0xff,0xff,0xff,0xff,0xf3,0xed}, {0xff,0xff,0xff,0xff,0xff,0xf3,0xed,0xed}, {0xff,0xff,0xff,0xff,0xf3,0xed,0xed,0xed}, {0xff,0xff,0xff,0xf3,0xed,0xed,0xed,0xe1}, {0xff,0xff,0xf3,0xed,0xed,0xed,0xe1,0xed}, {0xff,0xf3,0xed,0xed,0xed,0xe1,0xed,0xed}, {0xf3,0xed,0xed,0xed,0xe1,0xed,0xed,0xff}, {0xed,0xed,0xed,0xe1,0xed,0xed,0xff,0xff}, {0xed,0xed,0xe1,0xed,0xed,0xff,0xff,0xff}, {0xed,0xe1,0xed,0xed,0xff,0xff,0xff,0xff}, {0xe1,0xed,0xed,0xff,0xff,0xff,0xff,0xff}, {0xed,0xed,0xff,0xff,0xff,0xff,0xff,0xff}, {0xed,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3},//B {0xff,0xff,0xff,0xff,0xff,0xff,0xe3,0xed}, {0xff,0xff,0xff,0xff,0xff,0xe3,0xed,0xed}, {0xff,0xff,0xff,0xff,0xe3,0xed,0xed,0xe1}, {0xff,0xff,0xff,0xe3,0xed,0xed,0xe1,0xed}, {0xff,0xff,0xe3,0xed,0xed,0xe1,0xed,0xed}, {0xff,0xe3,0xed,0xed,0xe1,0xed,0xed,0xe3}, {0xe3,0xed,0xed,0xe1,0xed,0xed,0xe3,0xff}, {0xed,0xed,0xe1,0xed,0xed,0xe3,0xff,0xff}, {0xed,0xe1,0xed,0xed,0xe3,0xff,0xff,0xff}, {0xe1,0xed,0xed,0xe3,0xff,0xff,0xff,0xff}, {0xed,0xed,0xe3,0xff,0xff,0xff,0xff,0xff}, {0xed,0xe3,0xff,0xff,0xff,0xff,0xff,0xff}, {0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf9},//C {0xff,0xff,0xff,0xff,0xff,0xff,0xf9,0xf6}, {0xff,0xff,0xff,0xff,0xff,0xf9,0xf6,0xf7}, {0xff,0xff,0xff,0xff,0xf9,0xf6,0xf7,0xf7}, {0xff,0xff,0xff,0xf9,0xf6,0xf7,0xf7,0xf7}, {0xff,0xff,0xf9,0xf6,0xf7,0xf7,0xf7,0xf6}, {0xff,0xf9,0xf6,0xf7,0xf7,0xf7,0xf6,0xf9}, {0xf9,0xf6,0xf7,0xf7,0xf7,0xf6,0xf9,0xff}, {0xf6,0xf7,0xf7,0xf7,0xf6,0xf9,0xff,0xff}, {0xf7,0xf7,0xf7,0xf6,0xf9,0xff,0xff,0xff}, {0xf7,0xf7,0xf6,0xf9,0xff,0xff,0xff,0xff}, {0xf7,0xf6,0xf9,0xff,0xff,0xff,0xff,0xff}, {0xf6,0xf9,0xff,0xff,0xff,0xff,0xff,0xff}, {0xf9,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1},//D {0xff,0xff,0xff,0xff,0xff,0xff,0xf1,0xf6}, {0xff,0xff,0xff,0xff,0xff,0xf1,0xf6,0xf6}, {0xff,0xff,0xff,0xff,0xf1,0xf6,0xf6,0xf6}, {0xff,0xff,0xff,0xf1,0xf6,0xf6,0xf6,0xf6}, {0xff,0xff,0xf1,0xf6,0xf6,0xf6,0xf6,0xf6}, {0xff,0xf1,0xf6,0xf6,0xf6,0xf6,0xf6,0xf1}, {0xf1,0xf6,0xf6,0xf6,0xf6,0xf6,0xf1,0xff}, {0xf6,0xf6,0xf6,0xf6,0xf6,0xf1,0xff,0xff}, {0xf6,0xf6,0xf6,0xf6,0xf1,0xff,0xff,0xff}, {0xf6,0xf6,0xf6,0xf1,0xff,0xff,0xff,0xff}, {0xf6,0xf6,0xf1,0xff,0xff,0xff,0xff,0xff}, {0xf6,0xf1,0xff,0xff,0xff,0xff,0xff,0xff}, {0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}, {0xc3,0xbd,0x5a,0x66,0x7e,0x7e,0xbd,0xc3},//钟表图案 {0xc3,0xbd,0x5a,0x66,0x7e,0x7e,0xbd,0xc3}, }; /******************************************************************************* * 函数名 : main * 函数功能 : 主函数 * 输入 : 无 * 输出 : 无 *******************************************************************************/ void main() { unsigned char tab, j; unsigned int i; while(1) { for(i= 0; i<5000; i++ ) //两个字之间的扫描间隔时间 { for(tab=0;tab<8;tab++) { READPORTS=0xFF; //消隐 COMMONPORTS=~CHARCODE[j][tab]; //输出字码 READPORTS=TAB[tab]; } } j++; if(j == 220) { j = 0; } } } 第5章 系统PROTEUS仿真及调试 5.1调试结果 调试步骤: 1.编程要求:主程序用汇编语言程序编写 2.。实现功能:首先使双色点矩阵整屏(包括红色与绿色)点亮并持续一小段时间(大约1秒),然后全部熄灭并持续一小段时间;再使绿色整屏点亮并持续一小段时间,然后全部熄灭并持续一小段时间;再使红色整屏点亮并持续一小段时间,然后全部熄灭并持续一小段时间;接着依次显示英文字符A,B,C,D;然后使英文字符从左到右、从右到左、从上到下、从下到上动态显示;最后在屏幕上显示“钟表”图案并循环。 调试设备实物图如下所示: 图5-1 调试设备实物图 系统硬件设计的总电路图如下: 图5-2 调试设备实物图 在调试过程中,出现了字母显示不完整,,字的大小超过点阵模块的尺寸范围,显示速度过快等缺点,达不到预期的显示效果,经过多次调试和程序修改,终于达到了要求的功能。 5.2调试结果分析 出现的原因主要有: 1. 延时时间太短。 2. 数值属性没有设置好。 3. 定时器初值没有设置好。 结论 在本次(8×8位点阵LED)的设计中,由于书籍资料的产生时间不一,很多参考电路虽然没有理论问题,但仿真测试中产生的干扰较强。以上两点原因在整个课程设计过程中消耗了我们大量的时间精力,造成设计电路的多次更换。在以后的电路设计过程中,完全避免这两点应该比较困难,但此次设计过程中总结出的宝贵经验,如对参考电路的认真查正,相信一定会为今后的学习工作提供很多帮助。最终才搞出来,自己真是很高兴。 非常感谢学校给我们安排的课程设计,通过设计会增长我们的知识,特别是没有学到的,做过之后才知道其应用功能。理论知识学习和实际设计的结合锻炼了我的综合运用所学的专业基础知识解决实际工程问题的能力,同时也提高我查阅文献资料、设计手册、设计规范以及电脑制图等其他专业能力水平,而且通过对整体的掌控,对局部的取舍,以及对细节的斟酌处理,都使我的能力得到了锻炼,经验得到了丰富。 另外,我还知道了勤动手的重要性,自己动手,丰衣足食!在一次次调试代码的过程中,我才明白“代码不是写出来的,是调出来的”的道理。 对待任何事情都要有耐心和恒心,遇到问题要冷静地思考,积极找出症结所在,逐个解决。为后继的学习和工作奠定的基础。 参考文献 [9] 张毅刚.MCS-51单片机应用设计[M].哈尔滨:哈尔滨工业大学出版社,2003. [10] 彭为.单片机典型系统设计实例精讲[M].北京:电子工业出版社,2000. [11] 康华光.电子技术基础第五版[M].北京:高等教育出版社,2006. [12] 陈有卿.新颖电子灯光控制器[M].北京:机械工业出版社,2001. [13] 周航慈.单片机程序设计基础[M].北京:北京航空航天大学出版社,2004. [14] 张世生.科技情报开发与经济[J].怎样分析单片机程序.2006,(3):25-27. [15] 刘湘涛, 江世明.单片机原理与应用[M].北京:电子工业出版社,2006. [16] 胡汉才.单片机原理及系统设计[M].北京:清华大学出版社,2002.

    Top_arrow
    回到顶部
    EEWORLD下载中心所有资源均来自网友分享,如有侵权,请发送举报邮件到客服邮箱bbs_service@eeworld.com.cn 或通过站内短信息或QQ:273568022联系管理员 高员外,我们会尽快处理。