微机原理电子琴设计讨论报告_第1页
微机原理电子琴设计讨论报告_第2页
微机原理电子琴设计讨论报告_第3页
微机原理电子琴设计讨论报告_第4页
微机原理电子琴设计讨论报告_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

1、讨论课报告一、题目:利用8086外接8253可编程定时器/计数器输出音频信号,用8255A接8只按键,作为电子琴1、2、3、4、5、6、7、1数字键按键,编程完成按下数字键按键即发出相应的音调。二、硬件设计模块图8086 CPU音阶输入 PA8255A 计数器08253驱动电路扬声器电路图各个模块及其连接说明:控制系统以8086为核心,经8255A接口芯片连接8只按键作为输入部分,经8253接口芯片连接喇叭的输出部分。8086与8253定时器/计数器,8255A总线连接,还要添加8086地址信息锁存电路,8253芯片、8255A芯片的地址译码电路共同组成电子琴系统的硬件。CPU8086地址信息

2、的锁存电路。AD0-AD7D0-D7锁存器A0-A78253芯片、8255A芯片的地址译码电路。CSRDWRA1A0RDWRA0A1+5V2MHZGATECLKOUT825315141312111098A5 1A6 2A7 3 6A 4A 5ABCE1E2E3Y0Y1Y2Y3Y4Y5Y6Y7CSRDWRA1A0CS2RDWRA2A1PA8255APBCS174LS1388086的16位地址信号中,使用低8位,高8位全为0,利用74LS138译码器实现片选控制。73LS138的C、B、A输入端分别连接A7、A6、A5,则译码输出Y2作为8253的片选端,Y3作为8255A的片选端。A2、A1作为

3、8255A片内地址信号线,A0没有使用,所有端口地址均为码地址。键盘电路。扬声器驱动电路。D0D1D2D3D4D5D6D7RDWRA0A1CSCLK0GATE0OUT0CLK1GATE1OUT1CLK2GATE2OUT2AD0 8AD1 7AD2 6AD3 5AD4 4AD5 3AD6 2AD7 1RD 22WR 23A0 19A1 20CS 219 2MHZ1110QNPNRRQ1310K10K141415138253181617扬声器 8253计数器输出接NPN三极管的基极,NPN发射极接扬声器,利用三极管的电流放大原理驱动扬声器发音,扬声器驱动电路如图所示。-三、软件设计流程图开始825

4、5A初始化输入8255A端口A信息Y给AX赋值4545判断是否为“1”判断是否为“2”N Y给AX赋值4050判断是否为高音“1”Y给AX赋值22728253初始化子程序N延时子程序关闭8253输出8255A的芯片初始化程序设计。MOV AX,10000010B;8255的 PB口输入 MOV DS,203;8255控制口地址 OUT DX,AL;键值判断程序设计。 ;键值判断程序段 K1: MOV DX,201 ;PB端口地址 IN AL,DX;读开关状态 TEST AL,01H;判断是否是K1闭合 JNZ K2;不是转K2 MOV AX,2273;是K1闭合送“1”音频数据1/440.00

5、Hz JMP DDD K2:IN AL,DX;读开关状态 TEST AL,01H;判断是否是K2闭合 JNZ K3;不是转K3 MOV AX,2273;是K2闭合送“2”音频数据1/493.88Hz JMP DDD K3:IN AL,DX;读开关状态 TEST AL,01H;判断是否是K3闭合 JNZ K4;不是转K4 MOV AX,2273;是K3闭合送“3”音频数据1/554.37Hz JMP DDD K4:IN AL,DX;读开关状态 TEST AL,01H;判断是否是K4闭合 JNZ K5;不是转K5 MOV AX,2273;是K4闭合送“4”音频数据1/587.33Hz JMP DD

6、D K5:IN AL,DX;读开关状态 TEST AL,01H;判断是否是K5闭合 JNZ K6;不是转K6 MOV AX,2273;是K5闭合送“5”音频数据1/659.26Hz JMP DDD K6:IN AL,DX;读开关状态 TEST AL,01H;判断是否是K6闭合 JNZ K7;不是转K7 MOV AX,2273;是K6闭合送“6”音频数据1/7DHHz JMP DDD K7:IN AL,DX;读开关状态 TEST AL,01H;判断是否是K7闭合 JNZ K8;不是转K8 MOV AX,2273;是K7闭合送“7”音频数据1/830.61Hz JMP DDD K8:IN AL,D

