Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

21/08/2013 #1


Tablas en pic 16f877a
Buenas noches, lle dias tratando de usar varias tablas con el pic 16f877a y no he podido me prsenta errores, me gustaria que me ieran una mano.... la idea es que se repita por lo menos 5 veces la rutina de ImageData para q luego sale a otra tabla donde hay otra imagen y se repita 5 veces, este es un diseño de un spoke pov diseñado para un 16f628a y solo muetra una imagen la idea es mostrar varias imagenes que por lo menos transcurra cierto tiempo en cada una de ellas, la meta es que se vean 5 imagenes.......

Código:
IMAGESIZE       equ 0xFF      ; Declare image size constant
POSTSCALERLIMIT equ 0x02      ; Declare upper limit of the "postscaler" for TIMER1

linecount       equ 0x20
byteout         equ 0x21
postscaler      equ 0x22
timebasevector  equ 0x23
timebasevalue   equ 0x24

   org 0x00
   GOTO Main
   org 0x04
; Interrupt handler code goes here
; NOTE: Since virtually every part of this program runs inside an interrupt handler, it's not necesssary
; to back up any critical registers when entering or exiting the handler.
   BTFSC PIR1,TMR1IF          ; Check to see if the interrupt was caused by a TIMER1 rollover Overflow)
   GOTO  Timer1Rollover
   BTFSC INTCON,INTF          ; Check to see if the interrupt was caused by the hall effect sensor
   GOTO  HallEffectTrigger
   BTFSC INTCON,T0IF          ; Check to see if the interrupt was caused by a TIMER0 rollover (overflow)
   GOTO  Timer0Rollover
   RETFIE                     ; If none of the above is true, then just leave the interrupt handler

Timer1Rollover
   MOVLW POSTSCALERLIMIT
   SUBWF postscaler, W
   BTFSS STATUS, Z            ; If postscaler <> POSTSCALERLIMIT,
   INCF  postscaler, F        ; Increment the TIMER1 postscaler
   BCF   PIR1,TMR1IF          ; Clear TMR1IF (TIMER1 Interrupt Flag) before enabling interrupts
   RETFIE

HallEffectTrigger
   MOVFW TMR1H                ; Capture the value in the high byte of the TIMER1 register pair
   MOVWF timebasevector       ; Store it in timebasevector (after some manipulation, this will be used to reference the timebase lookup table)
   MOVLW POSTSCALERLIMIT
   SUBWF postscaler, W
   BTFSC STATUS, Z            ; If postscaler = POSTSCALERLIMIT,
   GOTO  TimerOverflowed
   GOTO  RollBits
TimerOverflowed
   MOVLW 0xFF
   MOVWF timebasevector
   GOTO  EndHallEffectTrigger
RollBits
   RRF   timebasevector
   BCF   timebasevector,7
   BTFSC postscaler,0
   BSF   timebasevector,7
EndHallEffectTrigger
   MOVLW 0x2                  ; Load memory page number into PCLATH: 
   MOVWF PCLATH               ; The TimingData table starts at 0x200,
   MOVFW timebasevector       ; therefore PCLATH must be loaded with 0x2.
   CALL  TimingData           ; (see example in the OutputImage subroutine)
   MOVWF timebasevalue        ; Store the value fetched from the TimingData table in timebasevalue
   CLRF  postscaler           ; Reset the postscaler
   CLRF  linecount            ; Reset the line counter
   CLRF  TMR1L                ; Reset TIMER1 low byte
   CLRF  TMR1H                ; Reset TIMER1 high byte
   BCF   INTCON,INTF          ; Clear INTF flag before enabling interrupts
   RETFIE

Timer0Rollover                ; (263 instruction cycles)
   CALL  OutputImage
   MOVLW IMAGESIZE
   SUBWF linecount, 0
   BTFSS STATUS, Z            ; if linecount <> IMAGESIZE
   INCF  linecount, 1         ; Increment the line counter
   BCF   INTCON,T0IF          ; Clear T0IF flag before enabling interrupts
   MOVFW timebasevalue
   MOVWF TMR0
   RETFIE

