Sometimes people experience problems when connecting to a Cortex device in JTAG but it works fine in SWD.
Here are the things to check when this situation occurs...
- Make sure that you are using the latest versions of the Ride7 and RKit-ARM kits. In the past there were bugs in the software that appeared only in JTAG. They are corrected in the current versions available for download on the Raisonance website.
- If the device was used in SWD, always power it OFF and ON before using it in JTAG.
RLink cannot force the device to switch from SWD to JTAG mode (the procedure for doing this is not guaranteed to work in all situations, and therefore we don't use it at all). - If the above 2 points do not explain the problem, then it could be related to some signal connection issues:
- TDI and TDO are used in JTAG not SWD. Check that they are correctly connected and that no other component interferes.
- TRST is used in JTAG much more than in SWD, and RST is used in both modes and is different from TRST.
People sometimes connect them, so check that RST and TRST are both connected from the RLink to the Cortex, and that they are not connected to each other (even by a resistor).
Check also that no other component interferes (reset circuit, etc.).
The RLink must be able to tie these two signals low independently. - If the device is JTAG-chained with other JTAG devices (FPGA, other CPU, Flash memories, etc.) on the board or in the chip itself, then you must make sure that the JTAG chaining parameters are correctly set, and that the JTAG clock is not too high.
If these hints do not help, and if you have a valid support contract, you can contact the Raisonance support. We will need a precise description of the problem (version of the Raisonance kits, type and Serial Number of RLink, complete name of target CPU, complete error message, failing operation, schematic of the board, etc.).
Please fill this form to ensure the fastest possible support: RLink support