收藏官网首页
查看: 6012|回复: 2

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

2

主题

2

帖子

222

积分

中级会员

Rank: 3Rank: 3

积分
222
跳转到指定楼层
楼主
 楼主| 发表于 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


2

主题

2

帖子

222

积分

中级会员

Rank: 3Rank: 3

积分
222
沙发
 楼主| 发表于 2025-2-21 10:25:47 | 只看该作者
我上传的目录图呢?

2

主题

2

帖子

222

积分

中级会员

Rank: 3Rank: 3

积分
222
板凳
 楼主| 发表于 2025-2-21 10:26:52 | 只看该作者
补充目录图, 不知道原来的图为什么没有了
├─Core
│  ├─Inc
│  ├─Src
│  └─Startup
├─Debug
│  ├─Core
│  │  ├─Src
│  │  └─Startup
│  └─Drivers
│      ├─Gizwits
│      │  └─Src
│      ├─Hal
│      │  └─Src
│      ├─STM32F1xx_HAL_Driver
│      │  └─Src
│      └─Utils
│          └─Src
└─Drivers
    ├─CMSIS
    │  ├─Device
    │  │  └─ST
    │  │      └─STM32F1xx
    │  │          ├─Include
    │  │          └─Source
    │  │              └─Templates
    │  └─Include
    ├─Gizwits
    │  ├─Inc
    │  └─Src
    ├─Hal
    │  ├─Inc
    │  └─Src
    ├─STM32F1xx_HAL_Driver
    │  ├─Inc
    │  │  └─Legacy
    │  └─Src
    └─Utils
        ├─Inc
        └─Src
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

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

快速回复 返回顶部 返回列表