目录
前言
本文读者应该已经用过vim插件(不用vim的应该也不会看吧),网上vim插件相关博文很多,我也会在自己的VIM专栏更新自己的一些经验,不会用vim插件的话可以先看看,基本是几个拷贝,比较容易。
最新版vim安装
卸载旧版本重装就可以了
sudo add-apt-repository ppa:jonathonf/vim
1.arm-none-eabi-gcc
交叉编译工具链,下载地址:arm-none-eabi-gcc,安装文件可以自动添加环境变量,压缩包要自行添加bin目录到环境变量,用这个来编译工程,make
后生成的hex和bin文件在./build文件加下,make clean
可以清除编译文件
arm-none-eabi-gcc -v //查看是否安装成功,命令错误的话把安装目录bin添加到环境变量
2.cygwin64
去这个里面安装make命令,下载地址:cygwin64,安装时一路下一步,这里选择阿里云镜像站
Package->All->Devel,然后选择选择make这一个包安装就可以了,安装完把cygwin安装目录下bin文件夹添加到环境变量
make -v //查看是否安装成功
在工程目录下make
即可编译工程
3.stm32cube
代码生成工具,生成工具链选择mdk生成后再选择makefile重新生成,这样想用哪个编译用哪个。。。
mdk使用的标准库和arm-none-eabi-gcc使用的标准库不同,需要在Makefile里面添加arm-none-eabi-gcc的标准库,添加keil标准库的话需要一些修改
4.makefile
代码构建依赖描述工具,stm32cube生成makefile工程后,会自动生成makefile文件,如果工具链装好,进入工程目录makefile同目录下使用make
编译。
文件里面有很多命令,大多不需要理睬,stm32已经帮我们生成了所有,只需要添加自己的源文件路径和库文件路径就可以了。
添加自己的源文件和头文件路径,参照原有格式书写。头文件路径中-I
表示include路径,后面跟路径地址,注意路径空格前加\
,括号前也要加\
。
标准库最好添加arm-none-eabi-gcc的。
保存后重新compiledb make
可以生成新的compile_command.json文件,注意,重新生成后要重新打开vim,这样新的.json文件才能生效。
路径添加和修改后出错可以用make clean
清除一下重新编译
5.vim插件------coc.nvim
自动补全插件,仓库地址:coc.nvim,安装插件的同时使用插件的推荐vim启动配置,这样才能用gd
那些跳转。
这里使用vim-plug插件管理器来安装,注意安装失败的话需要改一下插件管理器仓库地址,参考:
链接
6.coc插件------coc-clangd
舒服打代码最重要的一个东西,提供补全和语法检测,支持补全中文。仓库地址:coc-clangd,安装好coc后在vim界面使用coc命令即可安装,然后安装clangd,安装完成需要把bin目录添加到环境变量
:CocInstall coc-clangd
7.clangd编译数据库生成软件compiledb
clangd依赖compile_command.json才能很好的工作,这个工具用来生成compile_command.json,否则补全会有问题,仓库地址:compiledb
需要安装python
pip install compiledb
compiledb make //在工程目录下生成compile_command.json
功能演示
经过一段时间的使用,还是很完美的,不算调试的话不比vsc差
库补全:
标准库补全:
语法检测:
内置终端编译:
使用keil编译:
使用keil下载:
(推一篇之前写的vim基本操作:win下使用gvim编译keil工程及一些常用操作及快捷键------持续更新)
有新东西的话我会慢慢加进来,折腾的路还很长。
下载调试工具的话还没搞明白,弄清楚了会另外写一篇文章讲下载和仿真,工具链的gdb工具可以直接用,但命令行调试显然是不好用的。
一些其他资料参考:
- B站大佬Pulf_bili的openocd使用讲解视频
- vimspector
- gdb可以用jlink-server连接jlink