My Keil MCBSTR9 Board used to work, but now I cannot the Flash ROM anymore. I can't communicate with the device or even read the JTAG ID from the device.
How can I fix this?
ANSWER
The JTAG on the STR9 device can be blocked by user code with invalid values for the register SCU_CLKCNTR (AHBDIV, RCLKDIV, MCLKSEL). When a program with invalid SCU_CLKCNTR values is in FLASH ROM, the JTAG is blocked and standard access via ULINK is not possible.
To solve this problem, you must hold the device in RESET state (which prevents the incorrect code from being executed until the debugger gains control) and issue the command Flash — Erase from the µVision menu. Uss saratoga space above and beyond.
This sequence is implemented in UL2ARM.DLL V1.20a or higher which is part of MDK-ARM Version 3.02.
The unlock procedure in detail is:
Power off the device.
Power on the device while holding the reset button on the target.
Start µVision with a STR9 project (and the correct Flash algorithm) and select from the µVision menu Flash — Erase.
Wait at least 0.5 second, but not more then 1.5 seconds.
Release the Reset button on the target.
Flash will be erased (with the bad code) and JTAG will be fully functional again.
MORE INFORMATION
Refer to Downloading to Flash in the MCBSTR9 User's Guide.
FORUM THREADS
The following Discussion Forum threads may provide information related to this topic.
I'm having a weird problem where i cant upload my design to the DE0-NANO board, gives me the weird error message which is the title of this question.
Any other design uploads fine and I have done nothing different. Restarted the computer, rewrote the project, checked if the correct device is chosen and updated all the drivers, still doesn't upload.
Problem solved. I named the .sdc file differently from the name of the project. Creating a new one with the right one solved the issue, not sure why, but here we are.
SergeSerge
$endgroup$
Not the answer you're looking for? Browse other questions tagged jtagerrorcyclone or ask your own question.