如何从 Linux 上的 STM32WB55 Nucleo Pack 闪存 MB1355C and/or MB1293C?

How to flash MB1355C and/or MB1293C from the STM32WB55 Nucleo Pack on Linux?

我想在我的 (Ubuntu 18.04.3 LTS) 机器上从 STM32WB55 Nucleo Pack 对 (MB1355C and/or MB1293C) 设备进行编程 - 最好使用 eclipse基于 IDE,支持调试功能。

我安装了

我现在有以下 udev rules

chandran@chandran-OptiPlex-9020:~$ ll /etc/udev/rules.d/
total 160
drwxr-xr-x 2 root root  4096 Dec 13 14:11  ./
drwxr-xr-x 4 root root  4096 Dec  4 13:44  ../
-rw-rw-r-- 1 root root   270 Oct 14 18:10  49-stlinkv1.rules
-rw-rw-r-- 1 root root   270 Oct 14 18:10  49-stlinkv1.rules.O
-rw-rw-r-- 1 root root   464 Oct 14 18:10  49-stlinkv2-1.rules
-rw-rw-r-- 1 root root   464 Oct 14 18:10  49-stlinkv2-1.rules.O
-rw-rw-r-- 1 root root   278 Oct 14 18:10  49-stlinkv2.rules
-rw-rw-r-- 1 root root   278 Oct 14 18:10  49-stlinkv2.rules.O
-rw-r--r-- 1 root root   458 Dec 11 17:26  49-stlinkv3loader.rules
-rw-rw-r-- 1 root root   845 Oct 14 18:10  49-stlinkv3.rules
-rw-rw-r-- 1 root root   845 Oct 14 18:10  49-stlinkv3.rules.O
-rw-r--r-- 1 root root   381 Dec  6 17:10 '#61-msp430uif.rules#'
-rw-r--r-- 1 root root   381 Dec  4 15:09  61-msp430uif.rules
-rwxr-xr-x 1 root root  2145 Dec  4 15:09  70-mm-no-ti-emulators.rules*
-rw-r--r-- 1 root root 58549 Dec  4 12:29  70-snap.core.rules
-rw-r--r-- 1 root root    79 Dec  5 12:11  77-msp430-blacklist.rules
-rw-r--r-- 1 root root     0 Dec  5 12:10  77-msp430-blacklist.rules~
-rw-rw-r-- 1 root root 18450 Oct 14 17:33  99-jlink.rules
-rw-rw-r-- 1 root root 18450 Oct 14 17:33  99-jlink.rules.O

我在拨出组

chandran@chandran-OptiPlex-9020:~$ groups chandran
chandran : chandran adm dialout cdrom sudo dip plugdev lpadmin sambashare

我下载了一个名为 STM32100E-EVAL_USART_IrDA_Transmit 的示例项目并成功构建,但是当我连接评估板并单击 debug 刷新微控制器时,我收到以下错误消息

ST-Link enumeration failed
Error in initializing ST-Link device.
Reason: (2) ST-Link DLL error.

当我使用 STM32CubeIDE 尝试上述操作时,我收到相同的错误消息。

我已尝试按照 users manual 的第 7.6 节所述移动 JP1,但无济于事。

A previous question on stack overflow deals with the same error message so I got STM32CubeProgrammer to launch 并尝试进行@IsaBostan 建议的更改,但似乎未检测到开发板

我该如何继续解决这个问题并对电路板进行编程?

欢迎提出调试想法或建议,即使它们尚未经过测试...

这只是 KamilCuk 所建议的权限问题

root 身份启动 TrueStudio,然后单击 debug 解决了问题。

这是在我的机器上运行的:

sudo su
/opt/Atollic_TrueSTUDIO_for_STM32_x86_64_9.3.0/ide/./TrueSTUDIO

STM32CubeIDE 的调试器在我的机器上按如下方式启动时也可以工作:

sudo su
/opt/st/stm32cubeide_1.1.0/./stm32cubeide

STM32CubeProgrammer 在启动时直接连接到设备,如下所示:

sudo su
/usr/local/STMicroelectronics/STM32Cube/STM32CubeProgrammer/bin/./STM32CubeProgrammer

我的设备显示在 /dev/ttyACM0 下,具有以下权限:

crw-rw----+ 1 root dialout 166, 0 Dec 28 11:56 ttyACM0
不需要

openocdst-flash