0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【GD32 MCU 移植教程】5、GD32E230 系列移植到 GD32F330 系列

聚沃科技 2024-09-03 10:05 次阅读

1.前言

GD32E230 系列是 GD 的 Cortex_M23 系列产品,GD32F330 系列是 GD 的 Cortex_M4 系列产品,这两个系列的兼容度非常高。客户会有从 GD32E230 系列移植到 GD32F330 系列的需求,本文档专门针对既有的 GD32E230 代码如何移植到 GD32F330 做一个详细的介绍;

2.硬件差异

GD32E230 系列的封装类型有:TSSOP20、LGA20、QFN28、QFN32、LQFP32、LQFP48,GD32F330系列的封装类型有:TSSOP20、QFN28、QFN32、LQFP48、LQFP64,两个系列相同封装的芯片引脚是兼容的。

注意:

1. TSSOP20和QFN28的封装中,GD32E230系列PA9、PA10可以映射为PA11、PA12,GD32F330系列不具备此功能。

2. LQFP48封装管脚1在GD32E230系列上面是VDD,在GD32F330上是VBAT,也就是说E230不支持掉电运行RTC;

wKgZombWZ5-AA2zIAAEla4OTq_M913.png图 2-1 LQFP48 封装对比图

wKgZombWZ7mAJaW-AADxLli6Ho0392.png图 2-2 QFN32 封装对比图wKgZombWZ8GAWoJaAADVT_ctw9g287.png图 2-3 QFN28 封装对比图

wKgaombWZ9eALUnOAACeFkLm8RE129.png图 2-3 TSSOP20 封装对比图

3.资源及外设地址对比

wKgZombWZ-mAOJhUAABUAPLhXZs901.png表 3-1 GD32F330 及 GD32E230 系列内部资源对比总览

以上斜杠“/”代表有多种情况,需要根据具体芯片型号区分。

wKgZombWZ_uAUeREAAAseyzObwo052.png表 3-2 GD32F330 及 GD32E230 系列外设地址对比总览wKgZombWaAGAbQTEAAAoxySOsWs958.png表 3-2 GD32F330 及 GD32E230 系列外设地址对比总览

1. GD32F330 增加了 TIMER1,但裁剪掉了 TIMER5(在 350 系列上有保留),GD32E230 裁剪掉了 TIMER1;

2. GD32E230 系列有一路比较器,GD32F330 没有该资源,GD32F350 系列配置两路比较器;

3. GD32E230 系列新增了 1K 的 OTP 区域,GD32F330 没有该资源。

4.开发工具对比

1. GD32F330可使用MDK for ARMKEIL4及KEIL5进行开发,使用Keil 4建议安装4.74及以上;使用Keil 5建议安装5.20以上版本。也可以使用IAR for ARM开发,建议安装IAR 6.3及以上版本。

wKgaombWaByAAnQvAAAQoQ2hRYY721.png表4-1 IDE环境对比表

2. GD32F330 可以使用 JLINK、ULINK、GDLINK 等调试工具进行开发。

wKgaombWaC6ACTkGAAAUQ_D5O1o827.png表 4-2 调试工具对比表

5.软件环境设置

5.1 使用 Keil 开发 GD32F330

目前市面通用的MDK for ARM版本有Keil 4和Keil 5:使用Keil 4建议安装4.74及以上,使用Keil 5建议安装5.20以上版本。

5.1.1. 在 Keil4 中添加 GD32F3x0 MCU Device

1. 从GD32MCU官网下载相关的GD32F3x0系列插件

wKgaombWaFCAWrmVAADqRStKL_c480.png图 5-1 GD32F3x0 系列 MCU 型号支持 pack 包名称

2. 双击安装文件,把插件安装至Keil 4的目录,一般都会默认选择,如若同时安装了Keil 4和Keil 5才需要手动选择。

wKgaombVGZyAVFWzAAA6fhv72ZA926.png图 5-1 Pack 包安装示意图(keil4)

3. 安装成功后,重新打开Keil 4,则可以在File->Device Database中出现Gigadevice的下拉选项,点击可以查看到相应的型号。

wKgZombWaH6AB--sAABc3peo66o950.png图 5-2 Pack 包成功安装示意图(keil4)

