微机原理优秀课程设计电子琴.doc
《微机原理优秀课程设计电子琴.doc》由会员分享,可在线阅读,更多相关《微机原理优秀课程设计电子琴.doc(18页珍藏版)》请在咨信网上搜索。
自动化专业课程设计汇报 《微型计算机原理课程设计》 班 级 自动化12-3 姓 名 金星 学 号 时 间 .12.18 地 点 电信试验中心第六试验 指 导 教 师 李 向 军 大 连 海 洋 大 学 信 息 工 程 学 院 自 动 化 教 研 室 题目:计算机仿真电子琴 一、课程设计目标和要求 1、设计目标 本课程课程设计是自动化专业学生学习完《微机原理及应用》课程后,进行一次以汇编语言为主,硬件设计为辅综合训练。本课程设计目标在于加深对微机原理基础知识了解,掌握汇编语言程序设计基础方法;掌握利用微机原理开发系统基础方法。 2、设计要求 从课程设计目标出发,经过设计工作各个步骤,达成以下要求: 1) 掌握汇编语言程序设计基础方法。 2) Dos基础调用。 3) 深入了解多种接口电路应用。(8255并行接口,8254定时器等)。 4) 掌握利用PC机扬声器发出不一样频率声音方法。 3、关键技术指标 编写程序 1) 在程序运行时使PC即成为一架可弹奏电子琴。当按下数字键1-8时,依次发出1,2,3,4,5,6,7,I这八个音调。按下CTRL+C或回车则退出电子琴状态。 2) 在程序运行时使PC自动按要求提醒演奏乐曲。 音符 1 2 3 4 5 6 7 频率(低) 131 147 165 175 196 220 247 频率(中) 262 294 330 349 392 440 494 频率(高) 524 588 660 698 784 880 988 二、课程设计课题分析 8255/8245硬件: 电子琴设计实际上就是要设计一个程序,能够经过该程序控制PC机内扬声器发声规律,按下对应按键后,扬声器能发出指定频率声音。PC机内扬声器是经过并行接口芯片8255和定时芯片8253来控制发音,其电路连接方法以下图所表示。 图1.扬声器工作原理图示 图2.主程序工作步骤图 图3.乐曲演奏子程序工作步骤图 图4.电子琴子程序工作步骤图 图5.扬声器工作步骤图 8255内部结构图图2所表示,它有3个数据端口,分为两组,A组由A口和C口高四位组成,B组由B口和C口低四位组成。其方法控制字图3所表示。 图2 8255内部结构图 图3 8255方法控制字 方法控制字特征位 D0 D7 D6 D5 D4 D3 D2 D1 1 A组工作方法 0 0——方法0 0 1——方法1 1 ´——方法2 B组 工作方法 0——方法0 1——方法1 A口 输入/输出 1——输入 0——输出 PC7~PC4 输入/输出 1——输入 0——输出 B口 输入/输出 1——输入 0——输出 PC3~PC0 输入/输出 1——输入 0——输出 PC机内8255A口,B口,C口和控制口端口地址分别为:60H,61H,62H,63H。 2.2 8253工作原理 8253芯片中有3个计数通道,称为通道0,1,2,它们和外部电路相连信号线有3根:CLK,GATE,OUT,CLK是脉冲输入端,GATE是门控信号,OUT是输出信号,计数器工作在减1状态。其内部结构图和方法控制字格式图4,图5所表示。 其中当计数器工作在方法3时,输出信号为方波信号。 内 部 总 线 A1 GATE0 CLK0 OUT0 GATE1 CLK1 OUT1 GATE2 CLK2 OUT2 D0-D7 计数器0 计数器2 计数器1 控制寄存器 A0 数据总线缓冲器 R/W逻辑电路 图4 8253内部结构图 D7 D6 D5 D4 D3 D2 D1 D0 计数器选择 00 计数器0 01计数器1 10 计数器2 11 不用 00 计数器锁存 01 读写低8位 10 读写高8位 11 读写16位 工作方法选择 000 方法0 001 方法1 ×10 方法2 ×11 方法3 100 方法4 101 方法5 计数方法 0 二进制 1 BCD计数 图5 8253控制字格式 PC机内8253通道0,通道1,通道2,控制口端口地址分别为:40H,41H,42,43H。因为扬声器是由通道2来控制,故应选择通道2,工作方法选为方法3,输出信号则为方波信号。 三、课程设计结果 1、试验代码 DATA SEGMENT INFO1 DB 0AH, 0DH, 'WELCOME YOU TO COME HERE!$' DB 0AH, 0DH, 'THIS IS A MUSIC 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, '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 330, 330, 350, 393, 393, 350, 330, 294 DW 262, 262, 294, 330, 294, 262, 262, -1 MUS_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),200 MUS_FRQ2 DW 330, 294, 262, 294, 3 DUP(330) DW 3 DUP(294), 330, 392, 392 DW 330, 294, 262, 294, 4 DUP(330) DW 294, 294, 330, 294, 262, -1 MUS_TIM2 DW 6 DUP(100),200 DW 2 DUP(100,100,200) DW 8 DUP(100) DW 4 DUP(100),400 MUS_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, 262, 294, 330, 294, 262, 247, 262,-1 MUS_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), 400 MUS_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, 196, 220, 262, 294, 330, 262,-1 MUS_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), 400 TABLE DW 262, 294, 330, 349, 392, 440, 494, 525 NUMB DB 0AH, 0DH, 'Keyboard number 1~8 keys play notes of the scale' DB 0AH, 0DH, 'Enter or Ctrl+C to exit' DB 0AH, 0DH, '$' DATA ENDS STACK SEGMENT PARA STACK 'STACK' STA DB 200 DUP('STACK') STACK ENDS CODE SEGMENT ASSUME DS: DATA, SS: STACK, CS: CODE, ES: DATA START: MOV AX, DATA MOV DS, AX MOV ES, AX MOV AX, STACK MOV SS, AX DISPLY MACRO B MOV DX, OFFSET B MOV AH, 09H INT 21H ENDM DISPLY INFO1 LOP: DISPLY MUSLIST MOV AH, 01H INT 21H CMP AL, 36H JZ RETU CMP AL, 31H JNZ B0 CALL MUSIC1 JMP EXIT1 B0: CMP AL, 32H JNZ C0 CALL MUSIC2 JMP EXIT1 C0: CMP AL, 33H JNZ D0 CALL MUSIC3 JMP EXIT1 D0: CMP AL, 34H JNZ E0 CALL MUSIC4 JMP EXIT1 E0: CMP AL, 35H JNZ EXIT DISPLY NUMB CALL MUSIC5 EXIT1: DISPLY INFO5 JMP LOP EXIT: DISPLY INFO4 DISPLY INFO5 JMP LOP RETU: MOV AX, 4C00H INT 21H MUSIC1 PROC LEA SI, MUS_FRQ1 LEA BP,DS: MUS_TIM1 FREQ1: MOV DI, [SI] CMP DI,-1 JE END_MUS1 MOV BX, DS: [BP] CALL SOUND ADD SI,2 ADD BP,2 JMP FREQ1 END_MUS1:RET MUSIC1 ENDP MUSIC2 PROC LEA SI, MUS_FRQ2 LEA BP,DS: MUS_TIM2 FREQ2: MOV DI, [SI] CMP DI,-1 JE END_MUS2 MOV BX, DS: [BP] CALL SOUND ADD SI,2 ADD BP,2 JMP FREQ2 END_MUS2:RET MUSIC2 ENDP MUSIC3 PROC LEA SI, MUS_FRQ3 LEA BP,DS: MUS_TIM3 FREQ3: MOV DI, [SI] CMP DI,-1 JE END_MUS3 MOV BX, DS: [BP] CALL SOUND ADD SI,2 ADD BP,2 JMP FREQ3 END_MUS3:RET MUSIC3 ENDP MUSIC4 PROC LEA SI, MUS_FRQ4 LEA BP,DS: MUS_TIM4 FREQ4: MOV DI, [SI] CMP DI,-1 JE END_MUS4 MOV BX, DS: [BP] CALL SOUND ADD SI,2 ADD BP,2 JMP FREQ4 END_MUS4:RET MUSIC4 ENDP MUSIC5 PROC NEAR PUSH AX PUSH BX PUSH CX LOP5: 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, [BX][SI] MOV BX, 100 CALL SOUND JMP LOP5 EXIT5: POP CX POP BX POP AX RET MUSIC5 ENDP SOUND 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 AX WAIT1: MOV CX, 1200 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 RET GENSOUND ENDP CODE ENDS END START 2、试验现象 1. 进入DOS后在DOS界面进行汇编链接并生成可实施文件.exe 2.双击可实施文件KS.exe(这里我把程序取名为KS)进入操作界面图6所表示 图6.操作界面初始界面 图8.按数字键5后进入电子琴界面 图9.按回车后退出电子琴界面 3.在进行操作时候只要在键盘上按1-4这四个数字键就能够任意听取歌曲1—歌曲4,按数字键5时进入电子琴界面,这时候1-8分别表示音乐CDEFGABC这多个音符。按回车后退出电子琴操作界面,这时候按6退出程序。 四、课程设计心得和体会 经过这次微机原理课设,我发觉全部理论全部是要经过实践来精进。从一开始什么全部不会,到现在点点了解,几天下来感慨颇多。经过电子琴制作,使我更为深刻掌握了解编程,让我充足认识了每个指令作用,每个定义含义;为以后学习和制作打下了良好基础。 对编程还是有很多不了解,不懂,以后还是要认真学习,学好编程 五、参考文件 [1] 王忠民.微型计算机原理(第二版).西安:西安电子科技大学出版社, [2] 马春燕.微机原理和接口技术试验和学习教导.北京:电子工业出版社. [3] 沈美明,温东婵主编 IBM-PC汇编语言程序设计第二版,清华大学出版社,。- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 优秀 课程设计 电子琴
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文