本人想fpga做个usb hub+键盘的东西,键盘的功能是可以工作了,但是hub的功能一直实现不了,电脑老是提示要搜索hub的驱动程序,我怀疑是描述符配置的不正确,但不知道错在哪里,请高手指点迷津.下面是我的描述符内容:
8'h12;//****************************// 设备描述符的长度
8'h01;// | 设备描述符类型
8'h10;// | usb 代码 USB1.1
8'h01;// |
8'h00;// | usb设备类别
8'h00;// | usb设备子类
8'h00;// \|/ usb设备协议代码
8'h08;// 传输包长度
8'h00;// 厂商标识
8'h00;// 设备描述符 厂商标识
8'h04;// 产品ID号
8'h03;// /|\ 产品ID号
8'h02;// | 产品编码
8'h01;// | 产品编码
8'h01;// | 厂商索引
8'h02;// | 产品索引
8'h00;// | 序列编号
8'h01;//****************************// 配置数目
8'h09;//****************************// 配置描述符长度
8'h02;// | 类型为配置描述符
8'h32;// | 配置、接口、端点描述符的长度
8'h00;// \|/
8'h02;// 配置描述符 接口数目
8'h01;// /|\ 配置值为01
8'h00;// | 配置索引
8'ha0;// | 总线供电,远程唤醒
8'h32;//****************************// 电流100ma
8'h09;//****************************// 接口描述符的长度
8'h04;// | 类型为接口描述符
8'h00;// | 接口号为00
8'h00;// | 可选择的设置为0
8'h01;// | 端点数目为1
8'h09;// | 设备类型为HUB(09)
8'h00;// \|/ (?)设备子类型
8'h00;// Hub 部分 (?)协议类型
8'h00;// /|\ 接口索引号为00
8'h07;// | 端点描述符的长度
8'h05;// | 类型为配端点述符
8'h81;// | 输入端点,端点号01
8'h03;// | 中断传输
8'h01;// | 中断传输的包大小为1byte
8'h00;// |
8'hff;//****************************// 中断传输间隔255ms
8'h09;//****************************// 接口描述符的长度
8'h04;// | 类型为接口描述符
8'h01;// | 接口号为01
8'h00;// | 可选择的设置为0
8'h01;// | 端点数目为1
8'h03;// | 设备类型为HID(03)
8'h01;// | Boot Interface
8'h01;// | 协议类型为键盘
8'h01;// \|/ 接口索引号为01
8'h09;// HID描述符的长度
8'h21;// 类型为HID描述符
8'h10;// 键盘 部分 USB代码为USB1.1
8'h01;//
8'h00;// 国家代码为00
8'h01;// /|\ 包含描述符的个数,为01个
8'h22;// | 描述类型为22(报表类型)
8'h5f;// | 包含的报表描述长度为5f
8'h00;// |
8'h07;// |
8'h05;// | 端点描述符的长度
8'h82;// | 输入端点,端点号02
8'h03;// | 中断传输
8'h08;// | 中断传输的包大小为8byte
8'h00;// |
8'h14;//****************************// 中断传输间隔14hms
8'h09;//****************************// hub描述符的长度
8'h29;// | 类型为hub描述符
8'h08;// | hub有8个下游端口
8'h0e;// \|/ hub作为整个设备的一部分
8'h00;// Hub描述符,总线供电
8'h16;// /|\
8'h64;// |
8'h00;// |
8'hff;//****************************//
8'h04;//****************************//
8'h03;// \|/ 字符串描述符(语言类型09 04)
8'h09;// /|\
8'h04;//****************************//
8'h04;//****************************//
8'h03;//字符串描述符(厂商代号)
8'h41;//
8'h00;//****************************//
8'h18;//****************************//
8'h03;// |
8'h55;// |
8'h00;// |
8'h55;// |
8'h00;// |
8'h55;// |
8'h00;// |
8'h55;// |
8'h00;// |
8'h55;// |
8'h00;// |
8'h55;// \|/
8'h00;// 字符串描述符(产品)
8'h55;//
8'h00;// /|\
8'h55;// |
8'h00;// |
8'h55;// |
8'h00;// |
8'h55;// |
8'h00;// |
8'h55;// |
8'h00;//****************************//
8'h04;//****************************//
8'h03;// |
8'h31;// |
8'h00;// \|/
8'h32;// 字符串描述符(产品编码)
8'h00;// /|\
8'h33;// |
8'h00;// |
8'h34;// |
8'h00;//****************************//
8'h05;//****************************//
8'h99;// |
.
.
8'h81;// |
8'h09;// \|/
8'h75;//
8'h00;// HID报表描述符
8'h95;//
8'h04;// /|\
8'h81;// |
8'h04;// |
.
.
8'h11;// |
8'h02;// |
8'h70;// |
8'h00;//****************************// |