Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
Filesystem
关于STM32F407ZG 使用W25Q128B文件系统问题
发布于 2017-12-29 10:35:53 浏览:8219
订阅该版
说明:使用原子STM32F407开发板,基于STM32F407 HAL工程开发,在提问题时顺道到使用menuconfig及相关步骤和大家分享一下,高手指正,没用过的借鉴 1. 工程配置 a. 起动env工具的console.bat,进入工程目录cd E:\STM32 t-thread\bsp\stm32f4xx-HAL,输入menuconfig进步配置界面 b.配置界面修改项: 主界面起用UART1,SPI1 (75)W25QXX CS Pin index (对应PB14) (spi1)W25QXX Spi bus name kernel->kernel Device Object->uart2 改为 uart1 Componets->Device virtual file system起用 Componets->Device virtual file system->elm-chan fafs->xxxxxxxx_Module-> (4096)Maximum sector size.......... Device type (STM32F407ZG) SAVE Exit 2. 生成MDK工程 命令行进去工程目录:scons --target=mdk5 -s 3.MDK IDE工具配置 打开MDK工程,默认芯片为401,修改芯片为对应型号 4.代码修改 修改Drivers下的drv_spi.c if(spiHandle->Instance==SPI1) { /* SPI1 clock enable */ __HAL_RCC_SPI1_CLK_ENABLE(); __HAL_RCC_GPIOB_CLK_ENABLE(); /**SPI1 GPIO Configuration PB3 ------> SPI1_SCK PB4 ------> SPI1_MISO PB5 ------> SPI1_MOSI */ GPIO_InitStruct.Pin = GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; GPIO_InitStruct.Alternate = GPIO_AF5_SPI1; HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); } HAL_GPIO_DeInit(GPIOB, GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5); 5. 编译下载 当前问题: \ | / - RT - Thread Operating System / | \ 3.0.1 build Dec 29 2017 2006 - 2017 Copyright by rt-thread team W25Q128BV detection msh />mkfs -t elm flash0 \ | / - RT - Thread Operating System / | \ 3.0.1 build Dec 29 2017 2006 - 2017 Copyright by rt-thread team W25Q128BV detection msh />mkfs -t elm flash0 psr: 0x01000000 pc: 0x08016fbc lr: 0x0800c49b r12: 0x0000000a r03: 0x200035d7 r02: 0x00000000 r01: 0x00000000 r00: 0x00000011 hard fault on thread: tshell thread pri status sp stack size max used left tick error ------ --- ------- ---------- ---------- ------ ---------- --- tshell 20 ready 0x00000088 0x00001000 10% 0x00000009 000 tidle 31 ready 0x00000054 0x00000200 16% 0x00000018 000 可以识别Flash形号,但mount不成功,用mkfs 格式化就出错,请高手指点
查看更多
43
个回答
默认排序
按发布时间排序
bigfanofRTOS
2017-12-29
有啥好写的,一边凉快去!
开启sfud驱动,把spi驱动加进来,再把drv_spiflash.c加进来就可以了
bigfanofRTOS
2017-12-29
有啥好写的,一边凉快去!
不建议使用w25q128那个驱动,使用sfud更好
mcubuilder
2017-12-29
这家伙很懒,什么也没写!
>开启sfud驱动,把spi驱动加进来,再把drv_spiflash.c加进来就可以了 --- 我试试,把结果更新给大家
bigfanofRTOS
2017-12-29
有啥好写的,一边凉快去!
[attach]2946[/attach] [attach]2947[/attach] [attach]2948[/attach] elm会在components中初始化,不需要手动调用: [attach]2949[/attach] 如果挂载失败,使用mkfs命令格式化下文件系统,确保有block device [attach]2950[/attach]
bigfanofRTOS
2017-12-29
有啥好写的,一边凉快去!
我正好使用的是正点原子的stm32f407板子测试的,下面是3个驱动: [attach]2951[/attach] [attach]2952[/attach] [attach]2953[/attach]
mcubuilder
2017-12-29
这家伙很懒,什么也没写!
>我正好使用的是正点原子的stm32f407板子测试的,下面是3个驱动: --- 我用的是3.01 dfs_init elm_init 在组件里已经初始化了,我在这里应该挂载就行了,我全用了你的驱动,也起用了SFUD,还是涛声依旧:'(,还有可能那时不对;这和我刚才直接用W25Q128驱动一样;就是挂载不了 [attach]2958[/attach] [attach]2959[/attach]
bigfanofRTOS
2017-12-29
有啥好写的,一边凉快去!
>我用的是3.01 >dfs_init >elm_init --- **如果挂载失败,使用mkfs命令格式化下文件系统,然后复位**
mcubuilder
2017-12-29
这家伙很懒,什么也没写!
>如果挂载失败,使用mkfs命令格式化下文件系统,然后复位 --- [attach]2960[/attach] 一格式化就报错
mcubuilder
2017-12-29
这家伙很懒,什么也没写!
>如果挂载失败,使用mkfs命令格式化下文件系统,然后复位 --- 应该还是SFUD这块没搞对 用sf 命令识别不了设备 msh />list_device device type ref count ------- -------------------- ---------- W25Q128 Block Device 0 spi10 SPI Device 0 spi1 SPI Bus 0 uart1 Character Device 2 pin Miscellaneous Device 0 msh />sf probe W25Q128 ERROR: SPI device W25Q128 not found! msh />
mcubuilder
2017-12-29
这家伙很懒,什么也没写!
SFUD是对的应该用设备名spi10,这样可以读可以写 msh />sf probe spi10 [SFUD]Find a Winbond flash chip. Size is 16777216 bytes. [SFUD]sf_cmd flash device is initialize success. 16 MB sf_cmd is current selected device. msh />sf read 0 64 Read the sf_cmd flash data success. Start from 0x00000000, size is 64. The data is: Offset (h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F [00000000] EB FE 90 4D 53 44 4F 53 35 2E 30 00 02 08 01 00 [00000010] 01 00 02 00 60 F0 0A 00 3F 00 FF 00 00 00 00 00 [00000020] 00 00 00 00 80 00 29 00 00 A6 44 4E 4F 20 4E 41 [00000030] 4D 45 20 20 20 20 46 41 54 20 20 20 20 20 00 00
撰写答案
登录
注册新账号
关注者
0
被浏览
8.2k
关于作者
mcubuilder
这家伙很懒,什么也没写!
提问
24
回答
65
被采纳
0
关注TA
发私信
相关问题
1
字库除了SD卡和http还有别的方式导入吗
2
如何同时使用RTT文件系统于NAND Flash 和 SD卡,针对Realboard4088?
3
EasyFlash好棒
4
SD卡挂在的SPI总线又要加个DA设备
5
sd卡与flash 同时挂载 挂载路径shell怎么区分 访问
6
请教ramfs使用方法
7
rtt stable2.0.x版本 sd卡及文件系统
8
nandflash文件系统UFFS请教
9
关于SD卡挂载文件系统的问题(已解决)
10
Yaffs采用GPL2许可
推荐文章
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
CherryUSB的bootuf2配置
2
在用clangd开发RTT吗,快来试试如何简单获得清晰干净的工作区
3
GD32F450 片内 flash驱动适配
4
STM32H7R7运行CherryUSB
5
RT-Smart首次线下培训,锁定2024 RT-Thread开发者大会!
热门标签
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
UART
WIZnet_W5500
ota在线升级
PWM
freemodbus
flash
cubemx
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
flashDB
GD32
socket
中断
编译报错
Debug
SFUD
rt_mq_消息队列_msg_queue
msh
keil_MDK
ulog
C++_cpp
MicroPython
本月问答贡献
a1012112796
12
个答案
1
次被采纳
踩姑娘的小蘑菇
5
个答案
1
次被采纳
红枫
4
个答案
1
次被采纳
张世争
4
个答案
1
次被采纳
Ryan_CW
4
个答案
1
次被采纳
本月文章贡献
catcatbing
3
篇文章
6
次点赞
YZRD
2
篇文章
5
次点赞
lizimu
2
篇文章
5
次点赞
qq1078249029
2
篇文章
2
次点赞
xnosky
2
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部