CH372批量数据传送的问题!!

我用CH372做USB向上位机传送数据,为什么不能大批量的传送!郁闷!!高手帮帮忙啊!![Emot]13[/Emot]

批量端点一次上传数据的最大长度为64,要进行大批量传送,你可以循环上传才可以.


这个问题已经解决了!1 现在的问题是在传送外部存储器中的数据传到上位机的全是0A,和存储器中的内容更本没关系,这是怎么一回事情?请高手帮忙!!


一次传送多少数据?测试下外部RAM有没有问题.


大批量的数据,有上万组数据!!外部存储器我已经测试过了,没有问题.地址也没有冲突!!就是简单的从外部存储器向上位机传数据还是这样的问题!!


你其实只需要在上一次上传成功之后,先解锁,再将缓冲区的数据送到372的上传缓冲区即可。单次能正常上传的话,循环多次上传也肯定没问题。大体也就是:

case USB_INT_EP2_IN: { /* 批量数据发送成功 */ CH375_WR_CMD_PORT( CMD_UNLOCK_USB ); /* 释放当前USB缓冲区 */ printf("EP2_IN \n"); if(up_data_length){ //上传后续数据 length=up_data_length>64?64:up_data_length; up_data_length=up_data_length-length; CH375_WR_CMD_PORT( CMD_WR_USB_DATA7 ); /* 向USB端点2的发送缓冲区写入数据块 */ CH375_WR_DAT_PORT( length ); for ( i = 0; i < length; i ++ ) CH375_WR_DAT_PORT( DATA_BUF[ up_length+i ] ); up_length=up_length+length; } break; }


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