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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

单片机音乐发生器论文.docx

1、单片机音乐发生器论文西安建筑科技大学华清学院课程设计(论文)课程名称:微型计算机基本原理与接口技术 题 目:基于8088的音乐发生器设计 院 (系):机电系 专业班级:电信0801 姓 名:张晓飞 学 号:10号 指导教师:张爱萍 2011年 1月14日目 录1引言22系统设计方案23整个系统实现功能144总结14参考文献音乐发生器实验一、引言如今的科技发展可谓日新月异,而接口的应用也在逐渐的引领生活的脚步。本次通过音乐发生器课程设计,熟悉基于8253定时/计数器的音乐发生电路的设计与程序控制方法,通过8253定时/计数器产生不同频率的音频电信号,经放大后送至扬声器产生音乐。该设计分为硬件设计

2、和软件设计。硬件设计是利用电路板实现一个基于8253定时/计数器的音乐发生器电路;软件设计是编写控制该电路发生音乐的程序。最终需利用MFID实验平台和音乐发生器模块进行硬件连接,可用8253定时/计数器来控制音频发生器唱出乐曲,并且实现当按不同键时,唱出不同的乐曲。8253的输入时钟CLK的频率为1.19318MHz。二、系统设计方案 1、硬件电路设计 可编程定时器/计数器8253是一种在微机系统中实现定时和记数功能的LSI外围接口电路。它的内部有三个独立的16位定时器/计数器。每个计数器都有六种工作方式(方式0方式5),由8253的控制字来控制。在写入控制字及计数初值后8253才能正常工作。

3、由于计数过程中门控信号GATE的电平变化、计数初值的重新设置都会对实际计数造成影响,因此最终的OUT波形可能各种各样,实现控制关系各不相同,为了更好的完成本次设计,我们必须对8253的知识进行全面的了解,以及如何运用MF2KP编写汇编语言来实现软件部分的设计,程序设计在后面将介绍。由实验原理图上的模块可以看出,硬件的设计很简单,将8255的PC6与8253的GATE相连;将PC0与8253的OUT经过一个与门电路然后接在音乐发生器的音频输入上;将8253的CLK2接1.19318Hz,以上便是硬件电路的连接,硬件部分的连接并不难,我们只需要按照图将电路接好就行了。本此课程设计需要用的是发生器驱

4、动模块,该模块包括喇叭SPK,LM386A,74L138,以及74LS245和LED等。为了实现该原理图,需要以下实验资源配置:1.电源:机器内部供电,将平台的电源开关拨到“内”的位置上,将模块电源JP3接通。2.电缆线:采用单线/20芯扁平线。3.本实验所用到资源:J(8253),I(8255),R(音乐发生器)模块电源四个模块。4.I/O端口地址:8255的4个端口地址为300H-303H。其中A口=300H,B口=301H,C口=302H,命令口=303H。8253的四个端口地址为304H-307H。其中通道0为304H,通道1为305H,通道2为306H,命令口为307H。发生器模块板

5、电路原理图如下所示:图(1)发生器原理框架图2、软件程序设计以下是音符频率参照表:图(2)音符频率参照表图(3)音符频率参照表程序的流程图如下:图(4)程序流程图汇编程序如下:sstack segment stack dw 200 dup(?)sstack endsdata segmentbg db 0ah,0dh,please choose a song.$ ;提示信息freq1 dw 330,392,330,294,330,392,330,294,330 ;音符的频率 dw 330,392,330,294,262,294,330,392,294 dw 262,262,220,196,196

6、,220,262,294,332,262,0 time1 dw 3 dup(8),4,4,8,4,4,16, ;音符的延时 dw 2 dup(8,8,4,4),16 dw 3 dup(8,4,4),16 freq2 dw 330,292,262,294,3 dup(330) dw 3 dup(394),330,392,392 dw 330,294,262,294,4 dup(330) dw 294,294,330,294,262,0 time2 dw 6 dup(4),8 dw 2 dup(4,4,8) dw 12 dup(4),16 freq3 dw 330,294,262,294,330,

7、330,330 dw 294,294,294,330,392,392 dw 330,294,262,294,330,330,330,330 dw 294,294,330,294,262,0time3 dw 4,4,4,4,4,4,8,4,4,8,4,4,8 dw 12 dup(4),16 freq4 dw 392,523,440,523,392,330,392,294,330,392,330,392,440,523,392,440,392,330,392,262,330,294,330,294,262,294,330,440,392,330,392,440,392,523,440,392,33

8、0,392,294,392,294,330,294,262,0time4 dw 8,8,4,4,8,4,4,4,4,16,4,4,4,4,4,4,4,4,4,8,4,16,4,4,4,4,16,4,4,4,4,16,4,4,4,4,4,4,8,4,4,4,4,16freq5 dw 262,262,294,262,349,294 dw 262,262,294,262,349,294 dw 262,523,440,349,330,294 dw 466,266,440,349,392,349,0time5 dw 4,4,8,8,8,16,4,4,8,8,8,16 dw 4,4,8,8,8,16,4,

9、4,8,8,8,16old_seg dw ?old_off dw ?data endscode segment assume cs:code, ds:data, ss:sstackstart:star proc far ;程序开始 mov ax,data mov ds,ax mov ax,sstack mov ss,ax push di ;寄存器压栈 push si push bp push bx mov al,90h ;8255初始化 mov dx,303h out dx,al mov al,0ch ;关闭8253的T2计数器(8255的PC6=0) mov dx,303h out dx,a

