PLC
登录
直播中
刘桂英
7年用户
1167经验值
私信
关注
怎样去设计一种基于8255的八路抢答器呢
开启该帖子的消息推送
8255
抢答器
代码
怎样去设计一种基于8255的八路抢答器呢?
如何去编写基于8255的八路抢答器的代码程序?
回帖
(1)
张红玲
2021-9-13 17:40:17
电路图
代码
IOY0 EQU 0600H ;片选IOY0对应的端口始地址
MY8255_A EQU IOY0+00H*2 ;8255的A口地址
MY8255_B EQU IOY0+01H*2 ;8255的B口地址
MY8255_C EQU IOY0+02H*2 ;8255的C口地址
MY8255_MODE EQU IOY0+03H*2 ;8255的控制寄存器地址
SSTACK SEGMENT STACK
DW 32 DUP(?)
SSTACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START:
MOV DX, MY8255_MODE
MOV AL,
OUT DX,AL
AA1:
MOV DX,MY8255_A
IN AL,DX
CALL DELAY
CMP AL,00H ;判断开关是否按下
JZ AA1
CMP AL,01H ;按下的是第一个开关 0000 0001
JZ T1 CMP AL,02H ;按下的是第二个开关 0000 0010
JZ T2 CMP AL,04H ;按下的是第三个开关 0000 0100
JZ T3 CMP AL,08H ;按下的是第四个开关 0000 1000
JZ T4 CMP AL,10H ;按下的是第五个开关 0001 0000
JZ T5
CMP AL,20H
JZ T6
CMP AL,40H
JZ T7
CMP AL,80H
JZ T8
T1: ;若按下的是第一个 则显示1 送06H给B口
MOV AL,06H
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T2:
MOV AL,5BH
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T3:
MOV AL,4FH
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T4:
MOV AL,66H
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T5:
MOV AL,6DH
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T6:
MOV AL,7CH
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T7:
MOV AL,07H
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T8:
MOV AL,7FH
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
DELAY:
PUSH CX
MOV CX, 0F000
HAA2:
PUSH AX
POP AX
LOOP AA2
POP CX
RETCODE
ENDS
END START
电路图
代码
IOY0 EQU 0600H ;片选IOY0对应的端口始地址
MY8255_A EQU IOY0+00H*2 ;8255的A口地址
MY8255_B EQU IOY0+01H*2 ;8255的B口地址
MY8255_C EQU IOY0+02H*2 ;8255的C口地址
MY8255_MODE EQU IOY0+03H*2 ;8255的控制寄存器地址
SSTACK SEGMENT STACK
DW 32 DUP(?)
SSTACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START:
MOV DX, MY8255_MODE
MOV AL,
OUT DX,AL
AA1:
MOV DX,MY8255_A
IN AL,DX
CALL DELAY
CMP AL,00H ;判断开关是否按下
JZ AA1
CMP AL,01H ;按下的是第一个开关 0000 0001
JZ T1 CMP AL,02H ;按下的是第二个开关 0000 0010
JZ T2 CMP AL,04H ;按下的是第三个开关 0000 0100
JZ T3 CMP AL,08H ;按下的是第四个开关 0000 1000
JZ T4 CMP AL,10H ;按下的是第五个开关 0001 0000
JZ T5
CMP AL,20H
JZ T6
CMP AL,40H
JZ T7
CMP AL,80H
JZ T8
T1: ;若按下的是第一个 则显示1 送06H给B口
MOV AL,06H
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T2:
MOV AL,5BH
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T3:
MOV AL,4FH
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T4:
MOV AL,66H
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T5:
MOV AL,6DH
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T6:
MOV AL,7CH
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T7:
MOV AL,07H
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
T8:
MOV AL,7FH
MOV DX,MY8255_B
OUT DX,AL
JMP AA1
DELAY:
PUSH CX
MOV CX, 0F000
HAA2:
PUSH AX
POP AX
LOOP AA2
POP CX
RETCODE
ENDS
END START
举报
更多回帖
rotate(-90deg);
回复
相关问答
8255
抢答器
代码
八路
抢答器
2017-05-18
4678
谁有基于单片机的
八路
抢答器
2012-09-23
7228
小白求
一
个
八路
抢答器
2017-12-12
4679
为什么
八路
抢答器
蜂鸣器响声不连续?
2020-02-29
6258
求基于单片机(AT89C51)的
八路
抢答器
的设计
2016-04-13
3168
求大神指点
怎样
去
设计
一种
抢答器
的电路?
2021-07-02
1189
请问
怎样
去
设计
一种
基于51单片机的六
路
抢答器
?
2021-07-15
1617
有关制作
八路
抢答器
的相关问题
2013-12-28
4574
如何
去
实现
一种
基于51单片机的六
路
抢答器
设计
呢
2021-11-02
1671
关于proteus做的
八路
抢答器
咨询
2020-12-07
8797
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分