7、X;读开关状态 TEST AL,01H;判断是否是K8闭合 JNZ K1;不是转K2 MOV AX,2273;是K8闭合送“8”音频数据1/880.30Hz JMP DDD 8253初始化子程序设计: OUTTONE PORC NEAR;按音频数据设置定时时间常数 PUSH AX;键码压栈 MOV CX,76H;计数器1,16位二进制,方式2(方波) MOV DX,20BH;定时器控制口地址 OUT DX,AL; POP AX;键码出栈 MOV DX,AL;定时器1口地址 MOV AL,AH;写时间常数低8位 OUT DX,AL;写时间常数高8位 RET OUTTONE EDNP延时子程序设计

8、: DELAY PROC;延时子程序 PUSH CX;现场保护 MOV AX,76H LOOP $ POP CX;现场恢复 RET DELAY EDNP -四、讨论小结通过此次讨论课,对8086,8255A,8253之间的连接有了更加清楚的认识,也对8255A与键盘连接接受信号,8253对扬声器进行驱动的流程和过程有了进一步的加深。在程序设计方面,对8253和8255A的功能又复习了一边,不仅弄明白了这次试验,还更加了解8253的计时器功能,延时,发射方波等作用,8255A的并行接口作用等。-五、附件:电路图,流程图、源程序源代码:CODES SEGMENT ASSUME CS:CODES,D

9、S:DATAS,SS:STACKSSTART: MOV AX,10000010B;8255的 PB口输入 MOV DS,203;8255控制口地址 OUT DX,AL; ;键值判断程序段 K1: MOV DX,201 ;PB端口地址 IN AL,DX;读开关状态 TEST AL,01H;判断是否是K1闭合 JNZ K2;不是转K2 MOV AX,2273;是K1闭合送“1”音频数据1/440.00Hz JMP DDD K2:IN AL,DX;读开关状态 TEST AL,01H;判断是否是K2闭合 JNZ K3;不是转K3 MOV AX,2273;是K2闭合送“2”音频数据1/493.88Hz

10、JMP DDD K3:IN AL,DX;读开关状态 TEST AL,01H;判断是否是K3闭合 JNZ K4;不是转K4 MOV AX,2273;是K3闭合送“3”音频数据1/554.37Hz JMP DDD K4:IN AL,DX;读开关状态 TEST AL,01H;判断是否是K4闭合 JNZ K5;不是转K5 MOV AX,2273;是K4闭合送“4”音频数据1/587.33Hz JMP DDD K5:IN AL,DX;读开关状态 TEST AL,01H;判断是否是K5闭合 JNZ K6;不是转K6 MOV AX,2273;是K5闭合送“5”音频数据1/659.26Hz JMP DDD K

11、6:IN AL,DX;读开关状态 TEST AL,01H;判断是否是K6闭合 JNZ K7;不是转K7 MOV AX,2273;是K6闭合送“6”音频数据1/7DHHz JMP DDD K7:IN AL,DX;读开关状态 TEST AL,01H;判断是否是K7闭合 JNZ K8;不是转K8 MOV AX,2273;是K7闭合送“7”音频数据1/830.61Hz JMP DDD K8:IN AL,DX;读开关状态 TEST AL,01H;判断是否是K8闭合 JNZ K1;不是转K2 MOV AX,2273;是K8闭合送“8”音频数据1/880.30Hz JMP DDD DDD:CALL OUTTONE;调用8253初始化子程序 CALL DELAY;延时 MOV AL,2;关闭发音 CALL OUTTONE;调用8253初始化子程序 JMP K1 OUTTONE PORC NEAR;按音频数据设置定时时间常数 PUSH AX;键码压栈 MOV CX,76H;计数器1,16位二进制,方式2(方波) MOV DX,20BH;定时器控制口地址 OUT DX,A

温馨提示

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

评论

0/150

提交评论