Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
QSPI
recv
STM32H743 QSPI初始化成功,读数据失败 ,请大神给看看!
发布于 2024-03-15 17:18:59 浏览:591
订阅该版
在实验野火开发部STM32H743时,配置了QSPI驱动W25Q256JV,初始化成功,但后续都失败了,如图1 ![QQ截图20240315164754.png](https://oss-club.rt-thread.org/uploads/20240315/aa250a5f82321e960e0f1efe67ba90a9.png) 我的配置过程如下, 1、使用了CubMX,如下图 ![CubMX配置1.png](https://oss-club.rt-thread.org/uploads/20240315/83174e0ce8ff1c14f99334293c3aa4a4.png) ![配置2.png](https://oss-club.rt-thread.org/uploads/20240315/59633dde7377b21e550bdaba822316e0.png) 2、CubMX生成了代码 3、Kconfig配置如下图 ![配置3.png](https://oss-club.rt-thread.org/uploads/20240315/0c2a29ff3d7d853aa907a605f93a1985.png) ![配置4.png](https://oss-club.rt-thread.org/uploads/20240315/5608be05e8cf98dba5b16c576aed305c.png) 5、测试代码如下 ```c /* * Copyright (c) 2006-2022, RT-Thread Development Team * * SPDX-License-Identifier: Apache-2.0 * * Change Logs: * Date Author Notes * 2018-11-27 zylx first version * 2022-03-16 Miaowulue add dfs mount */ #include
#include
#include
#include
#include
#include
#include
#ifdef BSP_USING_QSPI_FLASH #include "spi_flash.h" #include "spi_flash_sfud.h" char w25qxx_read_status_register2(struct rt_qspi_device *device) { /* 0x35 read status register2 */ char instruction = 0x35, status; rt_qspi_send_then_recv(device, &instruction, 1, &status, 1); return status; } void w25qxx_write_enable(struct rt_qspi_device *device) { /* 0x06 write enable */ char instruction = 0x06; rt_qspi_send(device, &instruction, 1); } void w25qxx_enter_qspi_mode(struct rt_qspi_device *device) { char status = 0; /* 0x38 enter qspi mode */ char instruction = 0x38; char write_status2_buf[2] = {0}; /* 0x31 write status register2 */ write_status2_buf[0] = 0x31; status = w25qxx_read_status_register2(device); if (!(status & 0x02)) { status |= 1 << 1; w25qxx_write_enable(device); write_status2_buf[1] = status; rt_qspi_send(device, &write_status2_buf, 2); rt_qspi_send(device, &instruction, 1); rt_kprintf("flash already enter qspi mode\n"); rt_thread_mdelay(10); } } static int rt_hw_qspi_flash_with_sfud_init(void) { struct rt_qspi_device *qspi_dev_w25q; stm32_qspi_bus_attach_device("qspi1", "qspi10", RT_NULL, 4, w25qxx_enter_qspi_mode, RT_NULL); qspi_dev_w25q = (struct rt_qspi_device *)rt_device_find("qspi10"); if (qspi_dev_w25q == RT_NULL) { LOG_E("qspi_dev_w25q rt_device_find failed...\n"); return -EINVAL; } else if(qspi_dev_w25q != RT_NULL) { LOG_D("qspi_dev_w25q rt_device_find OK...\n"); rt_thread_mdelay(1); } /* init W25Q256 */ if (RT_NULL == rt_sfud_flash_probe("W25Q256", "qspi10")) { return -RT_ERROR; } return RT_EOK; } INIT_DEVICE_EXPORT(rt_hw_qspi_flash_with_sfud_init); static int mnt_qspi_flash_init(void) { if (dfs_mount("W25Q256", "/", "elm", 0, 0) == RT_EOK) { rt_kprintf("Mount spi flash successfully!\n"); return RT_EOK; } else { rt_kprintf("Mount spi flash fail!\n"); return -RT_ERROR; } } INIT_APP_EXPORT(mnt_qspi_flash_init); #endif/* BSP_USING_QSPI_FLASH */ ``` 6、编译没有问题,下载运行后就是如图的结果了 主要提示,QSPI recv data failed 不知道哪里出错了,请大神给看看!!!
查看更多
3
个回答
默认排序
按发布时间排序
诸葛孔亮
2024-03-15
这家伙很懒,什么也没写!
《挂载W25Q256JV外部QSPI接口Flash失败!》这个帖子和我的问题一模一样,但是按他这种方法处理了,还是不行[https://club.rt-thread.org/ask/question/13b5e20fa263814e.html](https://club.rt-thread.org/ask/question/13b5e20fa263814e.html)
yangbo18416
2024-07-30
这家伙很懒,什么也没写!
您好,初始化成功了么
07lhluo
2024-09-26
这家伙很懒,什么也没写!
请问你的问题现在搞定了没?
撰写答案
登录
注册新账号
关注者
0
被浏览
591
关于作者
诸葛孔亮
这家伙很懒,什么也没写!
提问
1
回答
7
被采纳
0
关注TA
发私信
相关问题
1
stm32外接QSPI-Flash运行程序,还能用FAL进行分区,读,写操作吗?
2
使用sfud擦除w25q64部分区域失败
3
qspi flash部分sector擦除问题
4
超出ROM范围,怎么使用外部CODE FLASH
5
关于H743的bootloader的问题
6
STM32H750下载代码至QSPI FLASH后初始化失败
7
QSPI FLASH W25Q64,在进入映射模式后,如何退出?
8
使用sf bench yes 后 读qspi的flash出错
9
STM32H7使用QSPI的DMA时drv_qspi.c报错
10
w25q256jv 写使能失败,qspi模式下
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
使用百度AI助手辅助编写一个rt-thread下的ONVIF设备发现功能的功能代码
2
RT-Thread 发布 EtherKit开源以太网硬件!
3
rt-thread使用cherryusb实现虚拟串口
4
《C++20 图形界面程序:速度与渲染效率的双重优化秘籍》
5
《原子操作:程序世界里的“最小魔法单位”解析》
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
WIZnet_W5500
ota在线升级
UART
PWM
cubemx
freemodbus
flash
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
Debug
编译报错
msh
SFUD
keil_MDK
rt_mq_消息队列_msg_queue
at_device
ulog
C++_cpp
本月问答贡献
踩姑娘的小蘑菇
7
个答案
3
次被采纳
张世争
8
个答案
2
次被采纳
rv666
5
个答案
2
次被采纳
用户名由3_15位
11
个答案
1
次被采纳
KunYi
6
个答案
1
次被采纳
本月文章贡献
程序员阿伟
5
篇文章
2
次点赞
hhart
3
篇文章
4
次点赞
大龄码农
1
篇文章
2
次点赞
ThinkCode
1
篇文章
1
次点赞
Betrayer
1
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部