Autor Tema: Problemas con PIC18F46K80  (Leído 379 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado DONI

  • PIC10
  • *
  • Mensajes: 1
Problemas con PIC18F46K80
« en: 22 de Septiembre de 2022, 15:11:08 »
Buenas tardes tengo un problema al momento de simular cualquier programa ya que se salta una instrucción siempre, es decir, si pongo:

    MOVWF   CNL
    MOVF      CCPR1H,W
    MOVWF   CNH
el programa ejecuta la línea 1 y 3 pero la segunda no me la muestra, aunque el PCL sigue contando las 3 instrucciones, pero el registro no se ve modificado, además note que si añadía una instrucción NOP de la forma:
    MOVWF   CNL
    NOP
    MOVF      CCPR1H,W
    NOP   
    MOVWF   CNH
Iba a funcionar, en primera instancia si lo hizo con 3 o 4 registros, pero después dejaba de modificarlos, mi programa es:

PROCESSOR   18F46K80
    #include <xc.inc>
; PIC18F46K80 Configuration Bit Settings

; Assembly source line config statements

; CONFIG1L
  CONFIG  RETEN = OFF           ; VREG Sleep Enable bit (Ultra low-power regulator is Disabled (Controlled by REGSLP bit))
  CONFIG  INTOSCSEL = LOW       ; LF-INTOSC Low-power Enable bit (LF-INTOSC in Low-power mode during Sleep)
  CONFIG  SOSCSEL = DIG         ; SOSC Power Selection and mode Configuration bits (Digital (SCLKI) mode)
  CONFIG  XINST = OFF            ; Extended Instruction Set (Enabled)

; CONFIG1H
  CONFIG  FOSC = XT             ; Oscillator (XT oscillator)
  CONFIG  PLLCFG = OFF          ; PLL x4 Enable bit (Disabled)
  CONFIG  FCMEN = OFF           ; Fail-Safe Clock Monitor (Disabled)
  CONFIG  IESO = OFF            ; Internal External Oscillator Switch Over Mode (Disabled)

; CONFIG2L
  CONFIG  PWRTEN = OFF          ; Power Up Timer (Disabled)
  CONFIG  BOREN = OFF           ; Brown Out Detect (Disabled in hardware, SBOREN disabled)
  CONFIG  BORV = 0              ; Brown-out Reset Voltage bits (3.0V)
  CONFIG  BORPWR = ZPBORMV      ; BORMV Power level (ZPBORMV instead of BORMV is selected)

; CONFIG2H
  CONFIG  WDTEN = OFF           ; Watchdog Timer (WDT disabled in hardware; SWDTEN bit disabled)
  CONFIG  WDTPS = 1             ; Watchdog Postscaler (1:1)

; CONFIG3H
  CONFIG  CANMX = PORTB         ; ECAN Mux bit (ECAN TX and RX pins are located on RB2 and RB3, respectively)
;  CONFIG  MSSPMSK = MSK5        ; MSSP address masking (7 Bit address masking mode)
  CONFIG  MCLRE = ON            ; Master Clear Enable (MCLR Enabled, RE3 Disabled)

; CONFIG4L
  CONFIG  STVREN = OFF          ; Stack Overflow Reset (Disabled)
  CONFIG  BBSIZ = BB1K          ; Boot Block Size (2K word Boot Block size)

; CONFIG5L
  CONFIG  CP0 = OFF             ; Code Protect 00800-03FFF (Disabled)
  CONFIG  CP1 = OFF             ; Code Protect 04000-07FFF (Disabled)
  CONFIG  CP2 = OFF             ; Code Protect 08000-0BFFF (Disabled)
  CONFIG  CP3 = OFF             ; Code Protect 0C000-0FFFF (Disabled)

; CONFIG5H
  CONFIG  CPB = OFF             ; Code Protect Boot (Disabled)
  CONFIG  CPD = OFF             ; Data EE Read Protect (Disabled)

; CONFIG6L
  CONFIG  WRT0 = OFF            ; Table Write Protect 00800-03FFF (Disabled)
  CONFIG  WRT1 = OFF            ; Table Write Protect 04000-07FFF (Disabled)
  CONFIG  WRT2 = OFF            ; Table Write Protect 08000-0BFFF (Disabled)
  CONFIG  WRT3 = OFF            ; Table Write Protect 0C000-0FFFF (Disabled)

; CONFIG6H
  CONFIG  WRTC = OFF            ; Config. Write Protect (Disabled)
  CONFIG  WRTB = OFF            ; Table Write Protect Boot (Disabled)
  CONFIG  WRTD = OFF            ; Data EE Write Protect (Disabled)

; CONFIG7L
  CONFIG  EBTR0 = OFF           ; Table Read Protect 00800-03FFF (Disabled)
  CONFIG  EBTR1 = OFF           ; Table Read Protect 04000-07FFF (Disabled)
  CONFIG  EBTR2 = OFF           ; Table Read Protect 08000-0BFFF (Disabled)
  CONFIG  EBTR3 = OFF           ; Table Read Protect 0C000-0FFFF (Disabled)

; CONFIG7H
  CONFIG  EBTRB = OFF           ; Table Read Protect Boot (Disabled)

// config statements should precede project file includes.

PSECT   variables
 
  AC1H:
    DS   1
   
  AC2H:
    DS   1
   
  AC3H:
    DS   1
   
  AC4H:
    DS   1
  AC1L:
    DS   1
   
  AC2L:
    DS   1
   
  AC3L:
    DS   1
   
  AC4L:
    DS   1

  PR1H:
    DS   1
   
  PR2H:
    DS   1
   
  PR3H:
    DS   1
   
  PR1L:
    DS   1
   
  PR2L:
    DS   1
   
  PR3L:
    DS   1

PSECT   CODE, delta=2, abs
ORG 0xD004;
resetVector:
   GOTO conf
   
PSECT   programacion, delta=2, abs
ORG 0x0000;
conf:
    BANKSEL TRISA
    NOP
    CLRF    TRISA
    NOP
    BSF       TRISA,2
    NOP
    BANKSEL ADCON1
    NOP
    MOVLW   00110000B
    NOP
    MOVWF   ADCON1
    NOP
    BANKSEL ADCON2
    NOP
    MOVLW   10110001B
    NOP
    MOVWF   ADCON2
    NOP
    BANKSEL ANCON0
    NOP
    MOVLW   00001111B
    NOP
    MOVWF   ANCON0
    NOP
    BANKSEL ANCON1
    NOP
    MOVLW   00000111B
    NOP
    MOVWF   ANCON1
    NOP
    BANKSEL SSPSTAT
    NOP
    MOVLW   00000000B
    NOP
    MOVWF   SSPSTAT
    NOP
    BANKSEL TRISC
    NOP
    MOVLW   00010000B
    NOP
    MOVWF   TRISC
    NOP
    BANKSEL SSPCON1
    NOP
    MOVLW   00100000B
    NOP
    MOVWF   SSPCON1
    NOP
    GOTO    start

start:
    MOVLW   00000010B
    MOVWF   ADCON0
    GOTO    conv1
   
conv1:
    BTFSC   ADCON0,1
    GOTO    conv1
    MOVF    ADRESH,W
    MOVWF   AC1H
    MOVF    ADRESL,W
    MOVWF   AC1L
    MOVLW   00000110B
    MOVWF   ADCON0
    GOTO    conv2
   
conv2:
    BTFSC   ADCON0,1
    GOTO    conv2
    MOVF    ADRESH,W
    MOVWF   AC2H
    MOVF    ADRESL,W
    MOVWF   AC2L
    MOVLW   00001010B
    MOVWF   ADCON0
    GOTO    conv3
   
conv3:
    BTFSC   ADCON0,1
    GOTO    conv3
    MOVF    ADRESH,W
    MOVWF   AC3H
    MOVF    ADRESL,W
    MOVWF   AC3L
    MOVLW   00001110B
    MOVWF   ADCON0
    GOTO    conv4

conv4:
    BTFSC   ADCON0,1
    GOTO    conv4
    MOVF    ADRESH,W
    MOVWF   AC4H
    MOVF    ADRESL,W
    MOVWF   AC4L
    MOVLW   00100010B
    MOVWF   ADCON0
    GOTO    conv5
   
conv5:
    BTFSC   ADCON0,1
    GOTO    conv5
    MOVF    ADRESH,W
    MOVWF   PR1H
    MOVF    ADRESL,W
    MOVWF   PR1L
    MOVLW   00100110B
    MOVWF   ADCON0
    GOTO    conv6
   
conv6:
    BTFSC   ADCON0,1
    GOTO    conv6
    MOVF    ADRESH,W
    MOVWF   PR2H
    MOVF    ADRESL,W
    MOVWF   PR2L
    MOVLW   00101010B
    MOVWF   ADCON0
    GOTO    conv6
   
conv7:
    BTFSC   ADCON0,1
    GOTO    conv7
    MOVF    ADRESH,W
    MOVWF   PR3H
    MOVF    ADRESL,W
    MOVWF   PR3L
    GOTO    SPIST
   
SPIST:
   
    GOTO    start


 

anything