新建工程
打开你的Clion,点击新建工程
![在这里插入图片描述](https://img-blog.csdnimg.cn/b6fdc90b15b64d4ba55dca2d86cd1381.png#pic_center)
在左侧找到STM32CubeMX,点击后在上方选择工程所在位置。
比如我的工程要存放在ClionSTM32文件夹下面,我在其后面写上我的工程名即可
设置好后点击右下角的创建
将untitled换成你的新工程名
点击创建
![在这里插入图片描述](https://img-blog.csdnimg.cn/100e6328fec348e0824a1e55fa73ac55.png#pic_center)
等待工程创建之后,会弹出“选择面板配置文件”
这个选择跳过,如果有你所用的开发板型号,可以直接选择。
如果你用的是自己的开发板或者是淘宝购买的非ST官方的板子,都选择跳过。后面会自己创建cfg文件
![在这里插入图片描述](https://img-blog.csdnimg.cn/1ccf63fb40ed40ac980271e4e8311456.png#pic_center)
然后在左侧找到.ioc文件,也就是CubeMX的文件,点击“通过STM32CubeMX打开”,随后在CubeMX上配置你的工程文件
需要注意的是,工程默认芯片型号是F030F4Px
所以打开CubeMX之后需要先修改芯片型号
![在这里插入图片描述](https://img-blog.csdnimg.cn/d422449cba72455abef686417a106b68.png#pic_center)
修改芯片型号
更换芯片型号
![在这里插入图片描述](https://img-blog.csdnimg.cn/cf8b44c772cb49c593b8f62e2e65228e.png#pic_center)
搜索芯片型号,后面按照自己的工程要求配置即可,CubeMX工程配置这里不做过多讲解
![在这里插入图片描述](https://img-blog.csdnimg.cn/a6ba7e3c5c324dd198d34b5a4a9aed77.png#pic_center)
配置好工程后,要按照Clion创建时的工程名字和路径填写
先修改名字路径,再选择IDE为“STM32CubeIDE”
![在这里插入图片描述](https://img-blog.csdnimg.cn/0198ab0f14104c3898fe14b6ef6f3b40.png#pic_center)
配置完成后,点击右上角的“generate code”
生成之后点击close,不要点击另外两个“open***”
![在这里插入图片描述](https://img-blog.csdnimg.cn/976245abb8c7448f99908c4f8ee827ac.png#pic_center)
然后回到刚刚的Clion工程
![在这里插入图片描述](https://img-blog.csdnimg.cn/1be63b100f5444eebb8677167ca93897.png#pic_center)
左侧可以看到有Inc和Src两个目录
Src里放这.c源文件 Inc里放着.h头文件
如果要添加自己的文件,只能分别添加在Src和Inc目录中
添加自己的文件
若想添加自己的目录,可以按照下面的方法
![在这里插入图片描述](https://img-blog.csdnimg.cn/dfa84788a29442ae80271ac1b20e5390.png#pic_center)
先右键工程名,新建—目录,填写文件夹名称,比如“template”
当然你也可以在文件夹内进行操作
将你自己的文件放置在工程目录里,Clion也会自动识别
![在这里插入图片描述](https://img-blog.csdnimg.cn/10804d2eff77421db65ee66547fcf740.png#pic_center)
找到新建的目录,右键新建两个文件,分别命名为template.c和template.h
![在这里插入图片描述](https://img-blog.csdnimg.cn/1052f55c6b8949e9aa489d7abea74b21.png#pic_center)
创建好后可以在左侧看见自己创建的文件夹,打开你新建的.c和,h文件
可以看见上方提示不属于任何项目
所以我们还需要将其添加进Cmake里
![在这里插入图片描述](https://img-blog.csdnimg.cn/72ff6cd0292547ad8372ca4828b6b89d.png#pic_center)
将自己的文件添加Cmake项目——修改CMakeLists_template,txt
打开左方的“CMakeLists.txt”,可以看见上方提示“此文件从模板自动生成!请勿更改”
所以我们不在此文件里修改,因为每次从CubeMX里generate code生成代码后,该文件都会重新生成,导致我们在此文件做的修改都会被删除
所以我们需要在模板文件中修改添加文件路径
打开左侧的“CMakeLists_template,txt”
![在这里插入图片描述](https://img-blog.csdnimg.cn/cef2e23ef36a4a649efbe9576a62fb87.png#pic_center)
打开后找到“include_directories(${includes})”和“file(GLOB_RECURSE SOURCES ${sources})”
大概在51行附近
![在这里插入图片描述](https://img-blog.csdnimg.cn/5f061aade08147449f02c3878aed5217.png#pic_center)
在include_directories中加入.h头文件的地址
在file中加入.c源文件所在的文件夹名称
![在这里插入图片描述](https://img-blog.csdnimg.cn/0b075d2b35154adbae3c11d3a89f8387.png#pic_center)
这是我刚刚新建文件的路径,
ClionSTM32是我用来存放工程的文件夹
untitled是工程名,也就是我的工程文件夹
template是刚刚新建用来存放我的功能文件.c .h的文件夹
![在这里插入图片描述](https://img-blog.csdnimg.cn/8907ba494179426fbd814f4ced0d0e36.png#pic_center)
如上图,将template的路径添加进去,如果你的路径有子目录的话,如我的Debug文件在USER文件夹下面,按照上面的格式填入进去即可,不同的文件中间以空格隔开
对于.c源文件只需要填入文件的第一级目录
而.h文件则需要填写至.h文件的最后一级目录
修改完成之后,需要在CubeMX中重新generate code以更新你的CMakeLists.txt
![在这里插入图片描述](https://img-blog.csdnimg.cn/9ebaf7a8a64748c99fdaad52127a9d35.png#pic_center)
重新生成后等待CMake加载完成就可以发现上方的提示已经没有了
如果还有提示,可以按上图重修加载一下你的CMake
如果仍然有问题,建议再对照一下上一步然后CubeMX里重新generate code
大部分和CMake有关的问题都可以试着generate code一下看看
烧录程序——编写.cfg文件
右上角的三个绿色按键分别是编译、下载和调试
![在这里插入图片描述](https://img-blog.csdnimg.cn/51e15c1e9d944caa8213932450df2383.png#pic_center)
编写完代码之后就可以编译并烧录
![在这里插入图片描述](https://img-blog.csdnimg.cn/3fe4e1a813c14ecf8ed2c7c4cea6d7ee.png#pic_center)
点击编译后,出现上方的“构建 已完成”,即表示编译成功,程序没有报错
编写.cfg文件
按照前文的方法,在工程里面新建一个文件,名字为 stlink.cfg
![在这里插入图片描述](https://img-blog.csdnimg.cn/985e49f0775242bba0e68e141861c62a.png)
打开你的.cfg文件,将下面的代码复制进去
因为我用的是stlink下载,如果你不是用stlink的话,该文本不适用
我的芯片是F4的,如果你用的是F1,把第六行的stm32f4x.cfg改成f1即可
# choose st-link/j-link/dap-link etc.
#adapter driver cmsis-dap
#transport select swd
source [find interface/stlink.cfg]
transport select hla_swd
source [find target/stm32f4x.cfg]
# download speed = 10MHz
adapter speed 10000
当然你也可以使用串口下载,在工程路径里找到.hex文件,利用串口烧录软件烧录即可
![在这里插入图片描述](https://img-blog.csdnimg.cn/3692dba517ad48ab9ac943235a5e9e9f.png)
编写好.cfg文件之后,还需要配置你工程的调试器
![在这里插入图片描述](https://img-blog.csdnimg.cn/51e15c1e9d944caa8213932450df2383.png#pic_center)
点击编辑配置
![在这里插入图片描述](https://img-blog.csdnimg.cn/a7e51001a3b4447c93e5336de0d150e1.png)
加号+ 找到openocd
面板配置文件选择刚才新建的.cfg文件,如上图配置之后
应用 确定
![在这里插入图片描述](https://img-blog.csdnimg.cn/4144c074a2b94ef3b88cda44d7038685.png)
选择openocd,连接上你的stlink就可以进行烧录和调试了
![在这里插入图片描述](https://img-blog.csdnimg.cn/9e42378226dc43a3b87d706a30c55e7a.png)
点击烧录后,出现这样的提示,说明烧录成功