微机原理课程设计电子琴

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

微机原理课程设计报告

院系:襄樊学院物理与电子工程学院

班级:电子信息科学与技术0611班

指导老师: 静

姓名:杜勇 06111028

邓丰 06111025

雷雄 06111026

目录

一、课题名称及设计组成员 (3)

二、课题容及要求 (3)

三、方案、系统组成框图和工作原理说明 (3)

1、方案 (4)

2、系统组成框图 (5)

3、工作原理 (5)

四、程序功能描述及程序流程 (7)

2、程序功能描述 (7)

3、程序流程图 (7)

五、程序源代码及注释 (8)

六、DOS/BIOS功能调用,文件列表清单 (30)

七、电路的连接及调试 (31)

1、电路连接 (31)

2、调试步骤 (31)

八、调试中出现的问题、原因及排除方法 (32)

九、收获和体会 (36)

十、参考文献 (37)

一、课题名称及设计组成员

二、课题容及要求

1、计算机钢琴

基本功能:

I、利用键盘按键“q、w、e、r、t、y、u”实现音调的重低音输入,

利用键盘按键“a、s、d、f、g、h、j”实现音调的低音输入,

利用键盘按键“z、x、c、v、b、n、m”实现音调的中音输入,

利用键盘按键“1、2、3、4、5、6、7”实现音调的重低音输入。

II、实现菜单选择以及处理各种功能键的多种中级功能。

2、音乐播放系统控制

实现功能:

①制作一个菜单,使用菜单条选择功能,让用户选择演奏的乐曲。

②用定时器方式演奏画皮之主题曲《画心》实现音乐演奏。

③提示使用ESC键或者ENTER键可以退出当前过程或返回DOS。

④实现控制变量可以控制不同的效果以及要求,如播放速度,间隔等。

⑤界面美观,程序结构化程度高,模块结构合理。

⑥设计出相应的音乐取码软件。

3、实验环境

16位的汇编语言程序设计有几种工作环境,本实验以及所有程序都是通过MASM5.0编译的,MASM5.0一个汇编语言的编译、连接、调试及运行的集成环境。支持标号的快速定位,编译速度快。

三、方案、系统组成框图和工作原理说明

1、方案

基于PC计算机的时钟晶振为1.1931816MHz,利用电脑里面的蜂鸣器发出声音。

各音阶标称频率值:

/*-------------------------------------------------------------*/ 音符: 1 2 3 4 5 6 7

(重低音)

对应频率(Hz): 131 147 165 175 196 220 247

(低音)

对应频率(Hz): 262 294 330 349 392 440 494

(中音)

对应频率(Hz): 523 587 659 698 784 880 988

(高音)

对应频率(Hz): 1046 1175 1318 1397 1568 1760 1975

/*-------------------------------------------------------------*/

2、系统组成框图

PC机扬声器电路以及相关接口电路如下:

PC机扬声器电路以及相关接口电路

3、工作原理

PC中的定时电路有三个通道,通道3用于发声,通道1用于控制系统部的

时钟。大家都十分清楚用DOS的"TIME"命令可以观察并修改系统部的一个时钟,这个时钟之所以能连续运转主要依靠定时器的通道1。

通道1的工作方式和通道3一样,但是系统启动时设定其发出一个频率固定为18.2Hz的信号,这个信号直接送到系统中的"中断控制器"。每一个"Hz"都产生一个硬件中断,一般称这个硬中断为"IRQ0",对应的中断号是08H。也就是说,当计算机启动后,我们的机器看上去十分平静,但实际上CPU非常忙碌。在定时器的控制下每隔55毫秒就要执行一个08H号中断,这个中断的主要工作就是连续地计数。

在存"0040H:006CH"处有四字节的存储空间专门用于保存计数值,CPU每执行一次08H中断,这四字节的计数值就被加1,不难算出这个计数值每增加1091后时间恰好过了1分钟,每增加65454后时间恰好过了1小时。系统部的时钟之所以能准确走时,靠得就是08H中断和这四字节的计数值。因此我们要想精确的定时,必须依靠时钟计数值才行。

由于PC计算机的时钟晶振为1.1931816MHz,根据频率的公式:

f=1/T

则频率周期为

T=1/f

定时器的计数器为16位计数器,则最大的计数值为65536,那么其定时时间为:

t=65536*T=65536/f=0.0549254(秒)

即:PC定时器每秒可中断18.2065次。

四、程序功能描述及程序流程

2、程序功能描述

程序开始,显示提示信息,对缓存区初始化。按键扫描,接着调用发音子程序在把AL送缓存区,发出与按键相对应频率的声音,从而实现计算机钢琴功能。并不停地对Esc键、Enter键扫描,当Esc键或Enter键按下时,就退出程序。当按下p时,显示播放音乐目录。当按下数字选择键时,播放程序中预设的曲目。当检测到q时,退出到计算机钢琴演奏状态。

3、程序流程图

五、程序源代码及注释

;/*-------------------------------------------------------------------------------------------*/

;编译环境:MASM5.0

相关文档
最新文档