我想请问一下,PC端调用获取这俩个描述符的函数,单片机端需要写入GET_DESC命令么。但是我看了一下资料,说这个命令是在主机方式下使用的。现在我的375是作为设备、内置固件模式下使用的。PC的这俩个函数是直接被375处理掉了?还是被内置固件处理掉了?期待高手答复[Emot]6[/Emot][Emot]6[/Emot][Emot]27[/Emot]
被内置固件处理了。
这个命令是主机发起的。如果你使用的是设备模式(例如CH375/2和PC通讯,CH375即为设备模式),设备只要对主机的命令进行响应,如果你用的是内部固件模式,则这个命令是CH372自动处理的。
非常感谢俩位的回复,本人收获颇多。 可是我用贵公司的简化版的驱动程序,在PC端先打开设备。再调用获取设备描述符和获取配置描述符俩个函数。但是返回结果却是这俩个操作均失败。再次试的时候,获取配置描述符这个函数返回成功,但是返回数据长度为0。.我想请问下,这是怎么回事,配置描述符需要PC端应用程序中发送俩次请求么?。还有就是,如果俩个都获取到了数据,这返回来的缓冲区中仅仅是这些描述符信息?抑或是这种结构?typedef struct _WIN32_COMMAND { // 定义WIN32命令接口结构 union { ULONG mFunction; // 输入时指定功能代码或者管道号 NTSTATUS mStatus; // 输出时返回操作状态 }; ULONG mLength; // 存取长度,返回后续数据的长度 union { mUSB_SETUP_PKT mSetupPkt; // USB控制传输的建立阶段的数据请求 UCHAR mBuffer[ mCH375_PACKET_LENGTH ]; // 数据缓冲区,长度为0至255B }; } mWIN32_COMMAND, *mPWIN32_COMMAND;
需要将返回来的缓冲区转换成mPWIN32_COMMAND型?再取mBuffer数组中的内容?
我分不清到底是哪种。期待专家指导。
不需要获取2次,要不要转成mPWIN32_COMMAND得看驱动和DLL中的代码
到现在我的还是有问题。郁闷