嵌入式技术论坛
直播中

百灵千岛酱

9年用户 528经验值
擅长:处理器/DSP
私信 关注
[问答]

怎么解决RT_Thread添加SFUD驱动W25QXX的问题呢?

1.jpg
使用RT_Thread Studio添加SFUD组件驱动WQ2564后,只有第一次下载可以探成功,后续断电再运行都是失败,而且测试写,显示成功,但是读取的和写入的不一致。
板子是F103RCT6
W25Q64工作在标准模式,也就是SPI模式,不是QSPI哦。


回帖(7)

马占云

2023-5-12 16:55:08
每次都是下载后第一次可以正常,后续再断电就不行了么?好奇怪
话说你的CS管脚没用错吧,我看你代码里注释是PC4,实际用的是PA4?
另外,在挂载SPI设备之前,把CS管脚的时钟先使能一下试试。
1.jpg
举报

qjqb

2023-5-12 16:55:17
试试在初始化spi的gpio时速度使用very high
举报

百灵千岛酱

2023-5-12 16:55:24
感谢大佬。GPIO初始化时RTT内部完成的,我们不需要操作。不过我还是去试试。
举报

百灵千岛酱

2023-5-12 16:55:31
我看了看,初始化时候就是GPIO_SPEED_FREQ_HIGH,没有关系。
举报

qjqb

2023-5-12 16:55:37
须改成very high
举报

百灵千岛酱

2023-5-12 16:55:45
你说的是F4我用的是F1,没有VeryHigh,只有F4系列有VeryHigh
举报

qjqb

2023-5-12 16:55:52
此行之前必须先使能CS口时钟,否则CS引脚可能初始化失败。因为rt_hw_spi_device_attach中先对CS引脚做初始化,然后才对SPI做初始化,所以SPI初始化时使能时钟,对CS初始化没作用。
1.jpg
举报

更多回帖

发帖
×
20
完善资料,
赚取积分