微机原理与接口技术课程设计报告——电子琴.doc_第1页
微机原理与接口技术课程设计报告——电子琴.doc_第2页
微机原理与接口技术课程设计报告——电子琴.doc_第3页
免费预览已结束,剩余6页可下载查看

下载本文档

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

文档简介

一、 设计内容编写一实现电子琴的程序,并实现若干扩展功能。功能:1在程序中可预设多首曲目,按不同的敏感键可播放不同的曲目 2弹奏:用户每按一个键盘琴键就弹奏相应的音符; 3. 当弹奏不同音阶时,双色点阵LED显示器显示不同的图案二、元件与仪器1计时器82532并行控制器8255A3实验台 TDN-MD三、设计原理、思路及流程图 1.电子琴的设计原理及思路 1.用试验箱上的晶振输出一个高频的信号,接入8253,用软件给8253和敏感键区进行初始化,敏感键控制不同的频率,并送此分频数给8253,从8253输出相应的音频后,接一个非门,再接入硬件扬声器,扬声器接受到不同频率的波后发出不同的声音。2.用敏感键触发中断服务子程序来判断是给出了哪一个频率。3.用ESC按键来控制是自动演奏曲目1并亮红灯, 其他7个键分别控制da,ri,mi,fa,sa,la,si并亮绿灯。4.其中用一个延时程序,使得发一个音有一定的延时时间。5.有个停止程序,使得晶振不能使得扬声器发声。对于一个特定的/转换接口电路,CPU执行一条输出指令将数据送入/, 即可在其输出端得到一定的电压输出。给/转换器输入按正弦规律变化的数据, 在其输出端即可产生正弦波。对于音乐,每个音阶都有确定的频率。各音阶标称频率值和8253的计数初值:音阶低音5低音6低音7中音1中音2中音3中音4中音5中音6中音7高音1频率(HZ)452535607647722817847977110712451311计数初值61H52H48H43H3CH35H33H2CH27H23H21H不同频率的区别,可通过调节向转换器输出数据的时间间隔,例如:发频率为647HZ,周期为1/647=1.55ms,由于实验箱中的晶振可产生一个为1.8432MHZ的频率。1.625MHZ/647HZ=2511,即分频数。转化为十六进制的数为:9CFH,再经过频率处理,除以25H得到8253的计数初值:43H。其他的初值的计算同理。2.电子琴的硬件框图和硬件连接图图 1 硬件框图图 2 电路连接图3.电子琴的流程图设计四、源程序1.主程序:A 2000MOV AL,86HOUT 63H,ALMOV AX,3000MOV 00A8,AXMOV AX,0000MOV00AA,AX/表示ESC键的中断向量地址,自动播放音乐MOV AX,3100MOV 00AC,AXMOV AX,0000MOV 00AE,AX/表示键的中断向量地址,发音1MOV AX,3200MOV 00B0,AXMOV AX,0000MOV 00B2,AX/表示-键的中断向量地址,发音2MOV AX,3300MOV 00B4,AXMOV AX,0000MOV 00B6,AX/表示键的中断向量地址,发音3MOV AX,3400MOV 00B8,AXMOV AX,0000MOV 00BA,AX/表示;键的中断向量地址,发音4MOV AX,3500MOV 00BC,AXMOV AX,0000MOV 00BE,AX/表示,键的中断向量地址,发音5MOV AX,3600MOV 00C0,AXMOV AX,0000MOV 00C2,AX/表示。键的中断向量地址,发音6MOV AX,3700MOV 00C4,AXMOV AX,0000MOV 00C6,AX/表示/键的中断向量地址,发音7 2.自动播放曲子1程序:A3000MOV AL0FOUT 60,ALMOV BX,5000/曲子的地址MOV AL,BXMOV AH,00CALL 4000A3100MOV AL,F0OUT 60,ALMOV BX,5100MOV AL,BXMOV AH,00CALL 4000A3200MOV AL,F0OUT 60,ALMOV BX,5200MOV AL,BXMOV AH,00CALL 4000A3300MOV AL,F0OUT 60,ALMOV BX,5300MOV AL,BXMOV AH,00CALL 4000A3400MOV AL,F0OUT 60,ALMOV BX,5400MOV AL,BXMOV AH,00CALL 4000A3500MOV AL,F0OUT 60,ALMOV BX,5500MOV AL,BXMOV AH,00CALL 4000A3600MOV AL,F0OUT 60,ALMOV BX,5600MOV AL,BXMOV AH,00CALL 4000A3700MOV AL,F0OUT 60,ALMOV BX,5700MOV AL,BXMOV AH,00CALL 4000A4000A1: MOV DL,25MUL DLPUSH AXMOV AL,B6OUT43,AL/8253初始化POP AXOUT 42,ALMOV AL,AHOUT 42,ALINC BXMOV AH,00MOV AL,BXTEST AL,FFH/唱完一段自动停止JZ A4/唱完MOV CX,77FFA2:PUSH AX/延时POP AXLOOP A2JMP A1A3:MOV AL,BAH/改变8253的控制字,使其工作在方式5,不发声MOV DX,0043HOUT DX,ALJMP 2000A4:PUSH AX/延时POP AXLOOP A4JMP A312.内存单元内容E5100:43 00E5200 3C 00E5300 35 00E5400 33 00E5500 61 00 E5600 52 00E5700 48 00E5000:33 33 3D 33 26 26 26 26 2D 26 2D 33 33 33 33 33 33 4D 45 3D 3D3D 45 4D 45 00E0457:1B 60 2D 5C 3B 27 2E 2F 五、系统调试 电路调试是整个系统功能否实现的关键步骤,我们将整个调试过程分为两大部分:硬件调试、软件调试。1硬件调试硬件调试主要是针对接口部分进行调试。在上电前,先确保电路中不在断路或短路情况,这一工作是整个调试工作的第一步,也是非常重要的一个步骤。在这部分调试中主要使用的工具是万用表,用来完成检测电路中是否存在断路或者短路情况等。注意焊点之间,确保焊点没有短接在一起,同时注意焊点的美观,确保没有开路以及短路的现象出现。在确保硬件电路正常,无异常情况(断路或短路)方可上电调试,上电调试的目的是检验电路是否接错,同时还要检验原理是否正确,在本次设计中,上电调试主要键盘接口控制部分和音频转换电路硬件调试。2 软件调试调试主要方法和技巧:通常一个调试程序应该具备至少四种性能:跟踪、断点、查看变量、更改数值。整个程序是一个主程序调用各个子程序实现功能的过程,要使主程序和整个程序都能平稳运行,各个模块的子程序的正确与平稳运行必不可少,所以在软件调试的最初阶段就是把各个子程序模块进行分别调试。六、心得体会:通过对微机原理及接口应用课程的学习,我们了解并掌握计算机的基本工作原理,以及汇编语言的编制过程,并且能够综合运用所学到的基本理论进行简单的软硬件实验。 在实验期间,虽然时间不是很长,任务也不是很艰巨,但是还是遇到了这样、那样不可预期的困难与阻碍。理论知识基础不牢靠,动手能力薄弱都给我们的实验带来或大或小的失误与挫败,拖累了我们的实验进度。但是,在老师耐心精辟的指导下,在我们一

温馨提示

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

评论

0/150

提交评论