请问各位大侠CH375为什么只能读取0扇区内容

CH375为什么只能读取0扇区内容,除了0扇区别的扇区内容都读不出来,0扇区内容读是正确的。

读扇区函数如下: UINT8 mReadSector( unsigned int iLbaStart,UINT8 iSectorCount,UINT8 *oDataBuffer ) { UINT8 mBlockCount; UINT8 c; xWriteCH375Cmd( 0x54 ); /* 从USB存储器读数据块 */ xWriteCH375Data( (UINT8)iLbaStart ); /* LBA的最低8位 */ xWriteCH375Data( (UINT8)( iLbaStart >> 8 ) ); xWriteCH375Data( (UINT8)( iLbaStart >> 16 ) ); xWriteCH375Data( (UINT8)( iLbaStart >> 24 ) ); /* LBA的最高8位 */ xWriteCH375Data( iSectorCount ); /* 扇区数 */ for ( mBlockCount = iSectorCount * 8; mBlockCount != 0; mBlockCount -- ) { c = mWaitInterrupt( ); /* 等待中断并获取状态 */ if ( c == 0x1d ) { /* 等待中断并获取状态 请求数据读出 */ xWriteCH375Cmd( 0x28 ); /* 从CH375缓冲区读取数据块 */ c = xReadCH375Data(); /* 后续数据的长度 */ while ( c -- ) *oDataBuffer++ = xReadCH375Data(); xWriteCH375Cmd( 0x55 ); /* 继续执行USB存储器的读操作 */ } else break; /* 返回错误状态 */ } if ( mBlockCount == 0 ) { c = mWaitInterrupt( ); /* 等待中断并获取状态 */ if ( c== 0x14 ) return( 0 ); /* 操作成功 */ } return( c ); /* 操作失败 */ }

那你看下其他扇区有没有读取到数据,读取如果失败的话返回的错误代码又是多少?


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