帮帮文库

返回

乐曲程序的设计与实现 乐曲程序的设计与实现

格式:word 上传:2022-06-25 16:22:52

《乐曲程序的设计与实现》修改意见稿

1、“.....为了增加程序美观性,定义了个利用功能调用来设置显示方式和背景色。但要特别注意的是调用的时机,应该在每次刷新并且显示选择列表之前调用。实验结果这是进入程序页面后的屏幕显示,通过和来播放音乐或者结束图表播放音乐界面程序正在播放歌曲。上面是两只老虎的简谱,可以结合这个来听音高低。结果如上所示设计心得与改进方案心得体会在程序中,各个变量及标号应该有统且明确的命名规范,例如频率表的命名规则为歌曲名,节拍表的命名规则为歌曲名这样能使代码的可读性大大增强,且在编程中也能使逻辑更加清晰,增加编程效率。不能开始就开始编写程序,而是应该首先分析问题,设计出程序的框架流程图,明确各个程序段的功能,这样能使效率提高并且能增强持续的逻辑性和可读性,也可以避免出现很多在设计中应该考虑全面,并且兼顾到各方面的问题。不能仅仅完成布置的任务,应该努力使程序更健壮,能够处理的输入并且给出提示......”

2、“.....在做课程设计的过程中难免会出现这样那样的问题,因此要保持良好的心态,在遇到问题时应该仔细想问题的起因及解决方法,不能想都不想就直接放弃或者问人,这样就失去了做报告的意义,因为在解决问题的过程中可以发现很多以前忽视的问题。发现问题,解决问题是我们的主要目的。这次的课程设计让我有机会通过实践来加强巩固学习过的知识,极大的增强了自己编程能力。改进方案刚开始设计流程图的时候,可以直接将内置的首音乐分别定义个子程序来演奏,在之后的编程过程中,发现这样的设计不合理且会使代码变的更长且冗余,然后改进设计,以个子程序来演奏音乐,调用的时候直接将需要演奏的频率表和节拍表作为参数传递给程序,这样能使代码更简洁,可读性大大增强。如果需要播放其他音乐时,只要在数据段增加此音乐的频率表和节拍表,然后在选择项中添加个选项即可。在调用子程序的过程中,应该注意保存寄存器中的内容......”

3、“.....可以考虑使用主界面的方式,多插入几首歌曲,增加程序的选择性,使不至于单。可以通过自己设计的利用系统定时器的中断程序来实现控制发声时间长短的功能,使程序的发声时间有个具体的时间基准。在系统定时器的中断处理程序中,有条中断指令,时钟中断每发生次约每秒中断次都要嵌套调用次中断类型的处理程序。而得处理程序没有做任何工作,因而可以自己设计处理程序来代替原有的中断程序。但在编写新的中断程序时,应该先保存之前的中断向量,结束时恢复。参考文献沈美明,温冬婵汇编语言程序设计第版清华大学出版社,年月沈美明,温冬婵汇编语言程序设计实验本科生课程设计成绩评定表班级计算机科学与技术班姓名王嘉辛学号序号评分项目满分实得分学习态度认真遵守纪律设计分析合理性设计方案正确性可行性创造性设计结果正确性设计报告的规范性设计验收总得分等级评语注最终成绩以五级分制记......”

4、“.....年月附录源程序此处输入数据段代码声明,否则产生此处输入堆栈段代码此处输入代码据段代码计数器的倍数值关闭扬声器扬声器驱动方式机上的大多数都是由主办上的可编程序外围接口芯片管理的。包括三个位寄存器,两个用于输入功能,个用于输出功能。输入寄存器分配的端口号为和,输出寄存器分配的端口号为。由输出寄存器中的和两位来控制扬声器的驱动方式。连接到扬声器上的是定时器与端口的相连,当时,获得高电平,是定时器可以在模式下工作。定时器的与端口的通过个与门与扬声器的驱动电路相连。当时,允许的输出信号到达扬声器电路。控制扬声器的代码主要的发生器件可编程时间间隔定时器在定时器内部有个独立工作的计数器,个计数器都分配有个端口地址,分别为,和。内部还有个公用的控制寄存器,端口地址为。端口地址输入到的端,分别对个计数器和控制器寻址。如图下图所示定时器结构图对编程时......”

