当前位置:编程学习 > VC++ >>

利用VC++编写访问USB设备的程序,是基于通信协议的。拿到了一个程序,现在想要设定usb设备的时间。

程序中有建立数据帧函数BuildFrame(INT16U FrameType,INT8U InfoType,INT8U InfoCode,INT8U* pBufOut,INT8U* pParaBuff/*= NULL*/,int nParaSize /*= 0*/ ) ,还有发送函数Send(LPVOID lpBuffer, int nNumberOfBytesToWrite/*,BOOL bNull*/),如果要是现在写一个按钮的消息函数(这个按钮就是设置功能)应该怎么写呢?
答案:首先,我认为你的方法是不行的,原因是:USB总线系统是需要初始化的,这个初始化过程中,最重要的两步是给每个链接在BUS上的设备分配一个ID,然后所有的设备都通过这个ID来判断是否是给自己的数据包,然后会推选1个设备作为Controller,负责整个总线的控制,如果象你那样发送方波,可能从物理层上向USB总线传输信号,但是在PC或者其他设备的USB端是不会接收你的信号的,这个就是为什么都需要服从规范的原因了,另外就是由于没有controller,所以无法解决竞争的问题.
如果按LZ说直接传送方波的话,我想串口更适合LZ,与其为LZ的设备写个USB驱动,不如就直接通过串口传输了呵呵.

至于USB shiffer,因为你的USB总线没有初始化,controller没有决定,所以无法从controller那里获得总线设备列表,当然就不行了,这个好比LZ与我,LZ用法语和我说话,但是我却用英语来解释,当然是解释不通的呵呵.

上一个:Vc++程序,release执行结果和debug下的不同,dubug下得结果是正确的
下一个:VC++工程找找一个类A的所有子类所在的文件

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,