📄 test2.a51
字号:
LJMP LOOP
ISSETA2: CLR SW2
LJMP LOOP
SKIPA2: CJNE A,#3,SKIPA3 ;CHECK FOR SW3
JB SW3,ISSETA3
SETB SW3
LJMP LOOP
ISSETA3: CLR SW3
LJMP LOOP
SKIPA3: CJNE A,#4,SKIPA4 ;CHECK FOR SW4
JB SW4,ISSETA4
SETB SW4
LJMP LOOP
ISSETA4: CLR SW4
LJMP LOOP
SKIPA4: CJNE A,#5,SKIPA5 ;CHECK FOR SW5
JB SW5,ISSETA5
SETB SW5
LJMP LOOP
ISSETA5: CLR SW5
LJMP LOOP
SKIPA5: CJNE A,#6,SKIPA6 ;CHECK FOR SW6
JB SW6,ISSETA6
SETB SW6
LJMP LOOP
ISSETA6: CLR SW6
LJMP LOOP
SKIPA6: CJNE A,#7,SKIPA7 ;CHECK FOR SW7
JB SW7,ISSETA7
SETB SW7
LJMP LOOP
ISSETA7: CLR SW7
LJMP LOOP
SKIPA7: CJNE A,#8,SKIPA8 ;CHECK FOR SW8
JB SW8,ISSETA8
SETB SW8
LJMP LOOP
ISSETA8: CLR SW8
LJMP LOOP
SKIPA8: CJNE A,#09H,SKIP9
MOV A,R5
CLR P3.7
ACALL DELAY1
JB ACC.0,ISSETA9
SETB SWB.0
MOV R5,P1
LJMP LOOP1
ISSETA9: CLR SWB.0
MOV R5,P1
LJMP LOOP1
;++++++++++++++++++++||||||||||||||++++++++++++++++++++
SKIP9: CJNE A,#10H,SKIP10
MOV A,R5
CLR P3.7
ACALL DELAY1
JB ACC.1,ISSET10
SETB SWB.1
MOV R5,P1
LJMP LOOP1
ISSET10: CLR SWB.1
MOV R5,P1
LJMP LOOP1
SKIP10: CJNE A,#11H,SKIP11
MOV A,R5
CLR P3.7
ACALL DELAY1
JB ACC.2,ISSET11
SETB SWB.2
MOV R5,P1
LJMP LOOP1
ISSET11: CLR SWB.2
MOV R5,P1
LJMP LOOP1
SKIP11: CJNE A,#12H,SKIP12
MOV A,R5
CLR P3.7
ACALL DELAY1
JB ACC.3,ISSET12
SETB SWB.3
MOV R5,P1
LJMP LOOP1
ISSET12: CLR SWB.3
MOV R5,P1
LJMP LOOP1
SKIP12: CJNE A,#13H,SKIP13
MOV A,R5
CLR P3.7
ACALL DELAY1
JB ACC.4,ISSET13
SETB SWB.4
MOV R5,P1
LJMP LOOP1
ISSET13: CLR SWB.4
MOV R5,P1
LJMP LOOP1
SKIP13: CJNE A,#14H,SKIP14
MOV A,R5
CLR P3.7
ACALL DELAY1
JB ACC.5,ISSET14
SETB SWB.5
MOV R5,P1
LJMP LOOP1
ISSET14: CLR SWB.5
MOV R5,P1
LJMP LOOP1
SKIP14: CJNE A,#15H,SKIP15
MOV A,R5
CLR P3.7
ACALL DELAY1
JB ACC.6,ISSET15
SETB SWB.6
MOV R5,P1
LJMP LOOP1
ISSET15: CLR SWB.6
MOV R5,P1
LJMP LOOP1
SKIP15: CJNE A,#16H,SKIP16
MOV A,R5
CLR P3.7
ACALL DELAY1
JB ACC.7,ISSET16
SETB SWB.7
LJMP LOOP1
MOV R5,P1
ISSET16: CLR SWB.7
MOV R5,P1
LJMP LOOP1
SKIP16: CJNE A,#17H,SKIP17
MOV A,R6
CLR P3.6
ACALL DELAY1
JB ACC.0,ISSET17
SETB SWB.0
MOV R6,P1
LJMP LOOP1
ISSET17: CLR SWB.0
MOV R6,P1
LJMP LOOP1
;-------------------------------
SKIP17: CJNE A,#18H,SKIP18
MOV A,R6
CLR P3.6
ACALL DELAY1
JB ACC.1,ISSET18
SETB SWB.1
MOV R6,P1
LJMP LOOP1
ISSET18: CLR SWB.1
MOV R6,P1
LJMP LOOP1
SKIP18: CJNE A,#19H,SKIP19
MOV A,R6
CLR P3.6
ACALL DELAY1
JB ACC.2,ISSET19
SETB SWB.2
MOV R6,P1
LJMP LOOP1
ISSET19: CLR SWB.2
MOV R6,P1
LJMP LOOP1
SKIP19: CJNE A,#20H,SKIP20
MOV A,R6
CLR P3.6
ACALL DELAY1
JB ACC.3,ISSET20
SETB SWB.3
MOV R6,P1
LJMP LOOP1
ISSET20: CLR SWB.3
MOV R6,P1
LJMP LOOP1
SKIP20: CJNE A,#21H,SKIP21
MOV A,R6
CLR P3.6
ACALL DELAY1
JB ACC.4,ISSET21
SETB SWB.4
MOV R6,P1
LJMP LOOP1
ISSET21: CLR SWB.4
MOV R6,P1
LJMP LOOP1
SKIP21: CJNE A,#22H,SKIP22
MOV A,R6
CLR P3.6
ACALL DELAY1
JB ACC.5,ISSET22
SETB SWB.5
MOV R6,P1
LJMP LOOP1
ISSET22: CLR SWB.5
MOV R6,P1
LJMP LOOP1
SKIP22: CJNE A,#23H,SKIP23
MOV A,R6
CLR P3.6
ACALL DELAY1
JB ACC.6,ISSET23
SETB SWB.6
MOV R6,P1
LJMP LOOP1
ISSET23: CLR SWB.6
MOV R6,P1
LJMP LOOP1
SKIP23: CJNE A,#24H,SKIP24
MOV A,R6
CLR P3.6
ACALL DELAY1
JB ACC.7,ISSET24
SETB SWB.7
MOV R6,P1
LJMP LOOP1
ISSET24: CLR SWB.7
MOV R6,P1
LJMP LOOP1
SKIP24: CJNE A,#25H,SKIP25
JB SWC.0,ISSET25
SETB SWC.0
LJMP LOOP
ISSET25: CLR SWC.0
LJMP LOOP
SKIP25: CJNE A,#26H,SKIP26 ;CHECK FOR SW2
JB SWC.1,ISSET26
SETB SWC.1
LJMP LOOP
ISSET26: CLR SWC.1
LJMP LOOP
SKIP26: CJNE A,#27H,SKIP27 ;CHECK FOR SW3
JB SWC.2,ISSET27
SETB SWC.2
LJMP LOOP
ISSET27: CLR SWC.2
LJMP LOOP
SKIP27: CJNE A,#28H,SKIP28 ;CHECK FOR SW4
JB SWC.3,ISSET28
SETB SWC.3
LJMP LOOP
ISSET28: CLR SWC.3
LJMP LOOP
SKIP28: CJNE A,#29H,SKIP29 ;CHECK FOR SW5
JB SWC.4,ISSET29
SETB SWC.4
LJMP LOOP
ISSET29: CLR SWC.4
LJMP LOOP
SKIP29: CJNE A,#30H,SKIP30 ;CHECK FOR SW6
JB SWC.5,ISSET30
SETB SWC.5
LJMP LOOP
ISSET30: CLR SWC.5
LJMP LOOP
SKIP30: CJNE A,#31H,SKIP32;SKIP31 ;CHECK FOR SW7
JB SWC.6,ISSET31
SETB SWC.6
LJMP LOOP
ISSET31: CLR SWC.6
LJMP LOOP
SKIP31: CJNE A,#32H,SKIP32 ;CHECK FOR SW8
JB SWC.7,ISSET32
SETB SWC.7
LJMP LOOP
ISSET32: CLR SWC.7
LJMP LOOP
;#######$$############################################################################
SKIP32: CJNE A,#0CH,EXIT ;CHECK FOR ALL SWITCHES
MOV SWA,#00H
MOV SWB,#00H
MOV SWC,#00H
MOV SWD,#00H
EXIT: LJMP LOOP
;LED_DISP1: MOV DPTR,#LINE1
;ACALL COMM
;MOV DPTR,#STR1
;ACALL DATA1
;MOV A,TEMP1
;ANL A,#0F0H
;SWAP A
;ADD A,#30H
;ACALL DATAWRT
;RET
LED_DISP: MOV A,TEMP1
ANL A,#0F0H
SWAP A
ADD A,#30H
ACALL DATAWRT
MOV A,TEMP1
ANL A,#0FH
ADD A,#30H
ACALL DATAWRT
MOV DPTR,#MOVCUR
ACALL COMM
RET
LED_DISP1: MOV A,TEMP1
SWAP A
ANL A,#0F0H
ADD A,#30H
ACALL DATAWRT
MOV A,TEMP1
SWAP A
ANL A,#0FH
ADD A,#30H
ACALL DATAWRT
MOV DPTR,#MOVCUR
ACALL COMM
RET
;---------------------------------------------------------------------------------
; SENDING COMMAND TO LCD
;---------------------------------------------------------------------------------
COMNWRT: MOV P0,A
CLR P2.5 ;RS
CLR P2.6 ;R/W
SETB P2.7 ;E
ACALL DELAY
CLR P2.7
RET
;---------------------------------------------------------------------------------
; SENDING DATA TO LCD
;---------------------------------------------------------------------------------
DATAWRT: MOV P0,A
SETB P2.5 ; RS
CLR P2.6 ;R/W
SETB P2.7 ;E
ACALL DELAY
CLR P2.7
RET
;---------------------------------------------------------------------------------
;-------------------------------------------------------------------------------
COMM: CLR A
MOVC A,@A+DPTR
ACALL COMNWRT
ACALL DELAY
JZ RETURN
INC DPTR
SJMP COMM
RETURN: RET
DATA1: CLR A
MOVC A,@A+DPTR
JZ RETURN
ACALL DATAWRT
ACALL DELAY
INC DPTR
SJMP DATA1
;-------------------------------------------------------------------------------
DELAY: MOV R3,#25
HERE2: MOV R4,#255
HERE3: DJNZ R4,HERE3
DJNZ R3,HERE2
RET
DELAY1: MOV R4,#255
HERE11: DJNZ R4,HERE11
RET
LINE1: DB 38H,0EH,01H,06H,80H,0
POW: DB "#####POWER#####",0
LINE2: DB 38H,0EH,06H,0C0H,0
ADDR: DB "ADDR:",0
STAN: DB "####STANDBY####",0
COMM1: DB "COMM:",0
STR1: DB "DATA:",0
MOVCUR: DB 10H,10H,0
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -