关于GD32f103C8T6使用SPI1

[复制链接]
3178|13
 楼主| chua052 发表于 2020-3-9 13:55 | 显示全部楼层 |阅读模式
在赵易创新官网查看了gd32f103c8t6的用户手册,上面明确写了SPI1是在APB1时钟总线上的(stm32的SPI1是在APB2时钟总线上),但是看了gd的库函数确发现它的使能SPI1是在APB2上,这是怎么回事?GD32F103C8T6的SPI1到底是在APB1上还是APB2上呢?我试了一下好像都不太对,有人知道吗,望指教!
 楼主| chua052 发表于 2020-3-9 13:59 | 显示全部楼层
由于我还是新人,发不了链接,GD32f103C8T6的用户手册,请搜 ”兆易创新“  官网的“资料下载”里面有https://bbs.21ic.com/forum.php?mod=attachment&aid=MTQwMjk1NHw5YmM1ZWI3NHwxNzYxMTA0NTQ0fDB8://1402954.png
gd用户手册.png
gd库函数.png
 楼主| chua052 发表于 2020-3-9 14:00 | 显示全部楼层
chua052 发表于 2020-3-9 13:59
由于我还是新人,发不了链接,GD32f103C8T6的用户手册,请搜 ”兆易创新“  官网的“资料下载”里面有attac ...

在APB1的时钟使能里并没有找到SPI1,但是用户手册确说SPI1是在APB1总线上
sonicll 发表于 2020-3-9 14:30 | 显示全部楼层
首先你需要了解一个命名规则,ST的外设编号是从1开始,而GD的外设编号是从0开始,GD的SPI0对应ST的SPI1,GD的SPI1对应ST的SPI2。GD的SPI1和ST的SPI2,都在APB1上,你截图里的GD库文件,应该是很早的版本了,建议使用最新的版本GD32F10x_Firmware_Library_V2.1.2

评论

原来是这样,刚刚看到那个SPI0就猜测可能是spi0对应spi1,明白了,多谢!我下载的那份GD32F10x_Firmware_Library_V2.1.2里没有RCC.C文件,所以就看了v1.0的,乌龙  发表于 2020-3-9 15:26
lvben5d 发表于 2020-3-9 16:43 | 显示全部楼层
GD的外设是从  下标0开始标记的,  STM32的下标是从1开始标记的。 这个要注意哈。 GD之前的PDF有疏漏,以最新的为准(修改回来了)。

评论

好的,多谢回复  发表于 2020-3-15 11:34
余三水 发表于 2020-3-27 20:29 | 显示全部楼层
lvben5d 发表于 2020-3-9 16:43
GD的外设是从  下标0开始标记的,  STM32的下标是从1开始标记的。 这个要注意哈。 GD之前的PDF有疏漏,以最 ...

学习了,原来还有这样的区别。我记得ST的串口那些,都是从下标0开始的呀,怎么spi是从1开始的呢?
明明很讨厌 发表于 2020-4-9 10:08 | 显示全部楼层
重新下载资料吧,http://www.gd32mcu.com/cn/download
classroom 发表于 2025-2-28 11:07 | 显示全部楼层
可能是时钟配置不正确
laocuo1142 发表于 2025-2-28 11:07 | 显示全部楼层
检查SPI1的MOSI、MISO、SCK等引脚是否已经正确配置为SPI功能
flycamelaaa 发表于 2025-2-28 11:07 | 显示全部楼层
可能是SPI1的初始化代码有误
powerantone 发表于 2025-2-28 11:07 | 显示全部楼层
检查是否有其他硬件连接问题或软件bug导致SPI1无法正常工作。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

5

帖子

0

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