4. 为了后续debug工作的顺利进行,建议检查一下安装路径下是否有下载算法,可以通过如下方式查看:打开一个工程,将型号选为GD32F3x0的型号,然后Options for Target -> Debug->Settings -> Flash Download-> Add,如果下拉选项中有GD32F3x0的下载算法则完全安装成功。

wKgaombWaKKAVS0tAABo72d9H38728.png图 5-3 Flash 算法文件选择示意图(keil4)

5.1.2. 在 Keil5 中添加 GD32F3x0 MCU Device

1. 从GD32MCU官网下载相关的GD32F3x0系列插件。

wKgaombWaFCAWrmVAADqRStKL_c480.png图 5-4 GD32 MCU 型号支持 pack 包名称(keil5)

2. 解压并安装至Keil 5的目录,一般都会默认选择。

wKgaombWaNOAckIIAAAjK3EcQc4955.png图 5-5 Pack 包安装示意图(keil5)

3. 安装完后重新打开keil5工程,即可在Device中出现Gigadevice的型号。

wKgZombWaOSAApGvAAB9RsCzOAg651.png图 5-6 Pack 包安装成功示意图(keil5)

4. 在Options for Target -> Debug ->Settings ->Flash Download 中添加flash算法,会出现GD32F3X0的算法,即说明安装成功。根据相应的芯片选择合适的算法,即可下载仿真

wKgZombWaRGAF3frAAB25xK5xak334.png图 5-7 Flash 算法文件添加示意图(keil5)

5. 用Keil 5打开Keil 4工程,如果报找不到器件信息等错误,将Keil 4的插件安装在Keil 5的目录下,具体操作方式参考Keil 4插件相关内容。

5.2 使用 GD-Link 开发 GD32F330

GD32F3x0的开发板自带GD-link,可以用电路板上的GD-link调试仿真代码,操作方法如下。

1. 在Options for Target -> Debug 中选择“CMSIS-DAP Debugger”,部分客户反馈找不到这一驱动器选项,那是因为MDK版本过低,只有Keil4.74以上的版本和Keil5才支持CMSIS-DAPDebugger选项。

wKgaombWaTSAT8eLAAA1Rr4PJhQ699.png图 5-8 GD-Link 选择 Debugger 类型

2. 在Options for Target -> Utilities,也要选择“CMSIS-DAP Debugger”。

wKgaombWaUaATVv1AAA0FevCSiI083.png图 5-9 GD-Link 在 Utilities 中选择 Debugger 类型

3. 在 Options for Target -> Debug ->Settings 勾 选 SWJ 、 Port 选 择 SW 。 右 框 IDcode 会 出现”0xXBAXXXXX”。

wKgaombWaVuAA29UAABgwU0nZVI568.png图 5-10 GD-Link 成连接目标板示意图

4. 在Options for Target -> Debug ->Settings -> Flash Download中添加GD32的flash算法。

wKgaombWaW2AQqX-AABDFT4tvpo980.png图 5-11 GD-Link 添加 Flash 算法文件示意图

5. 单击下图的快捷方式“debug”,即可使用GD-Link进行仿真。

wKgZombVGruARUzSAADbA1brSC8429.png图 5-12. GD-Link 仿真示意图

5.3 使用 J-Link 开发 GD32F330

使用J-Link来debug GD MCU,具体配置如下:

1. 在Options for Target -> Debug中选择“J-LINK/J-Trace Cortex”

wKgaombVGtKAKIgsAAAyRLAAhiw214.png图 5-13 J-Link 在 Keil 中选择 Debugger 示意图

2. 在Options for Target -> Debug ->Utilities,也要选择“J-LINK/J-Trace Cortex”。

wKgZombVGtmAXK-zAAAySjzsebk236.png图 5-14 J-Link 在 Utilities 下选择 Debugger 示意图

3. 在Options for Target -> Debug ->Settings勾选SWJ,Port选择 SW。右框IDcode会出现“0xXBAXXXXX”。

wKgZombWacWATdIaAABU3XziMBE023.png图 5-15 J-Link 成功连接目标板示意图

4. 在Options for Target -> Debug ->Settings -> Flash Download中添加GD32的flash算法。

wKgaombWaeiAM532AAA4u-hlwJw908.png图 5-16 J-Link 在 Keil 下添加 flash 算法文件示意图