Main
   CLRF  postscaler
   MOVLW 0xFF
   MOVWF timebasevalue
   BCF   STATUS,RP0           ; Go to bank 0
   BCF   STATUS,RP1           ; Go to bank 0

   CLRF  PORTA                ; Clear port A (set all lines low)
   CLRF  PORTB                ; Clear port B (set all lines low)

   MOVLW 0x07                 ; Turn comparators off and
   MOVWF CMCON                ; free all port A pins for I/O functions

   BSF   STATUS,RP0           ; Go to bank 1
   CLRF  TRISA                ; Set port A as all outputs
   CLRF  TRISB                ; Set port B as all outputs and then....
   BSF   TRISB,0              ; set bit 0 of port B as an input 
; OPTION_REG bit descriptions:
; Bit#:  Name:     If set to 1:
;  7     NOT_RBPU  Disable all PORTB pull-up resistors
;  6     INTEDG    Interrupt on rising edge of pulse to RB0/INT pin
;  5     T0CS      Select external clock source for TIMER0 (transition on RA4 pin as opposed to internal clock)
;  4     T0SE      TIMER0 increments on high to low transition of RA4
;  3     PSA       Prescaler counter is assigned to the watchdog timer (as opposed to TIMER0)
;  2     PS2   \
;  1     PS1    -> TIMER0 prescaler bits: 000=1:2 001=1:4 010=1:8 011=1:16 100=1:32 101=1:64 110=1:128 111=1:256
;  0     PS0   /
   MOVLW B'01000011'          ; According to the 16F628A data sheet, this is the way you must set bits in
   MOVWF OPTION_REG           ; OPTION_REG if you are switching the prescaler from watchdog timer to TIMER0.
   BCF   STATUS,RP0           ; Go back to bank 0

   BSF   T1CON,T1CKPS1        ; These set the TIMER1 prescaler. Here are the possible values:
   BSF   T1CON,T1CKPS0        ; 00=1:1 01=1:2 10=1:4 11=1:8

   BCF   T1CON,T1OSCEN        ; Turn off the TIMER1 oscillator to save power (we don't need it because we're using the internal oscillator)
   BCF   T1CON,TMR1CS         ; Select the internal oscillator for TIMER1
   BSF   T1CON,TMR1ON         ; Turn on TIMER1


; Turn off all LEDs
   CLRF  PORTA                ; Clear port A (set all lines low)
ClearOutput macro
   MOVLW 0x00
   MOVWF byteout
   CALL  WriteByte
   endm
   ClearOutput
   ClearOutput
   ClearOutput
   ClearOutput
   BSF PORTA,2                ; Pulse the latch to send data to the LEDs
   BCF PORTA,2

; Enable interrupts
   BCF   INTCON,INTF          ; Clear INTF flag before enabling interrupts
   BCF   INTCON,T0IF          ; Clear T0IF (TIMER0 Interrupt Flag) before enabling interrupts
   BCF   PIR1,TMR1IF          ; Clear TMR1IF (TIMER1 Interrupt Flag) before enabling interrupts
   BSF   INTCON,INTE          ; Enable interrupt on RB0/INT pin (an External interrupt)
   BSF   INTCON,T0IE          ; Enable interrupt on TIMER0 overflow (when TIMER0 wraps around from 0xFF to 0x00)
   BSF   INTCON,PEIE          ; Enable PEIE (PEripheral Interrupt Enable - for TIMER1, the 16 bit timer)
   BSF   STATUS,RP0           ; Go to bank 1
   BSF   PIE1,TMR1IE          ; Enable interrupt on TIMER1 overflow (when the TMR1 register pair wraps around from 0xFFFF to 0x0000)
   BCF   STATUS,RP0           ; Go to bank 0
   BSF   INTCON,GIE           ; Enable global interrupts

WaitForInterrupt
   GOTO WaitForInterrupt

