linux 多进程 libusb,基于Ubuntu的STM32调试环境搭建

66b52468c121889b900d4956032f1009.png

8种机械键盘轴体对比

本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选p>

安装gcc-arm-none-eabi1sudo apt-get install gcc-arm-none-eabi

上述安装没有gdb,使用vscode调试需要使用用以下方式进行安装

1

2

3sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa

sudo apt-get update

sudo apt-get install gcc-arm-embedded

安装STM32CubeMX

1 STM32CubeMX是32-bit进程,如果是64-bit系统,需要安装32-bit compliant packages such as ia32-libs.

在Ubuntu18.04中已经没有ia32-libs,使用lib32ncurses5 lib32z1替代

1sudo apt-get install lib32ncurses5 lib32z1

2 STM32CubeMX是java进程,需要JRE支持,可以安装Oracle JDK或者OpenJDK

Oracle Java

OpenJDK is a free and open-source implementation of the Java Platform, Standard Edition licensed under the GNU General Public License version

1

2

3sudo apt install default-jre

sudo apt install openjdk-11-jre-headless

sudo apt install openjdk-8-jre-headless

Oracle JDK

1

2

3sudo add-apt-repository ppa:linuxuprising/java

sudo apt update

sudo apt install oracle-java11-set-default

测试是否安装成功

1java –version

3 进入软件目录开始安装

1sudo ./SetupSTM32CubeMX-5.0.0.linux

调试环境准备

安装openocd1sudo apt-get install openocd

如果使用stlink,安装stlink驱动

1 准备stlink驱动安装环境

1

2

3

4sudo apt-get install libusb-dev

sudo apt-get install libusb-1.0

sudo apt-get install cmake

sudo apt-get install libgtk-3-dev

2 下载源码

1

2git clone https://github.com/texane/stlink.git

cd stlink

3 编译及安装1

2

3

4

5

6

7

8

9make clean

make release

make debug

cd build

cmake -DCMAKE_BUILD_TYPE=Debug ..

make

cd Release

sudo make install

ldconfig

如果使用Jlink,安装Jlink驱动

1 首先安装readline

1sudo apt-get install libreadline6-dev

2 去jlink下载安装进程,然后安装

1sudo dpkg -i JLink_Linux_V644h_x86_64.deb

配置udev

1 生成49-link.rules文档

1sudo gedit /etc/udev/rules.d/49-link.rules

输入以下内容:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15SUBSYSTEMS==”usb”, ATTRS{idVendor}==”1366″, ATTRS{idProduct}==”0102″,

MODE:=”0666″,

SYMLINK+=”jlink_%n”

SUBSYSTEMS==”usb”, ATTRS{idVendor}==”0483″, ATTRS{idProduct}==”3744″,

MODE:=”0666″,

SYMLINK+=”stlinkv1_%n”

SUBSYSTEMS==”usb”, ATTRS{idVendor}==”0483″, ATTRS{idProduct}==”374b”,

MODE:=”0666″,

SYMLINK+=”stlinkv2-1_%n”

SUBSYSTEMS==”usb”, ATTRS{idVendor}==”0483″, ATTRS{idProduct}==”3748″,

MODE:=”0666″,

SYMLINK+=”stlinkv2_%n”

2 使udev生效

1sudo /etc/init.d/udev restart

下载进程

使用stlink1openocd -f interface/stlink-v2.cfg -f target/stm32f1x.cfg 2>/dev/null &

使用Jlink1openocd -f interface/jlink.cfg -f target/stm32f1x.cfg 2>/dev/null &

下载1

2

3

4telnet localhost 4444

halt

flash write_image erase *.hex

reset

下载过程有时候会提示失败,需要reset后再下载

配置vscode

安装相关插件安装插件 ARM;

安装插件 Cortex-Debug;

安装插件 C/C++; 必要插件,否则无法调试。

安装插件 C/C++ Clang Comamnd Adapter; 用来补全和诊断,需要同时安装Clang,参考官方文档。

安装插件 Uncrustify; 用来格式化代码, shift+alt+f,非常方便。缺点是代码中有Unicode可能会导致乱码,然后配置文档有点多。

安装插件 Bracket Pair Colorizer; 不同颜色高亮显示匹配括 ,爱护视力必备。

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19{

“version”: “0.2.0”,

“configurations”: [

{

“name”: “Cortex Debug”,

“cwd”: “${workspaceRoot}”,

“executable”: “./build/*.elf”,

“request”: “launch”,

“type”: “cortex-debug”,

“servertype”: “openocd”,

“BMPGDBSerialPort”: “/dev/ttyACM0”,

“runToMain”: true,

“configFiles”: [

“interface/jlink.cfg”,

“target/stm32f1x.cfg”

]

}

]

}

安装串口软件

推荐cutecom,接口化,支持HEX收发

1sudo apt-get install cutecom

文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux入门初识Linux24975 人正在系统学习中 相关资源:MinionProfitsTracker:随着市场价格波动,轻松识别最赚钱的奴才[在…

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年3月25日
下一篇 2021年3月26日

相关推荐