ensamblador para balanceo de rotor
Post on 27-Jan-2016
228 Views
Preview:
DESCRIPTION
TRANSCRIPT
00136
00137 ; C:\USERS\KALININ\DOCUMENTS\MCS\BALANCARLOS\PRUELCD.PBP 00025 LCDOut $fe, 2
00138 LCDOUT?C 0FEh
0086 30FE M movlw 0FEh
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
0087 1283 M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 16
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
0088 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
0089 2002 M call LCDOUT
00139 LCDOUT?C 002h
008A 3002 M movlw 002h
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 17
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
008B 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 18
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
008C 2002 M call LCDOUT
00140
00141 ; C:\USERS\KALININ\DOCUMENTS\MCS\BALANCARLOS\PRUELCD.PBP 00026 LCDOUT "C-AD a 8 Bit: " ' Muest
ra mensaje en la línea 1
00142 LCDOUT?C 043h
008D 3043 M movlw 043h
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 19
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
008E 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
008F 2002 M call LCDOUT
00143 LCDOUT?C 02Dh
0090 302D M movlw 02Dh
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 20
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
0091 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
0092 2002 M call LCDOUT
00144 LCDOUT?C 041h
0093 3041 M movlw 041h
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 21
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
0094 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 22
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
0095 2002 M call LCDOUT
00145 LCDOUT?C 044h
0096 3044 M movlw 044h
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 23
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
0097 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
0098 2002 M call LCDOUT
00146 LCDOUT?C 020h
0099 3020 M movlw 020h
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 24
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
009A 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 25
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M
009B 2002 M call LCDOUT
00147 LCDOUT?C 061h
009C 3061 M movlw 061h
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 26
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
009D 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
009E 2002 M call LCDOUT
00148 LCDOUT?C 020h
009F 3020 M movlw 020h
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 27
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
00A0 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
00A1 2002 M call LCDOUT
00149 LCDOUT?C 038h
00A2 3038 M movlw 038h
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 28
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
00A3 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 29
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M endif
M endif
M endif
M endif
M
00A4 2002 M call LCDOUT
00150 LCDOUT?C 020h
00A5 3020 M movlw 020h
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 30
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
00A6 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
00A7 2002 M call LCDOUT
00151 LCDOUT?C 042h
00A8 3042 M movlw 042h
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 31
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
00A9 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
00AA 2002 M call LCDOUT
00152 LCDOUT?C 069h
00AB 3069 M movlw 069h
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 32
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
00AC 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 33
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
00AD 2002 M call LCDOUT
00153 LCDOUT?C 074h
00AE 3074 M movlw 074h
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 34
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
00AF 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
00B0 2002 M call LCDOUT
00154 LCDOUT?C 03Ah
00B1 303A M movlw 03Ah
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 35
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
00B2 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
00B3 2002 M call LCDOUT
00155 LCDOUT?C 020h
00B4 3020 M movlw 020h
M L?CALL LCDOUT
M RST?RP
M if ((PREV_BANK & 1) != 0)
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 36
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel LCDOUT
M endif
M else
M if ((LCDOUT) < 1)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((LCDOUT) > $)
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((LCDOUT) & 1800h) == 0)
00B5 018A M clrf PCLATH
M else
M if (((LCDOUT) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 37
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M if (CODE_SIZE > 4)
M if (((LCDOUT) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
00B6 2002 M call LCDOUT
00156
00157 ; C:\USERS\KALININ\DOCUMENTS\MCS\BALANCARLOS\PRUELCD.PBP 00027 PAUSE 100
00158 PAUSE?C 064h
M if (((064h) >> 8) == 0)
M MOVE?CA 064h
00B7 3064 M movlw low (064h)
M L?CALL PAUSE
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel PAUSE
M endif
M else
M if ((PAUSE) < 1)
M if (CODE_SIZE > 2)
M if (((PAUSE) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((PAUSE) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((PAUSE) > $)
M if (CODE_SIZE > 2)
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 38
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M if (((PAUSE) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((PAUSE) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((PAUSE) & 1800h) == 0)
00B8 018A M clrf PCLATH
M else
M if (((PAUSE) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((PAUSE) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
M
00B9 2051 M call PAUSE
M else
M MOVE?CB (064h) >> 8, R1 + 1
M MOVE?CA low (064h)
M L?CALL PAUSEL
M endif
00159 ; C:\USERS\KALININ\DOCUMENTS\MCS\BALANCARLOS\PRUELCD.PBP 00032 DEFINE ADC_CLOCK 1
00160 ; C:\USERS\KALININ\DOCUMENTS\MCS\BALANCARLOS\PRUELCD.PBP 00033 DEFINE ADC_BITS 10 ' Define la c
onversión A/D a 8 Bits
00161 ; C:\USERS\KALININ\DOCUMENTS\MCS\BALANCARLOS\PRUELCD.PBP 00034 DEFINE ADC_SAMPLEUS 50 ' Tiempo
de muestreo en el conversor A/D es 50 uS
00162
00163 ; C:\USERS\KALININ\DOCUMENTS\MCS\BALANCARLOS\PRUELCD.PBP 00036 ADCON1 = %10000000 ' Configura e
l registro ADCON1
00164 MOVE?CB 080h, ADCON1
M CHK?RP ADCON1
M if (((ADCON1) & 180h) == 0)
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 39
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
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
M PREV_BANK = 0
M endif
M
M if (((ADCON1) & 180h) == 80h)
M if (PREV_BANK == 0)
00BA 1683 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
00000001 M PREV_BANK = 1
M endif
M
M if (((ADCON1) & 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 (((ADCON1) & 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
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 40
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M endif
M if (low (080h) == 0)
M clrf ADCON1
M else
00BB 3080 M movlw low (080h)
00BC 009F M movwf ADCON1
M endif
00165
00166 ; C:\USERS\KALININ\DOCUMENTS\MCS\BALANCARLOS\PRUELCD.PBP 00039 c=0
00167 MOVE?CT 000h, _c
M CHK?RP PB01
M if (((PB01) & 180h) == 0)
M if (PREV_BANK == 1)
00BD 1283 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 (((PB01) & 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 (((PB01) & 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
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 41
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M if (((PB01) & 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 (((000h) & 1) == 1)
M bsf PB01, 000h
M else
00BE 107A M bcf PB01, 000h
M endif
00168
00169 ; C:\USERS\KALININ\DOCUMENTS\MCS\BALANCARLOS\PRUELCD.PBP 00040 a=0
00170 MOVE?CW 000h, _a
M ifdef USE_LINKER
M CHK?RP _a
M movlw low (000h)
M movwf _a
M movlw high (000h)
M movwf (_a) + 1
M else
M MOVE?CB low (000h), _a
M CHK?RP _a
M if (((_a) & 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 (((_a) & 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)
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 42
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M bcf STATUS, RP1
M endif
M PREV_BANK = 1
M endif
M
M if (((_a) & 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 (((_a) & 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 (low (000h)) == 0)
00BF 01F4 M clrf _a
M else
M movlw low (low (000h))
M movwf _a
M endif
M MOVE?CB high (000h), (_a) + 1
M CHK?RP (_a) + 1
M if ((((_a) + 1) & 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
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 43
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M
M if ((((_a) + 1) & 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 ((((_a) + 1) & 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 ((((_a) + 1) & 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 (high (000h)) == 0)
00C0 01F5 M clrf (_a) + 1
M else
M movlw low (high (000h))
M movwf (_a) + 1
M endif
M endif
00171
00172 ; C:\USERS\KALININ\DOCUMENTS\MCS\BALANCARLOS\PRUELCD.PBP 00041 x=0
00173 MOVE?CW 000h, _x
M ifdef USE_LINKER
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 44
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M CHK?RP _x
M movlw low (000h)
M movwf _x
M movlw high (000h)
M movwf (_x) + 1
M else
M MOVE?CB low (000h), _x
M CHK?RP _x
M if (((_x) & 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 (((_x) & 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 (((_x) & 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 (((_x) & 180h) == 180h)
M if (PREV_BANK == 0)
M bsf STATUS, RP0
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 45
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
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 (low (000h)) == 0)
00C1 01F8 M clrf _x
M else
M movlw low (low (000h))
M movwf _x
M endif
M MOVE?CB high (000h), (_x) + 1
M CHK?RP (_x) + 1
M if ((((_x) + 1) & 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 ((((_x) + 1) & 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 ((((_x) + 1) & 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
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 46
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M endif
M if (PREV_BANK == 3)
M bcf STATUS, RP0
M endif
M PREV_BANK = 2
M endif
M
M if ((((_x) + 1) & 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 (high (000h)) == 0)
00C2 01F9 M clrf (_x) + 1
M else
M movlw low (high (000h))
M movwf (_x) + 1
M endif
M endif
00174
00175 ; C:\USERS\KALININ\DOCUMENTS\MCS\BALANCARLOS\PRUELCD.PBP 00042 N=0
00176 MOVE?CW 000h, _n
M ifdef USE_LINKER
M CHK?RP _n
M movlw low (000h)
M movwf _n
M movlw high (000h)
M movwf (_n) + 1
M else
M MOVE?CB low (000h), _n
M CHK?RP _n
M if (((_n) & 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
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 47
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M if (((_n) & 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 (((_n) & 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 (((_n) & 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 (low (000h)) == 0)
00C3 01F6 M clrf _n
M else
M movlw low (low (000h))
M movwf _n
M endif
M MOVE?CB high (000h), (_n) + 1
M CHK?RP (_n) + 1
M if ((((_n) + 1) & 180h) == 0)
M if (PREV_BANK == 1)
M bcf STATUS, RP0
M endif
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 48
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
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 ((((_n) + 1) & 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 ((((_n) + 1) & 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 ((((_n) + 1) & 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 (high (000h)) == 0)
00C4 01F7 M clrf (_n) + 1
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 49
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M else
M movlw low (high (000h))
M movwf (_n) + 1
M endif
M endif
00177
00178 ; C:\USERS\KALININ\DOCUMENTS\MCS\BALANCARLOS\PRUELCD.PBP 00043 Inicio: 'fijar promedio de onda
guarda en n
00179
00180 LABEL?L _Inicio
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M ifdef PM_USED
M LALL
M _Inicio
M XALL
M else
00C5 M _Inicio
M endif
00181
00182 ; C:\USERS\KALININ\DOCUMENTS\MCS\BALANCARLOS\PRUELCD.PBP 00044 END
00183 END?
0000 M local loop
00C5 0063 M loop sleep
M L?GOTO loop
M ifdef USE_LINKER
M CLRWDT?
M else
M if ($ == (_90loop))
M CLRWDT?
M endif
M endif
M
M RST?RP
M if ((PREV_BANK & 1) != 0)
M bcf STATUS, RP0
M endif
M if ((PREV_BANK & 2) != 0)
M bcf STATUS, RP1
M endif
00000000 M PREV_BANK = 0
M
M ifdef USE_LINKER
M if (CODE_SIZE > 2)
M pagesel _90loop
M endif
M else
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 50
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M if ((_90loop) < 1)
M if (CODE_SIZE > 2)
M if (((_90loop) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((_90loop) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if ((_90loop) > $)
M if (CODE_SIZE > 2)
M if (((_90loop) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M endif
M if (CODE_SIZE > 4)
M if (((_90loop) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M else
M if (CODE_SIZE > 2)
M if (((_90loop) & 1800h) == 0)
00C6 018A M clrf PCLATH
M else
M if (((_90loop) & 800h) == 0)
M bcf PCLATH, 3
M else
M bsf PCLATH, 3
M endif
M if (CODE_SIZE > 4)
M if (((_90loop) & 1000h) == 0)
M bcf PCLATH, 4
M else
M bsf PCLATH, 4
M endif
M endif
M endif
M endif
M endif
M endif
M endif
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 51
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
M
00C7 28C5 M goto _90loop
00184
00185 END
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 52
SYMBOL TABLE
LABEL VALUE
ACKDT 00000005
ACKEN 00000004
ACKSTAT 00000006
ADCON0 0000001F
ADCON1 0000009F
ADCS0 00000006
ADCS1 00000007
ADCS2 00000006
ADC_BITS 10
ADC_CLOCK 1
ADC_SAMPLEUS 50
ADDEN 00000003
ADFM 00000007
ADIE 00000006
ADIF 00000006
ADON 00000000
ADRESH 0000001E
ADRESL 0000009E
BANK0_END 0000007F
BANK0_START 00000020
BANK1_END 000000EF
BANK1_START 000000A0
BANK2_END 0000016F
BANK2_START 00000110
BANK3_END 000001EF
BANK3_START 00000190
BCLIE 00000003
BCLIF 00000003
BF 00000000
BIT?FLIP
BIT?FW
BIT?GOTO
BIT?R1
BIT?R2
BIT?W
BRGH 00000002
BUTTON_PAUSE 0000000A
C 00000000
C1INV 00000004
C1OUT 00000006
C2INV 00000005
C2OUT 00000007
CCP1CON 00000017
CCP1IE 00000002
CCP1IF 00000002
CCP1M0 00000000
CCP1M1 00000001
CCP1M2 00000002
CCP1M3 00000003
CCP1X 00000005
CCP1Y 00000004
CCP1_BIT 00000002
CCP1_REG 00000007
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 53
SYMBOL TABLE
LABEL VALUE
CCP2CON 0000001D
CCP2IE 00000000
CCP2IF 00000000
CCP2M0 00000000
CCP2M1 00000001
CCP2M2 00000002
CCP2M3 00000003
CCP2X 00000005
CCP2Y 00000004
CCP2_BIT 00000001
CCP2_REG 00000007
CCPR1 00000015
CCPR1H 00000016
CCPR1L 00000015
CCPR2 0000001B
CCPR2H 0000001C
CCPR2L 0000001B
CHK?RP
CHS0 00000003
CHS1 00000004
CHS2 00000005
CIS 00000003
CKE 00000006
CKP 00000004
CLRWDT?
CLRWDT?NOP
CM0 00000000
CM1 00000001
CM2 00000002
CMCON 0000009C
CMIE 00000006
CMIF 00000006
CODE_SIZE 8
CREN 00000004
CSRC 00000007
CVR0 00000000
CVR1 00000001
CVR2 00000002
CVR3 00000003
CVRCON 0000009D
CVREN 00000007
CVROE 00000006
CVRR 00000005
D 00000005
DATA_ADDRESS 00000005
DC 00000001
DEBUGIN_BIT 00000000
DEBUGIN_MODE 00000001
DEBUGIN_REG 00000006
DEBUG_BAUD 00000960
DEBUG_BIT 00000000
DEBUG_DELAY 00000193
DEBUG_MODE 00000001
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 54
SYMBOL TABLE
LABEL VALUE
DEBUG_REG 00000006
DONE 00000073
DONERET 00000077
DONE_USED 00000001
D_A 00000005
D_NOT_A 00000005
EEADR 0000010D
EEADRH 0000010F
EECON1 0000018C
EECON2 0000018D
EEDATA 0000010C
EEDATH 0000010E
EEIE 00000004
EEIF 00000004
EEPGD 00000007
EEPROM_END 000021FF
EEPROM_START 00002100
END?
F 00000001
FERR 00000002
FLAGS 00000032
FLAGS_USED 00000001
FSR 00000004
GCEN 00000007
GIE 00000007
GO 00000002
GOP 00000033
GO_DONE 00000002
GO_NOT_DONE 00000002
HSER_BAUD 00000960
HSER_BITS 00000008
HSER_RCSTA 00000090
HSER_SPBRG 00000019
HSER_TXSTA 00000020
I2CFIRSTFLAG FLAGS, 2
I2CREADFLAG FLAGS, 3
I2CSTOPFLAG FLAGS, 5
I2CSTOPSTRFLAG FLAGS, 6
I2CWRITEFLAG FLAGS, 4
I2C_DATA 00000005
I2C_READ 00000002
I2C_START 00000003
I2C_STOP 00000004
IBF 00000007
IBOV 00000005
INDF 00000000
INIT 00000078
INTCON 0000000B
INTE 00000004
INTEDG 00000006
INTF 00000001
IRP 00000007
L?CALL
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 55
SYMBOL TABLE
LABEL VALUE
L?GOTO
LABEL?L
LCDCDFLAG FLAGS, 0
LCDINITFLAG FLAGS, 1
LCDOUT 00000002
LCDOUT?C
LCDOUT_USED 00000001
LCD_BITS 4
LCD_COMMANDUS 000007D0
LCD_DATAUS 00000032
LCD_DBIT 4
LCD_DREG PORTB
LCD_EBIT 3
LCD_EREG PORTB
LCD_LINES 2
LCD_RSBIT 2
LCD_RSREG PORTB
LCD_RWBIT 00000002
LCD_RWREG 00000006
MOVE?AB
MOVE?AT
MOVE?AW
MOVE?AWW
MOVE?BA
MOVE?BB
MOVE?BT
MOVE?BW
MOVE?CA
MOVE?CB
MOVE?CT
MOVE?CW
MOVE?TA
MOVE?TB
MOVE?TT
MOVE?TW
MOVE?WA
MOVE?WB
MOVE?WT
MOVE?WW
MOVE?WWA
NOT_A 00000005
NOT_ADDRESS 00000005
NOT_BO 00000000
NOT_BOR 00000000
NOT_DONE 00000002
NOT_PD 00000003
NOT_POR 00000001
NOT_RBPU 00000007
NOT_RC8 00000006
NOT_T1SYNC 00000002
NOT_TO 00000004
NOT_TX8 00000006
NOT_W 00000002
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 56
SYMBOL TABLE
LABEL VALUE
NOT_WRITE 00000002
OBF 00000006
OERR 00000001
OPTION_REG 00000081
OSC 00000004
OSC_VALID 00000001
P 00000004
PAUSE 00000051
PAUSE?C
PAUSEL 00000052
PAUSEUS 0000005E
PAUSEUSL 0000005F
PAUSEUS_USED 00000001
PAUSE_DELAY 000003DF
PAUSE_USED 00000001
PB01 0000007A
PCFG0 00000000
PCFG1 00000001
PCFG2 00000002
PCFG3 00000003
PCL 00000002
PCLATH 0000000A
PCON 0000008E
PEIE 00000006
PEN 00000002
PIE1 0000008C
PIE2 0000008D
PIR1 0000000C
PIR2 0000000D
PORTA 00000005
PORTB 00000006
PORTC 00000007
PORTD 00000008
PORTE 00000009
PR2 00000092
PREV_BANK 00000000
PS0 00000000
PS1 00000001
PS2 00000002
PSA 00000003
PSPIE 00000007
PSPIF 00000007
PSPMODE 00000004
R 00000002
R0 00000020
R1 00000022
R2 00000024
R3 00000026
R4 00000028
R5 0000002A
R6 0000002C
R7 0000002E
R8 00000030
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 57
SYMBOL TABLE
LABEL VALUE
RA0 00000000
RA1 00000001
RA2 00000002
RA3 00000003
RA4 00000004
RA5 00000005
RAM_BANKS 00000004
RAM_END 000001EF
RAM_START 00000020
RB0 00000000
RB1 00000001
RB2 00000002
RB3 00000003
RB4 00000004
RB5 00000005
RB6 00000006
RB7 00000007
RBIE 00000003
RBIF 00000000
RC0 00000000
RC1 00000001
RC2 00000002
RC3 00000003
RC4 00000004
RC5 00000005
RC6 00000006
RC7 00000007
RC8_9 00000006
RC9 00000006
RCD8 00000000
RCEN 00000003
RCIE 00000005
RCIF 00000005
RCREG 0000001A
RCSTA 00000018
RD 00000000
RD0 00000000
RD1 00000001
RD2 00000002
RD3 00000003
RD4 00000004
RD5 00000005
RD6 00000006
RD7 00000007
RE0 00000000
RE1 00000001
RE2 00000002
READ_WRITE 00000002
RESET_ORG 00000000
RM1 00000034
RM2 00000035
RP0 00000005
RP1 00000006
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 58
SYMBOL TABLE
LABEL VALUE
RR1 00000036
RR2 00000037
RSEN 00000001
RST?RP
RX9 00000006
RX9D 00000000
R_NOT_W 00000002
R_W 00000002
S 00000003
SEN 00000000
SMP 00000007
SPBRG 00000099
SPEN 00000007
SREN 00000005
SSPADD 00000093
SSPBUF 00000013
SSPCON 00000014
SSPCON2 00000091
SSPEN 00000005
SSPIE 00000003
SSPIF 00000003
SSPM0 00000000
SSPM1 00000001
SSPM2 00000002
SSPM3 00000003
SSPOV 00000006
SSPSTAT 00000094
STATUS 00000003
SYNC 00000004
T0CS 00000005
T0IE 00000005
T0IF 00000002
T0SE 00000004
T1CKPS0 00000004
T1CKPS1 00000005
T1CON 00000010
T1INSYNC 00000002
T1OSCEN 00000003
T1SYNC 00000002
T2CKPS0 00000000
T2CKPS1 00000001
T2CON 00000012
TMR0 00000001
TMR0IE 00000005
TMR0IF 00000002
TMR1 0000000E
TMR1CS 00000001
TMR1H 0000000F
TMR1IE 00000000
TMR1IF 00000000
TMR1L 0000000E
TMR1ON 00000000
TMR2 00000011
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 59
SYMBOL TABLE
LABEL VALUE
TMR2IE 00000001
TMR2IF 00000001
TMR2ON 00000002
TOUTPS0 00000003
TOUTPS1 00000004
TOUTPS2 00000005
TOUTPS3 00000006
TRISA 00000085
TRISA0 00000000
TRISA1 00000001
TRISA2 00000002
TRISA3 00000003
TRISA4 00000004
TRISA5 00000005
TRISB 00000086
TRISB0 00000000
TRISB1 00000001
TRISB2 00000002
TRISB3 00000003
TRISB4 00000004
TRISB5 00000005
TRISB6 00000006
TRISB7 00000007
TRISC 00000087
TRISC0 00000000
TRISC1 00000001
TRISC2 00000002
TRISC3 00000003
TRISC4 00000004
TRISC5 00000005
TRISC6 00000006
TRISC7 00000007
TRISD 00000088
TRISD0 00000000
TRISD1 00000001
TRISD2 00000002
TRISD3 00000003
TRISD4 00000004
TRISD5 00000005
TRISD6 00000006
TRISD7 00000007
TRISE 00000089
TRISE0 00000000
TRISE1 00000001
TRISE2 00000002
TRMT 00000001
TX8_9 00000006
TX9 00000006
TX9D 00000000
TXD8 00000000
TXEN 00000005
TXIE 00000004
TXIF 00000004
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 60
SYMBOL TABLE
LABEL VALUE
TXREG 00000019
TXSTA 00000098
UA 00000001
W 00000000
WCOL 00000007
WR 00000001
WREN 00000002
WRERR 00000003
Z 00000002
_BODEN_OFF 00003FBF
_BODEN_ON 00003FFF
_BOREN_OFF 00003FBF
_BOREN_ON 00003FFF
_CONFIG 00002007
_CPD_OFF 00003FFF
_CPD_ON 00003EFF
_CP_ALL 00001FFF
_CP_OFF 00003FFF
_CP_ON 00001FFF
_DEBUG_OFF 00003FFF
_DEBUG_ON 000037FF
_DEVID1 00002006
_FOSC_EXTRC 00003FFF
_FOSC_HS 00003FFE
_FOSC_LP 00003FFC
_FOSC_XT 00003FFD
_HS_OSC 00003FFE
_IDLOC0 00002000
_IDLOC1 00002001
_IDLOC2 00002002
_IDLOC3 00002003
_Inicio 000000C5
_LP_OSC 00003FFC
_LVP_OFF 00003F7F
_LVP_ON 00003FFF
_PORTH 00000007
_PORTL 00000006
_PWRTE_OFF 00003FFF
_PWRTE_ON 00003FF7
_RC_OSC 00003FFF
_TRISH 00000087
_TRISL 00000086
_USED 00000001
_WDTE_OFF 00003FFB
_WDTE_ON 00003FFF
_WDT_OFF 00003FFB
_WDT_ON 00003FFF
_WRT_1FOURTH 00003BFF
_WRT_256 00003DFF
_WRT_HALF 000039FF
_WRT_OFF 00003FFF
_XT_OSC 00003FFD
__16F877A 00000001
MPASM 5.49 PRUELCD.ASM 1-14-2015 20:09:35 PAGE 61
SYMBOL TABLE
LABEL VALUE
_a 00000074
_c PB01, 000h
_d 00000038
_n 00000076
_x 00000078
lcdchkcd 0000003C
lcdloop 00000042
lcdout1 0000002E
lcdoutcom 0000002D
lcdsend 00000041
main 00000078
osc 4
pauseloop 00000053
pauseusdone 00000072
pauseush 00000068
pauseusloop 00000065
MEMORY USAGE MAP ('X' = Used, '-' = Unused)
0000 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX
0040 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX
0080 : XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX
00C0 : XXXXXXXX-------- ---------------- ---------------- ----------------
2000 : -------X-------- ---------------- ---------------- ----------------
All other memory blocks unused.
Program Memory Words Used: 200
Program Memory Words Free: 7992
Errors : 0
Warnings : 0 reported, 0 suppressed
Messages : 0 reported, 3 suppressed
top related