OutputImage                   ; (252 instruction cycles)
GetData macro pagenum
   MOVLW pagenum              ; Load memory page number into PCLATH: 
   MOVWF PCLATH               ; The top four pages start at: 0x400, 0x500, 0x600 and 0x700 respectively.
                              ; The lower eight bits are handled by adding linecount to PCL,
                              ; therefore PCLATH only needs to be loaded with 0x4, 0x5, 0x6 and 0x7.
   MOVFW linecount           
   CALL ImageData
   MOVWF byteout
   CALL WriteByte
   endm

   GetData 0x7;
   GetData 0x6;
   GetData 0x5;
   GetData 0x4;

   BSF PORTA,2                ; Pulse the latch to send data to the LEDs
   BCF PORTA,2
   RETURN

WriteByte                     ; (50 instruction cycles)
BitLoop macro
   BCF PORTA,0
   BTFSC byteout,0
   BSF PORTA,0
   BSF PORTA,1
   BCF PORTA,1
   RRF byteout
   endm
   BitLoop
   BitLoop
   BitLoop
   BitLoop
   BitLoop
   BitLoop
   BitLoop
   BitLoop
   RETURN

   org 0x1FF
TimingData
   ADDWF PCL,F
; Page boundary, timing data starts here
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFF
   RETLW 0xFE
   RETLW 0xFD
   RETLW 0xFC
   RETLW 0xFB
   RETLW 0xFA
   RETLW 0xF8
   RETLW 0xF7
   RETLW 0xF6
   RETLW 0xF5
   RETLW 0xF4
   RETLW 0xF3
   RETLW 0xF2
   RETLW 0xF1
   RETLW 0xF0
   RETLW 0xEF
   RETLW 0xEE
   RETLW 0xED
   RETLW 0xEC
   RETLW 0xEA
   RETLW 0xE9
   RETLW 0xE8
   RETLW 0xE7
   RETLW 0xE6
   RETLW 0xE5
   RETLW 0xE4
   RETLW 0xE3
   RETLW 0xE2
   RETLW 0xE1
   RETLW 0xE0
   RETLW 0xDF
   RETLW 0xDE
   RETLW 0xDC
   RETLW 0xDB
   RETLW 0xDA
   RETLW 0xD9
   RETLW 0xD8
   RETLW 0xD7
   RETLW 0xD6
   RETLW 0xD5
   RETLW 0xD4
   RETLW 0xD3
   RETLW 0xD2
   RETLW 0xD1
   RETLW 0xD0
   RETLW 0xCF
   RETLW 0xCD
   RETLW 0xCC
   RETLW 0xCB
   RETLW 0xCA
   RETLW 0xC9
   RETLW 0xC8
   RETLW 0xC7
   RETLW 0xC6
   RETLW 0xC5
   RETLW 0xC4
   RETLW 0xC3
   RETLW 0xC2
   RETLW 0xC1
   RETLW 0xBF
   RETLW 0xBE
   RETLW 0xBD
   RETLW 0xBC
   RETLW 0xBB
   RETLW 0xBA
   RETLW 0xB9
   RETLW 0xB8
   RETLW 0xB7
   RETLW 0xB6
   RETLW 0xB5
   RETLW 0xB4
   RETLW 0xB3
   RETLW 0xB1
   RETLW 0xB0
   RETLW 0xAF
   RETLW 0xAE
   RETLW 0xAD
   RETLW 0xAC
   RETLW 0xAB
   RETLW 0xAA
   RETLW 0xA9
   RETLW 0xA8
   RETLW 0xA7
   RETLW 0xA6
   RETLW 0xA5
   RETLW 0xA3
   RETLW 0xA2
   RETLW 0xA1
   RETLW 0xA0
   RETLW 0x9F
   RETLW 0x9E
   RETLW 0x9D
   RETLW 0x9C
   RETLW 0x9B
   RETLW 0x9A
   RETLW 0x99
   RETLW 0x98
   RETLW 0x97
   RETLW 0x96
   RETLW 0x94
   RETLW 0x93
   RETLW 0x92
   RETLW 0x91
   RETLW 0x90
   RETLW 0x8F
   RETLW 0x8E
   RETLW 0x8D
   RETLW 0x8C
   RETLW 0x8B
   RETLW 0x8A
   RETLW 0x89
   RETLW 0x88
   RETLW 0x86
   RETLW 0x85
   RETLW 0x84
   RETLW 0x83
   RETLW 0x82
   RETLW 0x81
   RETLW 0x80
   RETLW 0x7F
   RETLW 0x7E
   RETLW 0x7D
   RETLW 0x7C
   RETLW 0x7B
   RETLW 0x7A
   RETLW 0x78
   RETLW 0x77
   RETLW 0x76
   RETLW 0x75
   RETLW 0x74
   RETLW 0x73
   RETLW 0x72
   RETLW 0x71
   RETLW 0x70
   RETLW 0x6F
   RETLW 0x6E
   RETLW 0x6D
   RETLW 0x6C
   RETLW 0x6A
   RETLW 0x69
   RETLW 0x68
   RETLW 0x67
   RETLW 0x66
   RETLW 0x65
   RETLW 0x64
   RETLW 0x63
   RETLW 0x62
   RETLW 0x61
   RETLW 0x60
   RETLW 0x5F
   RETLW 0x5E
   RETLW 0x5D
   RETLW 0x5B
   RETLW 0x5A
   RETLW 0x59
   RETLW 0x58
   RETLW 0x57
   RETLW 0x56
   RETLW 0x55
   RETLW 0x54
   RETLW 0x53
   RETLW 0x52
   RETLW 0x51
   RETLW 0x50
   RETLW 0x4F
   RETLW 0x4D
   RETLW 0x4C
   RETLW 0x4B
   RETLW 0x4A
   RETLW 0x49
   RETLW 0x48
   RETLW 0x47
   RETLW 0x46
   RETLW 0x45
   RETLW 0x44
   RETLW 0x43
   RETLW 0x42
   RETLW 0x41
   RETLW 0x3F
   RETLW 0x3E
   RETLW 0x3D
   RETLW 0x3C
   RETLW 0x3B
   RETLW 0x3A
   RETLW 0x39
   RETLW 0x38
   RETLW 0x37
   RETLW 0x36
   RETLW 0x35
   RETLW 0x34
   RETLW 0x33
   RETLW 0x31
   RETLW 0x30
   RETLW 0x2F
   RETLW 0x2E
   RETLW 0x2D
   RETLW 0x2C
   RETLW 0x2B
   RETLW 0x2A
   RETLW 0x29
   RETLW 0x28
   RETLW 0x27
   RETLW 0x26
   RETLW 0x25
   RETLW 0x23
   RETLW 0x22
   RETLW 0x21
   RETLW 0x20
   RETLW 0x1F
   RETLW 0x1E
   RETLW 0x1D
   RETLW 0x1C
   RETLW 0x1B
   RETLW 0x1A
   RETLW 0x19
   RETLW 0x18
   RETLW 0x17
   RETLW 0x16
   RETLW 0x14
   RETLW 0x13
   RETLW 0x12
   RETLW 0x11
   RETLW 0x10
   RETLW 0xF
   RETLW 0xE
   RETLW 0xD
   RETLW 0xC
   RETLW 0xB
   RETLW 0xA
   RETLW 0x9
   RETLW 0x8
   RETLW 0x6
   RETLW 0x5
   RETLW 0x4
   RETLW 0x3
   RETLW 0x2
   RETLW 0x1
   RETLW 0x0

   org 0x3FF