5、“.....来选择计数器,确定工作模式和计数值的格式。每个计数器由个引腿和外部联系。为时钟输入端,为门控信号输入端,为技术定时信号输出端。每个计数器中包含个位的计数寄存器,这个计数器是以倒计数的方式计数的,也就是说,从计数初值开始逐次减,直到减为为止。同时三个计数器是分别编程的,对任个计数器编程时,必须首先将控制字写入控制寄存器。控制字的作用是确定需要使用的计数器,同时确定要求输出的脉冲波形。另外,对的初始化工作还包括,向选定的计数器送入个计数初值,因为这个计数值可以是位的,也可以是位的,而的数据总线是位的,所以要用两条输出指令来写入初值。控制字节由位组成即,选择计数值的格式,为码格式,为二进制格式。选择操作模式,它决定了输出脉冲的形状。,读写指示位。,选择计数器,确定控制字是对哪个计数器进行初始化。对设置初始值时,定要符合控制的格式规定,是二进制数还是码表示的数......”

6、“.....还是高低字节都写。控制字旦做出决定,程序中给出的计数值就要和控制的要求致。乐曲构成由于把很多发生程序结合就构成理论上的曲子,所以利用计算机控制发生的原理,可以编写演奏乐曲的音调。在首乐曲中,每个音符的音高和音场与频率和节拍有关。组成乐曲的每个音符的频率值和持续时间是乐曲程序发声所需要的两个数据。音符的持续时间是根据乐曲的速度及每个音符的节拍数来确定。在四四拍中,四分音符为拍,每小节拍,全音符持用产生个的延时,是节拍的倍数。恢复寄存器状态延迟程序的实现及分析为通过监控端口的固定不变的触发时间来产生延迟时间的子程序。关键代码分析查看寄存器的第四位每秒触发次,所以先置为,每次通过调用都会产生个的延迟。键盘发声程序的实现及分析子程序,通过按不同的按键来产生不同频率的音符。关键代码分析,输入按键,回车退出,如果不是的话跳转到开始重新输入。清空找到索引地址,是型的......”

7、“.....而且是从开始,应该减去,通过索引从符号表里面找到对应的频率,调用发出声音。调试过程及实验结果分析调试过程在刚开始显示字符串的时候,应该加上,换行,而且在字符串的最后应该以来结尾,然后调用调用,来显示字符串。调试中发现,如果个字符串末尾不加的话,调用会直接把之后定义的字符串也同时显示出来,直到遇到为止。这是由内存的分配模式所决定的,同时定义的变量在内存中会处于相邻位置。在调试子程序的时候,发现管输入程序不会返回,是因为在程序中直接,。而从键盘输入的是码,对应的码为,所以修改语句如下,。在调试的时候,发现输入只有会发出声音,检查后发现由于在表中定义的是字,而在程序中直接将输入符号作为索引值,应该将输入数字减乘二才能得到正确的索引值。在调用的时候,发现每次显示的列表都会向下移动。在清除前应该将光标位置移动到第行,第列。在输入字符较多的情况下,界面显得较为凌乱......”

