我在实际的应用中出现了一个难题就是:比如我要写入一个20字节的数据CH376ByteWrite( buf1,20, NULL );,如果之前已经写到了第1个扇区的500;也就是我这20个字节有12个自己在第一个扇区,剩下的8个字节写到第二个扇区,出的问题现象就是前12个字节在TXT显示正常,而后面的8个字节现实不正常。[Emot]4[/Emot]
查看: 2488
回复: 4
急!!!CH376的问题!!!!
热门产品 :
CH634: 4端口USB3.0 HUB控制器芯片
你的理解是正确的,但是在你写后8个字节的时候要要发送继续写的命令CMD0H_BYTE_WR_GO;具体操作请参考我们提供的例程
CH376ByteWrite( buf1,20, NULL );这个地方不对,CH376ByteWrite会返回实际写入的字节数。一定要检查实际写入的字节数是否和20相等,不相等一定要把剩余的数据再次写。一般在边界也就是扇区末尾会出现这种情况
还是需要您的进一步帮助, UINT8 CH376ByteWrite( PUINT8 buf, UINT16 ReqCount, PUINT16 RealCount ) /* 中的if ( RealCount ) *RealCount = 0;这句什么意思??
if ( RealCount ) *RealCount = 0;相当与变量初始话 RealCount是一个指针,如果指向的地址里面的数据不为0的话,则后面计算实际长度的时候就会出现错误。 所以进行清0
请勿发布广告和违法内容, 代码可以选择编辑器代码语言格式, 更易他人阅读帮助您, 或者留下联系方式,以便更好更快服务您
只有登录才能回复,可以选择微信账号登录