- 2Using J-Link with OpenOCD
The driver package provides the installation files for Segger J-Link USB Driver 2.70.8.0 64-bit. If you consider updating this driver package by Driver Genius, all you need to do is clicking the Update button beside this driver update. Driver Genius will install the driver automatically, smoothly and silently.
OpenOCD is a open and free project to support different debug probes under one 'API'.
In general, it is possible to use J-Link with OpenOCD. OpenOCD handles J-Link as a dumb JTAG/SWD/.. probe and only uses the very low level logic to output JTAG/SWD/.. sequences. It does not make use of any high level logic etc. and therefore is much slower than the proprietary SEGGER J-Link DLL / GDBServer / .. implementation. In order to use J-Link with OpenOCD the standard J-Link USB driver must be replaced with the WinUSB driver, using 3rd party utilities. There are lots of walkthroughs available on the internet.
Note: Once the J-Link USB driver has been replaced, no SEGGER software from the J-Link software package will be able to communicate with J-Link anymore. To use SEGGER J-Link software again, the USB driver needs to be switched back to its default.
7.3 Installing SEGGER tools Download and install the most recent releases of SES and the J-Link Software and Documentation Pack. 1.Download the software packages for your operating system from SEGGER downloads. You need the following packages:. Seneca driver download for windows 10. Embedded Studio for ARM (version 3.30 or later). The on-board ST-LINK included in the STM32 Discovery and Nucleo board kits may be upgraded free of charge with a specific version of the J-Link firmware available on the Segger website: www.segger.com (ST will not provide any support for this modification, and it is not responsible for any difficulty this may cause).
Limitations
There are several limitations that apply when using J-Link with OpenOCD instead of the SEGGER J-Link software:
- Much slower than using J-Link with the SEGGER J-Link DLL
- No RTT support
- No HSS support
- No unlimited flash breakpoints support
- No support for any utilities from the SEGGER J-Link software package
- No support from SEGGER
Support
Please understand that SEGGER does not provide any support for J-Links used with OpenOCD. The OpenOCD software is released and maintained by a 3rd party. In order to get support, we recommend to get in touch with the OpenOCD community.
In the section of the tutorial, we will show how to connect and configurethe Segger JLink JTAG pod for use with an LPC2106 target.Our target board is the Olimex LPC-P2106-B.
Click here for a tutorial on connecting to hardware using OpenOCD (supports various JTAG pods, includingthe Macraigor Wiggler, Olimex ARM-USB-OCD, Amontec JTAG key, Signalyer, etc.)
Click here for a tutorial on connecting to hardware using H-JTAG (supports the Macraigor Wiggler and clones)
If you haven't done so already, we recommend that you go through Running NoICE for the first time beforereading this section of the tutorial.
InstallingSegger JLink Driver Software
Segger (https://www.segger.com) sells aJTAG pod called the J-Link and various associated software. The J-Link isalso sold by IAR under their own bright yellow label and included in IAR demo kits; andby Atmel as the bright blue SAM-ICE. NoICE will work with the Segger, IAR, or Atmelversions of the J-Link.
Jlink Driver Segger
Before plugging in the JLink or running NoICE, you must install theJLink drivers. If you installed the IAR or Atmel software, you may alreadyhave the necessary drivers installed. Otherwise, you can get the latest driversand support software from Segger athttps://www.segger.com/download_jlink.html.(The actual version you see may differ from this snapshot).
Install the Segger software. |
Connecting the Segger JLink JTAG Pod
- Turn off power to the target.
- Verify any jumper and switch settings on your target board. On theOlimex LPC-P2106, do not install the BSL (serial bootloader) jumper;do install the DEBUG (DBGSEL active) jumper;do not install the JRST (reset by RS-232 DTR) jumper.For other target boards, consult your board's documentation.
- Connect the pod to the JTAG connector on your target. Be sure to orientthe connector correctly, or damage to the pod or the target board may result.In many cases, the cable and the connector will be keyed so that onlyone orientation is possible.
Pin 1 on the JTAG cable is almost always indicated by a red stripe on theedge of the cable.
Pin 1 of the JTAG connector on the target board is often indicated by a'1' on the silk-screen. If not, look on the back of the board. Pin 1is often indicated by a square pad.
- Connect the USB cable from the JLink to your PC. If the driver wasproperly installed, you should hear the usual Windows 'ding-dong'.
- Turn on power to the target.
- Run NoICE.
- Select 'Target Communications' from the 'Options' menu, thenselect 'Segger J-Link Interface' from the 'Interface' drop-list.
- Select 'USB' as the communications method. The Segger software also supports a remote connection via TCP/IP, but a USB connection to your PC is simpler and much more common.
- Select JTAG speed 'Auto'.
- Select your Target Chip: 'Philips LPC2106' in this example.
- Set the CPU frequency to match the target. The Olimex board has an 14.7456 MHz crystal, so the CPU frequency is 14.7456 MHz.
- For now, leave 'Play this file after Reset' blank.
Press 'OK' in the Target Communications dialog, and NoICE will show an initialdisplay like that shown below. If you exit NoICE and come back in, you willreturn right here.
In this case, memory contains a previously-burned program. Since theARM begins execution at address 0, that is where PC starts out. NoICEdisassembles from the PC.
At this point, you may wish to repeat the simulator exampleson real hardware.
The next step is to burn a program into Flash. This example uses ImageCraft ICCARM,as described in the previous section of the tutorial, Compiling for Source-level Debugging.
You can follow along even if you don't have this compiler. All files necessary foryou to run the NoICE demo may be downloaded here: hellofoo.zip.Setup for other compilers is generally similar.Segger Driver Windows 10
Run NoICE. Select 'File', 'Load..'. By default, you will see hex files such as hellofoo.s19. You could load that, but all you would get would be disassembly, as the s19 file doesn't contain any symbolic debug information. So change the 'Files of type' to'ImageCraft DBG files'. Navigate to hellofoo.dbg and press 'OK'. |
Segger J-link Driver Mac
When you Load the file into the Flash range, a progress dialog appears:It shows the address being burned and the progress of the burn. |
Once burning is completed, you can continue with the source-level debugging example
J-link Segger Driver
NoICE help on ARM