报告一下,解决了,条件还是if((_GetENDPOINT(ENDP1) & EPTX_STAT) == EP_TX_NAK),只是因为BUS Hound显示的时候,对于完全相同的数组,会议repeat方式显示,开始一直没注意到,还以为只收到了一次。。。
但是,通过测试,发现了使用中断方式传输的话,每次最多只能传63个字节,也就是速率限制在63KB/S。
这个我的理解是:当发送超过64字节的数据时,需要两次以上的定时中断,假设每次定时中断是100μs的话,那么这一帧数据两个包之间就有100μ的间隔,主机收到第一个数据包之后,不会等待100μ,而是认为数据错误,就不应答了。 |