ImageData
   ADDWF PCL,F
; Page boundary, image data starts here.
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000001'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000100'
   RETLW B'00001000'
   RETLW B'00000001'
   RETLW B'00000000'
   RETLW B'00000010'
   RETLW B'00000101'
   RETLW B'00000001'
   RETLW B'00000000'
   RETLW B'00001101'
   RETLW B'00000111'
   RETLW B'00000011'
   RETLW B'00000010'
   RETLW B'00000010'
   RETLW B'00000000'
   RETLW B'00000011'
   RETLW B'00000110'
   RETLW B'00000011'
   RETLW B'00000010'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00001001'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00001110'
   RETLW B'00101000'
   RETLW B'01110111'
   RETLW B'00100111'
   RETLW B'00010110'
   RETLW B'00100111'
   RETLW B'01100110'
   RETLW B'00011101'
   RETLW B'00101101'
   RETLW B'00011111'
   RETLW B'00000001'
   RETLW B'00000011'
   RETLW B'00001011'
   RETLW B'00000101'
   RETLW B'00000000'
   RETLW B'00000111'
   RETLW B'00000010'
   RETLW B'00000010'
   RETLW B'00000000'
   RETLW B'00000001'
   RETLW B'00000001'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000001'
   RETLW B'00000001'
   RETLW B'00000000'
   RETLW B'00000001'
   RETLW B'00000011'
   RETLW B'00000110'
   RETLW B'00000010'
   RETLW B'00000111'
   RETLW B'00001011'
   RETLW B'00000111'
   RETLW B'00001110'
   RETLW B'00000100'
   RETLW B'00001000'
   RETLW B'00000010'
   RETLW B'00000100'
   RETLW B'00000010'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00001000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
