欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    单片机课程设计-简易音乐播放器.doc

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

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

    单片机课程设计-简易音乐播放器.doc

    1、 论文题目:简易音乐播放器 所属系部:电子工程系 指导教师: 学生姓名: 学号: 专业: 电子信息工程技术 题目: 简易音乐播放器任务与要求:本设计以MCS-51系列单片机为核心,采用常用电子器件 设计。要求最少8个按键,每个按键对应一种音调,按下按键发声,松开按键后声音延迟一段时间后停止,延时时间可以设置,要求最少8个不同音调,至少可以自动播放3种音乐,并且带有显示功能。时间: 2010 年12 月19日 至 2010年 12 月 31 日 共 2周所属系部: 电子工程系 学生姓名: 学 号: 专业: 电子信息工程技术指导教师: 潘晶莹摘要电子音乐播放器是现代电子科技与音乐结合的产物,是一种

    2、新型的播放乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用AT89S51单片机为核心控制元件,设计一个音乐播放器。以单片机作为主控核心,与键盘、扬声器、显示器等模块组成核心主控制模块,在主控模块上设有8个按键和扬声器。本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠等,具有一定的实用和参考价值。关键字: AT89C51,扬声器,lcd显示器 简易音乐播放器 简易音乐播放器 目 录1前言111系统的功能介绍12简易音乐播放器原理22.1简易音乐播放器原理23 简易音乐播放器设计方

    3、案33.1单片机时钟电路设计33.2单片机复位电路设计43.3键盘电路设计43.4 LCD显示部分电路54系统软件设计64.1定时器中断服务控制64.2主程序的实现74.3单片机汇编源程序清单8结束语17参考文献181前言我们生活在一个信息时代,各种电子产品层出不穷,作为一个电子信息专业的学生,了解这些电子产品的基本用途和设计原理是十分必要的,我们学习的是电子信息方面的理论知识,而课程设计正是对我们学习的理论的实践与巩固。本设计主要介绍的是一个用单片机描述的一个具有若干功能的简易电子音乐播放器。本次设计的目的就是在掌握音乐播放器组成原理理论的基础上,了解EDA技术,掌握汇编描述语言的设计方法和

    4、思想,通过学习的汇编语言结合电子电路的设计知识理论联系实际,掌握所学的课程知识,例如本课程设计就是基于所学的计算机原理中的时钟分频器和定时器的基础之上的,通过本课程设计,达到巩固和综合运用单片机原理中的知识,理论联系实际,巩固所学理论知识,并且提高自己通过所学理论分析、解决实际问题的能力。11系统的功能介绍1可以演奏出基本的8种音调:Do、Re、Mi、Fa、SO、La、Si、高音Do; 2演奏的同时会以LED显示出当前的按键,利于培养乐感;3可以演奏内置的3种歌曲。 4自动演奏时,LCD显示播放的曲目序号和演奏的歌曲歌词。使用方法:通过按下方的3个键演奏。播放器可实现循环播放、上一曲、下一曲等

    5、功能,也可以产生包括Do、Re、Me- 等音阶在内的各种频率声音。将各个音阶连接在一起,便可组成一支曲子或是演奏一段旋律,操作方便,无须再为找不到适全的音乐芯片而烦恼。我们知道,声音的频率范围约在几十到几千赫兹,若能利用程序来控制单片机某个口线的高电平或低电平,则在该口线上就能产生一定频率矩形波,接上扬声器就能发出一定频率的声音,若能利用延时程序控制 “高”“低”电平的持续时间,就能改变输出频率,从而改变音调。要产生音频脉冲,只要算出某一音频的周期,然后将此周期除以 2,即半周期的时间,为单片机的定时时间,然后反复进行半周期定时,每当定时到就将输出脉冲的 I/O 口取反,如此就可以在 I/O

    6、端口上得到此频率的脉冲2简易音乐播放器原理 一定频率产生声音,频率高低决定音调。利用单片机输出脉冲信号经放大后送给喇叭,便可发出声音。本制作中巧妙地利用了单片机的定时器,让定时器中断一次就对改变喇叭的状态一次,即形成矩形方波,这也是数字电路产生声音的方法。本作品使用AT89S51型单片机。 由于一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。2.1简易音乐播放器原理高中

    7、低音符与单片机计数T0相关的计数值如下表所示音符 频率(HZ)简谱码(T值) 音符 频率(HZ)简谱码(T值)表2-1低1DO 262 63628# 4 FA# 740 64860 #1DO# 277 63731中5 SO 784 64898 低2RE 294 63835# 5 SO# 831 64934 #2RE# 311 63928中6 LA 880 64968 低3M 330 64021# 6 932 64994 低4FA 349 64103中7 SI 988 65030 # 4FA# 370 64185高1 DO 1046 65058 低5SO 392 64260# 1 DO# 110

    8、9 65085 # 5SO# 415 64331高2 RE 1175 65110 低6LA 440 64400# 2 RE# 1245 65134 # 6466 64463高 3 M 1318 65157 低7SI 494 64524高4 FA 1397 65178 中1DO 523 64580# 4 FA# 1480 65198 # 1DO# 554 64633高5 SO 1568 65217 中2RE 587 64684# 5 SO# 1661 65235 # 2R# 622 64732高6 LA 1760 65252 中3M 659 64777# 6 1865 65268 中4FA 69

    9、8 64820高7 SI 1967 65283 3 简易音乐播放器设计方案声音的频谱范围约在几十hz到几千hz,利用程序来控制单片机某个口线不段的输出“高”、“低”电平,则在该口线上就能产生一定的频率的方波,将该方波接上喇叭,就能发出一定的声音,若在利用程序来控制“高”、“低”电平的持续时间,就能改变输出波形的频率,从而改变音调。乐曲中,每一个音符对应着确定的频率,表1给出了C调时各音符频率。如果单片机某个口线输出“高”、“低”电平的频率和某个音符的频率一样,那么将口线接上喇叭就可以发出次音符,如下表所示表3-1表3-1 C调时各音符频率音名1234567频率(hz)523.3587.3659

    10、.3698.3784880967.83.1单片机时钟电路设计当MCS-5l系列单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行复位操作。如果RST持续为高电平,单片机就处于循环复位状态。时钟电路如图3-1所示。图3-1 时钟电路图3.2单片机复位电路设计本设计采用上电或开关复位要求电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能使单片机复位。上电后,由于电容C2的充电和反相门的作用,使RST持续一段时间的高电平。当单片机已在运行当中时,按下复位键K后松开,也能使RST为一段时间的高电平,从而实现上电或开关复位的操作。C:22uF,Rl0k。复

    11、位电路如图3-2所示。图3-2 复位电路图3.3键盘电路设计键盘扫描的方法是:先扫描第0行,行输出值为1110B,第0行为”0”,其余3行为“1”(通常把输出为0的行称为当前行),然后读入列信号,判断是否为全“1”。若列输入值为全“1”,则当前行无键按下,行输出1101(第1行为“0”其余3行为“1”),再扫描下一行依次规律逐行扫描,直到扫描某行时,其列输入不为全“1”,则根据行输出和列输入值中0的位置确定闭合键的具体位置,从而用计算法或查表法到闭合键的键值。如下图3-3所示。图3-3 键盘电路3.4 LCD显示部分电路LCD显示电路用来显示播放歌曲歌词和歌曲序号。如图3-4所示。图3-4 L

    12、CD显示电路引脚功能说明1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如 表3-4-1所示:编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极 4系统软件设计4.1定时器中断服务控制本设计通过定时器中断产生是单片机在一定的时间产生方波,整个设计的关键也正是通过该定时器中断服务产生输出不同频率的方波从而来实现个种音符。这种方法占用CPU时间很少,在显示的同时

    13、还可以处理其他事务,效率较高,是通常采用的方法。定时器其作用主要包括产生各种时标间隔、记录外部事件的数量等,是微机中最常用、最基本的部件之一。AT89C5l单片机有2个16位的定时器:定时器0(T0)和定时器1(T1)。其原理图如图4-1所示。 图4-1定时器原理图T0由2个定时寄存器TH0和TL0构成,T1则由TH1和TL1构成,它们都分别映射在特殊功能寄存器中,从而可以通过对特殊功能寄存器中这些寄存器的读写来实现对这两个定时器的操作。作定时器时,每一个机器周期定时寄存器自动加l,所以定时器也可看作是计量机器周期的计数器。由于每个机器周期为12个时钟振荡周期,所以定时的分辨率是时钟振荡频率的

    14、112。4.2主程序的实现 在主程序中首先调用键盘扫描子程序,进行有无键按下的判断,如无键按下则执行熄灭指示灯、跳回开始位置的命令;如有键按下则扫描出按下的键的位置再将其值赋给T IM ER1L和T IM ER1H,通过其执行点亮指示灯。反复执行该命令得到不同的值,输出不同的音符。其流程图如图4-2所示。START有按?将T1送初值开启T1,点亮关闭T1,熄灭无有图4-2主程序的流程图4.3单片机汇编源程序清单RS BIT P2.0 ;定义液晶显示端口标号 RW BIT P2.1 E BIT P2.2;* T0TH EQU 24H ;T0两个暂存变量 T0TL EQU 23H ORG 0000

    15、H LJMP INITION ORG 000BH LJMP T0INT ORG 0100H ;*;*液晶初始化*INITION: MOV SP,#70H MOV P0,#01H ;清屏CALL ENABLEMOV P0,#38H ;8位,2行显示CALL ENABLEMOV P0,#0CH ;屏显on,关光标 CALL ENABLEMOV P0,#06H ;计数地址加1,自动右移CALL ENABLE;*;开机提示;*MOV P0,#80HCALL ENABLEMOV DPTR,#TABLE0 ;写数据的第一行CALL WRITE1 MOV P0,#B ;光标左移两位CALL ENABLEMO

    16、V P0,#BCALL ENABLE CALL DEL0LJMP MAIN ;*写指令ENABLE: CLR RSCLR RWSETB ECALL DEL0CLR ERET;*写数据WRITE1: MOV R1,#00H ;查表程序,从表头到表尾A1:MOV A,R1MOVC A,A+DPTRCALL WRITE2INC R1CJNE A,#00H,A1 ;未到字符串末尾继续RETWRITE2: MOV P0,A ;直接将数据写入液晶屏SETB RSCLR RWSETB ECALL DEL0CLR ERETDEL0: MOV R4,#020HC0:MOV R5,#020HC1: DJNZ R5

    17、,C1DJNZ R4,C0 RET ;*TABLE0: DB da jia hao,00H;*内存初始化*INITIAL: MOV R3,#08HMOV R0,#30HM1: MOV R0,#00HINC R0DJNZ R3,M1 RET ;*选择按键播放八个音调*MAIN: MOV SP,#80H ;初始化堆栈MOV TMOD,#11H ;定时器0工作方式0,定时器1工作方式0SETB EASETB ET0 ;计数器0允许SETB ET1 ;计数器1允许START: SETB P3.7 ;关蜂鸣器CLR TR0 ;定时器不允许 SCAN: MOV A,P1 ;键盘扫描 CJNE A,#0FF

    18、H,SU_KEY ;判断键盘按下,跳到SU_KEY,若未按,继续扫描 NOPLJMP SCANSU_KEY:SU_KEY1: JB P1.0,SU_KEY2 ;如果不是第1个键按下,转MOV DPH,#0FCHMOV DPL,#44HSJMP PLAY SU_KEY2:JB P1.1,SU_KEY3 ;如果不是第2个键按下,转MOV DPH,#0FCHMOV DPL,#0ACHSJMP PLAY SU_KEY3:JB P1.2,SU_KEY4 ;如果不是第3个键按下,转MOV DPH,#0FDHMOV DPL,#09HSJMP PLAYSU_KEY4:JB P1.3,SU_KEY5 ;如果不是

    19、第4个键按下,转MOV DPH,#0FDH MOV DPL,#34H SJMP PLAYSU_KEY5:jB P1.4,SU_KEY6 ;如果不是第5个键按下,转 MOV DPH,#0FDH MOV DPL,#82H SJMP PLAYSU_KEY6: JB P1.5,SU_KEY7 ;如果不是第6个键按下,转 MOV DPH,#0FDH MOV DPL,#0C8H SJMP PLAYSU_KEY7: JB P1.6,SU_KEY8 ;如果不是第7个键按下,转 MOV DPH,#0FEH MOV DPL,#06H sJMP PLAYSU_KEY8:JB P1.7,KEY1 ;如果不是第8个键按

    20、下,转 MOV DPH,#0FEH MOV DPL,#22H SJMP PLAY PLAY: MOV T0TH,DPH ;存高位字符 MOV T0TL,DPL ;存低位字符 MOV TH0,T0TH MOV TL0,T0TL ETB TR0 ;启动定时器0 MOV R2,#01B ;1/4拍 DJNZ R2,PLAY LCALL DELAY SJMP JUDGEJUDGE: JB P2.4,START ;按键未按下,则继续扫描,否则,开始放音乐;*选择按键播放音乐*KEY1:JB P2.5,KEY2 ;第一个键(P2.5)按下,放音音乐1 MOV R2,#00H LCALL MODD ;歌曲号

    21、显示 MOV DPTR,#MU_TAB1 AJMP MUSICKEY2: JB P2.6,KEY3 ;第二个键(P2.6)按下,放音乐2 MOV R2,#01H LCALL MODD ;歌曲号显示 MOV DPTR,#MU_TAB2 AJMP MUSICKEY3: JB P2.7,NEXT_2 ;第三个键(P2.7)按下,放音乐3 MOV R2,#02H LCALL MODD ;歌曲号显示 MOV DPTR,#MU_TAB3 AJMP MUSIC NEXT_2: LJMP START ;返回MUSIC: MOV TMOD,#01H MOV IE,#82H ;允许T0中断 MOV R7,#00H

    22、LOOP: CLR A MOVC A,A+DPTR ;查表取代码 MOV R1,A ;定时器高八位存R1 INC DPTR PUSH DPH ;保护现场 PUSH DPLGECI1: JB P2.5,GECI2 ;第一个键(P2.5)按下,显示歌词1 MOV DPTR,#GE1 AJMP GECIGECI2: JB P2.6,GECI3 ;第二个键(P2.6)按下,显示歌词2 MOV DPTR,#GE2 AJMP GECIGECI3: JB P2.7,TIAOCHU ;第三个键(P2.7)按下,显示歌词3 MOV DPTR,#GE3 AJMP GECI TIAOCHU :LJMP STARTG

    23、ECI: LCALL QINGCHU MOV P0,#0C0H ;显示的位置 CALL ENABLEXIANSHI1: MOV A,R7 ;查表取音乐汉语拼音显示 MOVC A,A+DPTR CALL WRITE2 INC R7 CJNE A,#00H,XIANSHI1 MOV P0,#B ;将光标左移一位 CALL ENABLE MOV P0,#B ;将光标左移一位 CALL ENABLE POP DPL POP DPH CLR A MOVC A,A+DPTR MOV R0,A ;定时器低八位存R0 ORL A,R1 JZ NEXT0 ;相或结果全0为休止符 MOV A,R0 ANL A,R


    注意事项

    本文(单片机课程设计-简易音乐播放器.doc)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开