5. 单击下图的快捷方式“debug”,即可使用J-Link进行仿真。

wKgZombVGruARUzSAADbA1brSC8429.png图 5-17. J-Link 成功仿真示意图

5.4 使用 IAR 开发 GD32F3x0

IAR版本众多,版本之间的兼容性并不好,如果初次使用建议安装7.3以上的版本,安装好IAR以后再根据该文档来添加GD的器件型号,进行相关的debug工作。

5.4.1. 在 IAR 中添加 GD32F3x0 MCU Device

1. 从相关网站下载相应的GD32F3x0系列插件:IAR_GD32F3x0_ADDON_2.0.0.exe:

2. 运行IAR_GD32F3x0_ADDON_2.0.0.exe,单击start开始安装插件。

wKgZombWajyAcYczAAA5iSq12qo774.png图 5-18 IAR 中安装支持 GD32 型号 pack 包示意图

3. 安装成功后单击Finish,结束插件安装。

wKgaombWalKAN80rAABAIPYC-38546.png图 5-19 IAR 下 pack 包安装示意图

5.4.2 在 IAR 中编译调试 GD32F3x0

在上一小节中我们已经添加了GD32F3x0系列的插件,这一小节我们介绍应如何使用它。

1. 使用IAR编译GD的型号,有两个办法,一种是使用现有的工程进行修改,还有就是重新建立工程,这里就不细说具体工程应该如何建立,GD的工程建立和别的平台都一致,建立工程时选择GD的相应型号。

wKgaombWamyAL2xvAABzgV6nlOs202.png图 5-20 在 IAR 下选择芯片型号示意图

2. 6.1版本以后的IAR不需要添加CMSIS文件(core_cm3.c和core_cm3.h),但是需要勾选General Options->Library Configuration的Use CMSIS,如果软件代码有使用到printf函数,还需要修改Library为FULL。

wKgaombWaoWAINgWAAByWSlgXnY870.png图 5-21 在 IAR 下添加 CMSIS 文件示意图

3. 芯片的Link文件建立工程时会默认根据型号选定,但是编译前还是要有检查的习惯,检查一下ICF文件是否有配置,是否正确。

wKgZombWapmAaPNVAABEQgtl0sc660.png图 5-22 在 IAR 下添加 ICF 文件示意图

4. 配置Debugger->Setup选项,新建立的工程默认是Simulator模拟,如果需要调试那么需要根据实际情况来选择:使用GD-Link选择CMSIS DAP(兼容性不好,不建议在IAR下使用)或使用J-Link选择J-Link/J-Trace。

wKgZombWarWAGhhlAABaQUsx5pM983.png图 5-23 在 IAR 下选择 Debugger 示意图

5. 配置Debugger->Download选项,新建的工程有可能没有配置download选项,如果我们需要调试代码那么务必要勾选User flash loader选项,且保证board file准确,否则程序无法正常下载至芯片内部。

wKgaombWau6AQd7TAABRabQA_zk860.png图 5-24 在 IAR 下配置 flash loader 示意图

6 GD32E23x_Firmware_Library_V1.1.1 移植步骤

本章将使用GD32E23x_Firmware_Library_V1.1.1固件库文件Template里的工程做示例。

1. 打开Keil工程

wKgZombWawSAD9atAABhOwBt4dw348.png图 6-1 打开工程

2. 打开工程后,Options for Target -> Device,选择对应的GD32F330型号。

wKgaombWaxGAQrJnAAD1luWqlVI964.png图 6-2 选择 GD32F330 芯片型号

3. 在Options for Target -> Debug ->Settings -> Flash Download中添加GD32F330的flash算法。

wKgaombWayKAC1hGAAA_11ff44Q391.png图 6-3 添加 GD32F330 的 flash 算法

4. 拷贝Cortex M4 内核支持文件至x:\ GD32E23x_Firmware_Library_V1.1.1\Firmware\CMSIS。

wKgZombWa1yAJP3LAAA-ZZqR4jA668.png图 6-4 添加 Cortex M4 内核文件

5. 修改“gd32e23x.h”头文件的内容。

图 6-5 修改“gd32e23x.h”头文件的内容

wKgZombWa6CAE6ESAAFJa6-Bd-M789.png