; Page boundary
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000010'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'01000100'
   RETLW B'00100000'
   RETLW B'10000000'
   RETLW B'01010000'
   RETLW B'10100100'
   RETLW B'11011000'
   RETLW B'11100000'
   RETLW B'10111100'
   RETLW B'11110110'
   RETLW B'11010000'
   RETLW B'11110100'
   RETLW B'11010000'
   RETLW B'11100000'
   RETLW B'11110010'
   RETLW B'01000010'
   RETLW B'01100000'
   RETLW B'00100000'
   RETLW B'11000000'
   RETLW B'01100000'
   RETLW B'10000000'
   RETLW B'10000000'
   RETLW B'00100000'
   RETLW B'00000000'
   RETLW B'10000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00100000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00001000'
   RETLW B'01110000'
   RETLW B'11100000'
   RETLW B'01000010'
   RETLW B'10111101'
   RETLW B'01101100'
   RETLW B'10111100'
   RETLW B'11011110'
   RETLW B'11000101'
   RETLW B'10011110'
   RETLW B'10010010'
   RETLW B'01010011'
   RETLW B'10010100'
   RETLW B'10000000'
   RETLW B'00000000'
   RETLW B'11000000'
   RETLW B'10100001'
   RETLW B'11100001'
   RETLW B'11000011'
   RETLW B'11000011'
   RETLW B'10000111'
   RETLW B'11001111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'01111111'
   RETLW B'01111111'
   RETLW B'01101111'
   RETLW B'00010111'
   RETLW B'01001111'
   RETLW B'00111111'
   RETLW B'00101111'
   RETLW B'00010011'
   RETLW B'01000011'
   RETLW B'00000111'
   RETLW B'01011111'
   RETLW B'01101011'
   RETLW B'01001101'
   RETLW B'00010011'
   RETLW B'00011101'
   RETLW B'01001111'
   RETLW B'01011011'
   RETLW B'00000110'
   RETLW B'00101110'
   RETLW B'00000011'
   RETLW B'00010011'
   RETLW B'00001110'
   RETLW B'00000100'
   RETLW B'00001110'
   RETLW B'00000110'
   RETLW B'00001110'
   RETLW B'00001010'
   RETLW B'00000000'
   RETLW B'00000010'
   RETLW B'00000100'
   RETLW B'00000101'
   RETLW B'00000110'
   RETLW B'00001011'
   RETLW B'00001010'
   RETLW B'00000010'
   RETLW B'00000100'
   RETLW B'00010010'
   RETLW B'00001100'
   RETLW B'00001010'
   RETLW B'00011100'
   RETLW B'00010110'
   RETLW B'00011101'
   RETLW B'00000010'
   RETLW B'00111110'
   RETLW B'00011100'
   RETLW B'00010000'
   RETLW B'00111110'
   RETLW B'00010000'
   RETLW B'00111000'
   RETLW B'01110000'
   RETLW B'10000100'
   RETLW B'00111000'
   RETLW B'00110000'
   RETLW B'01110000'
   RETLW B'11001000'
   RETLW B'00100000'
   RETLW B'01100000'
   RETLW B'11000000'
   RETLW B'10000000'
   RETLW B'01000000'
   RETLW B'10000000'
   RETLW B'01000000'
   RETLW B'10000000'
   RETLW B'10000000'
   RETLW B'00000001'
   RETLW B'00000110'
   RETLW B'00000000'
   RETLW B'00000011'
   RETLW B'00100011'
   RETLW B'00100100'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000001'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'01000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00001000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000100'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'01000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
