资源描述:
《汇编课程设计高杰.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、燕山大学汇编语言与接口技术课程设计报告汇编语言与接口技术课程设计姓名:高杰学号:110104010133班级:计算机应用3班指导教师:张忠平何海涛日期:2014年7月10日18燕山大学汇编语言与接口技术课程设计报告目录1.1课程设计目的31.2课程设计的意义3二、设计题目32.1乐曲程序32.1.1设计要求32.1.2设计原理32.1.3电路连接图62.2光标轨迹程序draw72.2.1设计要求72.2.2设计原理72.2.3程序流程图8三、程序代码93.1题目一代码93.2题目二代码12四、程序运行结果174.1题目一运行结果174.2题目二运行结果17五、心
2、得体会1918燕山大学汇编语言与接口技术课程设计报告一、课程设计的目的和意义1.1课程设计目的1.进一步了解汇编语言指令的功能和用法。2.进一步了解汇编接口的功能和用法。3.了解用汇编语言实现声音的编程。1.2课程设计的意义本次课程设计,给同学们一个把理论知识转化为实际动手能力的机会,使同学们能够更深入的理解汇编语言,掌握汇编语言指令的用法,掌握8255、8253接口的功能和控制方法。本次课程设计的题目难度适中,既可以培养同学们的自信心又可以锻炼同学们解决困难的能力。二、设计题目2.1乐曲程序2.1.1设计要求利用定时器产生声音的方法编写程序,使PC机奏出《两只
3、老虎》的乐曲。2.1.2设计原理1.乐谱中的每个音符有音高和音长两种属性,按照乐谱把每个音符的频率和节拍定义成两个数据表,程序从频率表中取出18燕山大学汇编语言与接口技术课程设计报告一个音符的频率值,以产生一定音高的声音,同时取出相应的节拍计数值控制这一频率的声音延长的时间。图1两只老虎乐谱音阶1234567对应频率262294330349392440494图2音阶2.每个音符的频率值Freq经过转化后送入定时器的42H端口,以产生相应频率的脉冲。转换的公式为:533H*896/Freq=123280H/freqMUS_FREG1DW2dup(262,294,3
4、30,262);频率表DW2dup(330,349,392)DW2dup(392,440,392,349,330,262)DW2dup(294,196,262),-118燕山大学汇编语言与接口技术课程设计报告3.节拍时间表中存放的计数值是音长的1/10,如2拍的音长定为0.5秒,对应的计数值应为50;一拍的音长是0.25秒,对应的计数值应为25.然后控制100p指令反复执行2801*n次来取得音符的延长时间(n为音长所对应的计数值)10ms延迟时间指令:D1:MOVCX,2801D0:LOOPD0TIMEDW8dup(100);时间表DW2dup(100,100
5、,200)DW2dup(50,50,50,50,100,100)DW2dup(100,100,200)4.8254是可编程间隔定时器。为8253的改进型,比8253具有更优良的性能。8254具有一些基本功能:1.有三个独立的16位计数器;2.二进制可按二进制或十进制计数;3.工作于6种不同的工作方式;4.有读回命令,除了可以读出当前计数单元的内容外,还可以读出状态寄存器的内容;5.计数脉冲可以是有规律的时钟信号,也可以是随机信号。计数初值如下:其中fclki是输入脉冲的频率fouti,n=fclki/fouti8254的工作方式如下:·方式0:计数到0结束输出正
6、跃变信号方式。·方式1:硬件可重触发单稳方式。·方式2:频率发生器方式。18燕山大学汇编语言与接口技术课程设计报告·方式3:方波发生器。·方式4:软件触发选通方式。·方式5:硬件触发选通方式。本实验采用计数器0产生基本时钟,选择方式3(方波发生器),初值为0,也就是最大的65536,则其方波的输出频率1.193MHZ/65536=18.28254的方式控制字格式D7D6D5D4D3D2D1D0计数器选择读写格式选择工作方式选择计数码制选择·计数器0·计数器110-计数器211-读出控制字标志00-锁存计数值01-读/写低八位10-读/写高八位11-先读/写低八位
7、、再读/写高八位000-方式0001-方式1010-方式2011-方式3100-方式4101-方式50-二进制数1-十进制数8254读出控制字格式D7D6D5D4D3D2D1D0110-锁存计数值0-锁存状态信息计数器选择(同方式控制字)02.1.3电路连接图18燕山大学汇编语言与接口技术课程设计报告D7-D0XA1XA2IOW#IOR#IOY38086D7-D0OUT0A0A1GATE0CLK0WRRD8254单元CS5V1.19KHZ2.2光标轨迹程序draw2.2.1设计要求程序在屏幕上画出光标移动的轨迹,画城墙、水平线等图,光标的移动受键盘上的方向键控。
8、如果输入ESC键,则程序