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

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

3天内不再提示

gd32和stm32的编程区别

工程师邓生 来源:未知 作者:刘芹 2023-08-16 11:32 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

gd32stm32编程区别

GD32和STM32是目前市场上比较流行的两种芯片,它们都具有高性能、低功耗和丰富的外设等特点,因此得到了广泛的应用。但是,GD32和STM32在编程上还是存在差异的,本文将就此进行详细地解析。

一、GD32和STM32的概述

GD32和STM32是龙芯(RISC-V)和意法半导体(ARM Cortex-M)两家公司推出的芯片,由于两家公司的巨大影响力,它们在市场上一直处于领先位置。GD32是龙芯推出的32位微控制器,基于RISC-V架构,主要应用于智能家居物联网工业控制等领域;STM32是意法半导体推出的32位微控制器,基于ARM Cortex-M架构,主要应用于汽车、医疗、电力等领域。

二、GD32和STM32的编程区别

1. 开发环境

GD32和STM32的开发环境主要分为两种:Keil和GCC,这两种开发环境对于GD32和STM32都是通用的,但是在具体的编译工具链的选择上有所不同。对于Keil开发环境来说,在编译器的选择上STMCubeIDE是只能用于STM32的,而GCC则没有这个限制,可以用于GD32和STM32。此外,在驱动和库的选择上也有所不同。

2. 命名空间

在代码的编写上,GD32和STM32的命名空间略有不同。例如,在使用时钟控制器的API时,在STM32中是通过RCC来访问,而在GD32中则是通过rcu根据不同的模块来访问。这种命名空间的不同性实际上是由于不同的芯片结构造成的。

3. 输出方式

GD32和STM32在输出方式上也有所不同。在STM32中,输出方式主要有串口、JTAG、SWD和USB等;而在GD32中,则多数通过串口输出程序信息。此外,两者在调试时,也有不同的方法,例如在STM32中,调试信息是通过SWD方式传输到PC上;而在GD32中则是通过串口直接输出的。

4. 外设驱动

GD32和STM32的外设驱动也有所不同,在使用外设时需要注意。比如,在使用GPIO时,GD32需要指定端口的引脚数量和具体使用的引脚,而STM32则只需要指定端口一个参数。

5. 中断处理

在中断处理上,GD32和STM32也有所不同。GD32中的中断处理快速跳转准备工作需要通过指令进行,而STM32中的中断处理则是通过NVIC进行的。在使用时需要注意不同的编写方式和调用函数。

6. ADC/DAC

ADC/DAC的驱动上,GD32和STM32也有所不同。在GD32中,ADC和DAC是分别独立的,需要对不同的模块进行初始化,而STM32中,则是通过一个通道来进行控制。

7. 其他

GD32和STM32在其他方面的差异还有很多,在具体的使用过程中需要根据具体的需求进行操作。

三、总结

