赞
踩
最近在使用clion开发stm32,中途遇到不少问题,并记录如下:
1.在使用clion通过stm32cubemx生成代码后,会自动生成一个cMakeLists.txt文件,对于一些cubemx自动创建的文件夹,自动将这些文件夹的路径包含的cMakeLists.txt文件中,格式大致如下:
file(GLOB_RECURSE SOURCES "startup/*.*" "Drivers/*.*" "Src/*.*" "Inc/*.*" "user/*.*" "config/*.*")中间空格隔开。
上面的user和config是我自己创建的文件夹,如果不包含这些文件夹,编译时就会报错,还有个问题就是,当我们在cubemx添加了一些新的功能后,需要重新生成一下代码,此时之前自己添加的文件,user和config就会丢失,需要再次添加到file()里面,还没找好的解决办法。
2.当新建了一个文件,比如command.h,此时在main.c中如果使用#include "command.h"是无法找到这个文件的,解决方法有两种,如下:
2.1:第一种是#include "F:\1.liuzunyan\STM32F103ZET6_Control_Board\user\command.h"
需要把文件的整个路径包含。
2.2:第二种是#include "command.h",但使用这种方式有个前提,需要在cMakeLists.txt文件中添加如下指令:
include_directories(${PROJECT_SOURCE_DIR}/user),这行指令也会在cubemx需要重新生成代码时丢失。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。