logo资料库

汇编语言三角波的编写.doc

第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
资料共7页,全文预览结束
方波: DA_CS EQU 8700H ORG 0000H LJMP MAIN ORG 0100H MAIN: MOV IE,#00H MOV PSW,#00H MOV SP,#60H MOV DPTR,#DA_CS M1:MOV A,#00H MOVX @DPTR,A MOV R2,#01H LCALL DE MOV A,#0FFH MOVX @DPTR,A MOV R2,#01H LCALL DE SJMP M1 DE: PUSH 02H LP1:PUSH 02H LP2:PUSH 02H LP3:DJNZ R2,LP3 POP 02H DJNZ R2,LP2 POP 02H DJNZ R2,LP1 POP 02H DJNZ R2,DE RET END 锯齿波: ORG 0000H LJMP START ORG 1000H START: MOV DPTR,#8700H MOV A,#00H SHUCHU:MOVX @DPTR,A MOV R2,#01H ACALL DELAY INC A SJMP SHUCHU PUSH 02H PUSH 02H PUSH 02H DELAY: LP1: LP2:
LP3: DJNZ R2,LP3 POP 02H DJNZ R2,LP2 POP 02H DJNZ R2,LP1 POP 02H DJNZ R2,DELAY RET 三角波: 实验 8-3 ; ;输出三角波 ;延时常数=‘#01H’ 三角波周期=15mS ; ;用示波器观察 DAC-OUT ; DA_CS EQU 8700H ORG 0000H LJMP MAIN ORG 0100H MAIN: MOV IE,#00H MOV PSW,#00H MOV SP,#60H MOV DPTR,#DA_CS MOV A,#00H ;从 0 开始上升 M1: MOVX @DPTR,A ;0ah ;01H MOV R2,#0ah LCALL DELAY INC A CJNE A,#0FFH,M1 ;判断是否到顶 ;加 1 上升 ; 0ah ;01H ;减 1 下降 ;通用延时子程序 M2: MOVX @DPTR,A MOV R2,#0ah LCALL DELAY DEC A CJNE A,#00H,M2 SJMP M1 ; DELAY: PUSH 02H PUSH 02H LP1: PUSH 02H LP2: LP3: DJNZ R2,LP3 POP 02H
DJNZ R2,LP2 POP 02H DJNZ R2,LP1 POP 02H DJNZ R2,DELAY RET END 实验 9.1 AD_CS EQU 9000H ORG 0000H SJMP MAIN ORG 0030H MAIN: MOV IE,#00H MOV PSW,#00H MOV SP,#60H MOV DPTR,#AD_CS MOV P1,#00H MOV A,#00H M1: MOVX @DPTR,A MOV R2,#20H LCALL DELAY MOVX A,@DPTR MOV 50H,A MOV P1,A REP: SJMP M1 ; DELAY: PUSH 02H PUSH 02H LP1: PUSH 02H LP2: LP3: DJNZ R2,LP3 POP 02H DJNZ R2,LP2 POP 02H DJNZ R2,LP1 POP 02H DJNZ R2,DELAY RET END 实验 9.2 EQU 9000H AD_CS ZWMADDR EQU 8002H ZXMADDR EQU 8004H ORG 0000H
SJMP MAIN ORG 0030H MAIN: MOV IE,#00H MOV PSW,#00H MOV SP,#60H M1: MOV DPTR,#AD_CS MOV A,#00H MOVX @DPTR,A LCALL DIS MOV DPTR,#AD_CS MOVX A,@DPTR MOV 50H,A MOV P1,A REP: SJMP M1 ; ;显示子程序 DIS: MOV DPTR,#CHAR MOV A,50H ANL A,#0FH MOVC A,@A+DPTR MOV DPTR,#ZXMADDR MOVX @DPTR,A MOV A,#01H MOV DPTR,#ZWMADDR MOVX @DPTR,A MOV R2,#5 LCALL DELAY ; MOV A,50H ANL A,#0F0H SWAP A MOV DPTR,#CHAR MOVC A,@A+DPTR MOV DPTR,#ZXMADDR MOVX @DPTR,A MOV A,#02H MOV DPTR,#ZWMADDR MOVX @DPTR,A MOV R2,#5 LCALL DELAY RET ;送出字形码 ;右边第二位显示 ;送出字位码 CHAR: DB 3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H ;字形码表 DB 7FH, 6FH, 77H, 7CH, 39H, 5EH, 79H, 71H ;原码 ;
;通用延时子程序 DELAY: PUSH 02H PUSH 02H LP1: PUSH 02H LP2: LP3: DJNZ R2,LP3 POP 02H DJNZ R2,LP2 POP 02H DJNZ R2,LP1 POP 02H DJNZ R2,DELAY RET END 实验 9.22 EQU 9000H AD_CS ZWMADDR EQU 8002H ;字位码锁存器地址 ZXMADDR EQU 8004H ;字形码锁存器地址 ORG 0000H SJMP MAIN ORG 0030H ;选择 IN0 通道 ; 启动 AD ;以显示子程序进行延时 ;读取 AD 结果 ;数码管与 LED 同时显示 MAIN: MOV IE,#00H MOV PSW,#00H MOV SP,#60H M1: MOV DPTR,#AD_CS MOV A,#00H MOVX @DPTR,A LCALL DIS MOV DPTR,#AD_CS MOVX A,@DPTR MOV 50H,A MOV P1,A REP: SJMP M1 ; ;显示子程序 DIS: MOV A,50H MOV B,#100 DIV AB MOV 51H,A MOV A,B MOV B,#10 DIV AB MOV 52H,A MOV 53H,B ; MOV DPTR,#CHAR
MOV A,51H MOVC A,@A+DPTR ;取出字型码 MOV DPTR,#ZXMADDR MOVX @DPTR,A MOV A,#04H MOV DPTR,#ZWMADDR MOVX @DPTR,A MOV R2,#5 LCALL DELAY ;送出字位码 ;送出字形码 ;右边第一位显示 MOV A,52H MOV DPTR,#CHAR MOVC A,@A+DPTR ;取出字型码 MOV DPTR,#ZXMADDR MOVX @DPTR,A MOV A,#02H MOV DPTR,#ZWMADDR MOVX @DPTR,A MOV R2,#5 LCALL DELAY ;送出字位码 ;送出字形码 ;右边第二位显示 ; ; MOV A,53H MOV DPTR,#CHAR MOVC A,@A+DPTR ;取出字型码 MOV DPTR,#ZXMADDR MOVX @DPTR,A MOV A,#01H MOV DPTR,#ZWMADDR MOVX @DPTR,A MOV R2,#5 LCALL DELAY RET ;送出字位码 ;送出字形码 ;右边第二位显示 CHAR: DB 3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H ;字形码表 DB 7FH, 6FH, 77H, 7CH, 39H, 5EH, 79H, 71H ;原码 ;通用延时子程序 ; DELAY: PUSH 02H PUSH 02H LP1: PUSH 02H LP2: LP3: DJNZ R2,LP3 POP 02H DJNZ R2,LP2 POP 02H DJNZ R2,LP1 POP 02H
DJNZ R2,DELAY RET END
分享到:
收藏