Ensamblador Para Balanceo de Rotor

137
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

description

programa en ensamblador para prueba de balnceo

Transcript of Ensamblador Para Balanceo de Rotor

Page 1: Ensamblador Para Balanceo de Rotor

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)

Page 2: Ensamblador Para Balanceo de Rotor

M if (((LCDOUT) & 1000h) == 0)

M bcf PCLATH, 4

Page 3: Ensamblador Para Balanceo de Rotor

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

Page 4: Ensamblador Para Balanceo de Rotor

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

Page 5: Ensamblador Para Balanceo de Rotor

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) > $)

Page 6: Ensamblador Para Balanceo de Rotor

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

Page 7: Ensamblador Para Balanceo de Rotor

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

Page 8: Ensamblador Para Balanceo de Rotor

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

Page 9: Ensamblador Para Balanceo de Rotor

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

Page 10: Ensamblador Para Balanceo de Rotor

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

Page 11: Ensamblador Para Balanceo de Rotor

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

Page 12: Ensamblador Para Balanceo de Rotor

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

Page 13: Ensamblador Para Balanceo de Rotor

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)

Page 14: Ensamblador Para Balanceo de Rotor

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

Page 15: Ensamblador Para Balanceo de Rotor

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)

Page 16: Ensamblador Para Balanceo de Rotor

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)

Page 17: Ensamblador Para Balanceo de Rotor

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

Page 18: Ensamblador Para Balanceo de Rotor

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

Page 19: Ensamblador Para Balanceo de Rotor

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)

Page 20: Ensamblador Para Balanceo de Rotor

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

Page 21: Ensamblador Para Balanceo de Rotor

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

Page 22: Ensamblador Para Balanceo de Rotor

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)

Page 23: Ensamblador Para Balanceo de Rotor

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

Page 24: Ensamblador Para Balanceo de Rotor

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

Page 25: Ensamblador Para Balanceo de Rotor

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

Page 26: Ensamblador Para Balanceo de Rotor

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

Page 27: Ensamblador Para Balanceo de Rotor

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

Page 28: Ensamblador Para Balanceo de Rotor

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

Page 29: Ensamblador Para Balanceo de Rotor

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)

Page 30: Ensamblador Para Balanceo de Rotor

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

Page 31: Ensamblador Para Balanceo de Rotor

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

Page 32: Ensamblador Para Balanceo de Rotor

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

Page 33: Ensamblador Para Balanceo de Rotor

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

Page 34: Ensamblador Para Balanceo de Rotor

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

Page 35: Ensamblador Para Balanceo de Rotor

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) > $)

Page 36: Ensamblador Para Balanceo de Rotor

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

Page 37: Ensamblador Para Balanceo de Rotor

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

Page 38: Ensamblador Para Balanceo de Rotor

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)

Page 39: Ensamblador Para Balanceo de Rotor

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

Page 40: Ensamblador Para Balanceo de Rotor

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

Page 41: Ensamblador Para Balanceo de Rotor

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

Page 42: Ensamblador Para Balanceo de Rotor

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)

Page 43: Ensamblador Para Balanceo de Rotor

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

Page 44: Ensamblador Para Balanceo de Rotor

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

Page 45: Ensamblador Para Balanceo de Rotor

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

Page 46: Ensamblador Para Balanceo de Rotor

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)

Page 47: Ensamblador Para Balanceo de Rotor

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)

Page 48: Ensamblador Para Balanceo de Rotor

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)

Page 49: Ensamblador Para Balanceo de Rotor

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

Page 50: Ensamblador Para Balanceo de Rotor

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

Page 51: Ensamblador Para Balanceo de Rotor

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

Page 52: Ensamblador Para Balanceo de Rotor

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

Page 53: Ensamblador Para Balanceo de Rotor

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)

Page 54: Ensamblador Para Balanceo de Rotor

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)

Page 55: Ensamblador Para Balanceo de Rotor

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)

Page 56: Ensamblador Para Balanceo de Rotor

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

Page 57: Ensamblador Para Balanceo de Rotor

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

Page 58: Ensamblador Para Balanceo de Rotor

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

Page 59: Ensamblador Para Balanceo de Rotor

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

Page 60: Ensamblador Para Balanceo de Rotor

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

Page 61: Ensamblador Para Balanceo de Rotor

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

Page 62: Ensamblador Para Balanceo de Rotor

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

Page 63: Ensamblador Para Balanceo de Rotor

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

Page 64: Ensamblador Para Balanceo de Rotor

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

Page 65: Ensamblador Para Balanceo de Rotor

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

Page 66: Ensamblador Para Balanceo de Rotor

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

Page 67: Ensamblador Para Balanceo de Rotor

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)

Page 68: Ensamblador Para Balanceo de Rotor

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

Page 69: Ensamblador Para Balanceo de Rotor

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

Page 70: Ensamblador Para Balanceo de Rotor

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

Page 71: Ensamblador Para Balanceo de Rotor

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)

Page 72: Ensamblador Para Balanceo de Rotor

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

Page 73: Ensamblador Para Balanceo de Rotor

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

Page 74: Ensamblador Para Balanceo de Rotor

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

Page 75: Ensamblador Para Balanceo de Rotor

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

Page 76: Ensamblador Para Balanceo de Rotor

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?

Page 77: Ensamblador Para Balanceo de Rotor

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

Page 78: Ensamblador Para Balanceo de Rotor

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

Page 79: Ensamblador Para Balanceo de Rotor

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

Page 80: Ensamblador Para Balanceo de Rotor

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

Page 81: Ensamblador Para Balanceo de Rotor

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

Page 82: Ensamblador Para Balanceo de Rotor

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

Page 83: Ensamblador Para Balanceo de Rotor

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

Page 84: Ensamblador Para Balanceo de Rotor

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

Page 85: Ensamblador Para Balanceo de Rotor

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

Page 86: Ensamblador Para Balanceo de Rotor

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

Page 87: Ensamblador Para Balanceo de Rotor

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

Page 88: Ensamblador Para Balanceo de Rotor

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

Page 89: Ensamblador Para Balanceo de Rotor

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

Page 90: Ensamblador Para Balanceo de Rotor

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

Page 91: Ensamblador Para Balanceo de Rotor

_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

Page 92: Ensamblador Para Balanceo de Rotor

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-------- ---------------- ---------------- ----------------

Page 93: Ensamblador Para Balanceo de Rotor

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