表 6-1 修改“gd32e23x.h”头文件的内容

wKgZombWa7WAN915AACLRdA1q0Y305.png

6. GD32E230不支持中断分组,所以固件库中没有void nvic_priority_group_set(uint32_tnvic_prigroup)函数,需要在固件库添加相应的内容。

表 6-2 修改“gd32e23x_misc.h”头文件的内容

wKgaombWa8aASJT1AAComsSE-sY010.png

表 6-3 修改“gd32e23x_misc.c”头文件的内容

wKgaombWa9mAaLoTAABHrc6ie6A846.png

7. GD32E230仅支持4级抢占优先级,不支持子优先级,GD32F330既支持抢占优先级也支持子优先级,需要在固件库里修改相应的内容。

表 6-4 修改“gd32e23x_misc.h”头文件的内容

wKgaombWbA-AXkizAAA24PYkAXg957.png

表 6-5 修改“gd32e23x_misc.c”头文件的内容

wKgZombWbBaAfRYoAAECRdAofy8303.png

8. GD32F330的Flash是零等待的,GD32E230系列需要配置Flash插入等待周期,因此可去掉插入等待周期的函数。

表 6-5 去掉插入等待周期的函数

wKgaombWbCiASHnjAAAoo7u7gL0870.png

9. GD32E230的Flash支持32位和64位编程,GD32F330的Flash支持32位字和半字编程。如过应用代码中使用了64位编程需要修改成32位字或半字编程,GD32E230固件库中需要添加半字编程的内容。

表 6-6 在“gd32e23x_fmc.h”中添加半字编程的内容

wKgaombWbDmAB3dmAAA-fi-X-JQ524.png

表 6-7 在“gd32e23x_fmc.c”中添加半字编程的内容

wKgZombWbEaAD7W0AACmpuoJtok617.png

7 GD32E23x 项目底层 Library 替换成 GD32F3x0 Library 步骤

本章将使用GD32E23x_Firmware_Library_V1.1.1固件库文件Template里的工程以及GD32F3x0_Firmware_Library_V2.1.2\Template做示例。

1. 复制GD32F3x0_Firmware_Library_V2.1.2\Firmware\CMSIS下的.h文件替换到GD32E23x_Firmware_Library_V1.1.1\Firmware\CMSIS文件夹下,如图7-1所示,

wKgaombWbGuAU-DfAAD4YEGzCps362.png图7-1 复制CMSIS下的.h文件

2. 复制GD32F3x0_Firmware_Library_V2.1.2\Firmware\CMSIS\GD\GD32F3x0里的Iclude和Source两个文件夹替换到GD32E23x_Firmware_Library_V1.1.1\Firmware\CMSIS\GD\GD32E23x文件夹下,如图 7-2所示

wKgaombWbIaATUhHAAEGvvBgNds036.png图7-2 复制替换CMSIS下的Include与Source文件

3. 复制GD32F3x0_Firmware_Library_V2.1.2\Firmware\GD32F3x0_standard_peripheral里的Iclude和Source两个文件夹替换到GD32E23x_Firmware_Library_V1.1.1\Firmware\GD32E23x_standard_peripheral文件夹下,如下图7-3所示

wKgaombWbKKAAYHoAAEN7N-FsQw331.png图7-3 复制替换peripheral下的文件

6. 复制GD32F3x0_Firmware_Library_V2.1.2\Template下的gd32f3x0_libopt.h(图7-4)到E230的相应文件夹路径下D:\GD32E23x_Firmware_Library_V1.1.1\Template

wKgaombWbL-AHgEqAAFnqGJkwYM285.png图7-4 复制gd32f3x0_libopt.h替换

7. 打开GD32E23x项目,会看到左侧有黄色三角标记,表示原文件已经不存在,原因是前面的文件替换步骤已经把旧文件替换掉。如图7-5(1)、7-5(2)所示:

wKgaombWbOiASR64AAEKFhC0y0Y639.png图7-5(1) 项目位置wKgaombWbPyAXhxaAASAdmb5D3U845.png图7-5(2) 黄色标记提示文件不存在,需全部移除

8. 此时只需要把黄色标记的文件全部移除,gd32e230c_eval.c为开发板配套配置,实际项目不使用,可以移植,然后再添加相应的3x0文件。如图7-6所示:

wKgZombWbiWATSmoAAM467X8qfA564.png图7-6 重新添加相应文件后

9. 将项目应用的.C文件里包含的头文件#include "gd32e23x.h"修改为#include "gd32f3x0.h",并删除#include "gd32e230c_eval.h"。然后重新选择芯片型号,以及FLASH算法,如图7-7所示:

wKgZombWbQ6ASm5JAAOSVpeXJ0A921.png图7-7(1) 上层逻辑代码头文件修改wKgaombWbkaAHSbKAAYAkK5tdFw234.png图7-7(2) 重新选择330芯片wKgaombWblSAZxanAAWFVsifa_k436.png图7-7(3) 选择芯片FLASH算法GD32F3x0 FMC 128k

10. 项目应用代码中有使用中断的配置时需要做修改。GD32E230不支持中断分组,所以移植GD32F330库之后,应用代码需要添加以下函数:

/***中断分组****/

void nvic_priority_group_set(uint32_t nvic_prigroup)

而且GD32E230仅支持4级抢占优先级,不支持子优先级,所以移植之后,优先级需要更改成以下函数:

/***中断抢占与子优先级****/

void nvic_irq_enable(uint8_t nvic_irq, uint8_t nvic_irq_pre_priority, uint8_t nvic_irq_sub_priority)

11. 如项目中使用到TIMER5定时器,由于GD32F330剪裁掉此定时器(在350系列上有保留),则相关TIMER5的代码需要更改为其它时钟, 比如GD32F3x0增加的TIMER1,或者其它未使用的定时器。

12. 编译项目,如有报错,则根据提示做修改,通常提示为项目上层应该逻辑代码的.C文件里包含的#include "gd32e23x.h"没有修改为#include "gd32f3x0.h",根据提示修改即可。至此,项目移植成功。

教程GD32 MCU方案商聚沃科技原创发布,了解更多GD32 MCU教程,关注聚沃科技官网

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6020

    文章

    44350

    浏览量

    628163
  • 嵌入式
    +关注

    关注

    5043

    文章

    18800

    浏览量

    298323
  • STM32
    +关注

    关注

    2256

    文章

    10821

    浏览量

    352375
  • 开发板
    +关注

    关注

    25

    文章

    4754

    浏览量

    96123
  • GD32
    +关注

    关注

    7

    文章

    398

    浏览量

    23962