; Page boundary
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'10000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00010000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'10000000'
   RETLW B'10000000'
   RETLW B'01000000'
   RETLW B'10000000'
   RETLW B'00011000'
   RETLW B'00011111'
   RETLW B'01111111'
   RETLW B'01011111'
   RETLW B'00111111'
   RETLW B'00111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111101'
   RETLW B'11111111'
   RETLW B'10111111'
   RETLW B'11111111'
   RETLW B'11011011'
   RETLW B'11111111'
   RETLW B'01111011'
   RETLW B'11111011'
   RETLW B'11011111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'11111111'
   RETLW B'01111111'
   RETLW B'01111111'
   RETLW B'01101111'
   RETLW B'01111111'
   RETLW B'11101101'
   RETLW B'01110101'
   RETLW B'10110111'
   RETLW B'10101001'
   RETLW B'00101011'
   RETLW B'10001111'
   RETLW B'00011101'
   RETLW B'00011101'
   RETLW B'00010011'
   RETLW B'10100011'
   RETLW B'00000010'
   RETLW B'00101001'
   RETLW B'00001010'
   RETLW B'00001000'
   RETLW B'10101101'
   RETLW B'00000011'
   RETLW B'00100111'
   RETLW B'00000000'
   RETLW B'10100000'
   RETLW B'00010000'
   RETLW B'00000000'
   RETLW B'00010000'
   RETLW B'00000100'
   RETLW B'00010010'
   RETLW B'00100001'
   RETLW B'00110001'
   RETLW B'10100100'
   RETLW B'00000000'
   RETLW B'01000000'
   RETLW B'01010001'
   RETLW B'00100000'
   RETLW B'01000000'
   RETLW B'00000100'
   RETLW B'00000000'
   RETLW B'00011000'
   RETLW B'00011101'
   RETLW B'00010111'
   RETLW B'00001110'
   RETLW B'00111010'
   RETLW B'01011100'
   RETLW B'01101000'
   RETLW B'11001000'
   RETLW B'10101000'
   RETLW B'11100000'
   RETLW B'01100000'
   RETLW B'10100000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000100'
   RETLW B'00000100'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
; Page boundary
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'01000000'
   RETLW B'11110000'
   RETLW B'11111000'
   RETLW B'11110000'
   RETLW B'11111100'
   RETLW B'11111000'
   RETLW B'11111000'
   RETLW B'11111000'
   RETLW B'11111100'
   RETLW B'11111100'
   RETLW B'11111100'
   RETLW B'11111010'
   RETLW B'11111100'
   RETLW B'11111000'
   RETLW B'11110110'
   RETLW B'11111010'
   RETLW B'11111110'
   RETLW B'11111110'
   RETLW B'11111010'
   RETLW B'11111110'
   RETLW B'11110110'
   RETLW B'11111110'
   RETLW B'11111110'
   RETLW B'11111110'
   RETLW B'11111100'
   RETLW B'11011010'
   RETLW B'11110110'
   RETLW B'11111110'
   RETLW B'11110100'
   RETLW B'01111101'
   RETLW B'11111110'
   RETLW B'11110110'
   RETLW B'11101110'
   RETLW B'10111000'
   RETLW B'10110111'
   RETLW B'11011110'
   RETLW B'11100111'
   RETLW B'11111011'
   RETLW B'01111100'
   RETLW B'10011110'
   RETLW B'00001010'
   RETLW B'00010101'
   RETLW B'01011110'
   RETLW B'01011101'
   RETLW B'10110110'
   RETLW B'11101110'
   RETLW B'11010000'
   RETLW B'10100100'
   RETLW B'11101010'
   RETLW B'10011110'
   RETLW B'10101110'
   RETLW B'11010110'
   RETLW B'10110100'
   RETLW B'01011110'
   RETLW B'00101100'
   RETLW B'01000110'
   RETLW B'11110100'
   RETLW B'11001110'
   RETLW B'01011100'
   RETLW B'10100110'
   RETLW B'01011010'
   RETLW B'00001010'
   RETLW B'01100000'
   RETLW B'11111110'
   RETLW B'01100100'
   RETLW B'00100000'
   RETLW B'01001000'
   RETLW B'01010000'
   RETLW B'00000000'
   RETLW B'00010000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   RETLW B'00000000'
   end
