求助,GD32F103的库和STM32的函数名称不兼容问题

[复制链接]
1883|19
 楼主| ian11122840 发表于 2022-5-9 17:50 | 显示全部楼层 |阅读模式
手上一个比较成熟的产品,需要由STM32换成GD32,硬件没问题,但是软件搭建项目时候,他们的库函数调用格式不兼容, 111.png

比如GPIO,STM32是用的结构体,GPIO_Init(GPIOB, &GPIO_InitStructure);
但是gd的库全是小写的函数void gpio_init(uint32_t gpio_periph, uint32_t mode, uint32_t speed, uint32_t pin)

同样串口、pwm也有这个问题,大家是如何解决的呢?重定义重新写所有用户代码还是有更好的解决办法?有没有写好了的转换函数呢~~~谢谢大家
zeshoufx 发表于 2022-5-9 19:33 | 显示全部楼层
底层驱动和应用分开,,只需要驱动改一下,,,应用不变,,,驱动也简单,花不了多久,,,
fuqinyyy 发表于 2022-5-9 19:34 来自手机 | 显示全部楼层
本身就不兼容啊
Prry 发表于 2022-5-9 23:38 | 显示全部楼层
一般封一层bsp,对接底层库,更换芯片只需修改bsp层
gxs64 发表于 2022-5-10 12:07 | 显示全部楼层
先用stm32调好,然后bin直接到gd32就可以了
gdszzyq 发表于 2022-5-10 13:00 | 显示全部楼层
别说函数不兼容,也不可能做成一样,连定时器、串口、ADC的编号都是不一样的,ST是从1开始的,GD是从0开始的,真要换还是要花点时间一个一个的换,反正GD的库就是来坑人的,寄存器地址宏定义各种绕,就不能象ST那样直接定义基地址,非要搞成算来算去,和你捉迷藏一样。
gdszzyq 发表于 2022-5-10 13:02 | 显示全部楼层
直接用原ST的代码下进去也行,有没有隐患就不清楚了,反正我是不敢用GD的,带多路电机就有问题,一直找不到原因。
study1234 发表于 2022-5-12 11:04 | 显示全部楼层
不兼容才是正常的
历史原因,开始是可以用ST的库兼容,

后来GD自己的库,ST有了HAL和LL,外部驱动,不再兼容
早期GD引脚定义与ST一致,后来也不再一致,西方文化从1开始,东方有零,
因为有旧版的数据手册,看USART1-5,库里面是USART0-4,怎么对不上?新的手册才对上,其余外设编号可类推
库函数GPIO这种是简单的不一致,把大写改为小写,像CAN一些定义名称都改了

说白了,GD把ST的库移植一遍到GD的库,应用的时候,用户差不多同样的再次移植一遍
里面的关键还是版权问题

study1234 发表于 2022-5-12 11:06 | 显示全部楼层
没办法,ST买不起,GD还算买得起,现在也在做移植
阿秦123 发表于 2022-5-16 14:56 | 显示全部楼层
study1234 发表于 2022-5-12 11:04
不兼容才是正常的
历史原因,开始是可以用ST的库兼容,

好难,同样也是移植,但代码是前辈用ST的寄存器开发的
tpgf 发表于 2022-6-6 16:13 | 显示全部楼层
自己做一下修改吧
keaibukelian 发表于 2022-6-6 16:32 | 显示全部楼层
那么移植的时候怎么做呢
renzheshengui 发表于 2022-6-6 16:42 | 显示全部楼层
请问如何修改驱动呢
labasi 发表于 2022-6-6 16:52 | 显示全部楼层
这个是不是就是移植的工作了呢
paotangsan 发表于 2022-6-6 17:22 | 显示全部楼层
这是改改名字的小问题吗
wakayi 发表于 2022-6-6 17:52 | 显示全部楼层
是底层好改还是上层好改呢
chenjun89 发表于 2022-6-6 19:08 来自手机 | 显示全部楼层
本身就不是完全兼容的
caoenq 发表于 2022-6-7 08:42 | 显示全部楼层
gxs64 发表于 2022-5-10 12:07
先用stm32调好,然后bin直接到gd32就可以了

真的可以么?还能这样操作?
gxs64 发表于 2022-6-7 16:24 | 显示全部楼层
本帖最后由 gxs64 于 2022-6-7 16:26 编辑
caoenq 发表于 2022-6-7 08:42
真的可以么?还能这样操作?

我就这样干的,当然必须是对应的芯片。stm32f103vc--->gd32f103vc  HCF4A0PGTB  at32f403avct7
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

25

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部