3 attention of the m16c/r8c debugger, 1 map of stack area used by the emulator, 2 options for compiler, assembler, and linker – Renesas Emulator Debugger M16C PC4701 User Manual

Page 284: 3 tasking c compiler, 4 target mcu hold terminal

Advertising
background image


12.3 Attention of the M16C/R8C Debugger

12.3.1 Map of stack area used by the emulator

The M16C/60,M16C/20 series emulators use a stack area of 4 bytes from 0FFFCh to 0FFFFh that is
accessed at power-on reset.
The emulator cannot start up normally unless these 4 bytes of memory can be accessed for read/write.
Therefore, if one of the following two conditions hold true, use the four bytes of 0FFFCh to 0FFFFh in
INTERNAL setting until the emulator finishes setting the interrupt stack pointer (ISP) after a reset.

When in systems that go from the single-chip mode to the memory extension or the
microprocessor mode after a reset, you are using the four bytes of 0FFFCh to 0FFFFh in
EXTERNAL setting.

When in systems that start up in microprocessor mode after a reset, you are using the four bytes
of 0FFFCh to 0FFFFh in EXTERNAL setting and do not have any external read/writable
memory.

12.3.2 Options for compiler, assembler, and linker

The information may not be downloaded/debugged normally depending on the option designation of
the compiler, assembler, and linker.
Please refer to the following for the option specification.
Refer to "12.5 Option of C Compiler/Assembler/Linker"

The compiler that can be used by M16C/R8C debugger:

NCxx

the IAR EC++ Compiler

the IAR C Compiler

the TASKING C Compiler

12.3.3 TASKING C Compiler

When you debug programs compiled by the TASKING C Compiler "CCM16", the type of bit field is
fixed on "unsigned short int". Because CCM16 outputs the debug information for the type of bit field
as "unsigned short int."

12.3.4 Target MCU HOLD terminal

When the target MCU HOLD terminal is set to LOW, you cannot stop execution of the target program.
Set the HOLD terminal to High and try to stop the target program again. Even if the HOLD terminal
is set to LOW for a short period of time, you may stop the target program with the HOLD terminal set
to LOW. If this happens, try to stop the target program again.

270

Advertising