Hello !
I'm using a FlexRay Evaluation Board from ON-Semiconductor (NCV73810V2GEVB).
I want to program the MC9S12XF512MLM microcontroller which is embedded with CodeWarrior V.5.1 and the USB-ML-UNIVERSAL debugger from PEmicro.
The situation is :
1. Leds on the board are ON, blue and yellow leds on the USB-ML-UNIVERSAL are also ON.
2. I click on debug
3. Connection Manager appear
4. I chose "Autodetect communications speed", click on refresh (USB1 : USB Multilink Rev C (PEMA17837) is now detected), and click on "Connect(Reset)"
5. After maybe 500ms leds on board goes OFF and the yellow one on USB-ML-UNIVERSAL too. The following error message appear :
HI-WAVE
The Debugger can not connect to the P&E BDC interface or targetted hardware board.
5. I click on "OK" and a new Connection Manager window appear (leds are still on the same mode than in the section 5. )
6. I click on "Connect(Reset)" and the following error message appear :
HI-WAVE
Communications with the target failed :
The target MCU has no clock or wrong BDM clock speed is used or derivative is secured.
7. I click on "OK" and the following warning message appear:
Warning
Loading a new application will stop the execution of the current one.
(I don't know if it's useful for you to know everything which happends...)
8. I click on "OK" and a new message appear :
LOADER WARNING
The debugger is going to mass erase the non volatile memory(eeprom and flash) of the current device, then program the application
9. I click on "OK" and a window appear "NVW Erasing and Programmation Arming". At 33% the following error message appear :
Non Volatile Memory Control
Error while loading diagnostics algorithm to target system.
The chip may be secured, or the derivative selected may be wrong.
10. I click on "OK" and a new error message appear :
NVM Programmation
This operation has been canceled.
My program is the following: (just in case it could help you)
#include <hidef.h> /* common defines and macros */
#include "derivative.h" /* derivative-specific definitions */
#include "mc9s12xf512.h"
void main(void) {
/* here I just want to blink a led */
DDRP_DDRP7 = 1;
RDRP_RDRP7 = 0;
PTP_PTP7 = 1;
EnableInterrupts;
for(;;) {
_FEED_COP(); /* feeds the dog */
} /* loop forever */
/* please make sure that you never leave main */
}
Thank you very much for your help.
Pierre