阅读:1681回复:11
89C52+D12枚举的过程请教请教
89C52+D12枚举的过程是不是这样的:
对于MCU:在MUC运行指令与HOST实现SOFTCONNECT后,MCU接收到中断,通过读中断状态寄存器得知是控制输出端点中断,MCU响应中断,选择控制输出端口,从D12中接收数据(8字节,为80,06,00,01,00,00,40,00),然后分别向D12发送应答(F1),清缓冲区(F2)命令,接下来再选择控制输入端点,向D12中送18个字节的设备描述符(请问这18个描述符是什么?),在向D12中发F1,FA命令,结束中断程序。 然后接下来会怎么样???请教请教 |
|
最新喜欢:![]() |
沙发#
发布于:2004-03-31 12:31
你可以搜一下以前的帖子
关于d12的东西实在是很多。 |
|
板凳#
发布于:2004-03-31 14:22
伤心呀,上边的大哥能不能正面帮我解答
|
|
地板#
发布于:2004-03-31 17:29
大致像你说的一样,中断程序执行完后,转入主程序执行啦!其实你漏掉了一个过程。
首先pc向d12的端点索引0out端点发送数据,d12接受数据后产生一个中断,mcu响应中断,把d12的数据读入数据缓存区里,然后清d12的中断标志位,使其能继续接受数据。中断返回。 进入主程序后,主程序从数据缓冲区里读出数据,然后根据数据进行相应的处理。例如有的数据是80 06 。。。。这是一个读取设备描述符的usb标准要求!然后mcu将设备描述符放入0的in端点里,下一个阶段pc将读取in里的数据.... |
|
地下室#
发布于:2004-03-31 17:54
其实用D12我们就是不知道他的枚举过程也无所谓的,因为都已经有源代码了,只要懂协议就行了
|
|
|
5楼#
发布于:2004-04-01 13:49
请教:我是在用汇编语言作程序,你如果有源程序能否给我一份,不胜感激。我的邮箱是:jiangwei19811206@163.com
问一下:枚举过程中,pc机会向mcu发5组数: (1)80 06 00 01 00 00 40 00 GET DESCR (2)00 05 02 00 00 00 00 00 SET ADDRESS (3)80 06 00 01 00 00 12 00 GET DESCR (4)80 06 00 02 00 00 09 00 GET DESCR(CONFIG) (5)80 06 00 02 00 00 FF 00 GET DESCR(CONFIG) 当一组数据发送到mcu中,我是不是要先判断这组数据是以上的那一组数据,然后进行相应的设置,再给pc不同的回应,我可以怎样区分这5组数据,常规的方法是什么?请教! 我现在遇到一个问题,就是我从pc机中接收到80 06 00 01 00 00 40 00,然后我将返回18个字符,但是我怎样知道,这18个字符被pc成功接受,用Bus Hound能看到了吗? 还有,是mcu先收到端点0 in 中断后,mcu在向d12中送数据(18个字符),还是先往d12 fiio中送数,然后mcu再收到端点0 in 中断,数据在什么时候从d12传向pc的?? |
|
6楼#
发布于:2004-04-01 14:35
(1)你这些是设备请求区分他们是controlData这个数据结果的devicerequest.bmrequesttype成员区分的!!!
(2)bushound能看到!! (3)先传数,然后收到中断. |
|
7楼#
发布于:2004-04-01 15:15
多谢指教,不过我没明白"你这些是设备请求区分他们是controlData这个数据结果的devicerequest.bmrequesttype成员区分的!"这句话的意思。请再次指教,谢!
|
|
8楼#
发布于:2004-04-01 15:32
在枚举过程中mcu有没有可能收到与5组描述符均相同的其他一组数据,我收到的好像就不是。
|
|
9楼#
发布于:2004-04-01 17:21
如下区分:
那5个请求分成两组: 1,获得描述符get_descr, 对应的bRequest号是0x06,然后进入后根据wValue的不同区分是设备描述符(0x0001)还是配置描述符(0x0002)然后再根据wLength的长度来返回数据给主机,分别是0x40-返回8字节或者18字节,0x12-返回18字节,0x09-返回9字节,0xff-返回全部的配置描述符。 2,设置地址set_address,对应的bRequest号是0x05,那个0x02时主机分配给你的设备的地址。 3,最后你还会收到一个set_config,00 09 01 00 00 00 00 00 09是bRequest号,01是配置号。 详细的说明参考usb2.0协议第9章第6节。 [编辑 - 4/1/04 by jinghuiren] |
|
10楼#
发布于:2004-04-01 17:38
请教:在枚举过程中mcu有没有可能收到与5组描述符均相同的其他一组数据,我收到的好像就不是。
|
|
11楼#
发布于:2004-04-02 14:38
请教请教!!!!!!!!!!!!
|
|