GD32F470 移植STM32F429工程 Keil调试笔记

keil版本:5.25
安装
GigaDevice.GD32F4xx_DFP.3.0.4.pack
Keil.STM32F4xx_DFP.2.15.0.pack

一、GD32F470 与 STM32F429 切换编译

1、原项目为STM32F429 工程,切换到GD32F470 只需在 Options for Target"“对话框的Device菜单中选中“GD32F470II”,重新编译即可,一般不会有编译错误。
在这里插入图片描述
2、将项目工程在切换回STM32F429,在 Options for Target”"对话框的Device菜单中选中“GD32F29IITx”,重新编译即可,但这样会显示编译错误,如图:
在这里插入图片描述
空间不够报警。
解决:STM332F429 IRAM1、IRAM2 都要勾选
在这里插入图片描述
GD32F470 只有 IRAM1
在这里插入图片描述
3、有时将项目工程再次切换回GD32F470时,会报错如下图:
在这里插入图片描述
这个错误一直没找到原因,我是重装了keil之后才解决。

二、ST FSMC 移植到GD EXMC

ST的 FSMC PSRAM 支持8bit、16bit、32bit的位宽通讯
在这里插入图片描述

GD的EXMC PSRAM 只支持8bit、16bit 的位宽通讯
在这里插入图片描述

三、CAN初始化卡死在 Error_Handler();

解决:更改stm32f4xx_hal_can.c中
HAL_StatusTypeDef HAL_CAN_Init(CAN_HandleTypeDef *hcan) 函数
移动 CLEAR_BIT(hcan->Instance->MCR, CAN_MCR_SLEEP);函数位置
在这里插入图片描述
详见:GD32替换STM32遇到的坑之《HAL库CAN无法初始化》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值