- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电子琴报告
职业学院课程设计
题目名称:电子琴报告设计
课程名称:计算机控制技术
学生姓名:
学号:
院系
指导老师:
设计的主要任务:
使用汇编语言设计一个能够用键盘运行的电子琴,(实现一个以上功能):
1.弹奏:用户每按一个键盘琴键就弹奏相应的音符;
2.演奏:按下键盘上某一个指定的建后自动弹奏预存琴谱功能;
3.变调:按下键盘上某一指定键后,再弹奏和演奏时琴键相应的音符频率变高;按下另一指定键后,再弹奏和演奏时琴键相应的音符频率变低;
随着电子技术的发展,电子琴很为常见,硬件的设计很费人力与物力,因此软件的应用得到了很好的应用,这个简易电子琴设计采用了软硬件结合的方法完成了任务要求。应用了8255和8253的芯片,利用CPU,8086达到软硬件结合,从而实现电子琴的弹奏和演奏两种方式的应用。可以随心所欲控制电子琴是弹奏还是自动演奏。
此电子琴程序实现了:
1.弹奏:用户每按一个键盘琴键就弹奏相应的音符;
2.演奏:按下键盘上某一个指定的建后自动弹奏预存琴谱功能。
k0为控制键:
高电平时自动演奏。打到低电平时停止演奏。
低电平时可弹奏,K1,K2,K3,K4,K5,K6,K7分别为1,2,3,4,5,6,7
前言
随着电子技术的发展,计算机在现代科学技术的发展中起着越来越重要的
作用。多媒体技术、网络技术、智能信息处理技术、自适用控制技术、数据挖掘与处理技术等都离不开计算机。 电子琴的设计要求和使用器件
1.1 电子琴要完成的主要任务
使用汇编语言设计一个能够用键盘运行的电子琴,(实现一个以上功能):
1.弹奏:用户每按一个键盘琴键就弹奏相应的音符;
2.演奏:按下键盘上某一个指定的建后自动弹奏预存琴谱功能;
1.2 电子琴课设的使用器件
PC机 ,d8255ac-2,d8253ac-2,spk
1.3 设计方案的确定
1.用软件给8253和8255进行初始化,8255接开关,由开关取数值,后判断发音的频率,并送此分频数给8253,从8253输出相应的音频后,接一个非门,再接入硬件扬声器,扬声器接受到不同频率的波后发出不同的声音。
2.用比较语句cmp和跳转指令来实现开关键和音调的一一对应。
3.用一个按键来控制是自动演奏还是手动弹奏。
为高电平时是自动演奏;
为低电平时是手动弹奏。
4.其中用一个延时程序,使得发一个音有一定的延时时间。从而能使得可以被听见。
5.有个停止程序,使得晶振不能使得扬声器发生(在没有按键的情况下)。
6.用开关控制自动播放的开始和停止。
第二章 电子琴的硬件设计
2.1 电子琴的硬件框图和硬件连接图
图 1 硬件框图
图 2 电路连接图
8255与开关相连,从开关上获取开关的开启和关闭的信息(即开关的地址),从8255的B口输入,然后根据8086的程序,将不同的分频数与开关的每一个一一对应,通过程序从8086给8253赋个初值(即不同的分频数),晶振给8253一个固定的频率,在不同的分频数下得到不同的频率,将频率通过8253的2计数器送给一个非门,(加非门的原因:因为8253的out2原始状态时一个高点平,若直接与扬声器相连,一经连接扬声器就会发音,接个非门后使得它的初始状态为低电平,就能消除困扰。)非门出来接扬声器。不同的频率使得扬声器发出不同音色的声音。
第三章 电子琴的软件设计
3.1 程序流程图
图 十 程序流程图
3.2 发音程序
FY123 PROC
A7:MOV AL, 0B6H
OUT 43H, AL
MOV AL, [BX]
MOV AH, 00H
MOV DL, 25H
MUL DL
OUT 42H, AL
MOV AL, AH
OUT 42H, AL
RET
FY123 ENDP
3.3 延时程序
DELAY PROC
PUSH CX
PUSH AX
MOV CX,0040H
A5:MOV AX,056CH
A6:DEC AX
JNZ A6
LOOP A5
POP AX
POP CX
MOV AL,0BAH
MOV DX,43H
OUT DX,AL
RET
DELAY ENDP
3.4
文档评论(0)