asp网络公司程序 网站公司企业建设源码 网站设计模板seo优化,重庆网站设计建设,嵌入式培训宣传,做响应式网站的框架在进行 Linux驱动 开发之前肯定需要先将 Linux系统 移植到开发板上去 。 Linux的移植要复杂的多#xff0c;在移植 Linux之前我们需要先移植一个 bootloader代码#xff0c;这个 bootloader代码用于启动 Linux内核#xff0c; bootloader有很多#xff0c;常用的就是 U-Boo…在进行 Linux驱动 开发之前肯定需要先将 Linux系统 移植到开发板上去 。 Linux的移植要复杂的多在移植 Linux之前我们需要先移植一个 bootloader代码这个 bootloader代码用于启动 Linux内核 bootloader有很多常用的就是 U-Boot。移植好 U-Boot以后再移植 Linux内核移植完 Linux内核以后 Linux还不能正常启动还需要再移植一个根文件系统 (rootfs)根文件系统里面包含了一些最常用的命令和文件。所以 U-Boot、 Linux Kernel和 rootfs这三者一起构成了一个完整的 Linux系统一个可以正常使用、功能完善的 Linux系统。
同样的要想在 Ubuntu下进行 Cortex-A(STM32MP157)开发也需要安装一些软件也 就是网上说的开发环境搭建环境搭建好以后我们就可以进行开发了。环境搭建分为 Ubuntu和 Windows因为我们最熟悉 Windows所以代码编写、查找资料啥的肯定是在 Windows下进行 的。但是 Linux开发又必须在 Ubuntu下进 行所以还需要搭建 Ubuntu下的开发环境主要是 交叉编译器的安装本章我们就分为 Ubuntu和 Windows讲解这两种操作系统下的环境搭建。
Ubuntu和Windows文件互传
在开发的过程中会频繁的在 Windows和 Ubuntu下进行文件传输比如在 Windwos下进行代码编写然后将编写好的代码拿到 Ubuntu下进行编译。 Windows和 Ubuntu下的文件互传需要使用 FTP服务设置方法如下
开启Ubuntu下的FTP服务
打开Ubuntu的终端窗口然后执行如下命令来安装 FTP服务
sudo apt-get install vsftpd 等待软件自动安装安装完成以后使用如下 VI命令打开 /etc/vsftpd.conf命令如下
sudo vi /etc/vsftpd.conf 打开以后 vsftpd.conf文件以后找到如下两行
local_enableYES write_enableYES **确保上面两行前面没有“ “#”**有的话就取消掉完成以后如图所示  修改完 vsftpd.conf以后保存退出使用如下命令**重启 FTP服务**
sudo /etc/init.d/vsftpd restart ## Windows下FTP客户端安装
Windows下 FTP客户端使用FileZilla这是个免费的 FTP客户端软件可以在 FileZilla官网下载下载地址如下 FileZilla下载地址也可以直接在正点原子的文件夹中直接找到这个setup.exe并安装。安装完成后打开界面如下图所示
FileZilla软件设置
Ubuntu作为 FTP服务器 FileZilla作为 FTP客户端客户端肯定要连接到服务器上打开 站点管理器点击文件 -站点管理器打开以后如图所示 点击上图中的“新站点 (N)”按钮来创建站点新建站点以后就会在“我的站点”下出现新建的这个站点站点的名称可以自行修改选中新创建的“ Ubuntu”站点然后对站点的**“常规”进行设置**设置如图所示 Ubuntu文件目录下的中文目录未经编码选择都是乱码的这是因为编码方式没有选对选中要设置的站点“ Ubuntu”选择“字符集”设置如图所示 设置完成后连接到FTP服务器就如下图所示 如果要将 Windows下的文件或文件夹拷贝到 Ubuntu中只需要在上图中左侧的 Windows区域选中要拷贝的文件或者文件夹然后直接拖到右侧的 Ubuntu中指定的目录即可。将 Ubuntu中的文件或者文件夹拷贝到 Windows中也是直接拖放。
Ubuntu下NFS和SSH服务开启
NFS服务开启
进行 Linux驱动开发的时候需要 NFS启动因此要先安装并开启 Ubuntu中的 NFS服 务使用如下命令安装 NFS服务
sudo apt-get install nfs-kernel-server rpcbind
等待安装完成安装完成以后在用户根目录下创建一个名为“linux”的文件夹在 “linux”文件夹里面新建一个名为“nfs”的文件夹该文件夹提供nfs服务器使用可以在开发板上通过网络文件系统来访问nfs文件夹还需要先配置nfs使用如下命令打开 nfs配置文件 /etc/exports
sudo vi /etc/exports
打开后添加如下内容这里要根据自己的用户名进行相应位置的修改
/home/zuozhongkai/linux/nfs *(rw,sync,no_root_squash)
添加后/etc/exports如下图所示
SSH服务开启
开启 Ubuntu的 SSH服务以后我们就可以在 Windwos下使用终端软件登陆到 Ubuntu比如 使用 SecureCRT Ubuntu下使用如下命令开启 SSH服务
sudo apt-get install openssh-server
上述命令安装 ssh服务 ssh的配置文件为 /etc/ssh/sshd_config使用默认配置即可。
Ubuntu交叉编译工具链安装
交叉编译器安装
ARM裸机、 Uboot移植、 Linux移植这些都需要在 Ubuntu下进行编译编译就需要编译器之前使用 GCC编译器进行代码编译但是 Ubuntu自带的 gcc编译器是针对 X86架构的而我们现在 要编译的是 ARM架构的代码所以需要一个在 X86架构的PC上运行可以编译 ARM架构代码的 GCC编译器这个编译器就叫做交叉编译器。
交叉编译器中“交叉”的意思就是在一个架构上编译另外一个架构的代码相当于两种架构“交叉”起来了。交叉编译器有很多种ST也有推荐的通用交叉编译器如图所示 正点原子的教程用的就是ARM官方的交叉编译器。首先需要进行下载下载链接ARM官方交叉编译器链接打开以后如图所示 如果直接下载在之后编译TF-A会有问题报错会有stm32wrapper4dbg这个命令之后会有解决方法
可以直接从资料中的开发工具中找到gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf.tar.xz这就是下载好的文件。
可以在之前创建好的“linux”文件夹中再创建“tool”来存放开发工具。使用FileZilla将交叉编译器拷贝到Ubuntu的“tool”文件夹中操作如图 拷贝完成后在Ubuntu中创建目录/usr/local/arm命令如下
sudo mkdir /usr/local/arm
创建完成后将刚刚拷贝的交叉编译器拷贝进入这个目录首先要“cd”进入刚才存放有交叉编译器的目录然后拷贝命令如下
sudo cp gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf.tar.xz /usr/local/arm/ -f
拷贝完成以后在 /usr/local/arm目录中对交叉编译工具进行解压解压命令如下
sudo tar -vxf gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf.tar.xz
解压完成后就会有一个名为“ gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf”的文件夹这个文件夹里面就是我们的交叉编译工具链。
最后修改环境变量打开/etc/profile文件
sudo vi /etc/profile
打开后在最后输入如下内容
export PATH$PATH:/usr/local/arm/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/bin
修改完之后保存退出重启Ubuntu交叉编译工具链就安装成功了。
安装相关库
在使用交叉编译器之前还需要安装一下其它的库命令如下
sudo apt-get update //先更新否则安装库可能会出错 sudo apt-get install lsb-core lib32stdc6 //安装库
交叉编译器验证
首先查看 一下交叉编译工具的版本号输入如下命令
arm-none-linux-gnueabihf-gcc -v
如果交叉编译器安装正确的话就会显示版本号如图所示 要使用刚刚安装的交叉编译器的时候使用的命令是“ arm-none-linux-gnueabihf-gcc arm-none-linux-gnueabihf-gcc”的含义如下
arm表示这是编译 arm架构代码的编译器none表示厂商一般半导体厂商会修改通用的交叉编译器此处就是半导体厂商的名字 ARM自己做的交叉编译这里为 none表示没有厂商linux表示运行在 linux环境下gnueabihf表示嵌入式二进制接口后面的 hf是 hard float的缩写也就是硬件浮点说明此交叉编译工具链支持硬件浮点gcc表示是 gcc工具。
Visual Studio Code软件安装使用
Visual Stuio Code是一个编辑器可以用来编写代码 Visual Studio Sode本教程以后就简称 为 VSCode VSCode是微软出的一款免费编辑器。 VSCode有 Windows、 Linux和 macOS三个版本的是一个跨平台的编辑器。 VSCode下载地址是VSCode下载地址。下载界面如图所示
Windows版本安装
这个比较简单双击下载好的exe然后一直下一步就可以了最后安装完打开默认界面如图所示
Linux版本安装
我们有时候也需要在 Ubuntu下阅读代码所以还需要在 Ubuntu下安装 VSCode。 Linux下的 VSCode安装包可以直接下载也可以从开源文档中找到 将资料中的 .deb软件包拷贝到 Ubuntu系统中然后使用如下命令安装
sudo dpkg -i code_1.50.1-1602600906_amd64.deb
可以将图标添加到 Ubuntu桌面上安装的所 有软件图标都在目录 /usr/share/applications中在这其中找到VSCode的图标然后鼠标右键选择复制到-桌面如图所示
VSCode插件的安装
VSCode支持多种语言比如 C/C、 Python、 C#等等本教程我们主要用来编写 C/C程序的所以需要安装 C/C的扩展包扩展包安装很简单如图所示 需要安装的插件有以下
C/C这个肯定是必须的C/C Snippets即 C/C重用代码块C/C Advanced Lint,即 C/C静态检测Code Runner即代码运行Include AutoComplete即自动头文件包含Rainbow Brackets彩虹花括号有助于阅读代码One Dark Pro VSCode的主题GBKtoUTF8将 GBK转换为 UTF8ARM即支持 ARM汇编语法高亮显示这个现在已经没有了可以用Arm Assembly代替Chinese(Simplified)即中文环境vscode-icons VSCode图标插件主要是资源管理器下各个文件夹的图标compareit比较插件可以用于比较两个文件的差异DeviceTree设备树语法插件TabNine一款 AI自动补全插件。 安装完成以后重新打开 VSCode如果要查看已经安装好的插件可以按照图展示方法查看
VSCode新建工程
新建一个文件夹用于存放工程路径尽量不要有中文和空格打开 VSCode。 然后在 VSCode上点击 文件 -打开文件夹 …选刚刚创建的“1_test”文件夹打开后如图所示 打开后可以看到文件夹“1_TEST”是空的点击 文件-将工作区另存为…打开工作区命名对话框输入要保存的工作区路径和工作区名字如图所示 工作区保存成功以后点击“新建文件”按钮创建 main.c和 main.h这两个文件创建成功以后 VSCode如图所示 从上图中可以看出此时“1_test”中有 .vscode文件夹、 main.c和 main.h这三个文件和文件夹同样会出现在“1_test”文件夹中如图所示 输入如下所示的代码 main.h
#include stdio.hint add(int a, int b);main.c
#include main.hint add(int a, int b)
{return (a b);
} int main(void)
{int value 0;value add(5, 6);printf(5 6 %d, value);return 0;
}提示找不到“ main.h”同样的在 main.h文件中会提示找不到“ stdio.h”。这是因为我们没有添加头文件路径。按下“ CtrlShiftP”打开搜索框然后输入 “Edit configurations”选择“ C/C:Edit configurations…”之后会生成一个C/C的配置文件是一个json文件名为c_cpp_properties.json此文件默认内容如图所示 c_cpp_properties.json中的变量“ includePath”用于指定工程中的头文件路径但是 stdio.h 是 C语言库文件而 VSCode只是个编辑器没有编译器所以肯定是没有 stdio.h的除非自行安装一个编译器比如 CygWin然后在includePath中添加编译器的头文件。这里我们 就不添加了因为我们不会使用 VSCode来编译程序这里主要知道如何指定头文件路径就可以了后面有实际需要的时候再来讲。
我们在 VScode上打开一个新文件的话会覆盖掉以前的文件这是因为 VSCode默认开启 了预览模式预览模式下单击左侧的文件就会覆盖掉当前的打开的文件。如果不想覆盖的话采用双击打开即可或者设置 VSCode关闭预览模式设置如图所示
CH340串口驱动安装
我们一般在 Windows下通过串口来调试程序或者使用串口作为终端 STM32MP157开发板使用 CH340这个芯片实现了 USB转串口功能。。 先通过USB线将开发板的串口和电脑连接起来连接方式如图所示 CH340是需要安装驱动的驱动我们已经放到了资料中双击 SETUP.EXE打开安装界面之后直接点击安装按钮等待完成即可。
安装完成后重新插拔一下串口线。打开设备管理器打开后点击左侧“计算机管理 (本地 )”中的“设备管理器”在右侧选中“端口 (COM和 LPT)”如图所示 如果在上图中界面找到了有“USB-SERIAL CH340”字样的端口设备就说明 CH340驱动成 功了 一定要用 USB线将开发板的串口和电脑连接起来
MobaXterm软件安装使用
MobaXterm软件安装
MobaXterm是一款终端软件功能强大而且免费 (也有收费版 )正点原子的教程推荐使用此软件作为终端调试软件 MobaXterm软件在其官网下载即可 MobaXterm下载链接如图所示 点击下载选择免费版然后下载安装当然正点原子的开原资料也已经下载好安装包了在软件盘里面找到MobaXterm_Installer_v12.3.zip解压之后双击MobaXterm_installer_12.3.msi进行安装安装方法很简单一步一步进行即可。
MobaXterm软件使用
双击打开后界面如下图所示 点击菜单栏中的“ Sessions-New session”按钮打开新建会话窗口打开后如图所示 从上图可以看出 MobaXterm软件支持很多种协议比如 SSH、 Telnet、 Rsh、 Xdmcp、 RDP、 VNC、 FTP、 SFTP、 Serial等等我们使用 MobaXterm的主要目的就是作为串口终端使用。点击上图中的“Serial”按钮打开串口设置界面如图所示 打开串口设置窗口以后先选择要设置的串口号因此要先用串口线将开发板连接到电脑上然后设置波特率为 115200(根据自己实际需要设置 )MobaXterm软件可以自动识别串口因此我们直接下拉选择即可波特率也是同样的设置方式下拉选择即可。完了以后还要设置串口的其他功能下方一共有三个设置选项卡点击“Advanced Serial settings”选项卡设置串口的其他功能例如串口引擎、数据位、停止位、奇偶校验和硬件流控等按照下图所示设置即可 如果要设置终端相关的功能的话点击“ Terminal settings”即可比如终端字体以及字体大小等。设置完成以后点击下方的“ OK”按钮即可。串口设置完成以后就会打开对应的终端窗口如图所示 如果开发板里面烧写了系统的话就会在终端中打印出系统启动的 log信息如图所示
Windows下ST官方软件安装
ST官方软件简介
在开发 STM32MP157的时候我们还需要用到一些 ST官方提供的软件一共有三种 STM32CubeMX、 STM32CubeIDE、 STM32CubeProgrammer这三个软件的功能如下图所示
STM32CubeMX
STM32CubeMX是图形化配置工具可以直观的选择 MCU/MPU型号可以动态地配置引脚、 配置时钟树、配置中间件、配置内存可以生成初始化代码、 MPU设备树源码可以进行 DDR测试等。 STM32CubeMX的好处是具有直观的图形配置界面而且它把很多东西封装的比较好例如硬件抽象层、中间层、外围器件和示例代码以及 Arm Cortex-A内核部分 Linux设备树等等它可以独立使用或作为 Eclipse 插件使用例如在 STM32CubeIDE上就集成了 STM32CubeMX。STM32CubeMX开源且跨平台支持在 Windows、 Linux和 macOS 操作系统上运行 64位STM32CubeMX与 STM32之间的关系如图所示 STM32CubeMX可以直接在 ST官网下载到 STM32CubeMX已经放到了开发板光盘中。
STM32CubeIDE
STM32CubeIDE是 ST于 2019年新推出的一款多功能的集成开发工具它集成TrueSTUDIO和 STM32CubeMX插件并基于 GDB进行调试它允许集成数百个现有插件这些插件完成 Eclipse的功能。 TrueSTUDIO插件是一款建立在 Eclipse CDT、 GCC和 GDB的 C/C集成开发工具 其具有项目创建和管理、代码编辑、代码编译以及代码调试等功能。 STM32CubeIDE可以直接在 ST官网下载到 STM32CubeIDE已经放到了开发板光盘中。
STM32CubeProgrammer
STM32CubeProgrammer看名字就知道和编程有关它属于多合一软件工具它将 ST Visual Programmer、 DFUse Device Firmware Update、 Flash Loader和 ST-Link等软件功能整合到了一起为用户提供 STM32 微控制器代码烧写和固件安全安装、更新功能帮助用户更快地开发特定外部存储器的加载程序。 STM32CubeProgrammer支持对外部存储器进行编程、擦除 和验证用户烧写 STM32微控制器既可使用片上 SWD (单线调试 )或 JTAG调试端口也可以用程序引导装入端口 (例如UART和 USB)。它支持 Motorola S19、 Intel HEX、 ELF 和 二进制格式 BIN文件支持 ST-LINK固件更新支持图形化界面操作也支持命令行操作在命令行界面可通过脚本实现自动化编程。目前STM32CubeProgrammer支持 Windows、 Linux和 macOS多个操作系统 64位版本。 STM32CubeProgrammer可以直接在 ST官网下载到 这里也已经放到了开发板光盘中。
Java环境安装
在安装STM32CbeMX和 STM32CubeIDE前我们要先安装 Java的环境 Java 运行环境版 本必须是 V1.7 及以上否则会导致这两个无法使用。大家可以到Java官网查找下载最新的 64位 Java 软件。 一定要用64位的 JAVA运行环境否则使用 STM32CubeProgrammer烧写系统的时候会失败
下载安装包之后直接根据提示安装就可以了。
安装完 Java 运行环境之后为了检测是否正常安装我们可以打开 Windows 的 cmd命令输入框输入如下命令
java -version //命令查询 Java版本
如果安装成功就会打印出Java版本号如图所示
STM32CubeMX安装
STM32CubeMX安装方法很简单解压开发板光盘中的CubeMX压缩包然后双击解压得到的“SetupSTM32CubeMX-6.0.1.exe”进行安装。安装方法很简单一路“Next”然后根据提示接受许可学习、设置安装路径即可。
安装完成后双击打开CubeMX打开后界面如图
STM32CubeIDE安装
将下载好的STM32CubeIDE安装包解压到非中文路径下双击解压出来的st-stm32cubeide_1.4.0_7511_20200720_0928_x86_64.exe可执行文件进行安装安装路径中同样不能有中文否则会导致无法安装即使安装后也会导致无法正常创建和保存工程。
安装全部按照默认即可。STM32CubeIDE是进行 STM32MP157的 M4开发的不能开发 Linux部分。
STM32CubeProgrammer
解压STM32CubeProgrammer安装压缩包然后双击解压出来的SetupSTM32CubeProgrammer-2.5.0.exe”安装过程很简单根据提示进行安装即可双击打开STM32CubeProgrammer如图所示
Ubuntu下ST官方软件安装
Java环境安装
在Ubuntu下安装这三个软件也是需要 JAVA运行环境的 Ubuntu可能会默认安装了OpenJDK环境但是 STM32CubeProgrammer是用 Oracle的 JDK编写的所以需要先卸载掉默认的 OpeJDK首先输入 java -version”查看一下当前 Ubuntu系统下有没有 OpenJDK有的话会输出如图所示信息 如果有就要卸载如果没有输出那就等下直接安装就可以了。卸载OpenJDK输入以下命令
sudo apt-get remove openjdk*
安装Oracle的JAVA环境可以在开发盘中找到jre-8u271-linux-x64.tar.gz将此压缩包拷贝到Ubuntu下然后解压到Ubuntu的/usr/lib/jvm目录下输入如下命令
sudo mkdir /usr/local/java //创建目录 sudo tar vzxf jre-8u271-linux-x64.tar.gz -C /usr/local/java //解压
修改/etc/profile在文件最后追加如下内容
export CLASSPATH.:/usr/local/java/jre1.8.0_271/lib export PATH$PATH:/usr/local/java/jre1.8.0_271/bin
完成后的/etc/profile如下图所示 重启电脑输入“java -version”查看 java安装是否成功安装成功的话就会打印出 java环境的版本号。
STM32CubeMX安装
在Ubuntu下新建一个名为“STM32CubeMX”的文件夹然后将开发板光盘中的STM32CubeMX安装包en.stm32cubemx_v6-0-1.zip发送到此文件夹下然后进行解压命令如下
unzip en.stm32cubemx_v6-0-1.zip
解压出来的文件一个都不要删除防止安装的时候出错在终端里面执行 SetupSTM32CubeMX-6.0.1.linux输入如下命令
chmod 777 SetupSTM32CubeMX-6.0.1.linux //给予可执行权限 chmod 777 SetupSTM32CubeMX-6.0.1.exe //给予可执行权限 ./SetupSTM32CubeMX-6.0.1.linux
输入上述命令以后打开安装界面按照提示操作即可安装完成后可能在/usr/share/applications目录下找不到STM32CubeMX图标。需要直接搜索Ubuntu主界面左上角的“活动”按钮打开搜索条输入“STM32CubeMX”查找相应的文件结果如图所示 搜索得到的结果第一个就是安装文件夹双击打开下图所框选图标即可。
STM32CubeIDE安装
STM32CubeIDE有专门的 Linux版本它并不是和 Windows版放到一起的在开发盘中可以找到。
在Ubuntu下新建一个名为“STM32CubeIDE”的文件夹然后将开发板光盘中的STM32CubeMX安装包en.st-stm32cubeide_1.4.0_7511_20200720_0928_amd64_sh.zip发送到此文件夹下然后进行解压命令如下
unzip en.st-stm32cubeide_1.4.0_7511_20200720_0928_amd64_sh.zip
解压后在终端中执行中的 st-stm32cubeide_1.4.0_7511_20200720_0928_amd64.sh输入如下命令
chmod 777 st-stm32cubeide_1.4.0_7511_20200720_0928_amd64.sh //给予可执行权限 ./st-stm32cubeide_1.4.0_7511_20200720_0928_amd64.sh
输入上述命令以后会先解压压缩包然后打开安装许可阅读完安装许可然后输入’y’表示接受许可接下来会出现多个询问根据实际情况填写即可最后等待安装完成。安装完成以后到/usr/share/applications目录下将STM32CubeIDE的图标复制到桌面上这样我们就可以通过点击桌面图标打开STM32CubeIDE软件了。
STM32CubeProgrammer安装
在Ubuntu下新建一个名为“STM32CubeProgrammer”的文件夹然后将开发板光盘中的STM32CubeMX安装包en.stm32cubeprog_v2-5-0.zip发送到此文件夹下然后进行解压缩命令如下
unzip en.stm32cubeprog_v2-5-0.zip
解压出来的文件一个都不要删除防止安装的时候出错在终端里面执行SetupSTM32CubeProgrammer-2.5.0.linux即可输入如下命令
./SetupSTM32CubeProgrammer-2.5.0.linux
根据提示一步步安装下去 不要修改安装路径采用默认路径即可 。以后我们就可以直接在 Ubuntu下通过 STM32CubeProgrammer来烧写系统了。
最后在Ubuntu中安装 libusb1.0软件包输入如下命令
sudo apt-get install libusb-1.0.0-dev
USB DFU以及STLink驱动安装
在 Windows下 USB DFU驱动不需要安装所以只需要安装 STLink驱动 STLink驱动已 经放到了开发板光盘中解压该压缩包得到如图 所示内容 如果是 64位的电脑则双击 dpinst_amd64.exe 进行安装。在 ST LINK驱动安装完成以后我们在电脑设备管理器里面可以看到会多出一个设备此时 ST LINK必须通过 USB连接到电脑 ST LINK红灯常亮。
Ubuntu下USB DFU以及STLink驱动安装
如果想要在Ubuntu下通过 USB烧写系统那么必须要安装 USB DFU驱动。 必须先在Ubuntu下安装 STM32CubeProgrammer因为 STM32CubeProgrammer安装过程 中会解压出 USB DFU以及 STLink相关驱动文件我们需要用到这些驱动文件 找到Ubuntu里面的 STM32CubeProgrammer安装路径如果安装的时候选择的默认路径 那么就会在用户根目录下生成一个名为“ STMicroelectronics”的文件夹进入之后将所有该文件夹下的.rules文件全部拷贝到Ubuntu的/etc/udev/rules.d目录下命令如下
cd /home/zuozhongkai/STMicroelectronics/STM32Cube/STM32CubeProgrammer/Drivers/rules sudo cp * /etc/udev/rules.d/
拷贝完成以后重启 Ubuntu用 USB Type-C线将开发板的 USB OTG接口与电脑连接起来 默认情况下拨码开关设置为 000也就是 USB启动然后按下复位按键此时电脑就会发出 USB枚举的叮咚声。默认情况下 USB会连接到 Windows下我们需要将 USB连接到 Ubuntu 所以需要设置一下 VMware WMware右下角会有当前电脑所有连接的 USB设备鼠标放上去 以后会显示每个 USB设备的名字我们找到含有“ STMicroelectronics DFU”字样的 USB设备模式此时图标是灰色的说明并没有连接到 Ubuntu下需要我们进行设置。鼠标放上去以后点击鼠标右键再点击“连接”按钮此时 USB DFU就会断开与主机 (Windows)的连接从而 连接到虚拟机 (Ubuntu)上。连接成功以后对应的 USB图标颜色就会深如图所示 连接成功以后就可以使用 STM32CubeProgrammer软件进行测试打开 Ubuntu下的STM23CubeProgrammer软件选择“ USB”字样查看一下端口是否有 USB1”字样如图所示 点击上图右上角的“ Connect”按钮即可通过 USB接口连接到开发板上左下角的 log区就会输出相应的信息如图所示 可以看出此时 USB DFU已经成功工作说明 Ubuntu下 STM32 USB DFU驱动成功。 最后测试下STLink这个测试比较简单将 STLink连接到 Ubuntu下如果 STLink工作成功的话就会在 /dev目录下生成相应的设备文件如图所示
总结
这一章节的内容如果跟我一样之前是看过正点原子的其他课程玩过stm32f1的精英板或者战舰板的像类似CH340串口和STLink驱动应该是装完的然后我自己本身也是玩过VSCode写C的所以VSCode我自己Windows也有编译环境我甚至都是配过的至于Ubuntu上其实是一个道理我双系统的Ubuntu就配过gdb的版本所以Ubuntu里的Vscode状态来也简单
ST公司官方的三件套开源而且做得很好装起来无论是哪个系统都很简单主要是文件互传这边的FileZilla没搞过装完了确实互传文件很简便交叉编译器的安装也是按照教程走下来就可以最后再配一个USB和STLink的驱动就大功告成了