欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOC文档下载  

    8X8_LED点阵公益广告牌设计说明.doc

    • 资源ID:9344       资源大小:190KB        全文页数:14页
    • 资源格式: DOC        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    8X8_LED点阵公益广告牌设计说明.doc

    目录1引言12总体设计方案12.1设计容与设计思路与关键技术12.2 设计方框图22.3.8X8点阵LED工作原理说明22.4.最小系统电路图和下载线电路图32.5.广告牌设计的总电路图42.6.用Protel DXP软件设计的PCB图42.7.最终的效果图53广告牌设计程序的主程序64系统硬件电路124.1芯片由AT89C51的主要特性124.2管脚说明124.3振荡器特性135总结与体会146参考文献1413 / 148X8 LED点阵公益广告牌设计摘要:本设计随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中广告牌的应用就是一个典型的例子,特别在商业广告领域有重要的应用,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。关键词:单片机,控制,8X8 LED点阵,广告牌,AT89S52,动态显示1引言随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。本设计所介绍的是单片机的一些简单的应用,最小系统的复位,INT0和INT1的一些应用来控制输出,达到控制彩灯(流水灯)文字与弹奏乐曲。近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以与针对具体应用对象特点的软件结合,加以完善。本系统采用单片机AT89C52为中心器件,用8*8位LED显示元件XY1588ASR(24脚共阳管)来设计控制彩灯(流水灯)文字与弹奏乐曲,系统实用性强、操作简单、扩展性强。也可以为我们更好地了解单片机的应用加深我们对单片机的认识,对我们以后的学习都带来很大的帮助。2总体设计方案2.1设计容与设计思路与关键技术单片机采用用AT89S52芯片,控制彩灯(流水灯)文字与弹奏乐曲。8X8LED点阵公益广告牌设计将在8X8LED点阵显示屏上左右滚动显示:“生命在于运动”,然后左右滚动显示:“Life depends on exercises .”。 改变字库的容,可以显示其它汉字或一些简单的图形;改变滚动显示模式,使显示容左右、上下滚动。按此要求设计硬件和软件以实现这一功能。要控制文字左右滚动显示需要不断地利用动态扫描来显示,利用视觉停留,我们可以观察到动态的文字。以与得用频率不同,通过不断发出连续的信号输出到蜂鸣器,我们就可以听到音乐。P1口涉与下载线,而P3口的P3.2和P3.3作用于外部中断,所以就用P0和P2口来控制滚动显示文字,通过P0口接8*8位LED阳极,P2口接8*8位LED负极来不断扫描显示。2.2 设计方框图广告牌设计总体设计方框图如图1所示,控制器采用单片机AT89S52,用8*8位LED显示元件XY1588ASR(24脚共阳管)。图1 广告牌设计总体设计方框图 主控制器采用低功耗,高性能COMS 8位单片机AT89S52芯片;单片机复位则由最小系统决定,由电源复位产生;时钟振荡则由12MHz的晶振产生;LED显示则由用8*8位LED显示元件XY1588ASR(24脚共阳管)来设计。2.3.8X8点阵LED工作原理说明8X8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列(Y)置1电平,某一行(X)置0电平,则相应的二极管就亮。图2.8X8点阵LED结构图从图2中可以看出,8X8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,如图49所示,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:一根竖柱:对应的列置1,而行则采用扫描的方法来实现。一根横柱:对应的行置0,而列则采用扫描的方法来实现。2.4.最小系统电路图和下载线电路图单片机最小系统是一个电源上电复位的系统,由12MHz的晶振产生时钟振荡带六针接口下载线,由于选购的问题,本次实验是用了十针的下载线,取其中的六个接口;下载线采用244芯片由稳压管4148提供稳定电压。图3.最小系统电路图和下载线电路图2.5.广告牌设计的总电路图广告牌设计的总电路图在最小系统的基础上加上了由9014三极管驱动的蜂鸣器、外部中断的两个开关(实现外部中断控制)、P0和P2口的跳线(实现外扩展)、还有用三极管驱动的8*8位LED显示元件XY1588ASR(24脚共阳管)。图4.总电路图2.6.用Protel DXP软件设计的PCB图 经过很多次布置元器件,布线,相关的设置等工作,最终完成的用Protel DXP软件设计的PCB图。图5.设计的PCB图2.7.最终的效果图实际要制作的电路板并不是最终生成的PCB图,还要经过一些改动,和一些打印的技巧,最终要印在电路板上的电路如图6所示。图6.效果图3广告牌设计程序的主程序ORG 0000H AJMP START ORG 000BH INC 20H ;中断服务,中断计数器加1 MOV TH0,#0D8H MOV TL0,#0EFH ;12M晶振,形成10毫秒中断 RETISTART: CLR P1.0 MOV A,#00H ;清除屏幕 MOV P0,A MOV P2,#0FFH MOV R2,#0C8H ;延时100MSD100MS: MOV R3,#0FAH DJNZ R3,$ DJNZ R2,D100MS ACALL DISP ;调用显示子程序 ACALL MOVE ;调用左移子程序 AJMP START;*DISP: MOV 30H,#00H ;取码指针暂存地址30H初值为00HD4: MOV R4,#07FH ;扫描指针初值 MOV R1,#0FFH ;每幕停留的时间D5: MOV R6,#08H MOV R0,30H ;取码指针存入R0D2: ACALL READ1 ;调用取码子程序 MOV A,R4 RL A ;循环左移 MOV R4,A ;扫描下一列 DJNZ R6,D2 ;显示1幕? MOV R4,#07FH DJNZ R1,D5 ;每幕停留时间到了? RET;*READ1: MOV A,R4 ;扫描指针载入A MOV P2,A ;输出至P2扫描列 MOV A,R0 ;取码指针载入A MOV DPTR,#TAB ;数据指针指到TAB MOVC A,A+DPTR ;到TAB取上半部的数据码 MOV P0,A ;输出至P0显示 INC R0 ;取码值加1 MOV R3,#19H ;延时一列的停留时间 DJNZ R3,$ MOV A,#00H ;清除屏幕 MOV P0,A MOV R3,#02H ;延时D7: MOV R5,#32H DJNZ R5,$ DJNZ R3,D7 RET;*MOVE: MOV 30H,#00H ;取码指针暂存地址20H初值为00H MOV R4,#07FH ;扫描指针初值M1: MOV R1,#0FFH ;每幕停留的时间M2: MOV R6,#08H MOV R0,30H ;取码指针存入R0M3: ACALL READ1 ;调用取码子程序 MOV A,R4 RR A MOV R4,A ;扫描下一列 JNB P3.2,L5 JNB P3.3,STYLE1 DJNZ R6,M3 ;显示1幕? MOV R4,#07FH DJNZ R1,M2 ;每幕停留时间到了? MOV A,30H ;取码指针载入A ADD A,#01 MOV 30H,A ;再存入20H地址取码指针 SUBB A,#175 ;字是否都左移完毕了? JNZ M1 ;循环 RETSTYLE1: LJMP L2L5: LJMP MUSICTAB:DB 0H,00H,00H,0H,0H,0H,0H,0H;生DB 10H,21H,69H,29H,0FFH,29H,29H,21HDB 0H,0H;命DB 10H,2EH,4AH,0A4H,0AFH,4AH,2EH,10HDB 0H,0H;在DB 4H,28H,37H,0E9H,29H,3FH,29H,29HDB 0H,0H;于DB 20H,20H,0A0H,0A2H,0FFH,0A0H,0A0H,20HDB 0H,0H;运DB 51H,1EH,21H,0ADH,0B5H,0A5H,0A9H,25HDB 0H,0H;动DB 27H,0A9H,0B2H,21H,22H,0FCH,21H,3FHDB 0H,0H,0H,0H,0H,0H,0H,0H;Life depends on exercises.DB 0FCH,4H,4H,4H,0H,0BCH,0H,10HDB 10H,0FFH,90H,90H,0H,7CH,54H,54HDB 74H,0H,0H,7CH,44H,0F8H,4H,0HDB 7CH,54H,54H,74H,0H,7FH,44H,44HDB 7CH,0H,7CH,54H,54H,74H,0H,7CHDB 20H,40H,7CH,0H,7CH,44H,0F8H,4HDB 0H,0H,38H,44H,44H,38H,0H,7CHDB 20H,40H,7CH,0H,0H,7CH,54H,54HDB 74H,0H,44H,28H,10H,28H,44H,0HDB 7CH,54H,54H,74H,0H,7CH,20H,40HDB 0H,38H,44H,44H,44H,0H,0BCH,0HDB 74H,54H,54H,5CH,0H,7CH,54H,54HDB 74H,0H,0CH,0CH,0H,0H,0H,0HDB 0H,0H,0H,0HRET;*MUSIC: MOV P0,#0AAH MOV P2,#55H MOV SP,#50H MOV TH0,#0D8H MOV TL0,#0EFH MOV TMOD,#01H MOV IE,#82HMUSIC0: NOP MOV DPTR,#DAT ;表头地址送DPTR MOV 20H,#00H ;中断计数器清0MUSIC1: NOP CLR A ;A清零 MOVC A,A+DPTR ;查表取代码 JNB P3.3,S2 JZ END0 ;是00H,则完毕 CJNE A,#0FFH,MUSIC5 ;如果是休止符,往下执行 LJMP MUSIC3S2: LJMP L2MUSIC5: NOP MOV R6,A ;R6=18H音符的频率 INC DPTR ;DPTR加一 MOV A,#0 MOVC A,A+DPTR ;取节拍代码送R7 MOV R7,A ;R7=30H音符发音的时间 SETB TR0 ;启动计数MUSIC2: NOP CPL P1.0 ;P1.0是音乐输出引脚 MOV A,R6 MOV R3,A ;R3=R6=18H LCALL DEL MOV A,R7 CJNE A,20H,MUSIC2 ;中断计数器(20H)=R7否? ;不等,则继续循环 MOV 20H,#00H ;等于,则取下一代码 INC DPTR LJMP MUSIC1MUSIC3: NOP ;休止100毫秒 CLR TR0 MOV R2,#0DH ;R2=13MUSIC4: NOP MOV R3,#0FFH ;R3=255 LCALL DEL DJNZ R2,MUSIC4 INC DPTR LJMP MUSIC1END0: LJMP DISPDEL: NOPDEL3: MOV R4,#02HDEL4: NOP DJNZ R4,DEL4 NOP DJNZ R3,DEL3 RET NOPDAT:DB 18H, 30H, 1CH, 10H,20H, 40H, 1CH, 10HDB 18H, 10H, 20H, 10H,1CH, 10H, 18H, 40HDB 1CH, 20H, 20H, 20H,1CH, 20H, 18H, 20HDB 20H, 80H, 0FFH, 20H,30H, 1CH, 10H , 18HDB 20H, 15H, 20H , 1CH,20H, 20H, 20H , 26HDB 40H, 20H , 20H , 2BH,20H, 26H, 20H , 20HDB 20H, 30H , 80H , 0FFH,20H, 20H, 1CH , 10HDB 18H, 10H, 20H , 20H,26H, 20H , 2BH , 20HDB 30H, 20H , 2BH , 40H,20H, 20H , 1CH , 10HDB 18H, 10H, 20H, 20H,26H, 20H , 2BH, 20HDB 30H, 20H, 2BH , 40H,20H, 30H, 1CH , 10HDB 18H, 20H , 15H , 20H,1CH, 20H , 20H , 20HDB 26H, 40H, 20H , 20H,2BH, 20H, 26H , 20HDB 20H, 20H, 30H , 80H,20H, 30H, 1CH , 10HDB 20H, 10H, 1CH , 10H,20H, 20H, 26H , 20HDB 2BH, 20H, 30H , 20H,2BH, 40H, 20H , 15HDB 1FH, 05H, 20H , 10H,1CH, 10H, 20H , 20HDB 26H, 20H, 2BH , 20H,30H, 20H, 2BH , 40HDB 20H, 30H, 1CH , 10H,18H, 20H , 15H , 20HDB 1CH, 20H , 20H , 20H,26H, 40H, 20H , 20HDB 2BH, 20H, 26H , 20H,20H, 20H, 30H, 30HDB 20H, 30H, 1CH, 10H,18H, 40H, 1CH, 20HDB 20H, 20H, 26H, 40H,13H, 60H, 18H , 20HDB 15H, 40H, 13H , 40H,18H, 80H, 00HRET;*L1: LJMP MUSICL2: CLR P1.0 NOPMOV R3,#3LOP2:MOV R4,#8MOV R2,#0LOP1:MOV P0,#0FFHMOV DPTR,#TABAMOV A,R2MOVC A,A+DPTRMOV P2,AINC R2LCALL DELAYDJNZ R4,LOP1DJNZ R3,LOP2MOV R3,#3LOP4:MOV R4,#8MOV R2,#7LOP3:MOV P0,#0FFHMOV DPTR,#TABAMOV A,R2MOVC A,A+DPTRMOV P2,ADEC R2LCALL DELAYDJNZ R4,LOP3DJNZ R3,LOP4MOV R3,#3LOP6:MOV R4,#8MOV R2,#0LOP5:MOV P2,#00HMOV DPTR,#TABBMOV A,R2MOVC A,A+DPTRMOV P0,AINC R2LCALL DELAYDJNZ R4,LOP5DJNZ R3,LOP6MOV R3,#3LOP8:MOV R4,#8MOV R2,#7LOP7:MOV P0,#00HMOV DPTR,#TABBMOV A,R2MOVC A,A+DPTRMOV P0,ADEC R2LCALL DELAYDJNZ R4,LOP7DJNZ R3,LOP8LJMP L2DELAY: JNB P3.2,L1 MOV R5,#10D10:MOV R6,#20D9:MOV R7,#248DJNZ R7,$DJNZ R6,D9DJNZ R5,D10RETTABA:DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FHTABB:DB 01H,02H,04H,08H,10H,20H,40H,80HRET;*4系统硬件电路4.1芯片由AT89C52的主要特性与MCS-51 兼容 寿命:>1000写/擦循环ISP FLASH ROM32可编程I/O线3个16位定时器/计数器2个外部中断源 可编程串行通道低功耗的闲置和掉电模式片振荡器和时钟电路4.2管脚说明VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在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口的管脚被外部拉低,将输出电流。这是由于部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口) P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有部程序存储器。注意加密方式1时,/EA将部锁定为RESET;当/EA端保持高电平时,此间部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大器的输入与部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。4.3振荡器特性XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片振荡器。石晶振荡和瓷振荡均可采用。5总结与体会本系统是以单片机AT89C52芯片为核心部件,完成8X8LED点阵公益广告牌设计在8X8LED点阵显示屏上左右滚动显示与弹奏乐曲功能。此次在软件上设计PCB板和制作PCB板上花费时间最多,也是由于是自己第一次亲手做PCB板的原因吧!不过好从中学到了不少的知识。我们上网找资料,上图书馆,尽可能的了解有关于单片机的基本原理,8X8LED点阵显示技术和动态显示等这方面的知识。使我在单片机的基本原理、单片机应用系统开发过程,以与在常用编程设计思路技巧的掌握方面都能有了更进一步的提高。在本次设计的过程中,我发现很多的问题,虽然以前还做过这样的设计但这次设计真的让我长进了很多,也从中学会了很多。经过将近二周的单片机课程设计,终于完成了我的广告牌的设计,硬件方面还算满意,只是时间的关系,编写程序方面的时间少了,但还是基本上达到实验的目的。希望这次的经验可以对以后的学习带来更好的帮助。6参考文献1朝青.单片机原理与接口技术(第3版).航天航空大学,2005年10月.2科技.单片机典型外围器件与应用实例.:人民邮电,2006年2月3辛友顺.单片机应用系统设计与实现.2005年3月4戴胜华.单片机原理与应用. 2005年4月

    注意事项

    本文(8X8_LED点阵公益广告牌设计说明.doc)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开