I tried many times to connect to the target board with JS16 USBDM
However, always failed as follows:
Please help me for this, thanks very much!
I don't have information about the SDID for every chip that USBDM can program. For some you have to manually select the device from the menu.
If this is annoying change the following line in the HCS08_Devices.xml file.
<device family="HCS08Plus" name="MC9S08PA16" alias="MC9S08PT16"> <sdid value="0x0042" /> </device>
I'm unsure what is the cause of your other problems with the program not running unless USBDM is connected.
This can be caused by not correctly handling the Watchdog timer (as USBDM up to recently disabled the WDOG) but that is only a guess.
I've used the JS16 many times with USBDM without any problem.
Ans. 1 No, I only targeted one chip as MC9S08PA16.
Ans. 2 The hardware I used is as following:
However, although the board circuit and firmware has serial interface function, all parts about Serial Interface has been removed.
So, the hardware remains only BDM function without serial function.
Ans. 3 The version of software: Codewarrior for MCU 10.5 (Eclipse ver.)
Ans. 4 I still didn't connect to the target after I tried cycle power many times.
Ans. 5 No, the USBDM can not detect my chip. When I detected chip, the results always told me to cycle power for the target.
And........I found another interesting matter:
After I measured the BKGD and RESET from USBDM output, I found they were just only around 2V~2.5V.
From this, can I say that these two signals always stand at logic 0 every time I cycle the power?
Thanks for your kind help!
The interface levels depend on the target Vdd - The BDM interface gets its interface voltages from the target.
You can check the interface levels using the method shown on this page (Look for Testing the BDM hardware):
USBDM: Troubleshooting USBDM
If the voltages are incorrect it may be due to the wrong interface chip or missing target Vdd on the chip.
If the voltages still don't look correct check the following:
PS. I took your original post to mean you were debugging a JS16. I don't have a PA16 to test with but it works OK with PT60 which has similar Flash memory etc.
Thanks a lot!
And, JS16 means the chip designed in my mentioned USBDM, not the target chip. (my target chip is PA16)
Before I do tests by following your suggestions,
I have another question:
Is it possible the firmware installed in my USBDM is not correct?
1. How to know the firmware for my USBDM is correct or not?
2. If it's not correct, where can I obtain the correct firmware and install it to the USBDM?
Please give me advice, thanks!
The USBDM software comes with a utility to update the firmware:
See here under Update of BDM firmware and changing serial number:
(Initial programming of USBDM bootloader into BDM Flash should already be done):
Thanks for your great help,
after I test all pins' voltage about entering background mode,
finally, I added 10k resistor to pull up the reset pin, then the target can be entered into background mode by USBDM.
However, I suffered another problem:
Why am I able to run the program "only when" USBDM background mode is triggered?
After I removed the BDM 6-pin connector, the program did not keep going on.
This is a very vital problem; because every time I need a USBDM to run my program instead of standing alone.
And.... Please refer to the following figures:
1. Why did Flash Programmer not find my PA16 chip after I clicked "Detect Chip"?
2. Neither can I use function of "Program Flash".
Retrieving data ...