ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:283.14KB ,
资源ID:23245674      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23245674.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(课程设计电子音乐播放器完整版.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

课程设计电子音乐播放器完整版.docx

1、课程设计电子音乐播放器完整版课程设计电子音乐播放器-完整版1课程设计题目 12课程设计任务及要求13总体方案与设计说明14硬件电路设计及描述35软件设计流程及描述76源程序代码 97系统调试108结论与说明119课程设计体会1110参考文献11一课程设计题目电子音乐播放器二课程设计任务及要求设计要求:利用8253作为音阶频率发生器,应先对一段音乐进行编码后存入音符表,并建立好音阶表(只建立一个8度即可,音阶表见附录),音符长度不能少于60个,连续播放3遍后停止。三总体方案与设计说明3.1音阶频率表音阶频率(HZ) 12472277331143305370641574661494 表3.1音阶和

2、频率对应关系设计程序时,数据段设置两张“表”。一张是频率表,将与音符对应的频率值依次写入表中,另一张是时间表,依次存放每个音符的单位时间。当然,频率表和时间表的表项要一一对应,不能错位,频率表最后一个表项为0,作为重复演唱或停止演唱的标志。在接通扬声器的情况下,依次取出频率表中的频率值,转换成计数初值写入计数器,依次取出时间表中的单位时间和调试参数N相乘,然后再调用延时子程序即可得到延时时间,也就是音符演奏时间。3.2主机扬声器电路图 主机扬声器电路图3.2 从图中可以看出,PC机发声系统以8253为核心。系统初始化时,8253工作在“方波发生器”方式,初值为二进制数,写入顺序为先低后高,经过

3、简单滤波以后,送至扬声器。改变计时器的初值就可以使扬声器发出不同频率的音响。3.3设计总框图设计总框图3.33.4 电路连接 时钟信号 开关(置高电平) 音响 A0 A1电路连接图3.4四硬件电路设计及描述(含所需器件、硬件原理图)4.1 芯片介绍8253可编程定时/计数器是Intel公司生产的通用外围芯片之一,有3个独立的十六位计数器,技术频率范围为02MHZ,它所有的技术方式和操作方式都通过编程控制。8253的功能用途是:(1)延时中断(2)可编程频率发生器(3)事件计数器(4)二进倍频器(5)实时时钟(6)数字单稳(7)复杂的电机控制器8253有六种工作方式:(1)方式0:计数结束中断(

4、2)方式1:可编程频率发生器(3)方式2:频率发生器(4)方式3:方波频率发生器(5)方式4:软件触发的选通信号(6) 方式5:硬件触发的选通信号 图4.18253引脚图如图4.1所示,各引脚功能如下。D7D0八条双向数据线;WR(低电平有效)写输入信号;RD(低电平有效)读输入信号;CS(低电平有效)片选输入信号;A0、A1片内寄存器地址输入信号;CLK计数输入,用于输入定时基准脉冲或计数脉冲;OUT输出信号,以相应的电平指示计数的完成,或输出脉冲波形;GATE选通输入(门控输入),用于启动或禁止计数器的操作,以使计数器和计测对象同步。4.2 工作方式(1) 方式0:计数结束产生中断方式 当

5、写入控制字后,OUT变为低电平,当写入初值后立即开始计数,当计数结束时,变成高电平。 (2) 方式1:可编程单次脉冲方式 当初值装入后且GATE由低变高时,OUT变为低电平,计数结束变为高电平。 (3) 方式2:频率发生器方式 当初值装入时,OUT变为高;计数结束,OUT变为低。该方式下如果计数未结束,但GATE为低时,立即停止计数,强制OUT变高,当GATE再变高时,便启动一次新的计数周期。 (4) 方式3:方波发生器当装入初值后,在GATE上升沿启动计数,OUT 输出高电平; 当计数完成一半时,OUT输出低电平。方式3与方式2的工作方式类似,也是在初始化完成后能重复循环计数,只是输出的波形

6、不同。 计数过程当把方式3的控制字写入控制字寄存器后,输出端OUT变成高电平,作为初始电平。再将计数初值写入计数初值寄存器CR中,再经过一个时钟周期,计数初值被移入计数执行单元CE中,从下一个时钟脉冲开始作减1 计数,方式3的计数过程分为两种情况:第一种情况:计数初值为偶数,当作减1计数减到N/2时,输出端OUT端变成低电平,减到0时,输出端OUT变成高电平,并重新从初值开始新的计数过程。若GATE为高电平,则一直重复同样的计数过程。可见,输出端OUT输出连续的方波,故称方波发生器。第二种情况:计数初值为奇数,当作减1计数减到(N+1)/2以后,输出端OUT变成低电平,减到0时,输出端OUT又

7、变成高电平。并重新从初值开始新的计数过程。这时输出端的波形为连续的近似方波。 门控信号的影响工作在方式3时,门控信号GATE的功能与工作方式2一样,即GATE 为高电平时,允许计数;GATE为低电平时停止计数。GATE引脚上的信号从低电平跳到高电平时,将会重新把计数初值寄存器CR中的内容移入计数执行单元CE中,并以新装入的值重新开始计数。 新的计数初值对计数过程的影响如果在计数过程中写入新的初值,而GATE信号一直维持高电平,则新的初值不会影响当前的计数过程,只有在计数结束后的下一个计数周期,才按新的初值计数。若写入新的初值后,遇到门控信号的上升沿,则结束现行的计数过程,从下一个时钟脉冲下降沿

8、开始按新的计数初值进行计数。可见,工作在方式3时,当计数初值为偶数,OUT端输出连续的标准方波;当计数初值为奇数,在每个计数周期内,有(N+1)/2个周期输出高电平,(N-1)/2个时钟周期输出低电平,OUT端输出连续的近似的方波。4.3 控制字控制字图4.34.4所需器件1.定时/计数器8253A2.扬声器和喇叭驱动模块3.频率发生芯片74LS393五软件设计流程(模块流程图)及描述通过给8253定时器装入不同的计数值,可以使其输出不同频率的波形。当与门打开后,经过放大器放大的作用,便可驱动扬声器发出不同频率的音调,要使该音调的声音持续一段时间,只要插入一段延时程序,之后再将扬声器(关闭与门

9、)即可。music子程序是音乐子程序,SI指向曲中的频率,BP指向曲中的时间节拍。从SI的指向的音节表中取一个频率,只要不是0,即有效就再读取时间,然后调用speaker子程序,计算计数初值送入计数器,产生各种频率信号,再送至扬声器,根据所取的时间调用若干次延时子程序。这段时间扬声器就发出该频率的声音,延时结束,再修改SI和BP,指向下一个频率,重复上面的工作。播放三次音乐后自动停止。程序流程图5.1六源程序代码(要有注释)CODE SEGMENTASSUME CS:CODE ORG 1000H ;首地址START: JMP music ;跳转进musicmusic: lea si,freq

10、;取freq的偏移地址 lea bp,time ;取time的偏移地址Lop: mov di,si ;把si的内容放到di cmp di,0 ;0用于判断是否结束歌曲 je fin ;music结束后转到fin关闭扬声器 mov bx,bp ;把bp的内容放到bx call speaker add SI,2 ;取下一频率值 add BP,2 ;取下一时间节拍值 jmp Lop ;跳回lop循环fin: mov al,ah ;写回扬声器端口61H out 61h,al;_-音乐子程序-_speaker proc push ax ;保存堆栈 push bx push cx push dx push

11、 di;_初始化部分_ mov al,10110110B ;对计数器写控制字,选计数器2,先写低8位,后写高8位。 out 43h,al ;方式3(方波发生器)、双字节写和二进制计数方式写到控制口 mov dx,00h ;设置被除数 mov ax,5000 div di ; (DI)=频率,商AL,余数AH out 42h,al ;先送LSB 最低有效位,42H为8253的通道2端口 mov al,ah out 42h,al ;后送MSB 最高有效位wait1: mov cx,3 ;设循环次数3delay1: loop delay1 dec bx ;循环持续bx次,即传进来的节拍时间 jnz

12、wait1; pop di ;恢复堆栈 pop dx pop cx pop bx pop ax retspeaker endp;_歌曲乐谱_;歌曲1:两只老虎freq dw 2 dup(262,294,330,262) dw 2 dup(330,349,392) dw 2 dup(392,440,392,349,330,262) dw 2 dup(294,196,262),10 dup(-1), 0 ;歌曲频率time dw 8 dup (10000) dw 2 dup (10000,10000,20000) dw 12 dup (9000) dw 6 dup(18000) ;歌曲时间节拍值

13、dw 10 dup(10000)CODE ENDSEND START七系统调试(含软、硬件调试时所出现的问题、解决方法)把程序输入PC机后,保存为.asm文件。启用HK88系统:1建立汇编源程序.2建立连接。3编译为目标文件4调试。5不通过,重新修改(语句错误、音调频率不准、音调节拍不符合)6重新修改、调试。7正确运行。八结论与说明(使用或操作说明)硬件连接:1定时/计数器8253A芯片模块的CLK2接时钟频率选择模块74LS393的T7端口,分频器的频率源为5000HZ。2定时/计数器8253A芯片模块的GATE2接5V,提供高电平。3定时/计数器8253A芯片模块的OUT2 接喇叭驱动驱动

14、模块的SIN 端口。4喇叭驱动驱动模块的J5插座接扬声器的J5插座。8253A的CLK2接分频器74LS393(右上方)的T7插孔,分频器的频率源为5000。九课程设计体会经过一个星期的课程设计,完成任务的效果和预想中有很大的出入,虽然中间遇到了一些问题,但经过我们的努力,还是把问题给解决了。这次课程设计对我综合运用所学知识的能力的提高有不小的帮助,之前做的实验都是很简单的编程,跟硬件结合也没有这么复杂,实现的功能都比较简单,可是这次要实现的功能相对来说比较复杂,要求掌握的知识比较全面。经过这次的课程设计,再一次的印证了理论来源于实践,而实践又能升华理论这一个观点。 首先,要实现题目要求的功能

15、并有所创新,我们必须全心地投入其中,养成一种敢于钻研敢于创新的习惯。在把课程要求实现到实际中来的过程中,首先必须清楚明白地了解几个参考程序的每一行的意思,这就需要敢于静心钻研。为了把使得程序更加完整,就必须进行创新,这就需要敢于创新。 其次,通过课程设计,让我在课本的基础上,更深入的了解了各种芯片的用法和程序的完成过程,调试方法及技巧。总之,这次的课程设计在很大程度上提升了我的动手能力了加深了我对理论知识的理解。十参考文献1戴梅萼,史嘉权. 微型计算机技术及应用(第4版). 清华大学出版社,20082 阎石.数字电子技术基础 高等教育出版社 2006.53 杨斌.微机原理与接口技术实验及课程设计.西南交通大学出版社.20054 谢川,申毅. 微型计算机原理与接口技术. 科学出版社,20045 宋杰等. 微机原理与接口技术课程设计. 机械工业出版社,2005

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1