关于STM32F103驱动SPI FLASH并模拟U盘(加在文件系统),新建文件必须掉电才更新

[复制链接]
232|8
 楼主 | 2017-12-5 15:46 | 显示全部楼层 |阅读模式
参考网上例程做了STM32F103驱动SPI FLASH并模拟U盘,并加载了文件系统,连接电脑显示正常,用电脑往里边存东西也正常,但是使用STM32F103新建的文件必须掉电才更新,是哪里的问题啊?
| 2017-12-5 15:49 | 显示全部楼层
电脑有缓冲,不是时刻监控的。mcu写完后主动断开连接,延时后再连。
 楼主 | 2017-12-5 15:57 | 显示全部楼层
一周一天班 发表于 2017-12-5 15:49
电脑有缓冲,不是时刻监控的。mcu写完后主动断开连接,延时后再连。

是把flash CS信号关闭一次吗?我现在就是断开再连接才更新。不重新上电很久都不更新。但是这样会显示U盘有一次插拔过程,有别的方法解决吗?
| 2017-12-5 21:13 | 显示全部楼层
尝试在电脑上刷新了吗?
| 2017-12-6 10:25 | 显示全部楼层
试试看USB重新枚举
| 2017-12-8 17:12 | 显示全部楼层
这个不是USB的问题,也不是Flash的问题,是文件系统的问题。

你的设备向电脑展示的是一个U盘,也就是块设备,上面是不带文件系统的。文件系统由电脑管理,这个块设备是电脑独占的。
你单片机里面也有一个文件系统建立在这个块设备上,理论上是不允许这样用的。电脑不会想到。
每次电脑挂载之前,你要卸载,电脑卸载之后,你再挂载。
以前的MP3就是这样的。

或者你可以向电脑展示一个MTP设备。这个设备就可以建立在你的文件系统之上。就可以实时刷新不用卸载了。

评论

gujiamao12345 2017-12-12 10:28 回复TA
专业! 
 楼主 | 2017-12-13 11:34 | 显示全部楼层
QuakeGod 发表于 2017-12-8 17:12
这个不是USB的问题,也不是Flash的问题,是文件系统的问题。

你的设备向电脑展示的是一个U盘,也就是块设 ...

原来是这样啊   那我就每次掉电一次再重连吧
扫描二维码,随时随地手机跟帖
*滑动验证:
您需要登录后才可以回帖 登录 | 注册 手机登录

本版积分规则

快速回复

您需要登录后才可以回帖
登录 | 注册 手机登录
高级模式
我要创建版块

论坛热帖

关闭

热门推荐上一条 /4 下一条

分享 快速回复 返回顶部 返回列表