阅读:1502回复:3
请教d12枚举时bushound的这些数据,谢谢!
d12和51单片机相连,现在通过设置d12模式可以使连上时GOODLINK亮,硬件连接应该是没有问题。使用的固件是飞利浦的pusb_C51源码,其中主程序初始化部分如下:
void main(void) { unsigned char key, i; init_port();//初始化I/O口 init_serial();//初始化串行口 init_timer0();//初始化定时器0 init_special_interrupts();//设置中断 MCU_D12CS = 0x1; MCU_D12CS = 0x0; D12_ReadChipID(); bEPPflags.value = 0; reconnect_USB();//重新连接USB while( TRUE ){ if (bEPPflags.bits.timer) { DISABLE; 。。。。。。 在单片机全速运行时,GOOGLINK亮,bushound数据如下: 12.1 DI 08 00 00 00 e0 3f 82 f0 .....?.. 1.1.0 12.0 CTL a3 00 00 00 03 00 04 00 GET STATUS 2.1.0(2) 12.0 DI 01 01 01 00 .... 2.2.0 12.0 CTL 23 01 10 00 03 00 00 00 CLEAR FEATURE 4.1.0 12.0 CTL a3 00 00 00 01 00 04 00 GET STATUS 5.1.0 12.0 DI 00 01 00 00 .... 5.2.0 12.0 CTL a3 00 00 00 02 00 04 00 GET STATUS 6.1.0 12.0 DI 00 01 00 00 .... 6.2.0 12.0 CTL a3 00 00 00 03 00 04 00 GET STATUS 7.1.0(2) 12.0 DI 01 01 00 00 .... 7.2.0 12.0 CTL 23 03 04 00 03 00 00 00 SET FEATURE 9.1.0 12.1 DI 08 00 00 00 e0 3f 82 f0 .....?.. 10.1.0 12.0 CTL a3 00 00 00 03 00 04 00 GET STATUS 11.1.0 12.0 DI 03 01 10 00 .... 11.2.0 12.0 CTL 23 01 14 00 03 00 00 00 CLEAR FEATURE 12.1.0 12.0 CTL a3 00 00 00 03 00 04 00 GET STATUS 13.1.0 12.0 DI 03 01 00 00 .... 13.2.0 12.0 CTL 80 06 00 01 00 00 40 00 GET DESCRIPTOR 14.1.0 12.0 CTL a3 00 00 00 03 00 04 00 GET STATUS 15.1.0 12.0 DI 03 01 00 00 .... 15.2.0 12.0 CTL 23 03 04 00 03 00 00 00 SET FEATURE 16.1.0 12.1 DI 08 00 00 00 e0 3f 82 f0 .....?.. 17.1.0 12.0 CTL a3 00 00 00 03 00 04 00 GET STATUS 18.1.0 12.0 DI 03 01 10 00 .... 18.2.0 12.0 CTL 23 01 14 00 03 00 00 00 CLEAR FEATURE 19.1.0 12.0 CTL 80 06 00 01 00 00 40 00 GET DESCRIPTOR 20.1.0 12.0 CTL a3 00 00 00 03 00 04 00 GET STATUS 21.1.0 12.0 DI 03 01 00 00 .... 21.2.0 12.0 CTL 23 03 04 00 03 00 00 00 SET FEATURE 22.1.0 12.1 DI 08 00 00 00 e0 3f 82 f0 .....?.. 23.1.0 12.0 CTL a3 00 00 00 03 00 04 00 GET STATUS 24.1.0 12.0 DI 03 01 10 00 .... 24.2.0 12.0 CTL 23 01 14 00 03 00 00 00 CLEAR FEATURE 25.1.0 12.0 CTL 80 06 00 01 00 00 40 00 GET DESCRIPTOR 26.1.0 12.0 CTL 23 01 01 00 03 00 00 00 CLEAR FEATURE 27.1.0 12.1 DI 08 00 00 00 e0 3f 82 f0 .....?.. 28.1.0 12.0 CTL a3 00 00 00 03 00 04 00 GET STATUS 29.1.0(2) 12.0 DI 00 01 01 00 .... 29.2.0 12.0 CTL 23 01 10 00 03 00 00 00 CLEAR FEATURE 31.1.0 12.0 CTL a3 00 00 00 01 00 04 00 GET STATUS 32.1.0 12.0 DI 00 01 00 00 .... 32.2.0 12.0 CTL a3 00 00 00 02 00 04 00 GET STATUS 33.1.0 12.0 DI 00 01 00 00 .... 33.2.0 12.0 CTL a3 00 00 00 03 00 04 00 GET STATUS 34.1.0 12.0 DI 00 01 00 00 .... 34.2.0 12.0 CTL a3 00 00 00 01 00 04 00 GET STATUS 35.1.0 12.0 DI 00 01 00 00 .... 35.2.0 12.0 CTL a3 00 00 00 02 00 04 00 GET STATUS 36.1.0 12.0 DI 00 01 00 00 .... 36.2.0 12.0 CTL a3 00 00 00 03 00 04 00 GET STATUS 37.1.0 12.0 DI 00 01 00 00 .... 37.2.0 应该是枚举没有通过,我的固件和周X书上的类似,改了低层d12数据提取,问题出在哪里呢,请教各位大侠了,谢谢! |
|
沙发#
发布于:2005-04-04 14:30
在ISR中加3毫秒的延时再试试。
另外可以买一个USB HUB(1.1的),D12在2.0 和 1.1下面的响应有时候会有点差异。 |
|
|
板凳#
发布于:2005-04-04 15:12
不好意思,发错了
[编辑 - 4/4/05 by sun7463250] |
|
地板#
发布于:2005-04-07 19:08
谢谢大家指点
后来在主程序里面加了fn_usb_isr(),还有别的地方的一些修改就好使了 |
|