大家好!
我用STM32 103 的片子做一个测量小设备,因为需要存储测量的数据,所以用了SD 卡,并且用了FATFS文件系统,然后用USB接口读取数据到PC分析。
USB和SD的程序都是在官方给的程序上改的。
现在的问题是这样:
之前存数据到4G之后,USB连接后显示盘没有格式化,我搜索了一下,在论坛里找到了解决办法,是要修改文件系统和SD读写函数的参数类型,把 uint32_t 的 addr 参数改成 uint64_t 类型。这样就可以访问4G以上的地址了。
但是自从出了这个问题,我重新格式化SD卡之后,每次连接电脑USB就非常慢,需要至少17、8秒盘符才会出现,而以前基本都是秒出的。
我试了下U盘,都是好的,设备换在另外的电脑上也是很慢,这就说明是我这个设备出了问题。可是我程序除了那个参数类型外都没有改,为什么现在USB枚举过程(这个应该是枚举过程吧)这么长?我把参数改回去试过,也依然很慢,请教大家,这可能是什么原因?应该怎么追踪?
PS:我USB协议基本不懂,只了解一个大概过程。SD协议也不是很懂。
512是扇区吧?
也就是块大小。簇大小和扇区不是一个概念好像。
一周热门 更多>