欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    单片机音乐彩灯设计说明.doc

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

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

    单片机音乐彩灯设计说明.doc

    .艺术彩灯控制系统设计 一 概述 11 艺术彩灯的设计背景及意义 彩灯是人们日常生活中的一种装饰用品,它美观大方,尤其在节日期间,倍增节日气氛。它蕴涵着丰富的文化底蕴,被广泛地应用于各种店面的装饰。变换无穷的彩灯样式,给城市增添活力,吸引着人们的注意力,深受人民的喜爱。在日常生活中,人们还将彩灯摆放成各种图案,增添美感。随着电子技术的发展,应用系统向着小型化、快速化、大容量、重量轻的方向发展。科学技术更加贴近人们的生活,向着满足人们需求的方向发展。节日彩灯的设计与制作工艺也一步一步的走向成熟。  1.2 系统设计功能概述 本设计是以AT89C51单片机为基础的音乐彩灯控制方案,来实现对LED彩灯的控制。以AT89C51单片机作为主控核心,通过汇编语言来控制单片机按下“开始”按键,8个LED灯从上到下开始循环点亮,按下“上”按键,灯由上向下流动,按下“下”按键,灯由下向上流动,按下“停止”按键,所有灯为暗。 二彩灯设计容简要: 2.1彩灯设计任务: 以单片机为核心,设计一个节日音乐彩灯控制器。 2.2彩灯设计要求: P1.2-开始,按此键则灯开始流动(由上而下)。 P1.3-停止,按此键则停止流动,所有灯为暗。 P1.4-上,按此键则灯由上向下流动。 P1.5-下,按此键则灯由下向上流动。2.3彩灯总体控制框图: 3.2 AT89C51单片机硬件结构: AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的单片机芯片,它采用静态CMOS 工艺制造8位微处理器,最高工作频率位24MHZ。AT89C5外形及引脚排列如图所示:管脚说明:  RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。  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)这是由于上拉的缘故。    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端保持高电平时,此间部程序存储器。   XTAL1和XTAL2:反向振荡放大器的输入及部时钟工作电路的输入。 33系统的硬件构成及功能描述: 控制系统硬件设计电路图如图所示: 四系统的软件设计   ORG 0000H AJMP MAINORG 000BH AJMP INT ORG 0020H MAIN: JNB P1.2,START ;判断按键P1.2(开始键)为0时转MAIN程序 JMP MAIN ;否则返回 START: MOV 50H,#HIGH TABLE10 ;开始(默认情况下上到下) MOV 51H,#LOW TABLE10 ACALL BOFANG ;音乐播放初始设置 LJMP DOWNLIGHTSTOP: MOV P0,#0FFH ;停止 SETB P3.5 JNB P1.2,START AJMP STOP DOWN: MOV 50H,#HIGH TABLE10 ;上到下 MOV 51H,#LOW TABLE10 ACALL BOFANG ;音乐播放初始设置 DOWNLIGHT: MOV DPTR,#TABLE1 ;将TABLE1首地址赋数据指针 AJMP GETDATA UP: MOV 50H,#HIGH TABLE10 ;下到上 MOV 51H,#LOW TABLE10 ACALL BOFANG ;音乐播放初始设置 UPLIGHT: MOV DPTR,#TABLE2 ;将TABLE2首地址赋数据指针 GETDATA: MOV R0,#08H MOV R6,DPH ;暂存指针值 MOV R7,DPL LOOP: CLR A ;A清零 MOV DPH,R6 MOV DPL,R7 MOVC A,A+DPTR ;表数据送A MOV P0,A ;将A值送P0端口 INC DPTR ;数据指针加1,指向表中的下一数据 MOV R6,DPH MOV R7,DPL JNB P1.2,START ;P1.2口低电平则转START程序执行 JNB P1.3,STOP ;P1.3口低电平则转STOP程序执行 JNB P1.4,DOWN ;P1.4口低电平则转DOWN执行 JNB P1.5,UP ;P1.5口低电平则转UP左循环程序执行 LJMP MUSIC ;跳转音乐程序 BACK: DJNZ R0,LOOPCLR A ;判断是上还是下 MOV DPH,R6 MOV DPL,R7 MOVC A,A+DPTR JNZ DOWNLIGHT LJMP UPLIGHT BOFANG: MOV TMOD,#11H ;音乐播放初始设置 MOV IE,#82H MOV 40H,#00H RET MUSIC: MOV A,40H ;音乐播放处理 MOV DPH,50H ;取表地址 MOV DPL,51HMOVC A,A+DPTR ;将表数据送累加器A JZ STOP2 ;累加器A为0则转移(说明歌曲播放完 得重新播放) MOV R1,A ANL A,#0FH RL A MOV R2,A MOV A,R1 SWAP A ANL A,#0FH JNZ SING CLR TR0 LJMP W1 SING: DEC A MOV 22H,A RL A MOV DPTR,#TABLE00 MOVC A,A+DPTR MOV TH0,A MOV 21H,A MOV A,22H RL A INC A MOVC A,A+DPTR MOV TL0,A MOV 20H,A SETB TR0 W1: LCALL DELAY INC 40H JNZ STOP1 ;A不为0则转移 LJMP BACK STOP1: CLR TR0 ;音符结束重新播放处理 LJMP BACK STOP2: CLR TR0 ;整首歌曲播放结束处理 MOV R2,#03H LCALL DELAY LCALL BOFANG LJMP BACK TABLE00: DW 64580,64684,64777,64820 DW 64898,64968,65030,64260 DW64400,64524,65058,63835,64021INT: PUSH PSW PUSH ACC MOV TH0,21H MOV TL0,20H CPL P3.5 POP ACC POP PSW RETI DELAY: MOV R4,#100 ;延时100ms LOOP3: MOV R5,#0FFHLOOP4: DJNZ R5,$ DJNZ R4,LOOP3 DJNZ R2,DELAY RET TABLE1: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH,01H TABLE2:DB 7FH,0BFH,0DFH,0EFH,0F7H,0FBH,0FDH,0FEH,00H TABLE10: DB 0d4H,84H,94H,82H,92H DB12H,22H,82H,92H,02H,92H,82H,0d2H DB 82H,92H,14H,84H,02H,0d1H,0d1H DB 0c2H,0d2H,84H,0d2H,0d2H,82H,82H DB 84H,82H,82H,94H,82H,0d2H DB 82H,82H,82H,92H,02H,82H,82H,0d2H DB 0c4H,84H,0d4H,92H,0d2H DB 82H,0d2H,82H,92H,98H DB 04H,94H,88H DB 04H,94H,88H DB04H,94H,88H DB 04H,94H,88H,04H DB 32H,32H,22H,12H,02H,92H,12H,92H DB 32H,32H,22H,12H,02H,92H,12H,92H DB 32H,32H,22H,12H,02H,92H,12H,22H DB 54H,44H,34H,12H,22H DB 34H,22H,12H,02H,92H,12H,92H DB 32H,32H,22H,12H,02H,92H,12H,92H DB 32H,32H,22H,12H,02H,92H,12H,22H DB 54H,44H,32H,22H,12H,92H DB 00H END4.1程序流程图:  四系统的软件设计   4.1程序流程图:  程序如下:ORG 0000H       AJMP MAIN   ORG 000BH   AJMP INT   ORG 0020H  MAIN:JNB P1.2,START  判断按键P1.2(开始键)为0时转MAIN程序     JMP MAIN   否则返回  START:MOV 50H,#HIGH TABLE10 开始(默认情况下上到下)     MOV 51H,#LOW TABLE10     ACALL BOFANG   音乐播放初始设置     LJMP DOWNLIGHT                                            STOP:MOV P0,#0FFH 停止    SETB P3.5    JNB P1.2,START    AJMP STOP DOWN:MOV  50H,#HIGH TABLE10  上到下      MOV  51H,#LOW TABLE10      ACALL  BOFANG   音乐播放初始设置 DOWNLIGHT:MOV  DPTR,#TABLE1  将TABLE1首地址赋数据指针              AJMP  GETDATA                 UP:MOV  50H,#HIGH TABLE10  下到上     MOV 51H,#LOW TABLE10     ACALL BOFANG    音乐播放初始设置 UPLIGHT:MOV  DPTR,#TABLE2  将TABLE2首地址赋数据指针 GETDATA:MOV R0,#08H   MOV R6,DPH   暂存指针值   MOV R7,DPL    LOOP:CLR A   A清零   MOV DPH,R6   MOV DPL,R7   MOVC A,A+DPTR  表数据送A   MOV P0,A   将A值送P0端口   INC DPTR   数据指针加1,指向表中的下一数据   MOV R6,DPH   MOV R7,DPL   JNB P1.2,START  P1.2口低电平则转START程序执行   JNB P1.3,STOP  P1.3口低电平则转STOP程序执行   JNB P1.4,DOWN  P1.4口低电平则转DOWN执行   JNB P1.5,UP      P1.5口低电平则转UP左循环程序执行    LJMP MUSIC   跳转音乐程序 BACK: DJNZ R0,LOOP   CLR A   判断是上还是下   MOV DPH,R6                        MOV DPL,R7   MOVC A,A+DPTR      JNZ DOWNLIGHT   LJMP UPLIGHT BOFANG:     MOV TMOD,#11H  音乐播放初始设置   MOV IE,#82H    MOV 40H,#00H   RET MUSIC: MOV A,40H   音乐播放处理   MOV DPH,50H   取表地址   MOV DPL,51H   MOVC A,A+DPTR  将表数据送累加器A   JZ STOP2   累加器A为0则转移(说明歌曲播放完 得重新播放)   MOV R1,A   ANL A,#0FH   RL A   MOV R2,A   MOV A,R1   SWAP A   ANL A,#0FH   JNZ SING   CLR TR0   LJMP  W1 SING: DEC A   MOV  22H,A   RL  A   MOV  DPTR,#TABLE00   MOVC  A,A+DPTR   MOV  TH0,A   MOV  21H,A   MOV  A,22H   RL  A   INC  A   MOVC  A,A+DPTR   MOV  TL0,A   MOV  20H,A   SETB  TR0  W1:     LCALL  DELAY   INC  40H   JNZ  STOP1  A不为0则转移   LJMP BACK   STOP1:  CLR  TR0  音符结束重新播放处理    LJMP BACK STOP2: CLR TR0  整首歌曲播放结束处理   MOV R2,#03H   LCALL DELAY   LCALL BOFANG      LJMP BACK TABLE00:   DW 64580,64684,64777,64820   DW 64898,64968,65030,64260   DW 64400,64524,65058,63835,64021 INT: PUSH PSW   PUSH ACC   MOV TH0,21H   MOV TL0,20H   CPL P3.5   POP ACC   POP PSW   RETI DELAY: MOV R4,#100  延时100ms LOOP3:  MOV R5,#0FFH LOOP4:    DJNZ R5,$   DJNZ R4,LOOP3   DJNZ R2,DELAY   RET TABLE1:  DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,7FH,01H TABLE2:  DB 7FH,0BFH,0DFH,0EFH,0F7H,0FBH,0FDH,0FEH,00H - TABLE10:      DB 0d4H,84H,94H,82H,92H  DB 12H,22H,82H,92H,02H,92H,82H,0d2H  DB 82H,92H,14H,84H,02H,0d1H,0d1H  DB 0c2H,0d2H,84H,0d2H,0d2H,82H,82H  DB 84H,82H,82H,94H,82H,0d2H  DB 82H,82H,82H,92H,02H,82H,82H,0d2H  DB 0c4H,84H,0d4H,92H,0d2H  DB 82H,0d2H,82H,92H,98H  DB 04H,94H,88H  DB 04H,94H,88H  DB 04H,94H,88H  DB 04H,94H,88H,04H  DB 32H,32H,22H,12H,02H,92H,12H,92H  DB 32H,32H,22H,12H,02H,92H,12H,92H  DB 32H,32H,22H,12H,02H,92H,12H,22H  DB 54H,44H,34H,12H,22H  DB 34H,22H,12H,02H,92H,12H,92H  DB 32H,32H,22H,12H,02H,92H,12H,92H  DB 32H,32H,22H,12H,02H,92H,12H,22H  DB 54H,44H,32H,22H,12H,92H  DB 00H    END五设计体会: 历时2个星期的单片机课程设计,我从中受益匪浅。因为对我而言学到的不仅是专业知识,而且是团队的合作精神。 作为一个团队,分工就显得尤为重要,我主要负责系统硬件电路设计和最终调试的任务,我和搭档互相帮助,彼此勉励,有问题一起寻求解决之道。虽然一开始我们就对方案的选择发生分歧,但这丝毫不影响我们的交流、探讨。因为大家初衷是一样的。开始设计的功能不能全部实现出来,于是拿着程序反复分析和修改,在老师和同学的帮助指导下最终找出错误所在。 通过过自己的努力制作和调试,我的音乐彩灯控制器终于完成。电路板调试成功,满足了设计要求中的基本要求及大部分提高要求.从这次课程设计中,学到了很多的专业知识,以及一些宝贵的心得。从找寻参考书这方面来说,别人的答案只能参考,不能照搬。要有独立的见解,善于发现错误,勤于讨论和提问,这样才能改正错误。 起初,拿到设计要求的时候,大脑是很空白的,因为这就是专业知识的缺乏成为了整个过程最大的阻力,“书到用时方知少”,此时才知自己专业知识的贫乏。通过不懈的找寻,查资料,以及向老师提问,对于电路的构造和基本设计有了大概的蓝图,经过慢慢的探索和仔细的调试,电路功能得以实现,这让自己很有满足感!   这次课程设计使我明白理论与实际相结合的重要,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从而提高自己的实际动手能力和独立思考的能力。同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。在接下来的复习中我会再接再厉,加深对单片机相关知识的理解。 六参考文献: 单片机应用技术晔 王玉民 ·:高等教育 出版日期:2006.6 跟我学用单片机. 肖洪兵 航空航天大学 出版日期:2002.8  单片机实践应用与技术马长林、怡 大学 出版日期:2008 单片机高级教程第1版 何立民 航空航天大学 出版日期:2001 单片机课程设计指导 程成    清华大学   出版日期:2009 单片机原理及接口技术  朝清 航空航天大学出 版日期:199914 / 14

    注意事项

    本文(单片机音乐彩灯设计说明.doc)为本站会员(可****阿)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

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




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开