汇编8阶电子琴精要.doc

汇编8阶电子琴精要

2010年 6 月 25 日 微机原理与汇编语言课程设计任务书 一、题目:电子琴 二、设计的目的 1. 掌握利用PC机扬声器发出不同频率声音的方法; 2. 学习利用系统功能调用从键盘上读取字符的方法; 3. 掌握定时器/计数器8253的工作原理; 三、设计要求 编写程序,程序运行时使PC 机成为一架可演奏的“钢琴”。当按下数字键1-8时,依次发出1,2,3,4,5,6,7,I八个音调,Ctrl-c 则退出演奏状态。独立完成课程设计。 四、设计内容及步骤 1.PC 机扬声器电路 电路图如图1所示: 图1 PC 机扬声器控制电路 通过给8253定时器装入不同的计数值,可以使其输出不同频率的波形。当与门打开后,经过放大器的放大作用,便可驱动扬声器发出不同频率的音调。为使该音调的声音持续一段时间,要插入一段延时程序,之后再将扬声器关闭(关闭与门)。 2.建立音频表 要使计算机成为可弹奏的简易电子琴,需要使用系统调用的01H 功能以接收键入字符,并且要建立一张音频表。 五、课程设计工作计划 2010年6月21日 指导教师布置任务,学生准备文献资料; 2010年6月21日~2010年6月24日 学生按照课程设计的内容与要求进行操作 并写出课程设计报告。 2010年6月25日 指导教师验收。 指导教师签字: 教研室主任签章: 微机原理与汇编语言课程设计指导教师评语与成绩 指导教师评语: 课程设计表现成绩: 课程设计验收成绩: 课程设计报告成绩: 课程设计 总成绩: 指导教师签字: 2010年 月 日 目 录 一、概述 5 二、总体方案设计 5 三、详细设计 7 四、调试与运行结果说明 10 五、课程设计总结 11 六、谢启 12 七、参考文献 12 八、附录 13 一、概述 1.功能说明: 利用计算机的扬声器发音来实现; ②定义8个键,对应低音区和中音的i,能随意演奏乐曲; ③能选择多首乐曲中的一首演奏,乐曲自选; ④良好的交互界面用于乐曲的选择和音符的演奏; 2.设计思路: 依据设计功能的要求建立几个可以选择操作的界面。根据字符的匹配在菜单上面选择要播放的音乐。首先建立一个音乐的频率跟节拍的代码,利用宏定义将地址传到音乐播放的模块中,之间用8253工作方式3、计数器0、先读低八位后读高八位以及延时的程序。选择的是自行播放音乐的时候按照1—8进行音乐频率的匹配,指针指向音乐频率的地址,进行一个字符一个字符的匹配。最后加一个清屏代码使界面更加清晰。 二、总体方案设计 1.设计原理: (1)要使扬声器发出不同的音调,就得输入不同频率的波形。通过给8253定时/计数器装入不同的计数值,可以使其输出不同频率的方波。经过放大器的放大作用,便可驱动扬声器发出不同的音调,只要插入一段延时程序之后,再将扬声器切断,音调的声音就可以持续一端时间。通过计算机的不同按键输出不同的音调,需要使用系统调用功能以接收键入字符,并且要建立一张表,使键入字符与频率构成一个对应关系: 键入字符 1 2 3 4 5 6 7 8 音符 1 2 3 4 5 6 7 8 频率 1138 1207 1352 1521 1709 1807 2029 2277 乐曲是由不同的频率和节拍的音调组成的,因此控制驱动脉冲的频率和持续时间就是编写乐曲程序的关键。频率对应8253的计数初值,而乐曲中的节拍决定了各音频持续的时间。 (2) 利用8253计数/定时器和8255并行接口,定时器8253利用工作方式3产生一定频率信号,通过可编程的并行外围接口芯片8255控制频率信号的通断。 8255的A口设置为输出,8255的A口的低两位用来控制扬声器驱动,当输出端口的PA0位为“1”或为“0”时,将使控制驱动器的与门电路接通或关闭,使8253所发出的音频信号能到达驱动器或被阻断。这样通过控制PA0的变化,可使扬声器接通和断开,控制扬声器是否能发出声音。此外,通过控制PA0的通断时间,就能发出不同的音长。8255的PA1位为“1”时,控制8253定时器产生驱动扬声器发声的音频信号,该位为“0”则不发信号。8253有三个定时器,分为0号、1号和2号定时器,驱动扬声器的是0号定时器,该定时器工作在方式3,是一个频率发生

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档