udev规则问题-在ubuntu 20.04上安装STMicroelectronics STlink工具

udev规则问题-在ubuntu 20.04上安装STMicroelectronics STlink工具,ubuntu,arm,embedded,udev,Ubuntu,Arm,Embedded,Udev,我正在尝试使用STM32F722 Nucelo-144(使用“嵌入式ST-LINK/V2-1调试器”)启动并运行它。我正在使用Ubuntu 20.04 我想使用闪存设备。我已设法从源代码安装,但我在设置udev规则时遇到了麻烦。我按照说明运行了以下命令: $ sudo cp -a config/udev/rules.d/* /etc/udev/rules.d/ $ sudo udevadm control --reload-rules $ sudo udevadm trigger 我认为应该在

我正在尝试使用STM32F722 Nucelo-144(使用“嵌入式ST-LINK/V2-1调试器”)启动并运行它。我正在使用Ubuntu 20.04

我想使用闪存设备。我已设法从源代码安装,但我在设置udev规则时遇到了麻烦。我按照说明运行了以下命令:

$ sudo cp -a config/udev/rules.d/* /etc/udev/rules.d/
$ sudo udevadm control --reload-rules
$ sudo udevadm trigger
我认为应该在/dev/下为stlink设备创建文件,但在/dev/中没有使用该名称的文件。此外,我的主板在运行“lsusb”时也不会显示

不用说,当我运行“stutil”时,它不会注册我的董事会:

usb.c: Couldn't find any ST-Link devices 
我还应该补充一点,我已经尝试使用package manager进行安装,但它仍然没有注册电路板:

usb.c: Couldn't find any ST-Link/V2 devices

老实说,对于如何定义要使用哪一代调试器,我也有点困惑。出于某种原因,包管理器版本似乎默认为ST Link/V2。(我的设备是V2-1)

最有可能的是,您正在复制的udev规则需要更改。您能否提供“config/udev/rules.d/*”内容(或自己查看)。内核(udev)发出的节点的匹配可能已更改,或者udev用户空间已更改。通常,该规则只是通过更改文件模式和/或将其分配给某个组来授予用户空间访问设备的权限。如果调试器没有访问设备的权限,它将按照上面的说明进行操作
lsusb
将告诉您内核是否已识别该设备;那么很可能是许可。@artless_noise以下是udev规则:。我不确定我应该在里面找什么对不起。如果有帮助的话,应该有一个名为“stlink”的组,我的用户应该是该组的成员,但尚未设置。如果设备未显示在lsusb中,则没有必要查看udev规则。你的设置中有一些东西被破坏了,可能是物理上的。阅读《入门指南》,检查电缆、跳线等。连接Nucleo-64(STM32F411)后,我在
lsusb
的输出中看到了这一点:“总线002设备017:ID 0483:374b STMicroelectronics ST-LINK/V2.1”。如果您碰巧在虚拟机上运行Ubuntu,您必须配置虚拟机以通过物理USB设备传递给来宾。@Tarmo,谢谢。字面上只是一个粗略的USB电缆-感觉像这样一个裸体现在。-为我辩护,董事会至少通了电。谢谢伟大的我偶尔会被廉价设备的USB充电器电缆咬到,这些设备只有2根电源线:)