单片机键盘乐器课程设计_第1页
单片机键盘乐器课程设计_第2页
单片机键盘乐器课程设计_第3页
单片机键盘乐器课程设计_第4页
单片机键盘乐器课程设计_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、湖南工学院课程设计报告( 2015 2016学年度第 二 学期 )课程名称 接口技术与外部设备课程设计名称键盘电子乐器 姓名 学号 专业 班级 地点 教师 1.课程设计目的及要求1)、实验目标、功能设计要求:利用并行接口8255作为键盘接口,设计一个具有2个八度音阶的键盘乐器,音阶键不少于16个,采用扫描方式管理键盘,音域范围自行定义。2)、软件、硬件环境:Windows XP 、1G内存2. 课程设计步骤(1) 弄明白设计题目(2) 查阅资料,搞清楚8253和8255的工作原理。(3) 上网查阅相关资料(4) 编程实现(5) 完成课程设计报告3. 课程设计内容1)、设计概述(a) 开发平台:

2、masm(b) 参考书籍:微型计算机接口技术及应用、IBMPC汇编语言课程设计、手把手教你学单片机2)、处理流程(a)8253 引脚图8255的工作原理(b)主要函数的程序流程图开 始获取中断向量调用8253,驱动扬声器返回中断向量设置中断向量调用8255,按键发声返回DOS 4. 课程设计结果运行正确: 摁键盘QU:能发低音摁键盘AJ:能发比上行高一音阶的音频摁键盘ZM:能发比上行更高一音阶的音频5. 课程设计总结分析 组员分工及评分:查找资料:阳吉红(B)、董湘北(B) 程序修改实现:尹媚(B+) 董湘北自我评价:接到课程设计题目,刚开始刚到非常的棘手,通过翻阅了上学期的汇编语言程序实验教

3、程,了解到控制电路是以位触发和定时器控制两种不同的方式驱动扬声器发声,8253驱动扬声器,8255接受输入的数据。实验完成还行,巩固了硬件知识。 阳吉红自我评价:这个实验中我们遇到了很多问题但在老师和同学的帮助下得到了解决,这个实验让我了解了接口实验的基本要求,总之学到不少东西啦。 尹媚自我评价: 学完接口技术这门课程,觉得自己学得还可以。但是做完课程设计,才发现自己学得远远不够。虽然课程设计做得不是非常好,但是,还是学到一些东西。知道了8253不近可以用来做计数器,还能编程驱动扬声器。我们这个课程用到了8253和8255。8253用来驱动扬声器,8255用来接受从键盘输入的数据。 总的来说,

4、结果还不是太坏。还是学到了一点东西。6. 附录(源程序)DATAS SEGMENT ;此处输入数据段代码 DATAS ENDSSTACKS SEGMENT ;此处输入堆栈段代码STACKS ENDScode segmentassume cs:codeD1=131 ;设置音频范围D2=147D3=165D4=175D5=196D6=220D7=247Z1=262Z2=294Z3=330Z4=349Z5=392Z6=440Z7=494G1=523G2=587G3=659G4=714G5=784G6=880G7=988oldint8 dd ?oldint9 dd ?time dw 0ascii DB

5、 10H,11H,12H,13H,14H,15H,16H DB 1EH,1FH,20H,21H,22H,23H,24H DB 2CH,2DH,2EH,2FH,30H,31H,32Hmusic dw d1,d2,d3,d4,d5,d6,d7 dw z1,z2,z3,z4,z5,z6,z7 dw g1,g2,g3,g4,g5,g6,g7newint8: dec cs:word ptr time ;指向time jz closevnew8_0: jmp cs:oldint8closev: push ax in al,61h and al,0fdh out 61h,al pop ax jmp new8

6、_0voice: mov cx,ax mov dx,12h mov ax,34dch div cx push ax mov al,0b6h out 43h,al pop ax out 42h,al xchg al,ah out 42h,al in al,61h or al,03h out 61h,al retnewint9: in al,60h push ax in al,61h or al,80h out 61h,al and al,7fh out 61h,al mov al,20h out 20h,al sti pop ax push ax cmp al,80h jb new90 mov

7、cs:word ptr time,04h jmp quitnew90: push cs pop es mov di,offset ASCII mov cx,22d cld repnz scasb jcxz quit sub di,offset ascii dec di shl di,1 mov ax,es:di+music mov cs:word ptr time,0h call voicequit: pop ax cmp al,01h jnz meun lds dx,cs:oldint8 mov ax,2508h int 21h lds dx,cs:oldint9 mov ax,2509h int 21h mov ax,4c00h int 21hmeun: sti jmp meunstart: mov ax,cs mov ds,ax mov ax,3508h ;获取中断向量 int 21h mov cs:Word ptr oldint8,bx mov cs:word ptr oldint8+2,es mov ax,3509h int 21h mov cs:Word ptr oldint9,bx mov cs:word ptr oldint9+2,e

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论