收藏 人收藏

    评论

    相关推荐

    GD32 MCU 移植教程】1、从 GD32F10x 移植 GD32F30x

    应用程序移植新的微控制器。本应用笔记旨在帮助您快速将应用程序从 GD32F10x 系列微控制器移植
    的头像 发表于 08-30 09:52 1178次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>移植</b>教程】1、从 <b class='flag-5'>GD32F</b>10x <b class='flag-5'>移植</b><b class='flag-5'>到</b> <b class='flag-5'>GD32F</b>30x

    gd32e230 flash 模拟eeprom

    请问有没有gd32e230 flash 模拟eeprom例程。我有一个从stm32移植gd32的项目用到flash模拟eeprom但是在gd
    发表于 09-03 07:36

    分析采用GD32 MCU设计LCD显示屏背光驱动方案的实用性和应用

    其中,GD32E230系列,GD32F330系列,和GD32F303系列产品凭借高主频的内核,丰
    的头像 发表于 10-21 11:39 8245次阅读

    GD32移植STM32开发平台

    GD32移植STM32开发平台
    发表于 12-02 14:51 28次下载
    <b class='flag-5'>GD32</b><b class='flag-5'>移植</b><b class='flag-5'>到</b>STM32开发平台

    AN011 GD32F10x系列移植GD32F30x系列

    AN011 GD32F10x系列移植GD32F30x系列
    发表于 02-23 18:59 2次下载
    AN011 <b class='flag-5'>GD32F</b>10x<b class='flag-5'>系列</b><b class='flag-5'>移植</b><b class='flag-5'>到</b><b class='flag-5'>GD32F</b>30x<b class='flag-5'>系列</b>

    AN047 GD32E103&C103系列移植GD32F30x系列

    AN047 GD32E103&C103系列移植GD32F30x系列
    发表于 02-23 18:59 0次下载
    AN047 <b class='flag-5'>GD32E</b>103&C103<b class='flag-5'>系列</b><b class='flag-5'>移植</b><b class='flag-5'>到</b><b class='flag-5'>GD32F</b>30x<b class='flag-5'>系列</b>

    AN046 GD32E230系列移植GD32F3x0系列

    AN046 GD32E230系列移植GD32F3x0系列
    发表于 02-23 19:00 0次下载
    AN046 <b class='flag-5'>GD32E230</b><b class='flag-5'>系列</b><b class='flag-5'>移植</b><b class='flag-5'>到</b><b class='flag-5'>GD32F</b>3x0<b class='flag-5'>系列</b>

    AN047 GD32E103&C103移植GD32F30x

    兆易创新AN047GD32E103&C103系列移植GD32F30x系列AN047
    发表于 10-19 17:26 3次下载

    AN011 GD32F10x系列移植GD32F30x系列

    兆易创新AN011GD32F10x系列移植GD32F30x系列AN011
    发表于 10-19 17:26 3次下载

    GD32 MCU 移植教程】2、从 GD32F303 移植 GD32F503

    GD32E503 系列GD 推出的 Cortex_M33 系列产品,该系列资源上与 GD32F
    的头像 发表于 08-31 09:36 1014次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>移植</b>教程】2、从 <b class='flag-5'>GD32F</b>303 <b class='flag-5'>移植</b><b class='flag-5'>到</b> <b class='flag-5'>GD32F</b>503

    GD32 MCU 移植教程】6、从GD32F1x0和GD32F3x0移植GD32E230

    和低成本,所以在存量客户 中可能会有越来越多的客户会有从 GD32F1x0 和 GD32F3x0 移植 GD32E230
    的头像 发表于 09-04 09:38 132次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>移植</b>教程】6、从<b class='flag-5'>GD32F</b>1x0和<b class='flag-5'>GD32F</b>3x0<b class='flag-5'>移植</b><b class='flag-5'>到</b><b class='flag-5'>GD32E230</b>

    GD32 MCU 移植教程】7、从 GD32F10x 移植 GD32E103

    本应用笔记旨在帮助您快速将基于 GD32F10x 2.0 版本及以上固件库开发的应用程序从GD32F10x 系列微控制器移植
    的头像 发表于 09-05 09:40 144次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>移植</b>教程】7、从 <b class='flag-5'>GD32F</b>10x <b class='flag-5'>移植</b><b class='flag-5'>到</b> <b class='flag-5'>GD32E</b>103

    GD32 MCU 移植教程】8、从 STM32F4xx 系列移植 GD32F4xx 系

    GD32F4xx 系列 MCU 是基于 Arm® Cortex®-M4 处理器的 32 位通用微控制器,与 STM32F4xx系列
    的头像 发表于 09-06 09:40 412次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>移植</b>教程】8、从 STM32<b class='flag-5'>F</b>4xx <b class='flag-5'>系列</b><b class='flag-5'>移植</b><b class='flag-5'>到</b> <b class='flag-5'>GD32F</b>4xx 系

    GD32 MCU 移植教程】9、从 STM32F10x 系列移植 GD32F30x 系列

    GD32F30x 系列 MCU 是基于 Arm® Cortex®-M4 处理器的 32 位通用微控制器,与 STM32F10x 系列
    的头像 发表于 09-07 09:57 135次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>移植</b>教程】9、从 STM32<b class='flag-5'>F</b>10x <b class='flag-5'>系列</b><b class='flag-5'>移植</b><b class='flag-5'>到</b> <b class='flag-5'>GD32F</b>30x <b class='flag-5'>系列</b>

    GD32 MCU 移植教程】10、从STM32F030系列移植GD32E230系列

    GD32E230 对比 STM32F030 有着很好的兼容性和更高的性价比,内核和外设都有所增强。本人曾做过产品的 MCU 替换,将基于 STM32F0xx 1.5.0 固件库的应用程
    的头像 发表于 09-07 10:24 224次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>移植</b>教程】10、从STM32<b class='flag-5'>F</b>030<b class='flag-5'>系列</b><b class='flag-5'>移植</b><b class='flag-5'>到</b><b class='flag-5'>GD32E230</b><b class='flag-5'>系列</b>