GD32F303 SPI 通信问题

[复制链接]
1579|3
 楼主| yeku 发表于 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时,问题更经常发生, 而配置为上拉,问题发生的概率降低了很多,但还是不能完全解决。
请问有遇到类似情况的吗?原因是什么?


93162555 发表于 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);
lvben5d 发表于 2021-2-11 10:08 | 显示全部楼层
居然可以抓到通信失败时刻得波形,帅, 这种抖动如果不是空间辐射干扰,可以降低SPI主频一半试试?保险起见,可以串联1个小电阻 做阻抗匹配  
1035178231 发表于 2021-4-26 11:14 | 显示全部楼层
这波形抓的太帅了,楼主大大,找到解决办法了吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

3

帖子

0

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