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无法初始化》文章来源地址https://uudwc.com/A/jAbA9

原文地址:https://blog.csdn.net/weixin_43494116/article/details/130265676

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

h
上一篇 2023年06月26日 05:43
计算机视觉 - 图像增强应用实践 (基础篇)C++ OpenCV
下一篇 2023年06月26日 05:45