GD32w515 qspi 配置错误 新手求帮助!

[复制链接]
 楼主| lyh2号 发表于 2024-5-21 15:49 | 显示全部楼层 |阅读模式
使用引脚  PA9,PA10,PA11,PA12,PB3,PB4
我在读取 芯片id 时 读取的是88,  
我查看 芯片手册 应该是引脚复用 为GPIO_AF_3 和GPIO_AF_4 ,但是还是不对,示波器打出来的波形很奇怪,
新手求帮助!
配置代码如下:
        rcu_periph_clock_enable(RCU_GPIOA);
           rcu_periph_clock_enable(RCU_GPIOB);
        rcu_periph_clock_enable(RCU_GPIOC);
       
    gpio_af_set(GPIOA, GPIO_AF_3, GPIO_PIN_9 | GPIO_PIN_10 | GPIO_PIN_11 | GPIO_PIN_12);
    gpio_mode_set(GPIOA, GPIO_MODE_AF, GPIO_PUPD_NONE, GPIO_PIN_9 | GPIO_PIN_10 | GPIO_PIN_11 | GPIO_PIN_12);
    gpio_output_options_set(GPIOA, GPIO_OTYPE_PP, GPIO_OSPEED_166MHZ, GPIO_PIN_9 | GPIO_PIN_10 | GPIO_PIN_11 | GPIO_PIN_12);

    gpio_af_set(GPIOB, GPIO_AF_4, GPIO_PIN_3 | GPIO_PIN_4);
    gpio_mode_set(GPIOB, GPIO_MODE_AF, GPIO_PUPD_NONE, GPIO_PIN_3 | GPIO_PIN_4);
    gpio_output_options_set(GPIOB, GPIO_OTYPE_PP, GPIO_OSPEED_166MHZ, GPIO_PIN_3 | GPIO_PIN_4);


qspi_init_struct Init;

    // rcu_periph_clock_enable(RCU_GTZC);
    // tzgpc_tzspc_peripheral_attributes_config(TZGPC_PERIPH_QSPI_FLASHREG, TZGPC_TZSPC_PERIPH_SEC);

    qspi_flash_gpio_config();

    // qspi_deinit();
    rcu_periph_clock_enable(RCU_QSPI);

    Init.prescaler              = 1;  /* QSPI clock = AHBCLK/(ClockPrescaler+1) */
    Init.fifo_threshold         = 10;
    Init.sample_shift           = QSPI_SAMPLE_SHIFTING_NONE;  // QSPI_SAMPLE_SHIFTING_NONE;
    Init.flash_size             = 22;  /* 2^(FlashSize+1) ***** number of address bits = FlashSize + 1*/
    Init.cs_high_time           = QSPI_CS_HIGH_TIME_1_CYCLE;
    Init.clock_mode             = QSPI_CLOCK_MODE_0;
    qspi_init(&Init);



 楼主| lyh2号 发表于 2024-5-23 08:55 | 显示全部楼层
可有偿
probedog 发表于 2024-5-23 11:35 | 显示全部楼层
检查引脚配置
laocuo1142 发表于 2024-5-23 13:00 | 显示全部楼层
检查QSPI配置是否正确
flycamelaaa 发表于 2024-5-23 15:00 | 显示全部楼层
检查固件有没有错误或遗漏
powerantone 发表于 2024-5-23 16:23 | 显示全部楼层
参考示例代码
t1ngus4 发表于 2024-6-5 13:27 | 显示全部楼层
你可以使用官方的例程代码,进行配置试试
d1ng2x 发表于 2024-6-5 14:32 | 显示全部楼层
话说,GD的QSPI是不是和SPI差不多啊?
q1ngt12 发表于 2024-6-5 15:42 | 显示全部楼层
你试试ST的呢?听说GD和ST的代码好像也比较兼容
su1yirg 发表于 2024-6-5 16:48 | 显示全部楼层
您已经使用了gpio_af_set函数将引脚设置为QSPI的复用功能,但是需要确保这些引脚的复用功能确实是QSPI所需的复用功能。您提到芯片手册中指定了GPIO_AF_3 和GPIO_AF_4,需要确保这些复用功能是正确的
tax2r6c 发表于 2024-6-5 20:14 | 显示全部楼层
在初始化QSPI时,需要设置正确的时钟模式、时钟极性、时钟相位等参数,以确保与外部设备的通信时序匹配
kaif2n9j 发表于 2024-6-5 21:17 | 显示全部楼层
确保外部QSPI设备的连接正确,包括时钟、数据线、片选线等连接
lamanius 发表于 2024-6-6 08:33 | 显示全部楼层
根据您提到的示波器波形很奇怪,建议您仔细分析示波器的波形,查看时钟、数据线等信号的波形,以确定是否存在时序或连接问题
y1n9an 发表于 2024-6-6 09:05 | 显示全部楼层
建议您参考芯片手册和QSPI外设的相关文档,仔细检查引脚复用设置、时序参数设置和外部设备连接,以确保QSPI外设的配置和工作是正确的
l1uyn9b 发表于 2024-6-6 11:09 | 显示全部楼层
您可以尝试在STM32社区或者相关技术论坛上寻求帮助,以获取更专业的支持和建议
zhizia4f 发表于 2024-6-6 12:20 | 显示全部楼层
官方的例程试试吧,也许会有出奇的效果

FranklinUNK 发表于 2024-6-20 19:32 | 显示全部楼层
是不是引脚模式配置有问题啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

3

帖子

0

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

1

主题

3

帖子

0

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