搜索

GD32F303 SPI 通信问题

[复制链接]
121|2
 楼主 | 2021-1-29 17:47 | 显示全部楼层 |阅读模式
本帖最后由 yeku 于 2021-1-29 17:50 编辑

两个平台, ST 和 GD 平台, ST平台的通信完全没有问题,而GD平台偶然性会出现通信失败, 失败时MISO波形如下:

C:\Users\qizhang\Desktop\index.png index.png

硬件应该没有问题, 是从外设到MCU直接连接的,没有并联电容或者电阻。
初始化配置如下:
6366013da2d77a51.png

MISO的配置,配置为IN_FLOATING时,问题更经常发生, 而配置为上拉,问题发生的概率降低了很多,但还是不能完全解决。
请问有遇到类似情况的吗?原因是什么?


使用特权

评论回复
| 2021-2-9 17:09 | 显示全部楼层
/* SPI0 clock enable */
                rcu_periph_clock_enable(RCU_SPI0);

                /* SPI0 GPIO config */
                gpio_af_set(GPIOB, GPIO_AF_5, GPIO_PIN_5);
                gpio_mode_set(GPIOB, GPIO_MODE_AF, GPIO_PUPD_NONE, GPIO_PIN_5);
                gpio_output_options_set(GPIOB, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_5);

                gpio_af_set(GPIOA, GPIO_AF_5, GPIO_PIN_5 | GPIO_PIN_6);
                gpio_mode_set(GPIOA, GPIO_MODE_AF, GPIO_PUPD_NONE, GPIO_PIN_5 | GPIO_PIN_6);
                gpio_output_options_set(GPIOA, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_5 | GPIO_PIN_6);

使用特权

评论回复
| 2021-2-11 10:08 | 显示全部楼层
居然可以抓到通信失败时刻得波形,帅, 这种抖动如果不是空间辐射干扰,可以降低SPI主频一半试试?保险起见,可以串联1个小电阻 做阻抗匹配  

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 我要提问 投诉建议 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

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