10、l mov al,00h ;关闭喇叭(8255的PC0=0) mov dx,303h out dx,al mov al,0b6h ;8253初始化 mov dx,307h out dx,al mov dx,offset bg ;显示提示信息 mov ah,9 int 21h mov ah,01h int 21h cmp al,1 ;判断按键来选择不同歌曲 je music1 cmp al,2 je music2 cmp al,3 je music3 cmp al,4 je music4 cmp al,5 je music5 cmp al,0 je end_singmusic1: mov si,

11、offset freq1 ;设置频率指针si mov bp,offset time1 ;设置延时指针bp jmp ppmusic2: mov si,offset freq2 mov bp,offset time2 jmp ppmusic3: mov si,offset freq3 mov bp,offset time3 jmp ppmusic4: mov si,offset freq4 mov bp,offset time4 jmp ppmusic5: mov si,offset freq5 mov bp,offset time5 jmp pppp: mov ah, 0bh ;检测是否有任意键

12、按下? int 21h cmp al,00 jne start ;若按下则跳转至程序开始 mov di,si ;检测是否是乐曲结尾 cmp di,0 je end_sing ;为0的话,演奏结束 mov dx,12h mov ax,34dch ;计算音符的频率所对应的8253计数初值 div di mov dx,306h ;向8253装入计数初值 out dx,al ;先装低字节 mov al,ah out dx,al ;再装高字节 mov dx,303h ;打开喇叭(8255的PC0=1) mov al,01h out dx,al mov al,0dh ;打开8253的T2(PC6=1),开

13、始发声 out dx,al mov bx,ds:bp ;取1个音符的延时次数bx call time_delay ;调用延时子程序 mov dx,303h ;关闭8253的T2(PC6=0) mov al,0ch out dx,al mov al,00h ;关闭喇叭(PC0=0) out dx,al add si,2 ;取下1 个音符的频率 add bp,2 ;取下1 个音符的延时次数 jmp pp ;继续end_sing: mov dx, 303h ;关闭8253的T2 mov al, 0ch out dx, al mov al, 00h ;关闭喇叭 out dx, al pop bx ;寄

14、存器出栈 pop bp pop si pop di mov ax,4c00h ;返回DOS int 21hstar endpnew_intr proc ;新中断服务程序 dec bx ;该服务程序只将延时次数-1 iretnew_intr endptime_delay proc near ;延时子程序 Pushf ;压栈 push ds push es push bx mov ah,35h ;取原中断(INT1CH)的向量,并保存 mov al,1ch int 21h mov old_off, bx mov bx, es mov old_seg, bx pop bx pop es push d

15、s mov ah, 25h ;设置新中断服务程序的向量 mov al, 1ch mov dx, seg new_intr mov ds,dx lea dx, new_intr int 21h pop dsTD: cmp bx,0h ;延时次数已到? jnz TD ;未到,则继续 mov ah,25h ;已到,则恢复原中断向量 mov al,1ch mov dx,old_seg push dx mov dx,old_off pop ds int 21h pop ds popf rettime_delay endpcode ends end star ;程序结束三、整个系统实现功能连接好硬件,运行

16、程序后如下:图(5)程序运行后图示当按下1键时,发生器唱第一首曲子;当按下2键时,唱第二首曲子;当按下3键时,唱第三首曲子;当按下4键时,唱第4首曲子;当按下5键时,唱第5首曲子。四、总结本设计报告主要介绍了用8253实现音乐发声器的设计方法,系统的介绍了该电路的硬件构成和软件工作过程,主要采用中断控制系统,结合所学的知识,实现系统的功能要求。设计中很好的使软件,硬件相结合,基本上达到了设计的要求。通过这次毕业设计,使我对8253有了一定了解,对课本上的知识有了近一步掌握,也深刻明白了自己的不足。完成本次课程设计,是一个从无到有的过程,经历了兴奋,自信,失落,奋发,所悟。课程设计时,自习阅读设

17、计的题目和要求,以为设计没什么困难,所用的知识书上都有。可是当我开始动手时才发现,其中的算法是那么的难。经过一天的努力,毫无结果,失落的心情悠然而生。于是,再到图书馆和网上查找资料,在经过借鉴很多书籍后,总算是有点眉目了。埋头苦干的过程是痛苦的,尤其是在思考算法和程序框架时,迷茫,烦躁,特别是当苦思出来一个结果,又被自己推翻,心痛的感觉无言以绘,在这不断的循环中,终于完成了程序。中间的煎熬时很痛苦的,深刻明白攻克自己未知领域的困难。但当课程设计完成时,那感觉很爽,很舒服,俗话说,没有耕耘,就没有收获。这次课程设计,让我学到了很多书本上学不到的东西,学到了十几应用时,是取用成本的最小化,做设计不

18、仅要考虑大的方面,小的方面也必须做到完美。最大的收获是:对按键,显示器,汇编语言的应用有了深刻的了解。参考文献1柴欣,李然,李煦,Visual Basic程序设计基础M,第1版,中国铁道出版社,2003年2石柯,阳富民,胡贯荣,基于UML的嵌入式系统模型验证机制的研究J,计算机工程与应用,2001年3罗加奇,微机原理与接口技术学生实验指导书,扬州大学,2002年4胡刚,微机原理及应用,机械工业出版社,2003年5Sascha Konrad, Betty H.C. Cheng,Laura A. Campbell.Object Analysis Patterns for Embedded SystemsJ.IEEE TRANSACTIONS ON SOFTWARE ENGINEERING,2004年

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

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