8255键盘扫描与LED数码管显示课件_第1页
8255键盘扫描与LED数码管显示课件_第2页
8255键盘扫描与LED数码管显示课件_第3页
8255键盘扫描与LED数码管显示课件_第4页
8255键盘扫描与LED数码管显示课件_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

一、复习8255及端口的寻址方式实验18255键盘扫描与LED数码管显示实验8255功能特性

三个独立的8位并行输入/输出端口,各端口均具有数据输入、输出能力;三种工作方式:0基本、1选通、2双向;可通过编程设置各端口的工作方式和数据传送方向(入/出/双向)。1.数导线(21根)2.下次实验时间是第7周注意:1.8255相关知识一、复习8255及端口的寻址方式实验18255键盘扫描与L1图9.98285编程结构8255的内部结构C下半部图9.98285编程结构8255的内部结构C下半部2PAPBPC

8255外部引脚

连接系统端的引线:D0~D7RESETA0A1CSRDWRCS:片选RD:读控制WR:写控制RESET:复位A1,A0:端口选择A1A0选择00端口A01端口B10端口C11控制寄存器D0~D7:数据线PAPBPC8255外部引脚连接3分别对应PA、PB、PC三个8位输入/输出端口D0~D7RESETA0A1CSRDWRPAPBPC

三个端口可通过编程分别指定为输入或输出口。连接外设端的引线:PA0~PA7PB0~PB7PC0~PC7

8255外部引脚

分别对应PA、PB、PC三个8位输入/输出端口D0~D7RE48255的初始化8255工作前必须初始化,初始化时需设置:工作方式数据传送方向PC口各数据线的状态(必要时)通过向8255的控制口写入控制字实现:方式控制字*用于控制8255各端口的工作方式和数据传输方向位控字控制PC端口在方式0(输出)时每一根输出线的状态方式0:基本输入/输出方式方式1:选通方式方式2:双向方式(仅A口)

输入

输出

置0(低电平)

置1(高电平)8255的初始化8255工作前必须初始化,初始化时需设置:58255工作方式控制字格式8255工作方式控制字格式6对20H端口的访问格式:直接寻址INAL,20H

;从地址为20H的端口输入一个字节到ALOUT20H,AL

;将AL的内容输出到地址为20H的端口对200H端口的访问格式:间接寻址MOVDX,200H

;将端口地址送DX寄存器INAL,DX

;从地址为200H的端口输入一个字节到ALOUTDX,AL

;将AL的内容输出到地址为200H的端口2.端口寻址方式对20H端口的访问格式:直接寻址2.端口寻址方式7编程1:把8255工作方式设定为:A口指定为方式0,输入,C口为输出;B口指定为方式0,输出;设8255控制字寄存器端口地址为04a6H。分析:根据题目得工作方式命令代码是10010000B或90H。初始化程序段为:movdx,04a6h ;控制寄存器地址movax,90h ;设置为A口输入,;B口输出,C输出outdx,ax;8255初始化编程1:把8255工作方式设定为:A口指定为方式0,输入,C8共阴极:公共端接低电平“L”发光段接高电平“H”共阳极:公共端接高电平“H”发光段接低电平“L”分类:h—小数点*3.LED数码管abcdefg+5V共阴极的情况下定义字形码:FECDBA9876543210共阴极:共阳极:分类:h—小数点*3.LED数码管abc9二、键盘工作原理及键的识别方式键盘的结构1.键盘的工作原理二、键盘工作原理及键的识别方式键盘的结构1.键盘的工作原理10PC0PC1PC22.键的识别——行扫描123PC02.键的识别——行扫描1211掌握8255的编程原理及使用方法三、实验目的用8255扩展扫描3X8行列式键盘,由一位LED数码管显示。1、设计出8255与8086接口对应硬件电路,并完成相应的连接;2、调试对应8255、键盘、及数码管硬件接口电路及相应接口软件3、当用键盘输入时在数码管上显示相应值;4、完成习题的内容。四、实验内容五、实验设备

MUT—Ⅲ型实验箱、8086CPU模块。掌握8255的编程原理及使用方法三、实验目的用8255扩展扫12六、8255与8086及8255与键盘的电路连接DB地址译码器D0~D7WRRDA1A0CS8255PAPBPCIOWIORA2A1D0~D7A15~A19系统总线RL10~RL17(列选择线)

LED-A~LED-DP

(段控)KA10~KA12(行选择线)

