阅读:1204回复:2
基于D12和ARM7的U盘的最后一个问题
U盘已经基本可以存数据了。
但有一个问题,不知已前做过的人碰到过没有: 当PC端发出Write命令后,紧接着的下一个64Byte的包开始就应该是数据(这一点我可以肯定,因为我用串口看到的接收到的和Bus Hound看到的发出的是一致的),而且PC是按Sector的整数倍来发出数据,就是说哪怕是三个字节的文件,也会发出512个字节来,这样共为8个64Byte,就是说Write命令发出后,紧跟 应该有8个包,但我在实际过程中发现只有七个包,如果要等第八个,PC端就显示Timeout,但如果我在第七个包时结束命令,即第七个包收到后即传回CSW,PC又会送来一个数据包。 这种情况在发送不只一个Sector时表现出来也是缺一个64Byte的包。 不知道我讲清楚没有,希望做过的大侠指点。 |
|
沙发#
发布于:2002-11-27 17:43
大家帮帮忙呀
|
|
板凳#
发布于:2004-07-13 15:50
你可以在收到第7个包后发送CSW,然后再接收最后一个包
|
|