正在加载图片...
T KB: MOV DPTR #PORT A CLR A MOVX@DPTR,A;关显示,键送0 INC DPTR INC DPTR;指向 PORT C MOVX A, ODPTR;读键输入 CPL A ANLA,#0FH;屏蔽无效位 RET 取键值程序 功能:等待键入,并刷新显示,并返回键值放A 占用:PSW,A,DPTR,RO,R2,R3,R4,R6,R7 入口:无出口:A ORG 0190H WAT KB: MOV RO, #3FH WAT0: ACALL DISP0;刷新显示器 ACALL t KB JWAT0;无键,循环 ACALL KEY LD;延时消抖,刷新显示 JZ WAT_0;无键,循环 KB VUL: CLR A MOV DPTR, #PORT B TR,A;关显示 MOVR2,#0F班H MoV R4.#0 KB 1: MOV DPTR #PORT A Mov A R2 MOVX @DPTR,A;扫描键盘 INC DPTR INC DPTR MOVX A, ODPTR;读键盘 CPL A ANLA,#0FH;屏蔽无效位 JNZ KB2;有键,转键分析 INC R4 Mov A R2 JNB ACO.7,WAT0;无键,返 MOV R2, A SJMP KB1;无键,扫描下一行 JCKB_3;有键,转取键值 XCHA,R4;取下一行T_KB: MOV DPTR,#PORT_A CLR A MOVX @DPTR,A ;关显示,键送 0 INC DPTR INC DPTR ;指向 PORT_C MOVX A,@DPTR ;读键输入 CPL A ANL A,#0FH ;屏蔽无效位 RET ;取键值程序 ;功能:等待键入,并刷新显示,并返回键值放 A ;占用:PSW,A,DPTR,R0,R2,R3,R4,R6,R7 ;入口:无 出口:A ORG 0190H WAT_KB: MOV R0,#3FH WAT_0: ACALL DISP_0 ;刷新显示器 ACALL T_KB JZ WAT_0 ;无键,循环 ACALL KEY_LD ;延时消抖,刷新显示 JZ WAT_0 ;无键,循环 KB_VUL: CLR A CPL A MOV DPTR,#PORT_B MOVX @DPTR,A ;关显示 MOV R2,#0FEH MOV R4,#0 KB_1: MOV DPTR,#PORT_A MOV A,R2 MOVX @DPTR,A ;扫描键盘 INC DPTR INC DPTR MOVX A,@DPTR ;读键盘 CPL A ANL A,#0FH ;屏蔽无效位 JNZ KB_2 ;有键,转键分析 INC R4 MOV A,R2 JNB ACC.7,WAT_0 ;无键,返回 RL A MOV R2,A SJMP KB_1 ;无键,扫描下一行 KB_2: RRC A JC KB_3 ;有键,转取键值 XCH A,R4 ;取下一行
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有