LED1(位控)

六、8255与8086及8255与键盘的电路连接DB地址D013电源电路复位键3*8键盘8255并行接口CPU板座LED数码管显示屏RL10~RL17LED1~LED6LED-A~LED-DPKA10~KA12跳线冒电源电路复位键3*8键盘8255并行接口CPU板座LED14七、实验步骤1、实验接线CS0

CS8255(地址为04A0H);PA0~PA7(输入)

RL10~RL17(列选择线);PB0~PB7(输出)

发光二极管LED-A~LED-DP;PC0~PC2(输出)

KA10~KA12(行选择线)PC3(输出)

LED1

2、编程并全速或单步运行。3、全速运行时按动键盘,观察数码管的变化。4、编写实验报告。本实验中8255的地址分配如下:端口A04A0H端口B04A2H端口C04A4H控制口04A6H七、实验步骤1、实验接线本实验中8255的地址分配如下:15八、实验程序流程图采用行扫描法检测八、实验程序流程图采用行扫描法检测16九、编写实验报告包括实验预习内容,实验目的,实验内容,实验步骤和正确的程序代码。注意:

1、编程前先在E盘目录下建一个文件夹,并取一个英名名字,即名字中不能有汉字和数字。编完程序将其存于该目录下。

3、做完实验将实验箱右上角的CPU板卸下,再关实验箱。

2、做实验之前先取下跳线冒。九、编写实验报告包括实验预习内容,实验目的,17十、实验程序assumecs:codecode segment org100hstart:movdx,04a6h ;控制寄存器地址movax,90h ;设置为A口输入,;B口输出,C输出out dx,ax;8255初始化check0:;check0检测是否有健被按下

movax,00h;C口的PC0、PC1、PC2作为行选择线movdx,04a4h;C口地址out dx,ax;写入C口内容00H,即令所有行为低电平

movdx,04a0h;A口地址in ax,dx;读入A口的内容cmpal,0ffh;判定是否有列线为低电平je check0;没有,无闭合键,则循环等待movcx,05ffh;延迟常数,可以修改来改变延时时间

delay:loopdelay ;有,则延迟清除抖动,当cx=0时则停止该循环本实验中8255的地址分配如下:端口A04A0H端口B04A2H端口C04A4H控制口04A6H十、实验程序assumecs:code本实验中8255的18;行扫描键盘和列扫描键盘,确定被按键的行值和列值mov cl,3;行数mov ah,0

mov al,0fbh;0fbh=11111011Bcontin:push ax;将ax的内容(0fbh)入栈保存

mov dx,04a4h;C口地址 out dx,al;写入C口内容0fbh=11111011B,即将第三行置为低电平

mov dx,04a0h;A口地址 in al,dx;读入A口的内容

mov ah,al;将A口的内容送入ah cmp ah,0ffh;判断是否有列线为低电平

jne next;比较结果不等于0则转移,即有列线为低电平 pop ax;比较结果等于0,即没有列线为低电平,(ax)=00fbh ror al,1;fbh(11111011B)循环右移,(al)=11111101检测下一行 loop contin;循环扫描下一行,确定行 jmp check0;若所有行都没有被按下,则返回check0重新检测next: mov ch,cl;保存行值至ch;行扫描键盘和列扫描键盘,确定被按键的行值和列值19mov cl,7;列值从0开始编号0-7begin0:shlah,1;ah为A口的内容,逻辑左移1位,末位补0

jnc goon;无进位则转移,即可确定列loop begin0;继续循环,确定列jmp check0goon:;计算显示码在discode中的位置:(行数-1)*8

+列值mov bl,cl;保存列值至BL dec ch;行数减1mov cl,3shl ch,cl;左移三位即相当于减1之后的行数*8add bl,ch;确定显示码在discode表中的偏移量,即(行数-1)*8+列值mov bh,0 mov cx,bx;显示码在discode表中的偏移量送CXmov cl,7;列值从20display: ;显示输出mov si,offsetdiscode add si,cx;显示码偏移地址

mov dx,04a4h;C口地址 mov al,0fh out dx,al;写入C口内容,使位控(LED1)有效

mov al,[si];取被按键的显示字形码送入al mov dx,04a2h;B口地址 out dx,al;将显示字形码送B口输出显示 nop nopjmpcheck0discodedb 3fh,06h,5bh,4fh,66h,6dh,7dh,

温馨提示

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

评论

0/150

提交评论