22/08/2013 #2
Moderador

Avatar de Chico3001

Que errores presenta???
22/08/2013 #3


desbordamiento de pila


gracias
24/08/2013 #4


amigo le envie un privado sin darme cuenta que usted habia respondido
24/08/2013 #5
Moderador

Avatar de Chico3001

Faltan mas datos para poderte ayudar mas... lo has simulado? que pila se desborda? que hace y que no hace?
25/08/2013 #6


Saludos, he compilado el programa y esto son los errores que muestra:

Debug build of project `C:\Archivos de programa\Microchip\MPLAB IDE\Core\willy\willy2.mcp' started.
Language tool versions: MPASMWIN.exe v5.37, mplink.exe v4.37, mplib.exe v4.37
Preprocessor symbol `__DEBUG' is defined.
Sun Aug 25 11:36:35 2013
----------------------------------------------------------------------
Make: The target "C:\Archivos de programa\Microchip\MPLAB IDE\Core\willy\WILLY2.o" is out of date.
Executing: "C:\Archivos de programa\Microchip\MPASM Suite\MPASMWIN.exe" /q /p16F877A "WILLY2.ASM" /l"WILLY2.lst" /e"WILLY2.err" /d__DEBUG=1
Message[305] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 53 : Using default destination of 1 (file).
Message[302] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 92 : Register in operand not in bank 0. Ensure that bank bits are correct.
Message[302] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 95 : Register in operand not in bank 0. Ensure that bank bits are correct.
Message[302] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 96 : Register in operand not in bank 0. Ensure that bank bits are correct.
Message[302] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 97 : Register in operand not in bank 0. Ensure that bank bits are correct.
Message[302] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 109 : Register in operand not in bank 0. Ensure that bank bits are correct.
Message[302] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 142 : Register in operand not in bank 0. Ensure that bank bits are correct.
Message[305] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 177 : Using default destination of 1 (file).
Message[305] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 177 : Using default destination of 1 (file).
Message[305] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 177 : Using default destination of 1 (file).
Message[305] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 177 : Using default destination of 1 (file).
Message[305] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 177 : Using default destination of 1 (file).
Message[305] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 177 : Using default destination of 1 (file).
Message[305] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 177 : Using default destination of 1 (file).
Message[305] C:\ARCHIVOS DE PROGRAMA\MICROCHIP\MPLAB IDE\CORE\WILLY\WILLY2.ASM 177 : Using default destination of 1 (file).
Make: The target "C:\Archivos de programa\Microchip\MPLAB IDE\Core\willy\WILLY2.cof" is out of date.
Executing: "C:\Archivos de programa\Microchip\MPASM Suite\mplink.exe" /p16F877A "WILLY2.o" /u_DEBUG /z__MPLAB_BUILD=1 /z__MPLAB_DEBUG=1 /o"WILLY2.cof" /M"WILLY2.map" /W /x
MPLINK 4.37, Linker
Copyright (c) 1998-2010 Microchip Technology Inc.
Errors : 0

