阅读:1672回复:6
关于 pipe 和 endpoint 的对应问题?
在cypress的控制面板中,可以用GET-PIPE-INFOR 得到PIPE和
ENDPOINT之间的对应关系,但是我怎么也找不到在固件中是在 哪里设置,怎么设置的? |
|
|
沙发#
发布于:2004-09-20 17:25
我也想问这个问题,请问该怎么设置啊?有人知道嘛?谢谢,呵呵。
在cypress的控制面板中,可以用GET-PIPE-INFOR 得到PIPE和 |
|
板凳#
发布于:2004-09-20 18:31
GET PIPE CONFIG其实只是驱动提供的一种机制,USB总线驱动提供了管道机制,管道是一种术语,使得客户软件可以和USB设备的功能单元间(就我们常说的 EP端点)之间进行数据传输。在固件中能对端点ENDPOINT进行配置。
|
|
地板#
发布于:2004-09-21 09:27
我就是想知道在固件的哪个地方可以设置啊。。
cypress的固件代码如下: void TD_Init(void) // Called once at startup { // set the CPU clock to 48MHz CPUCS = ((CPUCS & ~bmCLKSPD) | bmCLKSPD1); SYNCDELAY; EP2CFG = 0xA0; // EP2OUT, bulk, size 512, 4x buffered SYNCDELAY; EP4CFG = 0x00; // EP4 not valid SYNCDELAY; EP6CFG = 0xE0; // EP6IN, bulk, size 512, 4x buffered SYNCDELAY; EP8CFG = 0x00; // EP8 not valid SYNCDELAY; ......... ........ 结果使用的是ep2和ep6, 但是我改成 void TD_Init(void) // Called once at startup { // set the CPU clock to 48MHz CPUCS = ((CPUCS & ~bmCLKSPD) | bmCLKSPD1); SYNCDELAY; EP2CFG = 0xA2; // EP2OUT, bulk, size 512, 4x buffered SYNCDELAY; EP4CFG = 0xA0; // EP4 not valid SYNCDELAY; EP6CFG = 0xE0; // EP6IN, bulk, size 512, 4x buffered SYNCDELAY; EP8CFG = 0x00; // EP8 not valid SYNCDELAY; 我是想使用ep2,ep4和ep6,结果还是没有使用ep4啊。 还有,如果不想使用ep2, 我让EP2CFG = 0x00;结果还是使用了ep2,郁闷啊。 请问cypress的ep到底该怎么设置啊? GET PIPE CONFIG其实只是驱动提供的一种机制,USB总线驱动提供了管道机制,管道是一种术语,使得客户软件可以和USB设备的功能单元间(就我们常说的 EP端点)之间进行数据传输。在固件中能对端点ENDPOINT进行配置。 |
|
地下室#
发布于:2004-09-21 12:33
好像在一个叫descr.a51的文件里
反正就是个汇编文件 里面是描述符集合 从Device到endpoint都有。 |
|
5楼#
发布于:2004-09-21 15:04
是在descr.a51,里面有对设备配置描述符的描写,在这里面改,端点描述符是在请求设备配置描述符中返回得。这个文件我理解为是CPU配置(8051)文件。
|
|
6楼#
发布于:2004-09-21 17:11
已经按照大家的指点搞定了,呵呵,谢谢!!
|
|