The MCF51MM has a USB bootloader in ROM. We don't have a USB interface. Most of the time, the firmware executes correctly but at times the code is not being executed. I am wondering if I might be jumping into the bootloader instead. Is there any way to tell the bootloader is running without a USB interface? Are any pins toggled or set that would provide an indication?
We have tried pulling up the BLMS pin. I have the following set in my code:
UINT8 boot:0x0000040A = 0x00; //zero out checksum to bypass boot loader
UINT8 boot2:0x0002040A = 0x00;
What about the signature SEMAPHORE? How is that set when the code is not executing?
Any insight will be appreciated!
It is also possible the chip is in the halt mode. Is there any way to tell if this is occurring? If I attach the BDM and try to attach to the program, I get an error. If I erase the flash and force the reset, the board always works. I can't see what is happening when the code is not running. I'm looking for any tricks or tips on how to determine what mode/state the chip is in when it is not running after POR.