Autor Tema: Debugguin MPLABX , se rompen los breakpoints al simularlo con simulator , (ASM)  (Leído 2981 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado nahueldiaz1992

  • PIC12
  • **
  • Mensajes: 75
Estimados , buenas tardes , como les va ?

Les comento estoy teniendo problemas en darme cuenta que me estoy pasando por alto , ya que intento debuguear un codigo en asemmbler , coloco un par de breakpoints y cuando comienza a simular , directamente se rompen los mismos y da mensaje de error

"Break point at line 18 in file C:/Users/NahuelCDiaz-PC/MPLABXProjects/CODIGO SANTIAGO.X/newAsmTemplate.asm cannot be resolved to a valid program memory address"

y tambien

"No source code lines were found at current PC 0x7d5. Open program memory view to see instruction code disassembly. "

mi consulta es si se me esta pasando algo en el codigo o en la configuracion del MPLAB o el compilador

*MPLABX 6.10
*XC8 pic-as 2.41
*Debug tool simulator

Código: [Seleccionar]
#include <xc.inc>
#define _XTAL_FREQ 4000000;

  CONFIG  FOSC = INTOSCIO       ; Oscillator Selection bits (INTOSC oscillator: I/O function on RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN)
  CONFIG  WDTE = OFF            ; Watchdog Timer Enable bit (WDT disabled)
  CONFIG  PWRTE = OFF           ; Power-up Timer Enable bit (PWRT disabled)
  CONFIG  MCLRE = OFF           ; RA5/MCLR/VPP Pin Function Select bit (RA5/MCLR/VPP pin function is digital input, MCLR internally tied to VDD)
  CONFIG  BOREN = OFF           ; Brown-out Detect Enable bit (BOD disabled)
  CONFIG  LVP = OFF             ; Low-Voltage Programming Enable bit (RB4/PGM pin has digital I/O function, HV on MCLR must be used for programming)
  CONFIG  CPD = OFF             ; Data EE Memory Code Protection bit (Data memory code protection off)
  CONFIG  CP = OFF              ; Flash Program Memory Code Protection bit (Code protection off)

  MAIN:
  BCF STATUS, 6
  BCF STATUS, 5
  CLRF PORTA
  MOVLW 0x25
  MOVWF PORTA
  MOVLW 0x02
  CLRF PORTB
  MOVWF PORTB
   
  LOOP:
    MOVLW 0x25
    ADDWF PORTA
    MOVWF PORTA
    DECFSZ PORTB
    GOTO LOOP
   
    CLRF PORTB
    MOVF PORTA,W
    MOVWF PORTB
   
GOTO MAIN
   
   
    END

La verdad es que estoy perdido y es para un examen , si a alguien se le ocurre alguna idea de como resolverlo se lo agradeceria .

Desconectado tsu_electronica

  • PIC18
  • ****
  • Mensajes: 274
Re:Debugguin MPLABX , se rompen los breakpoints al simularlo con simulator , (ASM)
« Respuesta #1 en: 05 de Agosto de 2023, 17:28:59 »
la primera dice que no es una dirección valida por eso puede ser que este roto el punto y la otra de igual modo no puede acceder o esta vacía esa línea pero creo que puede ser por el ensambador que usas que es el pic asm y antes se usaba el mpasm creo pueda ser por hay por que aunque sigue siendo ensamblador si tiene diferencias o que sea que el código es de un pic y este con otro micro en mplab

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1982
    • Sicoy
Re:Debugguin MPLABX , se rompen los breakpoints al simularlo con simulator , (ASM)
« Respuesta #2 en: 05 de Agosto de 2023, 18:00:04 »
Estimados , buenas tardes , como les va ?

Les comento estoy teniendo problemas en darme cuenta que me estoy pasando por alto , ya que intento debuguear un codigo en asemmbler , coloco un par de breakpoints y cuando comienza a simular , directamente se rompen los mismos y da mensaje de error

"Break point at line 18 in file C:/Users/NahuelCDiaz-PC/MPLABXProjects/CODIGO SANTIAGO.X/newAsmTemplate.asm cannot be resolved to a valid program memory address"

y tambien

"No source code lines were found at current PC 0x7d5. Open program memory view to see instruction code disassembly. "

mi consulta es si se me esta pasando algo en el codigo o en la configuracion del MPLAB o el compilador

*MPLABX 6.10
*XC8 pic-as 2.41
*Debug tool simulator

Código: [Seleccionar]
#include <xc.inc>
#define _XTAL_FREQ 4000000;

  CONFIG  FOSC = INTOSCIO       ; Oscillator Selection bits (INTOSC oscillator: I/O function on RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN)
  CONFIG  WDTE = OFF            ; Watchdog Timer Enable bit (WDT disabled)
  CONFIG  PWRTE = OFF           ; Power-up Timer Enable bit (PWRT disabled)
  CONFIG  MCLRE = OFF           ; RA5/MCLR/VPP Pin Function Select bit (RA5/MCLR/VPP pin function is digital input, MCLR internally tied to VDD)
  CONFIG  BOREN = OFF           ; Brown-out Detect Enable bit (BOD disabled)
  CONFIG  LVP = OFF             ; Low-Voltage Programming Enable bit (RB4/PGM pin has digital I/O function, HV on MCLR must be used for programming)
  CONFIG  CPD = OFF             ; Data EE Memory Code Protection bit (Data memory code protection off)
  CONFIG  CP = OFF              ; Flash Program Memory Code Protection bit (Code protection off)

  MAIN:
  BCF STATUS, 6
  BCF STATUS, 5
  CLRF PORTA
  MOVLW 0x25
  MOVWF PORTA
  MOVLW 0x02
  CLRF PORTB
  MOVWF PORTB
   
  LOOP:
    MOVLW 0x25
    ADDWF PORTA
    MOVWF PORTA
    DECFSZ PORTB
    GOTO LOOP
   
    CLRF PORTB
    MOVF PORTA,W
    MOVWF PORTB
   
GOTO MAIN
   
   
    END

La verdad es que estoy perdido y es para un examen , si a alguien se le ocurre alguna idea de como resolverlo se lo agradeceria .

Tal vez sea de utilidad este hilo en el foro de MCHP:

https://forum.microchip.com/s/topic/a5C3l000000MIwcEAG/t302882?comment=P-2258140
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1982
    • Sicoy
Re:Debugguin MPLABX , se rompen los breakpoints al simularlo con simulator , (ASM)
« Respuesta #3 en: 05 de Agosto de 2023, 18:05:41 »
Una pregunta, no he trabajado en años en ensamblador, pero... ¿No debes indicar el vector de reinicio del CPU?:

Código: ASM
  1. resetVec:
  2.       goto       main
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado nahueldiaz1992

  • PIC12
  • **
  • Mensajes: 75
Re:Debugguin MPLABX , se rompen los breakpoints al simularlo con simulator , (ASM)
« Respuesta #4 en: 05 de Agosto de 2023, 19:05:22 »
la primera dice que no es una dirección valida por eso puede ser que este roto el punto y la otra de igual modo no puede acceder o esta vacía esa línea pero creo que puede ser por el ensambador que usas que es el pic asm y antes se usaba el mpasm creo pueda ser por hay por que aunque sigue siendo ensamblador si tiene diferencias o que sea que el código es de un pic y este con otro micro en mplab


Cómo va ? Si yo también pensaba lo mismo ya que hace años trabajaba con la versión antigua de asm pero ahora que volví a necesitarlo me encontré con esta versión nueva y varios cambios .. algunos sutiles y otros no , lo que me llama la atención es que ya de por si cuando compilo reconoce que no usa espacio en el programa como si estuviera vacío ... Sobreentendido está que si trabajamos en asm casi no ocupa memoria de programa pero para tanto como marcar 0.0%? ..

Otra cosa que me encontré como ayuda me hablaba de eliminar la optimización de código del compilador pero ya hace tantos años que no trabajaba con el mplab que no se dónde tocar esa configuración y eh visitado varias páginas sin tener una idea clara del tema en cuestión.

Muchas gracias por tomarte el tiempo en este tema

Desconectado nahueldiaz1992

  • PIC12
  • **
  • Mensajes: 75
Re:Debugguin MPLABX , se rompen los breakpoints al simularlo con simulator , (ASM)
« Respuesta #5 en: 05 de Agosto de 2023, 19:06:11 »
Estimados , buenas tardes , como les va ?

Les comento estoy teniendo problemas en darme cuenta que me estoy pasando por alto , ya que intento debuguear un codigo en asemmbler , coloco un par de breakpoints y cuando comienza a simular , directamente se rompen los mismos y da mensaje de error

"Break point at line 18 in file C:/Users/NahuelCDiaz-PC/MPLABXProjects/CODIGO SANTIAGO.X/newAsmTemplate.asm cannot be resolved to a valid program memory address"

y tambien

"No source code lines were found at current PC 0x7d5. Open program memory view to see instruction code disassembly. "

mi consulta es si se me esta pasando algo en el codigo o en la configuracion del MPLAB o el compilador

*MPLABX 6.10
*XC8 pic-as 2.41
*Debug tool simulator

Código: [Seleccionar]
#include <xc.inc>
#define _XTAL_FREQ 4000000;

  CONFIG  FOSC = INTOSCIO       ; Oscillator Selection bits (INTOSC oscillator: I/O function on RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN)
  CONFIG  WDTE = OFF            ; Watchdog Timer Enable bit (WDT disabled)
  CONFIG  PWRTE = OFF           ; Power-up Timer Enable bit (PWRT disabled)
  CONFIG  MCLRE = OFF           ; RA5/MCLR/VPP Pin Function Select bit (RA5/MCLR/VPP pin function is digital input, MCLR internally tied to VDD)
  CONFIG  BOREN = OFF           ; Brown-out Detect Enable bit (BOD disabled)
  CONFIG  LVP = OFF             ; Low-Voltage Programming Enable bit (RB4/PGM pin has digital I/O function, HV on MCLR must be used for programming)
  CONFIG  CPD = OFF             ; Data EE Memory Code Protection bit (Data memory code protection off)
  CONFIG  CP = OFF              ; Flash Program Memory Code Protection bit (Code protection off)

  MAIN:
  BCF STATUS, 6
  BCF STATUS, 5
  CLRF PORTA
  MOVLW 0x25
  MOVWF PORTA
  MOVLW 0x02
  CLRF PORTB
  MOVWF PORTB
   
  LOOP:
    MOVLW 0x25
    ADDWF PORTA
    MOVWF PORTA
    DECFSZ PORTB
    GOTO LOOP
   
    CLRF PORTB
    MOVF PORTA,W
    MOVWF PORTB
   
GOTO MAIN
   
   
    END

La verdad es que estoy perdido y es para un examen , si a alguien se le ocurre alguna idea de como resolverlo se lo agradeceria .

Tal vez sea de utilidad este hilo en el foro de MCHP:

https://forum.microchip.com/s/topic/a5C3l000000MIwcEAG/t302882?comment=P-2258140
Muchas Gracias me voy a fijar si encuentro algo que me ayude ahí

Desconectado nahueldiaz1992

  • PIC12
  • **
  • Mensajes: 75
Re:Debugguin MPLABX , se rompen los breakpoints al simularlo con simulator , (ASM)
« Respuesta #6 en: 05 de Agosto de 2023, 19:07:54 »
Una pregunta, no he trabajado en años en ensamblador, pero... ¿No debes indicar el vector de reinicio del CPU?:

Código: ASM
  1. resetVec:
  2.       goto       main

Vos te referís a la instrucción ORG ? .. con ella colocada también me rompe los breakpoint

Desconectado DominusDRR

  • PIC24H
  • ******
  • Mensajes: 1982
    • Sicoy
Re:Debugguin MPLABX , se rompen los breakpoints al simularlo con simulator , (ASM)
« Respuesta #7 en: 05 de Agosto de 2023, 19:18:13 »
Una pregunta, no he trabajado en años en ensamblador, pero... ¿No debes indicar el vector de reinicio del CPU?:

Código: ASM
  1. resetVec:
  2.       goto       main

Vos te referís a la instrucción ORG ? .. con ella colocada también me rompe los breakpoint

Mira estos ejemplos de ASM de MCHP:

https://onlinedocs.microchip.com/pr/GUID-205B1F42-0E06-45E1-8D34-E3D05C15710F-en-US-3/index.html?GUID-F4498102-B6F9-455A-ACF9-4CB5E1667727
Tengo una idea algo difusa sobre MPLAB Harmony, XC32 con PIC32

Desconectado nahueldiaz1992

  • PIC12
  • **
  • Mensajes: 75
Re:Debugguin MPLABX , se rompen los breakpoints al simularlo con simulator , (ASM)
« Respuesta #8 en: 05 de Agosto de 2023, 19:21:53 »
Una pregunta, no he trabajado en años en ensamblador, pero... ¿No debes indicar el vector de reinicio del CPU?:

Código: ASM
  1. resetVec:
  2.       goto       main

Vos te referís a la instrucción ORG ? .. con ella colocada también me rompe los breakpoint

Mira estos ejemplos de ASM de MCHP:

https://onlinedocs.microchip.com/pr/GUID-205B1F42-0E06-45E1-8D34-E3D05C15710F-en-US-3/index.html?GUID-F4498102-B6F9-455A-ACF9-4CB5E1667727

Muchas Gracias!! Voy a ver de probarlo en un rato cuando llegue a casa , lo que si nunca use el reset vector en otros proyectos y nunca tuve este problema pero bueno mejor así saco provecho y aprendo algo nuevo de paso , mantengo al tanto de como me va y si lo pude solucionar

Desconectado tsu_electronica

  • PIC18
  • ****
  • Mensajes: 274
Re:Debugguin MPLABX , se rompen los breakpoints al simularlo con simulator , (ASM)
« Respuesta #9 en: 05 de Agosto de 2023, 20:17:46 »
a ok si es que ya me parece y creo que también pic asm ya esta también en desuso ya se enfocan mas en c por los nuevos micros, pero lo bueno es que se puede descargar unas versiones antes que todavía tienen el mpasm me parece que es la versión mplab x 5.4 o para no fallar mejor una antes y hay si puedes poner el código en ensamblador sin problemas y compilar con mpasm para que sigas con los proyectos antiguos y nuevo igual

Desconectado nahueldiaz1992

  • PIC12
  • **
  • Mensajes: 75
Re:Debugguin MPLABX , se rompen los breakpoints al simularlo con simulator , (ASM)
« Respuesta #10 en: 19 de Agosto de 2023, 15:10:05 »
Buenas Tardes , para finalizar , vi que era lo que no me estaba permitiendo lograr debbuguear el codigo , necesitaba colocar la directiva "PSECT code" antes de colocar el main.

Código: [Seleccionar]
#include <xc.inc>
#define _XTAL_FREQ 4000000;

  CONFIG  FOSC = INTOSCIO       ; Oscillator Selection bits (INTOSC oscillator: I/O function on RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN)
  CONFIG  WDTE = OFF            ; Watchdog Timer Enable bit (WDT disabled)
  CONFIG  PWRTE = OFF           ; Power-up Timer Enable bit (PWRT disabled)
  CONFIG  MCLRE = OFF           ; RA5/MCLR/VPP Pin Function Select bit (RA5/MCLR/VPP pin function is digital input, MCLR internally tied to VDD)
  CONFIG  BOREN = OFF           ; Brown-out Detect Enable bit (BOD disabled)
  CONFIG  LVP = OFF             ; Low-Voltage Programming Enable bit (RB4/PGM pin has digital I/O function, HV on MCLR must be used for programming)
  CONFIG  CPD = OFF             ; Data EE Memory Code Protection bit (Data memory code protection off)
  CONFIG  CP = OFF              ; Flash Program Memory Code Protection bit (Code protection off)


PSECT code
  MAIN:
  BCF STATUS, 6
  BCF STATUS, 5
  CLRF PORTA
  MOVLW 0x25
  MOVWF PORTA
  MOVLW 0x02
  CLRF PORTB
  MOVWF PORTB
   
  LOOP:
    MOVLW 0x25
    ADDWF PORTA
    MOVWF PORTA
    DECFSZ PORTB
    GOTO LOOP
   
    CLRF PORTB
    MOVF PORTA,W
    MOVWF PORTB
   
GOTO MAIN
   
   
    END

Tambien en caso de generar variables con la directiva EQU , hay que declararla como global para poder visualizarla entre los FSR y visualizar como se alteran sus valores con el programa . Todo esto de la siguiente manera:

Código: [Seleccionar]
V4 EQU 0x13
 GLOBAL V4
 

Espero que le sirva a alguien y en caso de tener errores porfavor corregir sobre el foro .

Esto se comprobo con la version 6.1 de mplabx y con la version 2.41 de pic-as


 

anything