阅读:1424回复:7
请教longyinjiuxiao
longyinjiuxiao,我看到你的问题解决了。
可我还是送不了描述符,在接到GET-DEVICE-DESCRIPTOR 命令后, 从BUS HOUND中,竟然看到USB状态为STALL PID 。请帮忙分析一下可以吗? |
|
最新喜欢:![]() |
沙发#
发布于:2004-05-18 15:02
那肯定是你回应GET-DEVICE-DESCRIPTOR的时候有问题啦,检查一下数据。
driver有做吗? |
|
|
板凳#
发布于:2004-05-18 15:27
你收到的中断是怎样的?
有没有收到中断0x20? STALL PID 是怎么回事我不知道。 用仿真器好好找原因! 确定你的程序执行到哪里, 分析为什么不会往下执行。 |
|
地板#
发布于:2004-05-18 15:50
谢谢两位,我再仔细看看程序吧。
|
|
地下室#
发布于:2004-05-18 15:52
楼上的朋友,
你的D12有没有回应get_descriptor请求? |
|
5楼#
发布于:2004-05-18 16:05
我的问题也是这样,设备上电后(固件程序还为运行),bushound显示收到get_descriptor请求,但设备没有回应,程序运行后,毫无变化,bushound也收不到数据,读中断状态返回值为0x0080。
希望大家能帮帮我! 看来大家的问题大都差不多,留个QQ号:12106491讨论一下 |
|
6楼#
发布于:2004-05-18 16:49
参考下面的程序,
改一下, 也许有意外的收获哦! //端点0OUT中断 void ep0_rxdone(void) { unsigned char ep_last, i,epstatus2; ep_last=D12_ReadLastTransactionStatus(0); //清中断标志 epstatus2=D12_ReadEndpointStatus(0); if (epstatus2&0x04) { //接收到SETUP包 ControlData.wLength = 0; ControlData.wCount = 0; |
|
7楼#
发布于:2004-05-19 16:21
我现在可以回应GET-DESCRIPTOR请求了,只是先加仿真器的电源,再加上USB电源,就可以回应了,程序应该是没有变化。也许能给你们一点启发吧。
|
|