This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Problems with JTAG tools and STM32F101T6 parts...

I've been using KEIL tools for many years, as well as other tools from folks like Segger. My coworkers and I have done many embedded system designs using a variety of ARM and other microcontrollers, and usually we have no trouble getting JTAG tools to work with microcontrollers on our boards. However, we've had trouble with getting JTAG tools to work with STM32F parts, like, for example, the STM32F101T6, on multiple board designs.

I'm currently struggling with getting either a ULINK2 or a Segger JLINK-Lite to connect to a new board with the STM32F101T6 on it. I can successfully, reliably, easily program the board using ST's Flash Loader Demonstrator (which uses a built-in hardware serial-port bootstrap loader). But, none of my JTAG tools can program this board. I should note that the JLINK-Lite tools I have came with eval kits and so they don't have the full license, so to use them I have to have them tied to tools like my KEIL MDK. However, the Segger tools work well enough to connect to my microcontroller and tell that it's there (when used outside the KEIL IDE). However, neither the ULINK2 or the JLINK-Lite can detect the microcontroller when used with the IDE. And yes... I'm very familiar with configuring the flash loader and the debugger, including specifying the programming algorithm from within the KEIL IDE.

The problem I'm having is that when my board is powered up and either JTAG tool is properly configured and connected to my target board, I get this error message:

No Cortex-M Device found in JTAG chain.
Please check the JTAG cable and the connected devices.

I can plug these tools into other boards (different designs using different microcontrollers) and they work fine, so I don't think the problem is with the tools, USB cabling, or connecting the tools to the target.

Interestingly, the "closest" programming algorithm for my device, according to the IDE, is for a 16K FLASH part, but my part has 32K of FLASH. However, I think I'd be getting a different error message if that was the cause of my problem.

I'm using the SWD method to connect my JTAG tool to my microcontroller, and the circuit to connect it is direct cut/paste from a recent working project. I've verified the schematic and artwork multiple times, and the Vcc, Vss, SWDIO, SWCLK and RESET pins are connected to the right microcontroller pins via the JTAG connector.

I'm using a Tag-Connect to connect the tools to my microcontroller, and this is how it's wired.

pin 1 = 3.3VDC
pin 2 = SWDIO (pin 25 on the micro)
pin 3 = GND
pin 4 = SWCLK (pin 28 on the micro)
pin 5 = GND
pin 6 = N/C
pin 7 = N/C
pin 8 = N/C
pin 9 = GND
pin 10 = nRESET (pin 4 on the micro)

The micro is a 36-pin VFQFPN package.

Can anyone offer any suggestions for how to get the tools to connect to and program/debug my STM32F101T6 based designs?

Thanks!

0