阅读:1566回复:4
USBN9603问题?
各位大师:
请教,我的设备端通过发送EP3发送数据1、2、3、4、5,PC接收,第一次PC接收总是正常(1、2、3、4、5),第二次以后接收的数据总是1、1、2、3、4、5,比第一次多出一个“1”,通过用示波器观察,发现9603发送完1、2、3、4、5后INTR脚还是为底,再次响应EP3发送中断,发出一个“1”,以后INTR脚为高。我的发送中断程序如下: void txevent_3(void) { txstat=read_usb(TXS3); FLUSHTX3 if((txstat&ACK_STAT)&&(txstat&TX_LAST)) { write_usb(TXD3,Send[count]); TXEN3_PID if(++count==5) { count=0; } } } 请各位大师指点,小弟先谢谢了:) |
|
|
沙发#
发布于:2002-04-04 08:47
请知道的各位大师帮帮忙好吗?小弟已经调了几天了,还是没有效果,唉。。。。。。。
|
|
|
板凳#
发布于:2002-04-04 14:57
各位大师,知道的回答一下好吗?
|
|
|
地板#
发布于:2002-04-06 18:48
你的这段程序没有问题,问题可能出在TX PID上,也就是你处理发送的PID以及LAST BIT上,可以对照9603的范例程序(NS网站有)!
|
|
|
地下室#
发布于:2002-04-06 18:53
另外一个可能就是硬件中断的处理,看好处理器是电平还是边沿,如果仍是中断问题,可以在中断服务程序的最后关一次USB中断试一下!
|
|
|