完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
CH376读U盘里的文件。文件较大,设置的buf[2048];读了2048个buf就通过串口发出,然后继续读下一个2048,直到文件全部读完。现在仅第一个2048能读出数据,以后读出的和第一次相同。程序如下:
u32 read_addr; ee: if(RealCount) *RealCount=0; xWriteCH376Cmd(CMD2H_BYTE_READ); xWriteCH376Cmd((u8) ReqCount); xWriteCH376Cmd((u8) ReqCount>>8); while(1) { s=Wait376interrupt(); if(s==USB_INT_DISK_READ) { s=CH376ReadBlock(buf); xWriteCH376Cmd(CMD0H_BYTE_RD_GO); buf+=s; if(RealCount) *RealCount+=s; } else if(s==USB_INT_SUCCESS) { //串口发送buf,此处省 read_addr=read_addr+2048; s=CH376ByteLocate(read_addr); if(s!=USB_INT_SUCCESS) return (s); else goto ee; } } 是不是CH376ByteLocate发得不对? |
|
相关推荐
3个回答
|
|
您好,您的read_addr是一个局部变量,您可以打印看一下是否每次都是从0开始的。您如果需要往后面读写的话,这个Locate函数需要指定到对应的地方,发然后再去读取固定的长度的数据。
|
|
|
|
|
|
|
|
你可以先使用我们File_sys下面写好的字节读命令,读取5个字节的数据,再次调用Locate函数到第六字节。看看能否正常的读取出正确的数据。
|
|
|
|
只有小组成员才能发言,加入小组>>
481 浏览 1 评论
CH579M+RT-Thread,RTC从Sleep模式唤醒失败是什么原因?
2877 浏览 2 评论
2366 浏览 1 评论
821浏览 2评论
CH569通过HSPI实现USB3.0和FPGA高速双向通讯
654浏览 1评论
502浏览 1评论
CH32F103C8T6使用当前官网上的CDC例程会出现设备描述符请求失败
367浏览 1评论
645浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-29 13:08 , Processed in 1.164549 second(s), Total 81, Slave 64 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号