微机原理与接口技术课程设计——音乐盒
时间:2026-01-21
时间:2026-01-21
微机原理与接口技术
课程设计报告
学院: 班级: 姓名: 指导老师: 时间:
目 录
一、 课程名称及设计组成员——————————————3 二、 课程内容及要求—————————————————3 三、方案、系统硬件组成框图以及工作原理说明——————3 1、方案——————————————————————3 2、工作原理————————————————————3 3、系统硬件组成框图————————————————4 四、程序功能描述及程序流程——————————————4 1、程序功能描述——————————————————4 2、程序流程————————————————————4 五、程序源代码及注释—————————————————6 六、DOS功能调用,文件列表清单————————————14 七、程序调试出现的问题、原因及排除——————————15 八、收获和体会————————————————————16 九、参考文献—————————————————————17
一、课题名称及设计组成员
(1) 课程名称:计算机音乐播放系统设计 (2) 设计组成员:
二、课程内容及要求 课程内容:
设计一个汇编语言程序,实现计算机音乐播放系统。实现功能如下:
(1) 制作一个菜单,使用菜单条选择功能,让用户选择演奏的乐曲,不少于5首。 (2) 用定时器方式演奏《梁祝》实现音乐演奏。
(3) 提示使用ESC键或者ENTER键可以退出当前过程或返回DOS (4) 使用控制变量可以控制不同的效果以及要求,如播放速度,间隔等。 (5) 界面美观,程序结构化程度高,模块结构合理。
三、方案、系统硬件组成框图以及工作原理说明 1、方案
基于PC计算机时钟晶振为1.1931816MHz,利用电脑中的蜂鸣器发出声音。 各音阶标称频率值:
音符: 1 (重低音) 对应频率:(Hz) 131 (低音) 对应频率:(Hz) 262 (中音) 对应频率:(Hz) 523 (高音) 对应频率:(Hz) 1046
2
3
4
5
6
7 247 494 988 1975
147 294 587 1175
165 330 659 1318
175 349 698 1397
196 392 784 1568
220 440 880 1760
2、工作原理说明
软件设计是本设计的重点,在软件设计中,要给8253和8255写数据,同时还要检测键
盘输入的值,并根据输入的值,执行相应的代码来控制音乐的播放。首先在一开始先显示音乐菜单,然后调用DOS中21H 的01中断来接收键盘上的数据,在此过程中,程序在等待中,直到键盘上有键按下,程序才进行相应的操作。当键盘输入一个值后,首先判断输入的值是否为“0”,如果是,那就退出程序,如果不是,再检测输入的数是否在1-4之间,如果是,那就调用相应的播放音乐的程序,否则我们重新提上,让其输入0-4之间的数值。
在音乐播放中,要实时的扫描键盘是否有值输入,如果用DOS中21H 的01中断肯定
是不行的,因为执行这个中断程序会等待,无法继续播放音乐。因此采用中断21H中的0bH,这个中断不会等待,只会检查标准输入设备上是否有字符可读。然后通过检测AL中的值是否为0FFH,来判断键盘是否有值输入。如果键盘上有键输入,那么AL中会返回一个0FFH的值,否则就会返回00H。如果有,再判断这个输入的值是否为“p”,如果是,就停止音乐的播放,否则继续播放音乐,由于程序运行非常快,这样就不会感觉到音乐有停顿现象。实现和音乐演奏的同时实时扫描键盘的功能。当音乐播放完后,调用JMP命令跳回到主菜单,再次让操作者选择播放哪一首歌或是选择退出。
在音乐暂停后,显示输入提示:如果按“s”值继续音乐播放。然后调用DOS中21H 的01中断来接收键盘上的数据,在此过程中,程序在等待中,直到键盘上有键按下,然后我们按输入的数进行相应的操作,如果都不是,怎继续输入,知道输入正确的为止。
在这个设计中,最终要返回主菜单,然后通过按“Esc”等键退出。
3、硬件组成框图
PC机相关电路以及相关接口电路如下:
四、程序功能描述及程序流程 1、程序功能描述 计算机播放器系统: 显示入口菜单;
共5首待选择音乐:1、北京欢迎你 2、春天花会开 3、欢乐颂 4、但愿人长久 5、情非得已
播放功能:音乐播放中途暂停、快进、放慢、单曲循环、列表循环、退出播放器 2、程序流程 主流程:
开始————显示音乐菜单————提示输入选择————判断输入是否为0,
若是则退出程序————若否则判断是否在数字范围内————若是则调用音乐播放程序 音乐播放流程:
按键中断流程:
输入————判断输入所选择的功能————进入各功能子程序————根据各程序功能返回主程序
五、程序源代码及注释
DATAS SEGMENT SHOW DB 0AH,0DH
DB '***************************************',0AH,0DH DB 'this is a music program! please select!',0AH,0DH
DB '***************************************',0AH,0DH DB 0AH,0DH
DB 'In this part, you can press below keys to enjoy music:',0AH,0DH …… 此处隐藏:7950字,全部文档内容请下载后查看。喜欢就下载吧 ……
上一篇:[企业会计]财务分析培训材料
下一篇:药理学02药物代谢动力学