现代微机原理与接口技术综合练习.ppt
《现代微机原理与接口技术综合练习.ppt》由会员分享,可在线阅读,更多相关《现代微机原理与接口技术综合练习.ppt(36页珍藏版)》请在三一办公上搜索。
1、1,综 合 练 习,2,例1 假设有一个44的矩阵键盘通过并行接口芯片8255与微机相连。8255的A口作为输出口,与键盘的行线相连;B口为输入口,与键盘列线相连。,设8255A口地址为60H,B口地址为61H,控制寄存器地址为63H,请编写键盘扫描程序。,3,4,程序如下:mov al,82h out 63h,albegin:mov al,0;检查是否有键按下out 60h,alwait:in al,61hand al,0fhcmp al,0fhjz wait;无键按下,继续等待,5,sm:mov dl,4;行数送dlmov al,0feh;扫描码,0行为0mov ch,0;键号初值为0sr
2、ow:out 60h,al;扫描一行 rcl al,1;修改扫描行mov ah,al;保存下次要扫描的扫描码in al,61h;读列线状态and al,0fhcmp al,0fh;是否有列线为0jnz scol;有列线为0转到scol,6,addch,4;否则键号4moval,ah;取回行扫描码decdl;行数减1jnzsrow;继续扫描行jmpbeginscol:rcral,1jncproce;该列为0,转处理程序incch;否则键号1,jmpscol;继续查找proce:,7,思考题,如何将上题改成中断方式?假设任意键按下后,会通过8259的IR5向CPU发中断请求,另外,8255的端口地
3、址是60H63H,8259的端口地址是20H21H,使用74LS138译码器,请修改原图,使其满足题目要求,并要给出译码电路。然后写出相应的键盘扫描程序。,8,&,&,PC7,IR5,CS,去138,PPICS,A0,A1,A0,A1,8259,INT,INTR,CS,INTRCS,A0,A0,9,Y0,Y7,A,B,C,G1,15,14,13,12,11,10,9,7,1,2,3,4,5,6,74LS138,A5,A6,A7,A8,A9,AEN,INTRCS,PPICS,去8255,去8259,138译码电路部分,10,例2.频率计数器设计,用8254计数外来信号频率fIN(fCLK=1MH
4、z)。,用T/C1产生基准时钟间隔,采用方式1;T/C0采用方式0对外来信号计数;OUT1控制GATE0来停止计数。,返回下页,返回下二页,11,思路:T/C1产生10ms的基准时间间隔,然后通过OUT1控制T/C0计数,用 fIN=(N-M+1)/10ms*1000Hz 公式来计算。其中N是T/C0的初始值,M是计数基准时间到时的T/C0当前计数值。为了辅助控制,我们用8255A口初始化为输出,其中位0为TRG,用来控制计数器1的GATE。8255B口初始化为输入,其中位0接到OUT1脚,通过对该位的不断查询,来确定10ms是否结束,结束后,根据T/C0的计数数值进行计算。,12,OUT P
5、IO0,0;TRG=0MOV AL,01110010B;T/C1OUT 43H,ALMOVAH,2710H;间隔为10ms(2710H10000)OUT 41H,ALMOVAL,AHOUT 41H,ALMOV AL,00110000B;T/C0 OUT 43H,ALMOVAL,00H;初值为65536OUT 40H,ALOUT 40H,AL;STC产生一个脉冲OUT PIO0,2;TRG=1,开始计数,返回下页,转上页,13,S1:IN AL,PIO1;循环读EOC JZS1;等到EOC=1才退出循环 IN AL,40H MOV AH,AL IN AL,40H XCHG AH,AL;AX为当前
6、计数值,14,fIN=(N-M+1)/t=(65536-AX+1)/10)*1000Hz,注意:10ms时M应大于0。,T/C在0方式时经过一个CLK后才将初值写到CE中。所以实际计数值应该在T/C0的当前值基础上加1。,思考1:采用简化电路,用读回命令实现的方法能否很精确?(同时锁存两个计数器的值)。,思考2:为得到精确的fIN,需增大时间间隔,在时间间隔内M=0怎么办?,转上二页,转上页,思考3:如何利用8255来设计一个电路,时T/C0最后的计数值就是实际计数值而不需要加1?,思考4:可否采用中断方式,硬件怎么改,软件如何写?,15,例3 请设法利用一个8255和若干基本门电路,将825
7、4方式0的计数外部脉冲fclk的个数从n1转变成n。,16,步骤1:初始化T/C0,写计数初值步骤2:令PC0=1,利用PC1发一个脉冲(01,10)步骤3:令PC0=0,PC1=1.,17,步骤1:初始化T/C0,写计数初值步骤2:令PC0=0,利用PC1发一个脉冲(01,10)步骤3:令PC0=1,PC1=0.,18,;应在T/C0初值写完后,送其到CEOUT PIO0,1;STC 01OUT PIO0,0;STC 10,例2中思考3的解决办法:,19,例4 某串行输入输出外设引线如图所示,其引线功能说明如下:DI为串行输入,DO是串行输出;CLK为串行输入输出时钟,每一个时钟周期可输入或
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 现代 微机 原理 接口 技术 综合 练习
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-5789759.html