阅读:1468回复:6
*******奇怪问题..求教各位*********
我现在的情况是,当我收到80 06 00 02 00 00 FF 00命令,也就是叫我发全部描述时,我的处理步骤是第一次在CONTROL OUT里发送前16字节,然后再CONTROL IN里面发送后16字节,等待再次产生CONTROL IN中断后继续把最后14字节发送出去....
可是现在的情况是,在这最后一次发送前我读端点状态发现值为18,也就是说此端点停止了,可奇怪的是我选择端点并读,结果是00,也就是说没停止阿..这是怎么回事.(说得不清楚,下面是程序) CONTROL IN: ; ; ;发送最后一字节子程序 MOV A,#01H-------;选择端点 LCALL D12COMMAND LCALL D12READ------;读1字节, LCALL S_OUT--------;读出结果是00 MOV A,#81H-------;读端点状态 LCALL D12COMMAND LCALL D12READ LCALL S_OUT--------;读出结果是18 ;---------------------;下面就是向端点写数据子程序(忽略) ; ; 请问这是怎么回事啊,怎么会端点停止了呢??还是我发送的方法不对阿,那应该怎么发送啊?? [编辑 - 12/27/02 by dacongtou] |
|
沙发#
发布于:2002-12-30 21:55
描述符长度设置不对
|
|
板凳#
发布于:2002-12-31 11:08
描述符长度设置不对 我看了,是2E 00,对呀..就是46字节啊,我换成40 00 ,也是一样的问题啊? |
|
地板#
发布于:2002-12-31 11:47
俺也大胆说一句,
你写的明明是FF呀,那不是要255B吗? :D :D :D |
|
地下室#
发布于:2002-12-31 11:57
还有,选择端点怎么读端点状态呀,你是不是读的最后处理状态呀?
|
|
5楼#
发布于:2002-12-31 15:23
俺也大胆说一句, 系统不知道要多少,所以才写ff的啊.可是我在配置描述的第3.4字节说明了我的描述共46字节(2E),所以只送46字节就好了 |
|
6楼#
发布于:2002-12-31 15:25
还有,选择端点怎么读端点状态呀,你是不是读的最后处理状态呀? D12手册上选择端点下面一个命令不就是读端点状态命令么?(80-85h) |
|