From SEGGER Wiki
Revision as of 09:09, 30 March 2017 by Erik (talk | contribs) (RAM initialization on connect)

Jump to: navigation, search

The J-Link DLL must be informed about the correct device (e.g. RM57L843ZWT) because for the RM4xL and RM5xL series a special connect sequence must be realized so the ICEPick will be configured correctly and a stable connection to the target device can be established.

Generally IDE's (e.g. SEGGER Embedded Studio, ...) pass the device name automatically to the J-Link DLL. The J-Link Commander needs the device needs to be selected by the user e.g. by passing the device name via command line option. A command line can look like this:

JLink.exe -device RM57L843ZWT -if JTAG -jtagconf -1,-1 -speed 4000

RAM initialization on connect

The RM4xL and RM5xL device series comes with an ECC protected RAM. To make sure that no ECC errors are generated when reading from the ECC protected RAM region, the J-Link DLL has to initialize this region before reading it in order to make sure that the ECC is valid. Prior the initialization is issued, a reset of the MCU is performed in order to bring the device into a proper state and to make sure that hardware units like for example DMAs are halted during the RAM init. The actual ECC init is performed by using the Memory Hardware Initialization of the MCU.

Whereas this RAM init is required for most setups, there are some setups where this could cause issues (e.g. when attaching to a running session). In order to prevent the J-Link DLL from executing the RAM initialization, an command string must be passed to the J-Link DLL. This can be done by using a J-Link script file. Further information regarding the J-Link script file can be found in the J-Link User Manual (UM08001).

Please note, that the script file has been tested with version V6.12b of the J-Link software and documentation package