ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:257.82KB ,
资源ID:21484372      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21484372.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(电子琴课程设计报告电子版微机 DOCWord格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

电子琴课程设计报告电子版微机 DOCWord格式.docx

1、3、硬件参数及硬件接线电路图(1)地址和初值8255口地址: PA口=60H PB口=61H PC口=62H 控制口=63H8253口地址:计数器0=40H 计数器1=41H 计数器2=42H 控制寄存器=43H8253初值:600Hz声音,1.19MHz/600=1983(2)接线电路图 PC机扬声器电路以及相关接口电路:(如图1)图1 接线电路图4、作原理PC中的定时电路有三个通道,通道3用于发声,通道1用于控制系统内部的时钟。通道1的工作方式和通道3一样,但是系统启动时设定其发出一个频率固定为18.2Hz的信号,这个信号直接送到系统中的中断控制器。每一个Hz都产生一个硬件中断,一般称这个

2、硬中断为IRQ0,对应的中断号是08H。在定时器的控制下每隔55毫秒就要执行一个08H号中断,这个中断的主要工作就是连续地计数。由于PC计算机的时钟晶振为1.1931816MHz,根据频率的公式:f=1/T 则频率周期为T=1/f 定时器的计数器为16位计数器,则最大的计数值为65536,那么其定时时间为:t=65536*T=65536/f=0.0549254(秒) 即:PC定时器每秒可中断18.2065次。5、程序流程图(见图2)图2 程序流程图三、课程设计的结果程序开始,显示提示信息,对缓存区初始化。按键扫描,接着调用发音子程序在把AL送缓存区,发出与按键相对应频率的声音,从而实现计算机仿

3、真电子琴的功能。并不停地对Esc键、Enter键、P键扫描,当Esc键或Enter键按下时,就退出程序。当按下P时,显示播放音乐目录。当按下数字选择键时,播放程序中预设的曲目,中途可以通过Enter键,终止音乐播放。当检测到Q时,退出到计算机仿真电子琴演奏状态。1、程序代码:STACK SEGMENT STACK DW 64 DUP(?)STACK ENDSDATA SEGMENT ASSUME DS:DATA STR_1 DB 0DH,0AH, $ STR_2 DB 0DH,0AH, Author:SunFh Date:2011/12/20 $STR_3 DB 0DH,0AH,This is

4、 an electric piano!$STR_4 DB 0DH,0AH,LOW: 1-2-3-4-5-6-7$STR_5 DB 0DH,0AH,MID: Q-W-E-R-T-Y-U$STR_6 DB 0DH,0AH,HIG: A-S-D-F-G-H-J$STR_7 DB 0DH,0AH,You can press play it that likes a piano. DB 0DH,0AH,And you can press ESC or ENTER to EXIT.$STR_8 DB 0DH,0AH,Whats more, you can press P to play some musi

5、cs!STR_9 DB 0DH,0AH,Please selectT the music (Press Q to exit this MENU):STR_10 DB 0DH,0AH,1. Shui Shou$STR_11 DB 0DH,0AH,2. Xin Nian HaoYou can press ENTER to stop play.$STR_12 DB 0DH,0AH,INPUT ERROR!STR_13 DB 0DH,0AH,Please input again!STR_21 DB 0DH,0AH,NOTE_T DW 262,294,330,349,392,440,494DW 523,

6、587,659,698,784,880,988 DW 1046,1175,1318,1397,1568,1760,1975 DW 0 KEY_T DB 1,234567 DB qwertyuasdfghj0MUSIC_N1 DB ,0MUSIC_D1 DB 8,4,4,8,4,4,6,2,4,4,4,6,2 DB 4,2,2,4,4,4,2,2,4,4,4,4,4,4,16 DB 8,4,4,8,4,4,4,2,2,4,4,16 DB 6,2,4,4,6,2,4,4,4,4,4,2,2,16 DB 6,2,4,4,4,2,2,4,2,2,4,4,4,2,2,16MUSIC_N2 DB MUSI

7、C_D2 DB 4,4,8,8,4,4,8,8,4,4,8,8,4,4,16,4,4 DB 8,8,4,4,8,8,4,4,8,8,4,4,32JIEPAI DB ?SPEED DB 2 JIANGE DB 1DATA ENDSCODE SEGMENT ASSUME CS:CODE SHOW MACRO STR LEA DX,STR MOV AH,09H INT 21H ENDM MAIN PROC FAR MOV AX,DATA MOV DS,AX SHOW STR_21 SHOW STR_1 SHOW STR_2 SHOW STR_3 SHOW STR_4 SHOW STR_5 SHOW

8、STR_6 SHOW STR_7 SHOW STR_8 MOV BX,0 KEY_SCAN:MOV AL,6 MOV JIEPAI,AL MOV BX,0000H MOV AH, 00H INT 16H CMP AL, 0DH JZ EXIT CMP AL, 1BH CMP AL, p JZ PLAY LOOKUP:CMP KEY_TBX,AL JE NEXT INC BX JMP LOOKUPNEXT:SHL BX,1 MOV CX,NOTE_TBX CALL BEEP JMP KEY_SCAN EXIT:MOV AH,4CH ERROR: SHOW STR_12 SHOW STR_13 J

9、MP PLAYPLAY:SHOW STR_21 SHOW STR_9 SHOW STR_10 SHOW STR_11INPUT:MOV AH, 00H JZ START CMP AL, 0DH JZ EXIT CMP AL, 1BH JZ NEXT6 JZ NEXT7 CALL ERROR JMP INPUT NEXT6:CALL PLAY_M1NEXT7:CALL PLAY_M2START:CALL MAINSTOP:PUSH AX MOV AH,00H INT 16H CMP AL,0DH JZ PLAY RETPLAY_M1 PROC NEARNEXT5:MOV BX,0NEXT3:MO

10、V AL,MUSIC_N1BX PUSH AX MOV AL,MUSIC_D1BX MOV JIEPAI,AL POP AX MOV AH,11 INT 21H CMP AL,0FFH JZ STOP CMP AL, 0 JE INPUT PUSH BX MOV BX,0LOOK1:CMP KEY_TBX,AL JE NEXT1 INC BX AND BX,0FFH JMP LOOK1 NEXT1: CMP CX,0 JE NEXT4 CALL PAUSE POP BX JMP NEXT3NEXT4:CALL NOBEEPPLAY_M1 ENDPIN:JMP INPUTPLAY_M2 PROC

11、 NEARNEX5:NEX3:MOV AL,MUSIC_N2BX PUSH AX MOV AL,MUSIC_D2BX JE INLOO1: JE NEX1 AND BX,0FFH JMP LOO1 NEX1: JE NEX4 JMP NEX3NEX4:CALL NOBEEPPLAY_M2 ENDPMAIN ENDPBEEP PROC NEAR MOV DX,0012H MOV AX,34DCH DIV CX OUT 42H,AL MOV AL,AH CALL SPK_ON MOV AH,00H INT 1AH MOV AL,JIEPAI ADD AL,SPEED CBW ADD AX,DX M

12、OV BX,AXDELAY1: MOV AH,00H INT 1AH CMP BX,DX JNZ DELAY1 CALL SPK_OFFBEEP ENDPNOBEEP PROC NEAR CALL SPK_OFF DELAY2:MOV AH,00H JNZ DELAY2 NOBEEP ENDPPAUSE PROC NEAR INT 1AH MOV AL,JIANGEDELAY3: JNZ DELAY3 PAUSE ENDPSPK_ON PROC NEAR IN AL,61H OR AL,03H OUT 61H,AL POP AX SPK_ON ENDPSPK_OFF PROC NEAR AND

13、 AL,0FCH SPK_OFF ENDPCODE ENDS END MAIN 2、实验现象(1)程序正常运行,如图3图3 程序正常运行(2)音乐播放菜单(按P键),如图4图4 音乐播放菜单(3)输入错误按键,显示错误,键盘重新输入,如图5图5 输入错误按键(4)音乐播放终止,可以重新选择播放音乐或者返回,如图6图6 音乐终止画面(5)返回主菜单界面(按Q键),如图7图7 返回主菜单界面四、课程设计的心得与体会 一个星期的课程设计,让我尝试了失败的打击,和成功的喜悦。虽然自己查阅了很多资料,但是发信自己对知识的掌握还是不够扎实,不过自己在课程设计过程中,也学到了不少扩展的知识。在程序汇编时候,会遇到很多问题,自己的英文不是很好,有些错误都看不明白,但是跟同学讨论学习之后,修改程序,改正错误。让我意识到,合作是很有必要的,每个人理解的擅长的地方都不同,通过交流也会取长补短。五、参考文献1 王忠民,微型计算机原理,西安:西安电子科技大学出版社,2007年2 赵燕,何南,微机原理与应用实验指导书,大连海洋大学,2008年3 仇玉章,冯一兵,微计算机技术实验与辅导,北京:清华大学出版社,2006年4 朱定华,微机原理、汇编与接口技术实验教程,北京:清华大学出版社,2007年

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1