我是并口模拟的,没有用库,不过只能读0扇区的数据,其它扇区读到的数据都是00,请教各位大侠,帮帮忙,谢谢!!!
串口部分的程序就不发了,我用的是STC51的单片机,并口模式
我是并口模拟的,没有用库,不过只能读0扇区的数据,其它扇区读到的数据都是00,请教各位大侠,帮帮忙,谢谢!!!
串口部分的程序就不发了,我用的是STC51的单片机,并口模式
可能是流程有问题,你下载CH375EVT.ZIP,读物理扇区的参考程序CH375EV0.C 先检查一下流程是否有问题,更改后如果还有问题,可以把你的程序贴出来看下 另外你怎么判断你读出的0扇区的数据是正确的?请详细说明
我使用串口输出的,数据通过WINHEX比对0扇区的数据确实正确,就是换个地址就输出全00
更换地址后,整个读扇区的流程是成功的,但是数据不对? 有没有对一下CH375EV0.C中的流程是否一致呢? 这个程序不大,可以直接贴出来,或点击右下的修改帖子,把程序传上来看看
初始化和获取容量都成功了,用的金士顿2G的优盘,FAT32
DiskRead怎么找不到,把完整的程序贴出来啊,这样吧,为了便于我们协助你找错误,移植CH375EV0.C吧,只要根据硬件连接修改:CH375_WR_CMD_PORT、CH375_WR_DAT_PORT、CH375_RD_DAT_PORT、CH375_INT_WIRE就可以了
我的单片机没有配外部RAM,我从那个程序改过来的,上面的每一部都调试到了,好些天了,终于到读数据了,可是只能读0扇区,晕死了
另外为了排除错误,建议你用其他U盘测试一下,看看现象是否一样。流程上务必要按照CH375EV0.C来写 另外建议你不要读一个数据发送一个数据,读完一个扇区后再通过串口把数据发送出来。 另外单片机晶振多少?
1、系统没有外部RAM,那么把DATA_BUFFER重新定义在内部,即去掉xdata关键字就可以了阿 2、如果扇区为512的话,读取一个扇区总共产生9次中断,跟踪一下中断代码是不是正确的 3、我们手头没有的你环境,我们的例程是经过测试的,只有移植我们的例程,才会更方便我们协助你分析原因
我用了Netac的U盘,也是的,一共9次中断,中间返回数据时0x1d。我试试CH375EV0.C,多谢了
你读出来的应该不是0扇区,而是第一分区的BPB表,甚至可能只是u盘的标识,它的结束符号也是55AA,理由是用WINHEX读出的0地址数据不一定就是0扇区。 原因极有可能是usb未准备好,不妨可以将查询u盘准备就绪的返回值发到pc机看看,肯定会有新发现。 我在使用375是发现,有时候初始化375一次不一定成功,需要多次。于是,我就把初始化,查询u盘准备就绪等步骤都改为多次,直至成功返回14H,才开始读写u盘,这时候读出来的数据才是真的。 所以,我的总结是,即使看见了也未必是真的,呵呵!
现遇到了同样的问题,请问这个问题应该怎么呀???太痛苦了
各位大佬帮帮我吧