However, the user program runs correctly until it stops. (M16C Family M16C/60 Series)
Most likely you are running the program with bit 3 (internal reserved area extension bit PM13 *1) of processor mode register 1 set to 0. Based on the MCU specifications, if PM13 is set to 0, the area of addresses C0000-CFFFF is an external area.
Therefore, the firmware assigned to this area cannot be referenced from the MCU; the firmware cannot run correctly and generates a Communication Timeout Error. To debug a program in which PM13 is set to 0, assign the firmware to an area after address D0000 (*2).
*1 Some MCUs do not have PM13.
*2 The areas the firmware can be assigned to differ according to MCU ROM capacity. Always confirm the ROM capacity before assigning the firmware.