阅读:1492回复:10
谁知道EZ_USB的自动下载后,只使用汇编,8051如何再枚举?(不用FW)
谁知道EZ_USB的自动下载后,只使用汇编,8051如何再枚举?(不用FW框架)。
内部描述符表,描述了再枚举的PID& VID,如何将它加入我的汇编程序中进行编译生成HEX? 做过EZ_USB应用开发的高手请指导一下,谢谢!! |
|
|
沙发#
发布于:2003-02-25 11:59
有高手知道么?
|
|
|
板凳#
发布于:2003-02-25 12:39
下载后,置寄存器(名字不记得了,下载时只有一个寄存器可写)的复位位,usb-core会仿真断开连接然后再连接,新连接的设备用8051
|
|
地板#
发布于:2003-02-25 13:21
那么,请问,用于再枚举的第二个PID&VID存放在哪儿了?如何和汇编一起编译,生成HEX文件。谢谢!
|
|
|
地下室#
发布于:2003-02-25 23:17
在dscr.a51里,用keilc建立工程,然后编译联接
|
|
5楼#
发布于:2003-02-26 09:55
谢谢你的关注,我试过的,不行。
asm文件在一个工程中,同时把dscr.a51加入工程,填入第二个PID&VID。编译,生成HEX, 做好EZ_down 的驱动。插入设备时,提示安装驱动,安装后发现,自动下载驱动正常,但是,再枚举不成功---设备管理表中可以看到,驱动只是Before Renumeration,没有再枚举,没有和EZusb的通用驱动程序连接。 是不是要在汇编固件开头加上复位的语句,复位8051,这应该是硬件核心完成的,还是应该由固件完成。 |
|
|
6楼#
发布于:2003-02-26 15:21
谢谢jinghuiren的帮助,还有那位高手可以指导一下,万分感谢!
|
|
|
7楼#
发布于:2003-02-27 10:39
对USBCS进行操作!
|
|
8楼#
发布于:2003-02-27 11:18
我做过的,还是不行,你可以给我一个例子么?谢谢
|
|
|
9楼#
发布于:2003-02-27 14:21
我在固件开头加了对USBCS操作的指令:
--------------------- mov dptr,#USBCS movx a,@dptr orl a,#00001000b movx @dptr,a anl a,#11110111b movx @dptr,a --------------------- 或者: --------------------- mov dptr,#USBCS mov a,#00001010b movx @dptr,a mov a,#00000110b movx @dptr,a --------------------- 再用ControlPanel手动下载,却无法正常运行了, 设置Interface=0Altsetting=1,然后GetPipes,显示没有Pipe 无法通讯,这是怎么回事, 如果,不加开头的复位指令,程序手动下载后, 设置Interface=0Altsetting=1就没有任何问题。。 真是奇怪。。 |
|
|
10楼#
发布于:2003-02-28 10:02
如果从EEPROM读取的第一个值是B2H,则内核把整个EEPROM内容调入RAM,此时没有renumeration过程
|
|