实验任务r
r
实验任务:按键控制交通灯r
r
实验任务:PA输入按键控制,PBPC输出r
连接灯r
r
规定格式r
CODEttSEGMENTtttH82552ASMr
ASSUMEtCSCODEr
IOCONPTEQU0FF2BHttt8255控制口r
IOAPTtEQU0FF28HtttPA口r
IOBPTtEQU0FF29HtttPB口r
IOCPTtEQU0FF2AHtttPC口r
代码区r
ORG11e0Hr
STARTtMOVAL82HttttPB输入PAPC输出r
MOVDXIOCONPTr
OUTDXALtttt写命令字r
r
MOVDXIOBPTtttt读PB口r
INALDXr
MOVBYTEPTRDS0601HALt保存PB口数据r
MOVDXIOCONPTtttt8255控制口r
MOVAL90Hr
OUTDXAL写命令字PA输入PBPC输r
r
CALLKEY查询总开关r
MOVDXIOBPTttttr
MOVALDS0601Hr
ORAL0F0HPB口高位4熄灭r
OUTDXALr
r
MOVDXIOCPTr
MOVAL0F0HttttPC口高位4熄灭tr
OUTDXALtttt四路口红灯全亮r
r
CALLDELAY1ttt延时并查按键r
南北绿色和东西红灯处理r
IOLED0MOVAL10100101Br
MOVDXIOCPTr
OUTDXALtttt南北绿灯亮东西红灯亮r
r
CALLDELAY1ttttr
CALLDELAY1tttt延时并查按键r
r
ORAL0F0HPC口高位4熄灭r
OUTDXALtttt南北绿灯灭r
南北黄灯闪烁八次处理r
MOVCX8H配合LOOP循环八次r
IOLED1MOVDXIOBPTr
MOVALDS0601H把上次PB口放入AL里实现与和或熄灭闪烁处理r
ANDAL10101111Bttt共阳极因此低电平点亮tr
OUTDXALtttt南北黄灯亮ttr
CALLDELAY1r
ORAL01010000Bttt共阳极因此低电平点亮ttr
OUTDXALt南北黄灯灭tr
CALLDELAY1ttt调用延时并查按键r
LOOPIOLED1南北黄灯闪烁8次r
东西灯处理r
r