微机接口程设计---电子琴和实验报告.docVIP

微机接口程设计---电子琴和实验报告.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机接口程设计---电子琴和实验报告

河南科技学院信息工程学院  PAGE - 1 - 题 目 名 称 简易电子琴设计 小 组 成 员 院 系 班 级 信息工程学院计科085 指 导 教 师 2012 年 5 月 18日 目 录 ……………………………………………………………………………………………… 电子琴的设计要求和使用器件 1.1 初始条件 1.2 电子琴要完成的主要任务 1.3 电子琴课设的使用器件 1.4 设计方案的确定 第二章 电子琴的硬件设计 2.1 电子琴的硬件框图 第三章 电子琴的软件设计 3.1 程序流程图 3.2 整体的软件汇编程序 第四章 电子琴的调试和设计体会 4.1 硬件调试 4.2 软件调试 4.3 设计体会 第五章 附录 5.1 参考文献 第一章 电子琴的设计要求和使用器件 1.1 初始条件 1.运用所学的微机原理和接口技术知识; 2. 微机原理和接口技术实验室的实验箱设备; 1.2 电子琴要完成的主要任务 使用汇编语言设计一个能够用键盘运行的电子琴, 1.弹奏:用户每按一个键盘琴键就弹奏相应的音符; 2.演奏:按下键盘上某一个指定的建后自动弹奏预存琴谱功能; 1.3 电子琴课设的使用器件 1.唐都实验箱TDN-MD 1.4 设计方案的确定 1.用试验箱上的晶振输出一个高频的信号,接入8253,用软件给8253和敏感键区进行初始化,敏感键控制不同的频率,并送此分频数给8253,从8253输出相应的音频后,接一个非门,再接入硬件扬声器,扬声器接受到不同频率的波后发出不同的声音。 2.用敏感键触发中断服务子程序来判断是给出了哪一个频率。 3.用一个ESC按键来控制是自动演奏,其他7个键分别控制da,ri,mi,fa,sa,la,si。 4.其中用一个延时程序,使得发一个音有一定的延时时间。从而能使得可以被听见。 5.有个停止程序,使得晶振不能使得扬声器发声。 第二章 电子琴的硬件设计 2.1 电子琴的硬件框图和硬件连接图 图 1 硬件框图 图 2 电路连接图 从8088的敏感键触发中断,然后根据8088的程序,将不同的分频数与敏感键的中断服务子程序的每一个一一对应,通过程序从8086给8253赋个初值(即不同的分频数),晶振给8253一个固定的频率,在不同的分频数下得到不同的频率,将频率通过8253的2计数器送给一个非门,(加非门的原因:因为8253的out2原始状态时一个高点平,若直接与扬声器相连,一经连接扬声器就会发音,接个非门后使得它的初始状态为低电平,就能消除困扰。)非门出来接扬声器。不同的频率使得扬声器发出不同音色的声音。 第三章 电子琴的软件设计 3.1 程序流程图 图 十 程序流程图 3.2 整体的软件汇编程序 1.主程序: A 2000 MOV AX,3000 MOV [00A8],AX MOV AX,0000 MOV [00AA],AX //表示ESC键的中断向量地址,自动播放音乐 MOV AX,3100 MOV [00AC],AX MOV AX,0000 MOV [00AE],AX //表示~键的中断向量地址,发音1 /****其它热键亦是如此*****/ 2.自动播放曲子程序: A3000 MOV BX,5100//曲子的地址 MOV AL,[BX] MOV AH,00 A1: MOV DL,25 MUL DL PUSH AX MOV AL,B6 OUT 43,AL//8253初始化 POP AX OUT 42,AL MOV AL,AH OUT 42,AL INC BX MOV AH,00 MOV AL,[BX] TEST AL,FFH//唱完一段自动停止 JZ A4//唱完 MOV CX,77FF A2: PUSH AX//延时 POP AX LOOP A2 JMP A1 A3: MOV AL,BAH //改变8253的控制字,使其工作在方式5,不发声 MOV DX,0043H OUT DX,AL JMP 2000 A4: PUSH AX//延时 P

文档评论(0)

yyongrjingd7 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档