- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验二?8255并行接口应用实验
一.实验目的
1. 掌握8255工作方式的编程设计。2. 8255与外部设备进行连接的应用。
二.实验设备与材料:
TDN86/88教学实验系统一台,扁平插线若干。
三.实验原理:?
INTEL8255是一种通用的可编程并行I/O接口芯片,是专为INTEL公司的微处理器设计的,也可用于其它系列的微型机系统中。利用8086汇编指令系统,编制初始化程序,可以变更8255?的工作方式,通用性强,使用灵活。8255具有3个带锁存或缓冲的数据端口,它的并行数据宽度为8位。可与外设并行进行数据交换。A口和B口内具有中断控制逻辑,在外设与CPU之间可用中断方式进行信息交换。?8255能与许多外部设备连接,例如:键盘、显示器、打印机等。
(a)工作方式控制字???????????????????(b)C口按位置位/复位控制字
四.实验内容及步骤
1.8255的一般输入输、出方式
本系统中的8255芯片8255的数据线、地址线、读写控制线等分别与系统总线相连,其A、B、C三个端口以排针形式引出,供8255实验使用,其线路如图1所示。
图1 8255接口实验中端口地址如表1所示
表1
信号线 寄存器 编址 IOY3 A口 60H B口 61H C口 62H 控制寄存器 63H ?
?
?
?
?
接口实验单元中的开关和发光二极管电路
?
按图所示实验线路,8255端口A工作在方式0并作为输出口,端口B工作在方式0并作为输入口。用一组开关信号接入端口B, 端口A输出线接至一组发光二极管上,通过对8255编程来实现输入输出功能。
实验步骤
??????
图2 8255输入输出方式实验接线图
注:圆圈处是要求接的连线。
(1)按图2接线。用扁平线(8头)分别插在8255的A口和发光二极管的插针上。用扁平线 分别插在8255的B口和拨动开关的插针上。
(2)输入源程序,汇编、连接后装入系统。
????????参考程序1?
STACK SEGMENT STACK
???DW 64?DUP(?)
STACK ENDS
CODE SEGMENT
???ASSUME CS:CODE
START:?MOV AL,82H ;设8255方式A位输出,B口位输入。
???OUT 63H,AL
A1:???IN AL,61H
???OUT 60H,AL
??????JMP A1
CODE ENDS
?????END START
?(3)执行程序后,拨动开关组K0-K7,观察发光二极管LED0-LED7变化,它应是与开关组K0-K7的值是一一对应的变化。
2.8255的选通输入、输出方式
按图3 所示实验线路,8255端口A工作在方式0并作为输出口,端口B工作在方式1并作为输入口。从端口C的PC2成为选通信号输入, 端STBb,PC0成为中断请求信号输出端INTRb。当B口数据就绪后,通过发口STBb信号来请求CPU读取端口B数据并送A口输出显示。
实验步骤
????????图3 8255选通方式实验接线图
(KK1-初态为“1”)
注:圆圈处是要求接的连线。
(1)????按图3接线。用扁平线(8头)分别插在8255的A口和发光二极管的插针上。用扁平线 分别插在8255的B口和拨动开关的插针上。8255的PC0插针接8259的IRQ7插针上, 8255的PC1插针接KK1-插针上。
(2)????输入源程序,汇编、连接后装入系统。
????????参考程序2
STACK SEGMENT STACK
???DW 64?DUP(?)
STACK ENDS
CODE SEGMENT
???ASSUME CS:CODE
START:?CLI
???MOV?AL,0A6H
???OUT??63H,AL
???MOV AL,05H
???OUT 63H,AL
????????PUSH DS
???MOV AX,0000H
???MOV DS,AX
???MOV AX,OFFSET?IRQ7?
???ADD AX,2000H
???MOV SI,003CH
???MOV [SI],AX
???MOV AX,0000H
???MOV SI,003EH
???MOV [SI],AX
???POP DS
???IN AL,21H ;读 IMR
???AND AL,7FH ;开IRQ7中断
???OUT 21H,AL
A1:?????STI
????????HLT ;等待中断请求信号
???JMP A1
IRQ7:??IN AL,61H ;读开关信息
????????OUT 60H,AL ;输出开关信息
???MOV AL,20H
???OUT 20H,AL
???IRET
CODE ENDS
?????END STA
文档评论(0)