📄 pbp_interput2.lst
字号:
M if (PREV_BANK == 2)
M bsf STATUS, RP0
M endif
M PREV_BANK = 3
M endif
M if (low (000h) == 0)
0045 018B M clrf INTCON
M else
M movlw low (000h)
M movwf INTCON
M endif
00096
00097 ; D:\MCD\PRACTISE\PBP_INTERPUT2.BAS 00008 PIR1 = $00 ' clear interupt flags
00098 MOVE?CB 000h, PIR1
M CHK?RP PIR1
M if (((PIR1) & 180h) == 0)
M if (PREV_BANK == 1)
M bcf STATUS, RP0
M endif
M if (PREV_BANK == 2)
M bcf STATUS, RP1
M endif
M if (PREV_BANK == 3)
MPASM 03.80 Released PBP_INTERPUT2.ASM 6-15-2008 11:45:37 PAGE 10
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M bcf STATUS, RP0
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M endif
M
M if (((PIR1) & 180h) == 80h)
M if (PREV_BANK == 0)
M bsf STATUS, RP0
M endif
M if (PREV_BANK == 2)
M bsf STATUS, RP0
M bcf STATUS, RP1
M endif
M if (PREV_BANK == 3)
M bcf STATUS, RP1
M endif
M PREV_BANK = 1
M endif
M
M if (((PIR1) & 180h) == 100h)
M if (PREV_BANK == 0)
M bsf STATUS, RP1
M endif
M if (PREV_BANK == 1)
M bcf STATUS, RP0
M bsf STATUS, RP1
M endif
M if (PREV_BANK == 3)
M bcf STATUS, RP0
M endif
M PREV_BANK = 2
M endif
M
M if (((PIR1) & 180h) == 180h)
M if (PREV_BANK == 0)
M bsf STATUS, RP0
M bsf STATUS, RP1
M endif
M if (PREV_BANK == 1)
M bsf STATUS, RP1
M endif
M if (PREV_BANK == 2)
M bsf STATUS, RP0
M endif
M PREV_BANK = 3
M endif
M if (low (000h) == 0)
0046 018C M clrf PIR1
M else
M movlw low (000h)
M movwf PIR1
M endif
MPASM 03.80 Released PBP_INTERPUT2.ASM 6-15-2008 11:45:37 PAGE 11
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00099
00100 ; D:\MCD\PRACTISE\PBP_INTERPUT2.BAS 00010 PortC.0 = 1
00101 MOVE?CT 001h, _PORTC_0
M CHK?RP PORTC
M if (((PORTC) & 180h) == 0)
M if (PREV_BANK == 1)
M bcf STATUS, RP0
M endif
M if (PREV_BANK == 2)
M bcf STATUS, RP1
M endif
M if (PREV_BANK == 3)
M bcf STATUS, RP0
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M endif
M
M if (((PORTC) & 180h) == 80h)
M if (PREV_BANK == 0)
M bsf STATUS, RP0
M endif
M if (PREV_BANK == 2)
M bsf STATUS, RP0
M bcf STATUS, RP1
M endif
M if (PREV_BANK == 3)
M bcf STATUS, RP1
M endif
M PREV_BANK = 1
M endif
M
M if (((PORTC) & 180h) == 100h)
M if (PREV_BANK == 0)
M bsf STATUS, RP1
M endif
M if (PREV_BANK == 1)
M bcf STATUS, RP0
M bsf STATUS, RP1
M endif
M if (PREV_BANK == 3)
M bcf STATUS, RP0
M endif
M PREV_BANK = 2
M endif
M
M if (((PORTC) & 180h) == 180h)
M if (PREV_BANK == 0)
M bsf STATUS, RP0
M bsf STATUS, RP1
M endif
M if (PREV_BANK == 1)
M bsf STATUS, RP1
MPASM 03.80 Released PBP_INTERPUT2.ASM 6-15-2008 11:45:37 PAGE 12
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M endif
M if (PREV_BANK == 2)
M bsf STATUS, RP0
M endif
M PREV_BANK = 3
M endif
M if (((001h) & 1) == 1)
0047 1407 M bsf PORTC, 000h
M else
M bcf PORTC, 000h
M endif
00102
00103 ; D:\MCD\PRACTISE\PBP_INTERPUT2.BAS 00012 TMR1H = $3C ' load timer1 with $3CAF
00104 MOVE?CB 03Ch, TMR1H
M CHK?RP TMR1H
M if (((TMR1H) & 180h) == 0)
M if (PREV_BANK == 1)
M bcf STATUS, RP0
M endif
M if (PREV_BANK == 2)
M bcf STATUS, RP1
M endif
M if (PREV_BANK == 3)
M bcf STATUS, RP0
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M endif
M
M if (((TMR1H) & 180h) == 80h)
M if (PREV_BANK == 0)
M bsf STATUS, RP0
M endif
M if (PREV_BANK == 2)
M bsf STATUS, RP0
M bcf STATUS, RP1
M endif
M if (PREV_BANK == 3)
M bcf STATUS, RP1
M endif
M PREV_BANK = 1
M endif
M
M if (((TMR1H) & 180h) == 100h)
M if (PREV_BANK == 0)
M bsf STATUS, RP1
M endif
M if (PREV_BANK == 1)
M bcf STATUS, RP0
M bsf STATUS, RP1
M endif
M if (PREV_BANK == 3)
M bcf STATUS, RP0
MPASM 03.80 Released PBP_INTERPUT2.ASM 6-15-2008 11:45:37 PAGE 13
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M endif
M PREV_BANK = 2
M endif
M
M if (((TMR1H) & 180h) == 180h)
M if (PREV_BANK == 0)
M bsf STATUS, RP0
M bsf STATUS, RP1
M endif
M if (PREV_BANK == 1)
M bsf STATUS, RP1
M endif
M if (PREV_BANK == 2)
M bsf STATUS, RP0
M endif
M PREV_BANK = 3
M endif
M if (low (03Ch) == 0)
M clrf TMR1H
M else
0048 303C M movlw low (03Ch)
0049 008F M movwf TMR1H
M endif
00105
00106 ; D:\MCD\PRACTISE\PBP_INTERPUT2.BAS 00013 TMR1L = $AF
00107 MOVE?CB 0AFh, TMR1L
M CHK?RP TMR1L
M if (((TMR1L) & 180h) == 0)
M if (PREV_BANK == 1)
M bcf STATUS, RP0
M endif
M if (PREV_BANK == 2)
M bcf STATUS, RP1
M endif
M if (PREV_BANK == 3)
M bcf STATUS, RP0
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M endif
M
M if (((TMR1L) & 180h) == 80h)
M if (PREV_BANK == 0)
M bsf STATUS, RP0
M endif
M if (PREV_BANK == 2)
M bsf STATUS, RP0
M bcf STATUS, RP1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -