On behalf of Walter Torresani
Good day,
I'm developing a firmware for a handheld device based on the MCF51MM ColdFire V1 microcontroller, and I've bought a TWR-MCF51MM board with the TWR-ELEV module.
I've developed the firmware with CodeWarrior v10.4 and when I launch the debug session, my application runs correctly. The problem arises when I reset the demo board. After the reset the microcontroller doesn't restart at all. This problem occurs either if a USB-Multilink or OSBDM are used to program the MCU.
Do you have any idea or suggestion to solve this problem?
已解决! 转到解答。
This behavior is caused by the USB Bootloader that resides on ROM on the S08MM/MCF51MM families (also on S08JE/MCF51JE). In order to avoid entering on Bootloader mode, you need to ensure that switch 2 of SW3 on TWR-MCF51MM is on “OFF” position.
Additionally, you can bypass the Bootloader startup “signature” adding the following constant declaration on your application:
For CodeWarrior Classic (v6.3):
const unsigned char boot@0x040A = 0x00; //zero out checksum to bypass boot loader
For CodeWarrior Eclipse (v10.x):
const unsigned char boot:0x040A = 0x00; //zero out checksum to bypass boot loader
In you are using CodeWarrior v10.x, it is also required to use the Flash Programmer the first time, instead of the Debugger, because this address is not erased or written when the Debugger is launched.
I have attached a video showing this procedure.
Hope this will be useful for you.
Best regards!
/Carlos
This behavior is caused by the USB Bootloader that resides on ROM on the S08MM/MCF51MM families (also on S08JE/MCF51JE). In order to avoid entering on Bootloader mode, you need to ensure that switch 2 of SW3 on TWR-MCF51MM is on “OFF” position.
Additionally, you can bypass the Bootloader startup “signature” adding the following constant declaration on your application:
For CodeWarrior Classic (v6.3):
const unsigned char boot@0x040A = 0x00; //zero out checksum to bypass boot loader
For CodeWarrior Eclipse (v10.x):
const unsigned char boot:0x040A = 0x00; //zero out checksum to bypass boot loader
In you are using CodeWarrior v10.x, it is also required to use the Flash Programmer the first time, instead of the Debugger, because this address is not erased or written when the Debugger is launched.
I have attached a video showing this procedure.
Hope this will be useful for you.
Best regards!
/Carlos
Good day Carlos,
I followed your instructions and now all works right.
The most strange thing is that with the old beloved and ever reliable CodeWarrior 6.3 this problem don't occur (I tried yesterday afternoon).
Thank a lot for your help,
Walter