沁恒公司的ch375U盘读写模块的一些问题,请各位帮帮忙
1 我把沁恒提供的示例程序稍作修改,利用ch375U盘读写标准模块进行字节读写已经能够顺利运行,但是扇区读写还是无法调通。当运行CMD_FileRead的时候,命令送进模块后,模块没有送出CH375HM_INT_WIRE的低电平应答。请问这是怎么回事呢,我修改的程序附在下面,恳请各位有点耐心帮我看一下是否是程序上的错误导致以上问题。
2 我没看懂扇区读写中的这一步骤:“如果是扇区读写,以下过程重复8次,每次传输64个字节,...” 读一个扇区是需要重复8次,但示例程序中显示执行一次ExecCommandBuf()才会执行一次以下的取64字节数据程序,重复8次是怎么回事???
else if ( status == USB_INT_DISK_READ )
{
CH375HM_INDEX = 0;
i = 64;
do{ *CurrentBuf = CH375HM_DATA;

CurrentBuf++;
}while ( --i );
CH375HM_INDEX = 0;
CH375HM_DATA = 0xFF;
//CH375HM_STA = 0; /*第二种应答*/
}
3 还是希望大家能仔细帮我看看我传上的程序中有哪些错误,我实在是黔驴技穷 了, 谢谢大家。 以下第一个文件是没调通的扇区读写程序,第二个是字节读写程序。
UploadImages/海星儿2005711162510.rarUploadImages/海星儿2005711162548.rar
这人很懒,什么都没留下
ExecCommandBuf()最好不要去修改它,
循环8次是因为CH421的缓冲区是64各字节的.一个扇区通过8次传完
en...
回楼上的,ExecCommandBuf()其实我没改,完全是现搬现用,仅仅是因为用的单片机不同而只对其他程序稍作修改但是扇去读写无法调通
还有第二个问题你还是没有给我解释清楚阿,我意思是调用一次ExecCommandbuf子程序仅仅传输了64个字节,何来8次呢?
能回答的更透彻些吗,谢谢
这人很懒,什么都没留下
重复几次根模块要几次数据有关系.因为模块固有特性每次可以写入64字节,当然1扇区需要8次.N扇区需要N*8次,
ExecCommandBuf()中并没有判断数据的发送次数.只是发现返回的状态为要求写数据则发出64字节的数据.
交个朋友
看了你的扇区读写程序.不知道为什麽将两种时序都放在上面.建议你用2.5版本之后的时序.而且将需要将模块的目标程序也升级到最新.如果程序不匹配则不能运行.
交个朋友
只有登录才能回复,可以选择微信账号登录