[求助]hcn,我用375控制鼠标,有些行,有些不行,怎么回事?

我用的程序是你们提供的,有两个鼠标总能枚举完成后工作,有一个是偶尔能,但多数是不行,问题都是在下面这一步: get_descr(0x01); //获取设备描述符

在上面这个函数中又包函了下面这个: uint8 get_descr( uint8 type ) /* 从设备端获取描述符 */ { status = 0xff; CH375_WR_CMD_PORT( CMD_GET_DESCR ); /* 主机方式: 控制传输-获取描述符 */ CH375_WR_DAT_PORT( type ); // 描述符类型, 只支持1(设备)或者2(配置) status = wait_interrupt( ); // 等待CH375操作完成 */ if ( status == USB_INT_SUCCESS ) /* 操作成功 */ { len_descr = rd_usb_data( data_buf ); //读描述符 } return( status ); } 问题就在这里了,那些不能枚举的鼠标都在完成下面这两步后

CH375_WR_CMD_PORT( CMD_GET_DESCR ); CH375_WR_DAT_PORT( type );

单片机等不到375操作完成。但是有只是两个鼠标总是能等到,并枚举成功的。 我想不同的鼠标是有点差异,但是我不知道应该修改程序的哪个地方。

你用的是51单片机吗?晶振是多少??


我用的是AVR的,晶振是11。0592m


那你把读写子程序里面的延时加大点,命令与命令,命令与数据之间2US,数据与数据之间1US


只有登录才能回复,可以选择微信账号登录