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

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

    关注

    49

    文章

    8890

    浏览量

    165890
  • 单片机
    +关注

    关注

    6078

    文章

    45594

    浏览量

    674043
  • STM32
    +关注

    关注

    2313

    文章

    11195

    浏览量

    374764
  • GD32
    +关注

    关注

    7

    文章

    434

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    兆易创新GD32 MCU如何续写嵌入式创新之路

    自2013年发布国内首颗Cortex-M3内核32位MCU以来,GD32 MCU历经十余年发展,截至2025年底累计出货量已突破25亿颗,依托完整的产品矩阵、日益完善的开发生态、聚焦场景的垂直解决方案以及稳定可靠的供应链布局,逐步从国产MCU的开拓者成长为全球通用微控制器市场的重要推动者。
    的头像 发表于 02-24 09:39 1153次阅读
    兆易创新<b class='flag-5'>GD32</b> MCU如何续写嵌入式创新之路

    兆易创新正式推出GD32 Embedded AI平台

    端侧AI已成为嵌入式产业智能化升级的核心引擎,开发者对高效部署、轻量化适配的需求日益迫切。近日,兆易创新正式推出GD32 Embedded AI平台,为GD32 MCU产品家族注入AI算力,赋能工业检测、智能家居、安防设备及消费电子等多场景落地。
    的头像 发表于 01-24 09:19 2074次阅读
    兆易创新正式推出<b class='flag-5'>GD32</b> Embedded AI平台

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

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

    请问I2S_MCK是否引出?

    有个项目想用你们的GD32芯片,需要用到I2S的MCK信号,看到你的文档里有提及有引出,但未看到最终引到了哪个脚。
    发表于 11-07 06:56

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

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

    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

    使用ENV工具scons —dist打包GD32F470的BSP一直报错,是什么原因导致?

    最近使用ENV工具scons —dist打包GD32F470的BSP一直出现下面的错误,不知道是什么原因;STM32的BSP,scons —dist打包正常的。 $ scons --dist
    发表于 09-09 06:07

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

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

    使用ICP编程工具进行离线编程设置时,启用“使用密码”有什么区别

    使用ICP编程工具进行离线编程设置时,启用“使用密码”有什么区别
    发表于 08-19 06:04

    STM32F103c8上做DLQR最优控制算法的C编程资料

    这是我近期做的一个项目--基于STM32F103c8的DLQR控制算法的C编程,涉及DLQR最优控制算法、嵌入式STM32F103编程、CMSIS-DSP库使用。    附有完整的程序
    发表于 07-23 15:30 0次下载

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

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

    STM32F40xxx和STM32f41xx flash编程手册

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