论文首页哲学论文经济论文法学论文教育论文文学论文历史论文理学论文工学论文医学论文管理论文艺术论文 |
图5 系统主程序流程图
图6 INIT8279子程序框图
主要程序
Z8279 EQU 8701H ;8279 状态/命令口地址
D8279 EQU 8700H ;8279 数据口地址
LEDMOD EQU 00H ;左边输入 八位字符显示
;外部译码键扫描方式,双键互锁
LEDFEQ EQU 2FH ;扫描速率
LEDCLS EQU 0C1H ;清除显示 RAM
LEDWR0 EQU 80H ;设定的将要写入的显示RAM地址
READKB EQU 40H ;读 FIFO RAM 地址 0 的命令字 (科教范文网http://fw.NSEAC.com编辑发布)
ORG 0000H
AJMP START
ORG 0040H
START:
MOV SP,#60H
LCALL INIT8279 ;初始化8279
MOV SCON,#50H ;串口 方式 1
MOV TMOD,#20H ;T1 方式 1
MOV TL1,#0FDH ;波特率 9600 的常数
MOV TH1,#0FDH
SETB TR1 ;开中断
SETB ET1
SETB EA
WAIT:
JBC RI,DIS_REC ;是否接收到数据
LCALL GETKEY ;读键盘
CJNE A,#0FFH,WAIT ;是否有键输入
MOV SBUF,B ;串口输出键盘输入的值
NOP
SS: JBC TI,WAIT ;是否发送完毕
SJMP SS
DIS_REC:
MOV A,SBUF ;读串口接收到的数据
CLR C
SUBB A,#30H ;以下判定输入是否在0-F
JC ERROR
SUBB A,#0AH
JNC DIS_REC1
ADD A,#0AH
SJMP DIS_REC2
DIS_REC1:
SUBB A,#7H
JC ERROR
SUBB A,#6H
JNC ERROR
ADD A,#10H
DIS_REC2:
MOV R4,#00H
MOV R5,A
LCALL DISLED ;显示输入的数字(0-F)
ERROR: AJMP WAIT
INIT8279: ;8279初始化子程序 (转载自中国科教评价网www.nseac.com )
PUSH DPH ;保存现场
PUSH DPL
PUSH ACC
LCALL DELAY ;延时
MOV DPTR ,#Z8279
MOV A,#LEDMOD &