[求助]44b0 ch375操作流程?盼复

使用44b0,ch375s。上电复位,测试CHECK_EXIST正常。 插拔U盘,中断正常。 此后,要读取U盘中的\usbtest\txt1.txt文件。进行了如下过程,请看对不对?

1。初始化 setUsbMode(7);//复位U盘 delay(100);//延时100ms

setUsbMode(6);//设置工作模式 delay(100);//延时100ms

CH375Cmd = CMD_DISK_INIT; mDelay1_2uS( ); mDelay1_2uS( ); delay(500); if(CH375IntStatus!=USB_INT_SUCCESS){ Puthzf(10,60,1,1,"init udisk err",0);delay(1000); }

这个步骤都正常,然后读U盘SIZE和打开文件时都有问题。 2。读SIZE i = CH375DiskSize(); if(i!=ERR_SUCCESS){ sprintf(tmp,"read err=%x",i); FillRectangle(10,100,145,20,1,1,0); Puthzf(10,100,15,1,tmp,0);delay(1000); return; } sprintf(tmp,"Udisk is %dM",(U32)(mCmdParam.DiskSize.mDiskSizeSec >>11)); FillRectangle(10,35,145,20,1,1,0); Puthzf(10,30,15,1,tmp,0);

打印出来的SIZE 是271396,U盘是128M的,不对啊? 3.打开文件 strcpy( (PS8)(mCmdParam.Open.mPathName), "\\usbtest\\txt1.txt" ); i = CH375FileOpen( ); if(i==ERR_SUCCESS)Puthzf(10,30,1,1,"open succese",0); else { FillRectangle(10,30,120,20,15,1,0); sprintf(tmp,"open err=%x",i); Puthzf(10,30,1,1,tmp,0); } 返回值为:0x10,错误类型定义中没有这个啊? 如果在打开文件之前,对U盘进行复位再打开的话,返回0X82,磁盘尚未连接? 请问进行每一次调库函数操作之前,有必要对U盘进行复位CMD_DISK_RESET操作吗?

公司提供的各个例程都有不一样的地方,请问能不能给出一个一般性的(主机方式和SLAVE方式)的流程?尤其是每一个必要步骤都给出来。

盼复!THANKS

[Emot]27[/Emot]

打开文件之前,如果复位U盘,延时长一些(比如100ms),返回值不再是0X82,但是还是0x10,这到底是怎么一个错误?


只有登录才能回复,可以选择微信账号登录