Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Linux上从STM32WB55 NucleoPack闪存MB1355C和/或MB1293C?_Linux_Linux Device Driver_Stm32_Nucleo - Fatal编程技术网

如何在Linux上从STM32WB55 NucleoPack闪存MB1355C和/或MB1293C?

如何在Linux上从STM32WB55 NucleoPack闪存MB1355C和/或MB1293C?,linux,linux-device-driver,stm32,nucleo,Linux,Linux Device Driver,Stm32,Nucleo,我想在我的(Ubuntu18.04.3 LTS)机器上用一个支持调试功能的基于eclipse的IDE方便地编程(MB1355C和/或MB1293C)设备 我安装了 STM32CubeProgrammer(版本2.2.1) Atolic TrueTudio(版本9.3.0) STM32CubeIDE(版本1.1.0) 我现在有以下udev规则 chandran@chandran-OptiPlex-9020:~$ ll /etc/udev/rules.d/ total 160 drwxr-xr-

我想在我的(Ubuntu18.04.3 LTS)机器上用一个支持调试功能的基于eclipse的IDE方便地编程(MB1355C和/或MB1293C)设备

我安装了

  • STM32CubeProgrammer(版本2.2.1)
  • Atolic TrueTudio(版本9.3.0)
  • STM32CubeIDE(版本1.1.0)
我现在有以下
udev规则

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\u USART\u IrDA\u Transmit
的示例项目,它成功构建,但当我连接评估板并单击
debug
刷新微控制器时,我收到以下错误消息

ST-Link enumeration failed
Error in initializing ST-Link device.
Reason: (2) ST-Link DLL error.
当我使用STM32CubeIDE尝试上述操作时,会收到相同的错误消息

我已尝试按照第7.6节中的说明切换
JP1
,但没有效果

堆栈溢出处理相同的错误消息,所以我尝试了@IsaBostan建议的更改,但开发板似乎没有被检测到

如何着手解决此问题并对电路板进行编程


调试想法或建议是受欢迎的,即使它们没有经过测试…

正如KamilCuk所建议的,这只是一个权限问题

TrueStudio
作为
root
启动,然后单击
debug
解决了问题

这就是我的机器上的工作原理:

sudo su
/opt/Atollic_TrueSTUDIO_for_STM32_x86_64_9.3.0/ide/./TrueSTUDIO
sudo su
/opt/st/stm32cubeide_1.1.0/./stm32cubeide
STM32CubeIDE的调试器在我的机器上启动时也可以工作,如下所示:

sudo su
/opt/Atollic_TrueSTUDIO_for_STM32_x86_64_9.3.0/ide/./TrueSTUDIO
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

openocd
st flash
不是必需的

你试过使用openocd吗?您是否尝试以root用户身份使用该工具?您是否尝试过其他工具,如
st flash
?表示stlink的相应设备文件的权限是什么,搜索
/dev/ttyUSB*