稚晖君 ElectronBot的STM32主程序由CLion C++导入到STM32CubeIDE C++

前言

稚晖君新项目ElectronBot刚发布不久,且已经开源在了git,地址如下(GitHub - peng-zhihui/ElectronBot)。

主控芯片用的是STM32F405,开发工具用的是CLion,而且是C与C++混编

但,CLion是一个收费软件,如果不是常用的生产工具,性价比就比较低 了,如果用其他方式进行和谐,也是不合法的,所以,就转用ST出的免费的IDE;在单片机上使用c++进行设计的可能是少数,由于单片机的性能资源、运行效率等问题,C++并不是单片机开发的主流语言,如果把这个项目再重构成C语言的,工程量也不少,那就用STM32CubeIDE来配置C++吧。

这里需要解决两个主要的问题:

1、CLion 工程与STM32CubeIDE的转换

2、C与C++的混编

一、工程转换

在通过STM32CubeIDE打开工程时,STM32CubeIDE自动会进行转换,不需要进行任何的修改。

打开工程,通过菜单栏:File→Open Projects from System...

找到工程保存的目录导入即可。

导入后会有如下两个提示,OK即可。

 二、工程配置

1、工程转换

由于稚晖君CLion的工程是C与C++混编的,所以,先把工程转换成C++的工程,STM32CubeIDE 提个了方便的转换功能。右键选择即可。

如果是新版本的CubeIDE,在工程右键中找不到转换的功能,可通过如下方式。

在File——New中会有如下的功能

 如果在File——New里也没有,要选择Other

2、添加头文件路径

这里可能是不同工程导致的头文件路径不全的问题。

我这里把GCC与G++的头文件路径都添加了一下,主要是Bsp与UserApp两个目录要添加进来。

GCC的头文件路径

 G++的头文件路径

 3、printf浮点支持

在main.cpp文件中,稚晖君使用了printf输出了浮点类型的数值,所以,这里添加上对printf_float的支持

 4、源代码路径

添加源程序路径,主要是cpp文件的路径

5、编译结果

最后应用所有修改,进行编译。

结果显示,hex文件已经生成,没有错误,只有一个未使用变量的警告

最后声明

由于没有硬件,只是将CLion的工程导入到STM32CubeIDE中并修改了一些C++的配置,最后编译没有错误,具体的代码功能是不是完善,会不会因为各种原因导致的程序逻辑错误目前不可预知。

评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值