AnsweredAssumed Answered

Codewarrior 10.4 breakpoints with USB Tap

Question asked by doom_guy on Aug 7, 2013
Latest reply on Aug 8, 2013 by doom_guy

OS - Win 7

Codewarrior version 10.4

Debugger - USB Tap

Processor - MC56F847x

 

I am having problems getting breakpoints to be hit in my application as well as codewarrior processor expert example applications. I tried the example projects when I found I could not get the breakpoints in main to be hit - I thought it may be an issue with my own application but the example projects also have the same problem. I can step through fine inside _EntryPoint() as seen below. For the debugger options I have set the Program execution to Stop at Startup on the Program entry point. I also tried user specified (main) but both yield the same result. I cannot get the breakpoints in the main function to be hit. The program executes successfully.

 

Untitled2.jpg

 

==========================================

The debugging starts at:

 

void _EntryPoint(void)
{
  #pragma constarray off

  /*** !!! Here you can place your own code before PE initialization using property "User code before PE initialization" on the build options tab. !!! ***/

  /*** ### MC56F84789VLL "Cpu" init code ... ***/

  /*** PE initialization code after reset ***/

  /* Disable watchdog after reset based on the setting of the "Watchdog" property in CPU component */
  /* COP_CTRL: ??=0,??=0,??=0,??=0,??=0,??=0,PSS=3,INTEN=0,CLKSEL=0,CLOREN=0,CSEN=0,CWEN=0,CEN=0,CWP=0 */
  setReg16(COP_CTRL, 0x0300U);         

  /* System clock initialization */
  setRegBitGroup(OCCS_OSCTL1, FREQ_TRIM8M, ((*(word *)0xE42C) & 0x03FFU)); /* Trim the 8MHz internal relaxation oscillator, frequency trim value */
  clrReg16Bit(OCCS_OSCTL1, ROPD);      /* Enable internal 8MHz oscillator */
  setReg16Bit(OCCS_OSCTL1, CLK_MODE);  /* Select an external clock bypass mode */
  setRegBitGroup(OCCS_CTRL, PRECS, 0U); /* Select an internal 8MHz clock source for the CPU core */
  clrSetReg16Bits(OCCS_CTRL, OCCS_CTRL_PLLPD_MASK, OCCS_CTRL_LCKON_MASK); /* Enable PLL, LCKON and select clock source from prescaler */
  /* OCCS_DIVBY: LORTP=2,COD=0,??=0,??=0,PLLDB=0x31 */
  setReg16(OCCS_DIVBY, 0x2031U);       /* Set the clock prescalers */
  while(!getRegBit(OCCS_STAT, LCK0)){} /* Wait for PLL lock */
  setReg16Bits(OCCS_CTRL, OCCS_CTRL_ZSRC_MASK); /* Enable PLL, LCKON and select clock source from prescaler */
  /* OCCS_PROT: ??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,FRQEP=0,OSCEP=0,PLLEP=0 */
  setReg16(OCCS_PROT, 0x00U);          /* Set the OCCS protection register */
  /*** End of PE initialization code after reset ***/

  /*** !!! Here you can place your own code after PE initialization using property "User code after PE initialization" on the build options tab. !!! ***/

  asm(JMP init_56800_);                /* Jump to C startup code */
}

=============================================

 

Here it is fine I can step through, however after it goes to the asm(JMP init_56800_) then it starts to step into the 56F83x_init.asm. I have put in breakpoints in the main function as seen below but none of these breakpoints are hit even though the program executes successfully. Is there some setting I am missing?

 

Untitled.jpg

Outcomes