3.1 开发环境搭建
一、Ubuntu和Windows文件互传
① 开启Ubuntu的FTP服务:
下载vsftpd:sudo apt-get install vsftpd
;
打开vsftpd.conf:sudo nvim /etc/vsftpd.conf
;
确保这两行代码没有被注释:
之后重启FTP服务:
② Windows下载FTP客户端:客户端 - FileZilla中文网
③ FileZilla软件设置:
Ubuntu作为FTP服务器,FileZilla作为FTP客户端。
FileZilla->文件->站点管理器,创建新站点。
由于这时候是乱码,所以先关闭连接,服务器->断开连接。然后按着以下图设置即可。
二、Ubuntu下的NFS和SSH服务开启
① 后面驱动开发的时候要用到NFS,所以提前下载。
sudo apt-get install nfs-kernel-server rpcbind
② 在用户根目录下创建"linux"文件夹,在linux文件夹下创建"nfs"文件夹。nfs文件夹给nfs服务器使用。
③ 配置nfs。
sudo nvim /etc/exports
打开nfs配置文件
在配置文件添加 /home/luoxuesong/linux/nfs *(rw, sync,no_root_squash)
重启NFS服务
④ SSH服务开启:
sudo apt-get install openssh-server
三、Ubuntu交叉编译工具链安装
1.交叉编译器安装
Ubuntu自带的gcc是针对X86架构, 现在要编译的是 ARM 架构的代码,所以需要一个在 X86 架构的 PC 上运行,可以编译 ARM 架构代码的 GCC 编译器,这个编译器就叫做交叉编译器。
总结:
1、是一个 GCC 编译器。
2、这个 GCC 编译器是运行在 X86 架构的 PC 上的。
3、这个 GCC 编译器是编译 ARM 架构代码的,也就是编译出来的可执行文件是在 ARM 芯
片上运行的。
交叉编译器中“交叉”的意思就是在一个架构上编译另外一个架构的代码,相当于两种架构“交叉”起来了。
这个下载地址是:Linaro Snapshots
之后把文件放在Ubuntu创建的文件夹nfs里面。
创建目录: /usr/local/arm :sudo mkdir /usr/local/arm
把交叉编译器压缩的文件放在 usr/local/arm:sudo cp gcc-linaro-14.0.0-2023.06-x86_64_arm-linux-gnueabihf.tar.xz /usr/local/arm/ -f
cp是复制,gcc-linaro-14.0.0-2023.06-x86_64_arm-linux-gnueabihf.tar.xz是需要复制的文件名,/usr/local/arm/是目标路径, -f是强制,他会忽略目标文件是否已存在,直接覆盖原文件。
之后解压tool.tar:sudo tar -vxf gcc-linaro-14.0.0-2023.06-x86_64_arm-linux-gnueabihf.tar.xz
-v是显示压缩过程,-x是解压缩操作,-f指定要解压的tar文件。
完成之后修改环境变量,先进入/etc 文件夹,用sudo进,然后输入以下指令,修改完成后重启Ubuntu就可以啦。
arm-linux-gnueabihf-gcc -v
1、 arm 表示这是编译 arm 架构代码的编译器。
2、 linux 表示运行在 linux 环境下。
3、 gnueabihf 表示嵌入式二进制接口,后面的 hf 是 hard float 的缩写,也就是硬件浮点,说明此交叉编译工具链支持硬件浮点。
4、 gcc 表示是 gcc 工具。
2.安装相关库
在安装之前先更新其他库
sudo apt-get update
sudo apt-get install lsb-core lib32stdc++6
如果第二个安装lib32stdc++6失败,试一下sudo aptitude -f install lib32stdc++6
。
四、安装VS Code
① 方法1:
直接在Ubuntu Software搜索Visual Studio Code 点击安装即可。
② 方法二:
在火狐搜索Vs code下载linux版本即可。
③ 安装插件:
我安装了这些插件:
五、其他安装
1.STM32CubeProgrammer安装
首先下载STM32CubeProgrammer,直接在Windows电脑上下载后,用FileZillz传过去。
我在/linux/下新建了tool文件夹和在tool文件夹里建了STM32CubeProgrammer文件夹。
用以下命令解压:
unzip en.stm32cubeprg-lin-v2-14-0.zip
解压完成后用以下命令安装:
./SetupSTM32CubeProgrammer-2.14.0.linux
完成安装后再安装Libusb1.0软件包:sudo apt-get install libusb-1.0.0-dev
2.USB DFU和STLink驱动安装
首先应该先安装STM32CubeProgrammer,因为这里面有我们需要的相关驱动文件。
找到此路径,可以看到如下文件。
这些.rules 文件全部拷贝到 Ubuntu 的/etc/udev/rules.d 目录下:
cd /home/luoxuesong/STMicroelectronics/STM32Cube/STM32CubeProgrammer/Drivers/rules
sudo cp * /etc/udev/rules.d
这时候重启Ubuntu,用USB连接到USB_OTG开发板的USB上。
这时候鼠标移到右下角有这样的字体,,然后连接主机。连接成功会显示这样的图标。