Clion运行其他文件夹的函数【Clion+MXcube应用】

目录

前言:

发生问题:

classs.c文件

​classs.h文件

然后main中无法识别

问题解决:

第一步:找到CMakeLists.txt文件​编辑

第二步:复制文件夹.h路径

第三步:找到CMakeLists.txt文件中的以下区域

第四步:添加.h路径即可

第五步:找到CMakeLists.txt文件中的以下区域

第六步:添加.c路径

第七步:运行即可


前言:

        看这篇文章的前提是你已经搭建好clion+mxcube环境,并且可以成功烧录代码。

        这段时间我在自己复刻稚晖君瀚文键盘固件的时候,发现稚晖君用到了一款独特的开发软件clion,于是我在安装了clion,希望通过模仿大佬的编写习惯来起到学以致用的效果。我之前一直使用的是keil5软件利用HAL库开发stm32项目。

介绍一下我使用的环境:

软件环境:

Windows 11

STM32CubeMX

Clion-2021

MinGW

OpenOCD

arm-none-eabi-gcc

硬件环境:

STM32F103CBT6

stlink下载器

发生问题:

        在clion中我不会最基础的在main.c文件中调用其他的函数,例如我创建了一个class的文件夹,文件夹下面放了classs.c和classs.h文件(写了一个LED等闪烁程序),在main函数中调用出现报错。


classs.c文件

#include "classs.h"

void LED1()
{
    HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_RESET);
    HAL_Delay(1000);
    HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_SET);
    HAL_Delay(1000);

}


classs.h文件

#ifndef __CLASSS_H
#define __CLASSS_H
#include "main.h"

void LED1();

#endif

然后main中无法识别

问题解决:

第一步:找到CMakeLists.txt文件

第二步:复制文件夹.h路径

第三步:找到CMakeLists.txt文件中的以下区域

include_directories(Core/Inc Drivers/STM32F1xx_HAL_Driver/Inc Drivers/STM32F1xx_HAL_Driver/Inc/Legacy Drivers/CMSIS/Device/ST/STM32F1xx/Include Drivers/CMSIS/Include)

第四步:添加.h路径即可

include_directories(Classs/Inc Core/Inc Drivers/STM32F1xx_HAL_Driver/Inc Drivers/STM32F1xx_HAL_Driver/Inc/Legacy Drivers/CMSIS/Device/ST/STM32F1xx/Include Drivers/CMSIS/Include)

                *注意空格隔开

第五步:找到CMakeLists.txt文件中的以下区域

file(GLOB_RECURSE SOURCES "startup/*.*" "Drivers/*.*" "Core/*.*")

第六步:添加.c路径

file(GLOB_RECURSE SOURCES "startup/*.*" "Drivers/*.*" "Core/*.*" "Classs/*.*")
        按照格式"Classs/*.*"即可,Classs是根目录名,程序会自动搜索文件夹下的源文件

第七步:运行即可

        成功编译,LED灯可完成闪烁。

总结:

        cmake文件是配置编译工具

新的问题:(clion中利用面向对象思维进行编写)

        我在查找资料的时候发现大部分有关clion的文章都是搭建环境的文章,很少有使用它来实现一些更加厉害的代码操作的文章,所以接下来我会多发一些clion应用的文章,(稚晖君的代码还没有全部看懂),现在还有一个问题就是如何在clion中利用面向对象思维进行编写stm32代码,我会继续研究,也算是下期文章预告了。

  • 10
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值