Loaded C:\Archivos de programa\Microchip\MPLAB IDE\Core\willy\WILLY2.cof.
----------------------------------------------------------------------
Debug build of project `C:\Archivos de programa\Microchip\MPLAB IDE\Core\willy\willy2.mcp' succeeded.
Language tool versions: MPASMWIN.exe v5.37, mplink.exe v4.37, mplib.exe v4.37
Preprocessor symbol `__DEBUG' is defined.
Sun Aug 25 11:36:37 2013
----------------------------------------------------------------------
BUILD SUCCEEDED

---------- Actualizado después de 12 minutos ----------

claro es es en en al 16f628a, como te mencione anteriormente quiero agregar mas tablas pero usando el 16f877a y no se por donde empezae, me he comunicado con la persona que programo y diseño el circuito para la autorizacion de poder modificar el programa
25/08/2013 #7

Avatar de ByAxel

Hola.
No son errores... son avisos ya que aparece BUILD SUCCEEDED al final, estos avisos se pueden evitar con el comando ERRORLEVEL.
Pero te indica con el aviso 302 que debes de tener en cuenta los cambios entre bancos y con 305 te recuerda que debes de tener cuidado con los saltos a grandes distancias, esto es cuando se manipula el PCLATCH seguido de un call o goto que si se manipulan mal pueden llegar a desbordar la pila.

Saludos.
25/08/2013 #8


gracias byaxel, buscando informacion me di cuenta que son avisos y no errores, seguire intentando de adaptar este programa a otro pic de manera ue pueda agregar mas tablas ya que lastblas son las que contiene los atos de lasimagenes a mostrar

---------- Actualizado después de 35 minutos ----------

byaxel, como puedo modificar este programa para el 16f877a, ImageData contiene 255 instrucciones de una sola imagen y que por lo menos dure en un ciclo de 10 a 20 segundos dependiendo si la capacidad del pic lo permite....

la ideas es la siguiente:
ImageData1........ 10 o 20 segundos
ImageData2........ 10 o 20 segundos
ImageData3........ 10 o 20 segundos
ImageData4........ 10 o 20 segundos
ImageData5........ 10 o 20 segundos


25/08/2013 #9

Avatar de Daniel Meza

En realidad el message [305] hace referencia a que debes de aclara en la sintaxis en que lugar se debe de almacenar el resultado de cierta operación. P ej:

Sintaxis incorrecta:

addwf Reg1 <-----Suma W con Reg 1 pero no se especifica en que lugar de almacenará el resultado, el compilador supone que se almacenará en Reg 1

Sintaxis correcta:
addwf Reg1,W <----Suma W con Reg1 y almacena el resultado en W. En lugar de W puedes poner F y verás que esos mensajes desaparecen.

Otra cosa, para trabajar con tablas te sugiero olvidarte del método de saltos y "retlw". En cambio utiliza la opción que te da ese PIC de grabar datos en FLASH y leerlos. Con esto puedes hacer tablas que ocupen cualquier localidad de memoria
25/08/2013 #10


Daniel Meza gracias por tu repuesta, tienes algun tutorial o por donde puedo empezar a estudiar como utilizar la FLASH de ese PIC, si has leido todo el tema sabras cual es la meta a la cual quiero llegar, el diseño esta basado en el 16f628a y funciona perfectamente pero con solo una imagen, muy poco entiendo asm y estoy estudiando cada instruccion para enterder mejor el funcionamiento del timer ya que con ese programa o tablas que tiene el programa a bajas y altas reloluciones la imagen se ve perfecta, por eso es que quier modificar el programa para mostrar por lo menos 5 imagenes sin modificar la rutina que tiene el progama con el desbordamiento del timer, solo quiero agregar bien sea mas tablas que dure un tiempo determinado o en su defecto como dices tu en las FLASH, tendria que investigar que espacio tiene la memoria FLASH para poder alojar 255 instruciones por cada imagen.
25/08/2013 #11

Avatar de Daniel Meza

Acabo de hacer un pequeño tutorial sobre eso

[Aporte] Otra forma de manejar tablas en algunos PIC16F
25/08/2013 #12


gracias amigo
saludos
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.