与ST-Link真的很难相处

时间:2014-04-29 18:07:04

标签: embedded arm stm32 keil stm32f4discovery

我有一个M24SR-Discovery板,STM32f103RG MCU,我正在使用Keil作为IDE进行编程。事情就像我想要做的事情一样多,我还没有设法与它沟通。当涉及到ST-Link时,主要是我被困住了。

在Keil中,调试器说没有检测到ST-LINK ,当我尝试连接到设备时,STM32 ST-LINK实用程序说的几乎相同。与ST-LinkUpgrade相同的故事,我开始相信没有人真的想要他,我猜: - )

我已经尝试过来自http://www.st.com/web/catalog/tools/FM146/CL1984/SC724/SS1677/PF251168的ST-LINK / V2驱动程序以及与Keil uVision4一起发布的驱动程序,我也发现在STLinkNucleoDriverSigned这个术语下搜索。我几乎没有想法,任何其他建议都会很好。

我有64位Windows 7操作系统。

感谢您的时间。

2 个答案:

答案 0 :(得分:3)

不幸的是,与其他Discover系列主板不同,在查看概述和原理图后,我不相信M24SR-Discovery包含一个板载ST-LINK适配器。

大多数其他发现板都有一个小型引脚STM32F103,专门用作ST-LINK,然后是一个独特的处理器设置作为应用程序开发目标。您的电路板似乎只有一个更大的引脚排列STM32F103用作应用目标(连接到LCD,外设等)

它确实看起来像USB引脚已连接,但与后来的芯片不同,STM32F103的“ROM”引导加载程序不支持USB,所以你只能通过USB加载一个程序,如果某些闪存级辅助引导加载程序是在那里。

可能你应该花一些时间阅读董事会的文档和支持信息。虽然它上面的连接器似乎打破了完整的JTAG,但似乎值得检查SWD子集(SWDCLK,SWDIO,POWER,GROUND)是否可以工作 - 如果可以,那么你可以使用任何10美元左右的STM32发现板作为您的ST-LINK只需将跳线从另一块板上拔下并组成自定义电缆即可对其进行编程。

答案 1 :(得分:1)

我也是,我有M24SR DIscovery。使用Olimex ARM-USB-TINY-H ARM Jtag调试器和OpenOCD我可以将其配置为相互通信,然后打开端口4444。

sudo openocd -f ./olimex-arm-usb-tiny-h.cfg -f /usr/local/share/openocd/scripts/target/stm32f4x.cfg -d3

其中olimex-arm-usb-tiny-h.cfg如下:

interface ftdi
ftdi_device_desc "Olimex OpenOCD JTAG ARM-USB-TINY-H"
ftdi_vid_pid 0x15ba 0x002a

ftdi_layout_init 0x0808 0x0a1b
ftdi_layout_signal nSRST -oe 0x0200
ftdi_layout_signal nTRST -data 0x0100 -oe 0x0100
ftdi_layout_signal LED -data 0x0800

adapter_khz 100
adapter_nsrst_delay 100
jtag_ntrst_delay 100

我的同事使用JLINK和OpenOCD它可以自动连接,并且可以通过端口4444窗口单步执行指令等。

参考:详情如下:

http://tthtlc.wordpress.com/2015/01/05/how-to-do-jtag-debugging-using-openocd-and-olimex-arm-usb-tiny-h-on-m24sr-discovery/