版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、大 连 海 洋 大 学 课 程 设 计 报 告 纸学院(系): 专业班级: 姓名: 学号: 题目:计算机仿真电子琴 一、课程设计的目的与要求1、设计目的本课程的课程设计是通信专业学生学习完微机原理及应用课程后,进行的一次以汇编语言为主,硬件微机原理基本知识的理解,掌握汇编语言程序设计的基本方法;掌握运用微机原理开发系统的基本设计为辅的综合训练。本课程设计的目的在于加深对方法。2、设计要求 从课程设计的目的出发,通过设计工作的各个环节,达到以下要求:1) 掌握汇编语言程序设计的基本方法。2) 进一步理解各种接口电路的应用。例如8255并行接口,8253定时器等。3) 掌握利用PC机扬声器发出不同
2、频率声音的方法。3、主要技术指标 编写程序1) 在程序运行时使PC即成为一架可弹奏的电子琴。当按下数字键1-8时,依次发出1,2,3,4,5,6,7,I这八个音调。按下CTRL+C或者回车则退出电子琴状态。2) 在程序运行时使PC自动按要求提示演奏乐曲。二、课程设计课题的分析图1.扬声器工作原理图示图2.主程序工作流程图 图3.乐曲演奏子程序工作流程图 图4.电子琴子程序工作流程图图5.扬声器工作流程图三、课程设计的结果1、实验代码DATA SEGMENTINFO1 DB 0AH, 0DH, WELCOME YOU TO COME HERE!$ DB 0AH, 0DH, THIS IS A M
3、USIC PROGRAM!$ DB 0AH, 0DH, PLEASE SELECLT!$INFO4 DB 0AH, 0DH, INPUT ERROR!$INFO5 DB 0AH, 0DH, PLEASE INPUT AGAIN!$MUSLIST DB 0AH, 0DH, = DB 0AH, 0DH, Press1 HuanLeSong DB 0AH, 0DH, Press2 KaiXin DB 0AH, 0DH, Press3 XiaoBuWuQu DB 0AH, 0DH, Press4 Wonderful DB 0AH, 0DH, Press5 SCALE PLAY DB 0AH, 0DH,
4、 Press6 EXIT DB 0AH, 0DH, = DB 0AH, 0DH, $MUS_FRQ1 DW 330, 330, 350, 393, 393, 350, 330, 294 DW 262, 262, 294, 330, 330, 294, 294 DW 330, 330, 350, 393, 393, 350, 330, 294 DW 262, 262, 294, 330, 294, 262, 262 DW 294, 294, 330, 262, 294, 330, 350, 330, 262 DW 294, 330, 350, 330, 262, 262, 294, 393 DW
5、 330, 330, 350, 393, 393, 350, 330, 294 DW 262, 262, 294, 330, 294, 262, 262, -1MUS_TIM1 DW 8 DUP(100) DW 7 DUP(100),200 DW 8 DUP(100) DW 7 DUP(100),200 DW 5 DUP(100),50,50,2 DUP(100) DW 100,50,50,4 DUP(100),200 DW 8 DUP(100) DW 7 DUP(100),200MUS_FRQ2 DW 330, 294, 262, 294, 3 DUP(330) DW 3 DUP(294),
6、 330, 392, 392 DW 330, 294, 262, 294, 4 DUP(330) DW 294, 294, 330, 294, 262, -1MUS_TIM2 DW 6 DUP(100),200 DW 2 DUP(100,100,200) DW 8 DUP(100) DW 4 DUP(100),400MUS_FRQ3 DW 392, 262, 294, 330, 350, 392, 262, 262 DW 440, 350, 392, 440, 494, 524, 262, 262 DW 350, 392, 350, 330, 294, 330 DW 350, 330, 294
7、, 262, 294, 330, 294, 262, 247, 262,-1MUS_TIM3 DW 200, 4 DUP(100), 200, 200, 200 DW 200, 4 DUP(100), 200, 200, 200 DW 200, 4 DUP(100), 200 DW 4 DUP(100), 200, 4 DUP(100), 400MUS_FRQ4 DW 330, 392, 330, 294, 330, 392, 330, 394, 330 DW 330, 392, 330, 294, 262, 294, 330, 392, 294 DW 262, 262, 220, 196,
8、196, 220, 262, 294, 330, 262,-1MUS_TIM4 DW 3 DUP(200), 100, 100, 200, 100, 100, 400 DW 2 DUP(200,200,100,100), 400 DW 3 DUP(200,100,100), 400TABLE DW 262, 294, 330, 349, 392, 440, 494, 525 NUMB DB 0AH, 0DH, Keyboard number 18 keys play notes of the scale DB 0AH, 0DH, Enter or Ctrl+C to exit DB 0AH,
9、0DH, $DATA ENDSSTACK SEGMENT PARA STACK STACK STA DB 200 DUP(STACK) STACK ENDSCODE SEGMENTASSUME DS: DATA, SS: STACK, CS: CODE, ES: DATASTART: MOV AX, DATA MOV DS, AX MOV ES, AX MOV AX, STACK MOV SS, AXSHOW MACRO B MOV DX, OFFSET B MOV AH, 09H INT 21HENDM SHOW INFO1 LOP: SHOW MUSLIST MOV AH, 01H INT
10、 21H CMP AL, 36H JZ RETU CMP AL, 31H JNZ B0 CALL MUSIC1 JMP EXIT1B0: CMP AL, 32H JNZ C0 CALL MUSIC2 JMP EXIT1C0: CMP AL, 33H JNZ D0 CALL MUSIC3 JMP EXIT1D0: CMP AL, 34H JNZ E0 CALL MUSIC4 JMP EXIT1E0: CMP AL, 35H JNZ EXIT SHOW NUMB CALL MUSIC5EXIT1: SHOW INFO5 JMP LOPEXIT: SHOW INFO4 SHOW INFO5 JMP
11、LOPRETU: MOV AX, 4C00H INT 21HMUSIC1 PROC LEA SI, MUS_FRQ1 LEA BP,DS: MUS_TIM1FREQ1: MOV DI, SI CMP DI,-1 JE END_MUS1 MOV BX, DS: BP CALL GENSOUND ADD SI,2 ADD BP,2 JMP FREQ1 END_MUS1:RETMUSIC1 ENDPMUSIC2 PROC LEA SI, MUS_FRQ2 LEA BP,DS: MUS_TIM2FREQ2: MOV DI, SI CMP DI,-1 JE END_MUS2 MOV BX, DS: BP
12、 CALL GENSOUND ADD SI,2 ADD BP,2 JMP FREQ2 END_MUS2:RETMUSIC2 ENDP MUSIC3 PROC LEA SI, MUS_FRQ3 LEA BP,DS: MUS_TIM3FREQ3: MOV DI, SI CMP DI,-1 JE END_MUS3 MOV BX, DS: BP CALL GENSOUND ADD SI,2 ADD BP,2 JMP FREQ3 END_MUS3:RETMUSIC3 ENDPMUSIC4 PROC LEA SI, MUS_FRQ4 LEA BP,DS: MUS_TIM4FREQ4: MOV DI, SI
13、 CMP DI,-1 JE END_MUS4 MOV BX, DS: BP CALL GENSOUND ADD SI,2 ADD BP,2 JMP FREQ4 END_MUS4:RETMUSIC4 ENDPMUSIC5 PROC NEAR PUSH AX PUSH BX PUSH CXLOP5: MOV AH, 01H INT 21H CMP AL, 0DH JE EXIT5 CMP AL, 31H JB LOP5 CMP AL, 38H JA LOP5 AND AX, 0FH SHL AX, 1 SUB AX, 2 MOV SI, AX MOV BX, OFFSET TABLE MOV DI
14、, BXSI MOV BX, 100 CALL GENSOUND JMP LOP5EXIT5: POP CX POP BX POP AX RETMUSIC5 ENDPGENSOUND PROC PUSH AX PUSH BX PUSH CX PUSH DX PUSH DI MOV AL, 0B6H OUT 43H, AL MOV DX, 12H MOV AX, 533H*896 DIV DI OUT 42H, AL MOV AL, AH OUT 42H, AL IN AL, 61H MOV AH, AL OR AL, 3 OUT 61H, AL PUSH AXWAIT1: MOV CX, 12
15、00 DELA1: IN AL, 61H AND AL, 10H CMP AL, AH JE DELA1 MOV AH,AL LOOP DELA1 DEC BX JNZ WAIT1 POP AX MOV AL, AH OUT 61H, AL POP DI POP DX POP CX POP BX POP AX RETGENSOUND ENDPCODE ENDSEND START2、实验现象 1. 进入DOS后在DOS界面(图6)进行汇编链接并生成可执行文件.exe图6.DOS调试界面 2.双击可执行文件KS.exe(这里我把程序取名为KS)进入操作界面如图7所示图7.操作界面初始界面 图8.按
16、数字键5后进入电子琴界面 图9.按回车后退出电子琴界面 3在进行操作的时候只要在键盘上按1-4这四个数字键就可以任意听取歌曲1歌曲4,按数字键5时进入电子琴界面,这时候1-8分别表示音乐CDEFGABC这几个音符。按回车后退出电子琴操作界面,这时候按6退出程序。四、课程设计的心得与体会这次课程设计给我的印象非常的深,原本以为课上学的不错的自己,发现真正到了要用的时候,发现很多东西不是凭空想象就会出来的,原本自己想完全自主设计并完成整个课设,但是用了2天的时间还是没有能够整理出来,后来决定大量参考课外书籍以及别的同学的经验。即使在如此情况之下,很多代码都不是很了解,在请教了老师和同学之后有更大的进步。有很多的知识都是在自己调试程序的过程中领会的,比如 DW 0DH OAH在起初根本不知道什么意思,后来我把这段代码给删了,发现原本漂亮的界面一下子就乱七八糟了,这下恍然
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《计算机文化基础 》课件-第7章
- 保洁保绿员例行培训课件
- 《软体工程课程联盟》课件
- 养老院老人入住体检制度
- 养老院老人安全出行制度
- 救助管理站与医疗机构服务协议书(2篇)
- 2024年生猪养殖场租赁合同下载
- 《团队沟通的重要性》课件
- 《疫苗的作用》课件
- 2024年度停薪留职人员福利待遇协议书3篇
- GB/T 29309-2012电工电子产品加速应力试验规程高加速寿命试验导则
- GB 29216-2012食品安全国家标准食品添加剂丙二醇
- 齐鲁工业大学信息管理学成考复习资料
- 公务员面试-自我认知与职位匹配课件
- 中频电治疗仪操作培训课件
- 柔弱的人课文课件
- 动物寄生虫病学课件
- 电梯曳引系统设计-毕业设计
- 三度房室传导阻滞护理查房课件
- 讲课比赛精品PPT-全概率公式贝叶斯公式-概率论与数理统计
- 药理学39人工合成抗菌药课件
评论
0/150
提交评论