实验三8255A并行口实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三8255A并行口实验
一、实验目的
1、了解8255A的基本工作方式及特点。
2、学会8255A在计算机系统中的典型应用方法。
二、实验内容
利用8255A的PA端口作为输入口,读取开关状态,并将此状态通过8255A
的PB端口再驱动发光二极管显示出来。
三、实验步骤
1、连线:将实验箱上8255A芯片A口的PA0-PA7依次和开关量输入Kl-K8相连,B口的PB0-PB7依次接Ll-L8。
端口地址:A口---FF28H B口---FF29H C口---FF2AH
控制口---FF2BH
2、编辑程序:实验箱上电,打开实验程序,PC机与下位机通信成功,将事先编好的程序编辑输入。
3、调试程序:编译程序,根据提示更正错误;通过后下载程序至实验箱,然后单步运行程序,观察相应寄存器的值的变化,并察看发光二极管的状态与开关状态是否一致,如不一致,分析原因并改正。
4、运行程序:连续运行程序,改变开关状态,观察发光二极管的状态变化,记录结果。
5、实验总结分析:分析实验过程及结果,完成实验报告。
四、编程
CODE SEGMENT
ASSUME CS:CODE
IOCONPT EQU 0FF2BH ;设置控制端口常量
IOBPT EQU 0FF29H ;设置数据端口B地址常量
IOAPT EQU 0FF28H ;设置数据端口A地址常量
ORG 11B0H
START: MOV AL,90H
MOV DX,IOCONPT
OUT DX,AL ;往控制端口写控制字,设置A口工作在方式0输入,B方式
0输出
IOLED1: MOV DX,IOAPT
IN AL,DX ;读端口A的数值
MOV DX,IOBPT
OUT DX,AL ;往端口B输出数据
JMP IOLED1
CODE ENDS
END START
五、思考题
1. 利用8255A模拟交通灯系统
2. 利用8255A和实验箱上的8个开关与8个发光二极管设计一个电子抢答器,功能如下:○1K1—K7作为抢答输入端,L1—L7为抢答指示器,K8为控制端;○2K8闭合为抢答开始信号(此时L8亮);○3当正常抢答时,其所对应的发光二极管亮,犯规抢答时(开始信号未发出),其所对应的发光二极管闪烁,无论何种情况,L1—L7中只要有一个发光二极管动作,其他发光二极管均被锁定为熄灭状态;○4无论抢答违规与否,只要K8状态变化,L1—L7均复位。
注意:抢答时开关闭合后应紧接着断开(模拟抢答按钮)