INC R6 CMP.B &1024, &1027 ;Compare last number to 9 ADD.B #1, &1024 ADD.B #2, &1025 MOV.B &1025, R13 ;if < 9 MOV.B LCD_Tab(R13), 90h(R6) INC R6 INC R13 MOV.B LCD_Tab(R13), 90h(R6) DEC R6 DEC R6 DEC R6 MOV #1, R13 JMP ext metka: MOV #0, R13 MOV.B LCD_Tab(R13), 90h(R6) INC R6 INC R13 MOV.B LCD_Tab(R13), 90h(R6) MOV.B #0, &1024 MOV.B #0, &1025 INC R6 CMP.B &1026, &1028 JZ metka2 ADD.B #2, &1026 MOV.B &1026, R13 ;if < 5 MOV.B LCD_Tab(R13), 90h(R6) INC R6 INC R13 MOV.B LCD_Tab(R13), 90h(R6) MOV.B #9, R6 MOV #1, R13 JMP ext metka2: MOV.B #0, &1026 MOV.B &1026, R13 MOV.B LCD_Tab(R13), 90h(R6) INC R6 INC R13 MOV.B LCD_Tab(R13), 90h(R6) INC R6 CMP.B &1029, &1030 JZ metka3 ADD.B #2, &1029 MOV.B &1029, R13 ;if < 9 MOV.B LCD_Tab(R13), 90h(R6) INC R6 INC R13 MOV.B LCD_Tab(R13), 90h(R6) MOV.B #9, R6 MOV #1, R13 JMP ext metka3: MOV.B #0, &1029 MOV.B &1029, R13 MOV.B LCD_Tab(R13), 90h(R6) INC R6 INC R13 MOV.B LCD_Tab(R13), 90h(R6) INC R6 CMP.B &1031, &1032 JZ metka4 ADD.B #2, &1031 MOV.B &1031, R13 ;if < 5 MOV.B LCD_Tab(R13), 90h(R6) INC R6 INC R13 MOV.B LCD_Tab(R13), 90h(R6) MOV.B #9, R6 MOV #1, R13 JMP ext metka4: MOV.B #0, &1031 MOV.B &1031, R13 MOV.B LCD_Tab(R13), 90h(R6) INC R6 INC R13 MOV.B LCD_Tab(R13), 90h(R6) INC R6 CMP.B &1033, &1034 JZ metka5 ADD.B #2, &1033 MOV.B &1033, R13 ;if < 9 MOV.B LCD_Tab(R13), 90h(R6) INC R6 INC R13 MOV.B LCD_Tab(R13), 90h(R6) MOV.B #9, R6 MOV #1, R13 JMP ext metka5: MOV.B #0, &1033 MOV.B &1033, R13 MOV.B LCD_Tab(R13), 90h(R6) INC R6 INC R13 MOV.B LCD_Tab(R13), 90h(R6) JMP ext ext: RET ; Digits code for 4-mux mode s EQU 0x8000 ; r EQU 0x4000 ; p EQU 0x2000 ; n EQU 0x1000 ; m EQU 0x0800 ; k EQU 0x0400 ; j EQU 0x0200 ; i EQU 0x0100 ; h EQU 0x0080 ; g EQU 0x0040 ; f EQU 0x0020 ; e EQU 0x0010 ; d EQU 0x0008 ; c EQU 0x0004 ; b EQU 0x0002 ; a EQU 0x0001 ; /* |---h---| r m d c g s |-k-+-b-| p j i a f n |---e---| */ LCD_Tab DW e+p+r+h+g+f ; Displays '0' DW f+g ; Displays '1' DW e+p+k+b+g+h ; Displays '2' DW e+f+k+b+g+h ; Displays '3' DW f+k+b+g+r ; Displays '4' DW e+f+k+b+r+h ; Displays '5' DW e+p+r+h+k+b+f ; Displays '6' DW f+g+h ; Displays '7' DW e+p+r+h+g+f+k+b ; Displays '8' DW e+r+h+g+f+k+b ; Displays '9' ;------------------------------------------------------------------------------ ;------------------------------------------------------------------------------ ORG RESET_VECTOR ; MSP430 RESET Vector END
Достарыңызбен бөлісу: |