< 返回版块

2019-05-05 02:21    责任编辑:Flymachine

标签:嵌入式Rust之书,The Embedded Rust Book,STM32

Linux

原版Github: https://github.com/rust-embedded/book/

本翻译依照版本:9858872bd1b7dbba5ec27dc30d34eba00acd7ef9

翻译人员:Flymachine

翻译版错误与建议反馈:[email protected]

原版及翻译版均遵循以下协议:

这是几个Linux发行版的安装命令。

Packages 包

  • Ubuntu 18.04 或更新 / Debian stretch 或更新

注意 gdb-multiarch是GDB命令,是你将来调试你的ARM Cortex-M程序时用的

sudo apt install gdb-multiarch openocd qemu-system-arm
  • Ubuntu 14.04 和 16.04

注意 arm-none-eabi-gdb是GDB命令,是你将来调试你的ARM Cortex-M程序时用的

sudo apt install gdb-arm-none-eabi openocd qemu-system-arm
  • Fedora 27 或更新

注意 arm-none-eabi-gdb是GDB命令,是你将来调试你的ARM Cortex-M程序时用的

sudo dnf install arm-none-eabi-gdb openocd qemu-system-arm
  • Arch Linux

注意 arm-none-eabi-gdb是GDB命令,是你将来调试你的ARM Cortex-M程序时用的

sudo pacman -S arm-none-eabi-gdb qemu-arch-extra openocd

udev rules udev规则

此规则允许你将OpenOCD与没有root权限的Discovery板一起使用。

创建/etc/udev/rules.d/70-st-link.rules文件,包含下述的内容.

# STM32F3DISCOVERY rev A/B - ST-LINK/V2
ATTRS{idVendor}=="0483", ATTRS{idProduct}=="3748", TAG+="uaccess"

# STM32F3DISCOVERY rev C+ - ST-LINK/V2-1
ATTRS{idVendor}=="0483", ATTRS{idProduct}=="374b", TAG+="uaccess"

然后使用下面的命令重新载入所有的udev规则:

sudo udevadm control --reload-rules

如果你将板子已经插在笔记本电脑上了,请将其拔下然后重新插上。

你可以通过运行此命令来检查权限:

lsusb

这应该会显示和下面类似的东西

(..)
Bus 001 Device 018: ID 0483:374b STMicroelectronics ST-LINK/V2.1
(..)

记下bus和device号。使用这些号来创建一个类似的路径 /dev/bus/usb/<bus>/<device>。 然后像这样使用路径:

ls -l /dev/bus/usb/001/018
crw-------+ 1 root root 189, 17 Sep 13 12:34 /dev/bus/usb/001/018
getfacl /dev/bus/usb/001/018 | grep user
user::rw-
user:you:rw-

附加到权限后的+表示存在扩展权限。 getfacl命令告诉用户you可以使用这个设备。

现在,可以去下一节了.

上一节 1.4. [Installation 安装]

目录 Index 目录

下一节 1.4.4. Verify Installation 验证安装

跳转