




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、xxxxxxxxxxxxx 大 学微型机与接口技术课程设计(论文)题目: 菜单选择音乐程序设计与实现(一) 院(系): 电子与信息工程学院 专业班级: 计算机053班 学 号: 050401069 学生姓名: 指导教师: 教师职称: 讲 师 起止时间:2009.1.5至2009.1.9 课程设计(论文)任务及评语院(系):电子与信息工程学院 教研室:学 号学生姓名专业班级课程设计(论文)题目菜单选择音乐程序设计与实现(一)课程设计(论文)任务1. 设计一个简单的音乐程序菜单界面,并用彩色条选择菜单项。2. 采用模块化程序设计,最少组织三首歌曲,每首歌曲反复演唱几个小时即可。3. 三首歌曲只能使
2、用一个音乐控制程序,这一要求是本实验的主要目的。4. 音符与频率值对应关系表在指导书上可查。指导教师评语及成绩成绩: 指导教师签字: 2008年 1 月 12 日目 录第1章 课程设计简介11.1 课程设计题目11.2 课程设计目的11.3 课程设计内容11.4 课程设计设备11.5 课程设计任务1第2章 程序设计22.1菜单选择音乐程序概要设计22.1.1主程序流程图22.1.2 music 1程序流程图32.1.3 music 2程序流程图32.1.4 music 3程序流程图42.1.5发生模块52.2菜单选择音乐程序详细设计62.2.1主程序代码62.2.2 music 1程序代码72
3、.2.3 music 2程序代码72.2.4 music 3程序代码82.2.5发生模块程序代码9第3章 总结11参考文献12第1章 课程设计简介1.1 课程设计题目菜单选择音乐程序设计与实现(一)1.2 课程设计目的1.掌握微机接口芯片的结构及功能。2.理解面向硬件编程的设计思想。1.3 课程设计内容1. 菜单选择的音乐程序设计与实现(一)1.4 课程设计设备(1)tcp-1型十六位微型机实验箱一台。(2)40mhz示波器一台。(3)万用表一台。(4)pc机一台1.5 课程设计任务(1)设计一个简单的音乐程序菜单界面,并用彩色条选择菜单项。 (2)采用模块化程序设计,最少组织三首歌曲,每首歌
4、曲反复演唱几个小时即可。 (3)三首歌曲只能使用一个音乐控制程序,这一要求是本实验的主要目的。 (4)音符与频率值对应关系表在指导书上可查。第2章 程序设计2.1菜单选择音乐程序概要设计2.1.1主程序流程图等待键输入显示选择字符串显示菜单框主模块键值=4键值=1键值=3键值=2返回dos转music 3 模块转music 2 模块转music 1 模块 y n y n y n y nmusic 1设置显示方式建音符频率表建音符时间表音符频率表指针di音符时间表指针di转发声模块2.1.2 music 1程序流程图music 2设置显示方式建音符频率表建音符时间表音符频率表指针di音符时间表指
5、针di转发声模块2.1.3 music 2程序流程图2.1.4 music 3程序流程图music 3设置显示方式建音符频率表建音符时间表音符频率表指针di音符时间表指针di转发声模块2.1.5发生模块延迟(音符发声持续时间)计音符的8254通道2的计数值送8254控制字送8254计数值打开发声通道转主模块延迟取音符频率频率=ffffh?又键入?发声模块设置显示方式显示提示信息si、di压入堆栈取出堆栈中的si、di值 再次将si、di压入堆栈关闭发声通道si+2si、di+1di2.2菜单选择音乐程序详细设计2.2.1主程序代码public start0extrn start1: far,
6、start2: far, start3: fardisp macro yyxx, varmov ah, 2mov bh, 0mov dx, yyxxint 10hmov ah, 9mov dx, offset varint 21hendmdata0 segmentl1 db menu , 0ah, 0dh db _ , 0ah, 0dh db | | , 0ah, 0dh db | 1. music 1 | , 0ah, 0dh db | 2. music 2 | , 0ah, 0dh db | 3. music 3 | , 0ah, 0dh db | 4. return dos | , 0a
7、h, 0dh db |_| , 0ah, 0dh,$ l9 db choice(1,2,3,4): ,$data0 endscode0 segmentassume cs:code0, ds:data0start0: mov ax, data0 mov ds, ax mov ax, 2int 10hdisp 0500h, l1dp: disp 0e00h, l9mov ah, 1int 21hcmp al, 4je rtcmp al, 1je strt1cmp al, 2je strt2cmp al, 3je strt3jmp dpstrt1: jmp start1strt2: jmp star
8、t2strt3: jmp start3rt: mov ah, 4chint 21hcode0 endsend start02.2.2 music 1程序代码public start1extrn start4: fardata1 segmentmusic1 dw 330,524,524,524,524,330,494,494,dw 494,494,392,440,440,392,349,392,0ffffhtime1 db 10,20,10,10,30,10,20,10,10,30,10,20,20,10,10,20data1 endscode1 segmentassume cs: code1,
9、 ds: data1start1: mov ax, data1mov da, ax mov ax,2int 10hmov si, offset music1mov di, offset time1jmp start4code1 endsend2.2.3 music 2程序代码public start2extrn start4: fardata2 segmentmusic2 dw 494,494,440,440,392,440,392,440,392,349,392,330, 0ffffhtime2 db 20,10,10,20,20,20,10,10,10,10,20,40data2 ends
10、code2 segmentassume cs: code2, ds: data2start2: mov ax, data2mov ds, axmov ax, 2int 10hmov si, offset music2mov di, offset time2jmp start4code2 endsend2.2.4 music 3程序代码public start3extrn start4: fardata3 segmentmusic3 dw 392,588,588,588,588,660,588,524,524,392,392,440,0ffffhtime3 db 10,20,10,10,10,3
11、0,10,10,10,10,10,30data3 endscode3 segmentassume cs: code3, ds: data3start3: mov ax, data3mov ds, axmov ax, 2int 10hmov si, offset music3mov di, offset time3jmp start4code3 endsend2.2.5发生模块程序代码public start4exten start0: fardisp macro yyxx, varmov ah, 2mov bh, 0mov dx, yyxxint 10hmov ah, 09mov dx, of
12、fset varint 21hendmstack segmentsta dw 50 dup(?)top equ length stastack endsdata4 segmentmess db starike any , return to menu !,0ah, 0dh,$data4 endscode4 segmentassume cs: code4, ds: data4start4: push dsmov ax, data4mov ds, axmov ax, 2int 10hdisp 1000h, messpop dspush sipush diplay: pop dipop sipush
13、 sipush diply1: mov ax, word ptr sicmp ax, 0ffffhjz play_endmov dx,12hmov ax, 34e0hdiv word ptr simov bx, axmov al, 0b6hout 43h, almov ax, bxout 42h, almov al, ahout 42h, alin al, 61hor al, 03hout 61h, alcall delayin al, 61hand al, 0fchcode4 endsend第3章 总结本次课设的目的是掌握微机接口芯片的结构及功能,理解面向硬件编程的设计思想。经过本次为期一周
14、的课设,体会颇多,通过自己动手编写的程序来控制音乐,我感到非常有成就感,也锻炼了我的编程能力。在刚开始编程的时候,我感到很茫然,不知道怎么样下手,但是通过自己的仔细的分析,老师的细心的指导和通过相关图书资料的帮助,逐渐熟悉了微型机与接口的应用知识及其相关的操作。在这次的设计中我学习到不少的接口方面的知识,在设计过程中难免存在一些问题。恳请各位老师批评指正,致使我在以后的学习和实践中加以改进和提高。最后,感谢老师对我的指导,让我学会了硬件编程,微机接口原理等专业知识。同时更感谢老师在我遇到困难时悉心的指导,让我有信心有勇气面对课程设计中的困难,完成课程设计,学生在这里对老师表示衷心地感谢。参考文
15、献1 柴欣.微型计算机原理.北京:电子工业出版社,2002年2 李然.80x86、80x88结构与汇编语言程序设计.北京:清华大学出版社,1993年3 李煦.微机原理与接口技术.北京:人民邮电出版社,2002年4 石柯.计算机系统结构(第二版).北京:清华大学出版社,1998年5 阳富民. 基于uml的嵌入式系统模型验证机制的研究. 华东理工大学出版社,20056 雷晓平 .微型计算机原理与应用.北京:电子工业出版社,2002年7 周明德,张淑玲.80x86、80x87结构与汇编语言程序设计.北京:清华大学出版社,1993年8 周明德,蒋本珊.接口技术.北京:人民邮电出版社,2000年9 郑纬民,汤志中.操作系统(第二版).北京
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 云南省大理州2024-2025学年高二下数学期末综合测试试题含解析
- 盐城市阜宁县高二上学期期中考试化学试题
- 水利设施采购合同样本
- 智能家居产品全国采购及售后服务合同
- 营销效果评估保密合同
- 北京生态农业园区租赁合同含农产品种植及加工服务
- 智能停车系统车位物业服务与智能缴费合同范本
- 四川雅安项目市场调查及分析报告
- 兴业银行成都分行国际业务部招聘考试真题2024
- 招聘站区管理人员理论考试复习试题含答案
- 光伏项目安全培训课件
- 拉森钢板桩监理实施细则样本
- 个人房屋抵押借款合同范本-借款合同
- 《原码一位乘法》课件
- 中华人民共和国监察法学习解读课件
- 中小学教务主任培训
- 眼镜行业目标市场分析
- 空间向量与立体几何教材分析
- 1-STM32F4xx中文参考手册
- SFBA102森林消防泵产品结构和使用讲座
- 集装箱采购投标方案(技术方案)
评论
0/150
提交评论