中断 USB_INT_EP2_IN是在下面哪种情况被触发的

我使用的是CH372,请问一下其中断 USB_INT_EP2_IN: (批量端点/端点2发送完数据)这个中断是在下面哪种情况下产生的。 1.单片机将数据传给CH372后 2.CH372将数据传给PC机后 3.PC机使用CH375ReadData读取缓存中的数据后

应该是在2之后产生中断的。


那请问PC端的接收数据的缓存是多大的? 假如我发一组数据包给PC,每发完一个64B的包后等待USB_INT_EP2_IN中断的产生,这个中断到达后再接着发送下一个包,但如果PC端使用CH375ReadData读取缓存中的数据速度根不上,应该会造成缓冲区溢出或数据被覆盖的情况吧?


端点2上传完成中断,当端点2的数据,已经成功的被PC取走后,CH372产生这个中断,通知MCU数据已经被成功发送,可以继续发送后续数据。


我总是遇到这样的情况,前面几个包能被PC接收到,也有USB_INT_EP2_IN中断产生,可是过了几秒钟后PC就接收不到数据了,USB_INT_EP2_IN中断也没有了,而且每次收到包的数量也不总是一样的,特别是当我在USB_INT_EP2_IN中断响应函数中加入一个延时后就会有不同的情况发生


你先用我们的上位机软件测试你的下位机程序,到我们网站上下载CH372DBG.ZIP,这样便于查找问题


CH375ReadData一次最大能读4096个字节。


我用CH372DBG.ZIP中的CH372updown程序测了一下我的下位机程序,发现一个包一个包的上传没有什么问题,可当我用我的上位机程序连续接收包的时候就常常收了几个包就卡死了。(上位机CH375ReadData失败,下位机跳不进USB_INT_EP2_IN中断) 请各位大侠帮帮忙


那么上位机建议你使用缓冲上传的方式来读取数据,这样即使数据丢失掉的话,也不会出现你说的读取不到数据的现象,还有你上位机处理数据的时候速度要快点,尽量的保证数据部丢失。


缓冲上传蛮好用的,以前做过一个USB转CAN总线的产品,用的就是缓冲上传,数据包传输速率感觉很快。 上位机用了多线程接收,占系统资源少,速度超快。


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