虽然GD32和STM32在硬件上都拥有32位架构和丰富的外设,但是在具体的编程上却发现有许多的差异。这需要程序员针对具体的需求,选择合适的开发环境和合适的编写方式,以达到最好的效果。在今后的应用中,这两种芯片或许还会有更多不同的地方,我们需要不断的学习和探索,以适应市场对于硬件的不断升级和迭代的要求。

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

    关注

    48

    文章

    8249

    浏览量

    162260
  • 单片机
    +关注

    关注

    6074

    文章

    45333

    浏览量

    663290
  • STM32
    +关注

    关注

    2305

    文章

    11120

    浏览量

    371046
  • GD32
    +关注

    关注

    7

    文章

    429

    浏览量

    26926
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    gd32vf103r-start和gd32vf103c-start区别是什么?

    gd32vf103r-start和gd32vf103c-start区别,我将c-start板的led代码下进r-start板里,led没有亮,这是什么原因。我是直接操作IO口,因此和led口的宏定义应该无关。
    发表于 11-11 06:49

    兆易创新GD32 MCU家族高性能产品再添新锐:GD32F503/505系列芯片实力亮相

    GD32 MCU高性能产品线再添新锐。该系列基于Arm®v8-M架构,主频高达280MHz,具备灵活的存储配置、高集成度、内置多种安全功能,为高性能计算提供坚实基础,可广泛应用于数字电源、工业自动化、电机
    的头像 发表于 11-05 09:24 253次阅读

    gd32 env配置报错是什么原因呢?

    rtt官网下载源码和env后使用env配置gd32报如下错误请问是什么原因呢?
    发表于 09-25 06:19

    GD32的串口DMA收发数据失败怎么解决?

    gd32_hw_usart_init()函数中并未注册DMA收发的方式, GD32该函数如下: 而STM32的该函数如下: 查找GD32的串口操作库中相关的一些DMA操作也缺失,不
    发表于 09-17 06:04

    rt_thread studio import gd32h759i_start 失败的原因?

    使用rt_thread studio导入git 下载的bsp失败了,导入目录是 bsp/gd32/gd32h759i-start
    发表于 09-15 07:07

    rt-thread studio中创建不了gd32项目是怎么回事?

    为什么在rt-thread studio中创建一个gd32项目时候,他打开的那个选型芯片型号是,安装好了,没有确认键啊,只有退出sdk管理器,然后就卡在那里了,创建不了gd32的项目
    发表于 09-15 06:56

    基于兆易创新GD32系列MCU的GUI智能屏显解决方案

    随着人机交互需求的不断提升,图形用户界面(GUI)已成为各类智能设备的核心组成部分。兆易创新GD32系列MCU凭借其丰富的外设接口和强大的处理能力,为用户们提供了全面的GUI屏显解决方案,从低功耗小型显示屏到高分辨率彩色触摸屏,都能找到匹配的硬件平台和软件框架。
    的头像 发表于 08-19 14:49 1317次阅读
    基于兆易创新<b class='flag-5'>GD32</b>系列MCU的GUI智能屏显解决方案

    STM32F3系列、STM32F4系列、STM32L4系列和STM32L4+系列Cortex-M4编程手册

    电子发烧友网站提供《STM32F3系列、STM32F4系列、STM32L4系列和STM32L4+系列Cortex-M4编程手册.pdf》资料
    发表于 06-06 17:06 9次下载

    STM32F40xxx和STM32f41xx flash编程手册

    PM0081_STM32F40xxx and STM32F41xxx单片机编程手册
    发表于 06-06 17:02 4次下载

    兆易创新GD32 MCU闪耀2025慕尼黑上海电子展

    GD32 MCU以高性能与创新生态闪耀2025慕尼黑上海电子展,从工业,数字能源到汽车,物联网,以"芯"驱动数字化转型,让我们一起回顾下慕展上GD32 MCU强大产品矩阵和创新解决方案吧。
    的头像 发表于 04-22 14:08 1859次阅读
    兆易创新<b class='flag-5'>GD32</b> MCU闪耀2025慕尼黑上海电子展

    Keil当下有集成AI技术的规划吗

    有没有集成AI工具,可以快速编程,提升开发效率的,常用的MCU有STM32GD32
    发表于 04-06 14:38

    GD32STM32有什么区别

    电子发烧友网站提供《GD32STM32有什么区别.docx》资料免费下载
    发表于 04-03 17:27 0次下载

    GD32单片机GPIO结构及注意事项

    电子发烧友网站提供《GD32单片机GPIO结构及注意事项.pdf》资料免费下载
    发表于 02-07 17:27 3次下载
    <b class='flag-5'>GD32</b>单片机GPIO结构及注意事项

    AN095 提高GD32温度传感器使用精度的方法

    电子发烧友网站提供《AN095 提高GD32温度传感器使用精度的方法.pdf》资料免费下载
    发表于 01-17 16:14 1次下载
    AN095 提高<b class='flag-5'>GD32</b>温度传感器使用精度的方法

    #新年新气象,大家新年快乐!#emWin应用开发——基于GD32

    emWin 是一个高效的嵌入式图形用户界面(GUI)库,广泛应用于各种嵌入式系统中。GD32 是一系列由 GigaDevice 公司推出的高性能、低功耗的 ARM Cortex-M 微控制器。将
    发表于 01-14 16:34