收藏官网首页
查看: 550|回复: 0

[资料] GoKit2 生成MCU代码导入STM32CubeIDE

1

主题

1

帖子

133

积分

注册会员

Rank: 2

积分
133
跳转到指定楼层
楼主
 楼主| 发表于 2025-2-21 10:23:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
校园创客福利
一个偶然的机会得到一块gokit2 功能板 Gokit2.3 + Ai Thinker 方案, 底板为GoKit2.1
一个偶然的想法, 想做一个小项目
Keil 查盗版比较狠, 虚拟机中使用又不太方便

以上为废话背景
======================================================
1. 网站生成MCU代码, 下载下来
2. 使用新版的STM32CubeMX 打开一下.ioc, 选择Migrate 然后保存

3. 按照官方文档放文件


我把官方的文件中的.h放在Inc下, .c 放在Src中
4. 新建工程, 新建时选择  STM32 Project from an Existing STM32CubeMX Configuration File (.ioc)

选择步骤2中保存的ioc文件

5. 修改编译配置(重点)
项目 - properties - C/C++ Build - Settings - Tool Settings - MCU/MPU GCC Compiler - Include paths

../Core/Inc
../Drivers/STM32F1xx_HAL_Driver/Inc
../Drivers/STM32F1xx_HAL_Driver/Inc/Legacy
../Drivers/CMSIS/Device/ST/STM32F1xx/Include
../Drivers/CMSIS/Include
../Drivers/Gizwits/Inc
../Drivers/Hal/Inc
../Drivers/Utils/Inc


按照上述步骤修改后, 可以build了

arm-none-eabi-objdump -h -S stm32f103c8t6.elf  > "stm32f103c8t6.list"
arm-none-eabi-objcopy  -O ihex stm32f103c8t6.elf  "stm32f103c8t6.hex"
   text           data            bss            dec            hex        filename
  29812            108          12564          42484           a5f4        stm32f103c8t6.elf
arm-none-eabi-objcopy  -O binary stm32f103c8t6.elf  "stm32f103c8t6.bin"
Finished building: default.size.stdout

Finished building: stm32f103c8t6.hex
Finished building: stm32f103c8t6.bin

Finished building: stm32f103c8t6.list




上面最重要的两点就是
1. 要把官方的文件放在Driver下,
2. 修改编译的Include
如果文件不放在Driver下, 比如 跟Driver同级, 极有可能会出现 __weak func 重定义问题, 看日志是 先编译了 gizwits_product.c 导致Hal库中的_[color=rgba(0, 0, 0, 0.85)][backcolor=rgba(0, 0, 0, 0.04)]__weak void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart), [color=rgba(0, 0, 0, 0.85)][backcolor=rgba(0, 0, 0, 0.04)]redefinition of 'HAL_UART_RxCpltCallback'
[color=rgba(0, 0, 0, 0.85)][backcolor=rgba(0, 0, 0, 0.04)]

最后 ST家的版本有兼容问题 我所使用的的版本如下
STM32CubeMX : Version 6.12.1

STM32CubIDE: Version 1.16.1


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表
在线咨询