8、“.....每次在返回选择界面的情况下清屏,但是在调试过程中,每当调用的时候就出现遇到无效的指令,查阅资料,发现是软件兼容问题。最后查阅书本,发现如果要实现清屏功能的话应该先把光标的位置定位到界面的开始位置行列号都为,然后参照书本的例来实现清屏功能。刚开始时候,直接把延迟时间续拍,二分音符持续拍,四分音符持续拍,八分音符持续半拍等。如果给全音符的持续时间为,八分音符的持续时间为音符的频率参考下表编写低音中音高音设计方案说明设计思路编写这个乐曲程序可分为四个步骤定义频率表和时间表根据音阶表和简谱为演奏的乐曲定义个频率表和个节拍时间表将两个表的偏移地址放入和取频率和时间调用子程序发出音调程序流程图主程序流程图说明在进入主界面的时候有个选项,分别是通过选择不同的选项进入其子界面来实现不同的功能。关键代码设计实现及分析程序段说明为数据段,其中存放在程序中所要显示的提示选择信息......”

9、“.....和键盘控制发声对应的音符表。为代码段,由于在整个程序中各个子程序都定义为,所以只需要有个代码段,各个子程序的定义及实现都放在其中。乐曲演奏程序的实现及分析为播放音乐的子程序,完成的功能是通过频率表的偏移地址节拍表的偏移地址通过主程序传递过来的参数找到对应的频率节拍,再以为参数调用子程序来发出声音。关键代码以频率节拍为参数,调用,是频率表和节拍表的偏移地址,通过寄存器间接寻址方式找到数据段中定义数据,传递给和,然后调用发出个频率为,节拍数为的声音注意在频率表中应该设置个结束标志,在这里以作为结束标志。通用发声程序的实现及分析为以传递过来的频率和节拍数,发出个音符的频率的子程序。关键代码分析置端口为,选择计数器,读写模式,计数值为二进制数。按照公式,计数值,商存放在中。,的数据总线为位,而计数值为位,所以应该分两次传递计数值。将的后两位置,打开扬声器......”

下一篇
温馨提示:手指轻点页面,可唤醒全屏阅读模式,左右滑动可以翻页。
乐曲程序的设计与实现.doc预览图(1)
1 页 / 共 21
乐曲程序的设计与实现.doc预览图(2)
2 页 / 共 21
乐曲程序的设计与实现.doc预览图(3)
3 页 / 共 21
乐曲程序的设计与实现.doc预览图(4)
4 页 / 共 21
乐曲程序的设计与实现.doc预览图(5)
5 页 / 共 21
乐曲程序的设计与实现.doc预览图(6)
6 页 / 共 21
乐曲程序的设计与实现.doc预览图(7)
7 页 / 共 21
乐曲程序的设计与实现.doc预览图(8)
8 页 / 共 21
乐曲程序的设计与实现.doc预览图(9)
9 页 / 共 21
乐曲程序的设计与实现.doc预览图(10)
10 页 / 共 21
乐曲程序的设计与实现.doc预览图(11)
11 页 / 共 21
乐曲程序的设计与实现.doc预览图(12)
12 页 / 共 21
乐曲程序的设计与实现.doc预览图(13)
13 页 / 共 21
乐曲程序的设计与实现.doc预览图(14)
14 页 / 共 21
乐曲程序的设计与实现.doc预览图(15)
15 页 / 共 21
预览结束,还剩 6 页未读
阅读全文需用电脑访问
温馨提示 电脑下载 投诉举报

1、手机端页面文档仅支持阅读 15 页,超过 15 页的文档需使用电脑才能全文阅读。

2、下载的内容跟在线预览是一致的,下载后除PDF外均可任意编辑、修改。

3、所有文档均不包含其他附件,文中所提的附件、附录,在线看不到的下载也不会有。

  • Hi,我是你的文档小助手!
    你可以按格式查找相似内容哟
DOC PPT RAR 精品 全部
小贴士:
  • 🔯 当前文档为word文档,建议你点击DOC查看当前文档的相似文档。
  • ⭐ 查询的内容是以当前文档的标题进行精准匹配找到的结果,如果你对结果不满意,可以在顶部的搜索输入框输入关健词进行。
帮帮文库
换一批

搜索

客服

足迹

下载文档