USB数据共享、联机线、联网线编程接口(API)
2013-10-19
关键字:USB数据共享、键鼠共享器、USB联机线、USB联网线、USB点对点通讯、USB通讯编程接口、USB共享线、USB互联线、USB对拷线、USB对联线、USB互联线、USB文件传输、USB数据传输、双机互联、USB。
一、概述
当前计算机的USB口已很普遍,USB2.0理论传输速率最高为480Mbps,即60MB/s,USB3.0理论传输速率最高为5Gbps,即625MB/S。目前USB口主要用于U盘、USB硬盘、USB键盘、USB鼠标、USB摄像头、USB光驱等。
其实,增加一条USB联机线(也有叫USB联网线、共享线、互联线、对拷线、对联线)利用USB口还可实现很多基于USB口的光驱共享、数据共享、网络共享、联网、键鼠共享、剪贴板共享、档案共享、USB点对点通讯、USB点对多点通讯、小型分布式服务器等。
市场上的联机线(也有叫USB联网线、共享线、互联线、对拷线、对联线)都是配置专用软件实现联网、数据共享、键鼠共享、剪贴板共享、USB设备共享等功能,它们均不提供编程接口(API),这给那些想把数据共享、USB联网、USB设备共享等功能嵌入自己程序的开发人员造成了障碍,开发人员也不能通过USB口实现自己的点对点(或点对多点)通讯。基于这些开发人员的需求,石家庄市众智电子科技开发中心开发了usb联机线编程接口(API),为开发人员开发自己的基于联机线的各种应用提供支持。有需要的朋友请联系:0311-87024917。
二、众智USB联机线API
/*****************************************************************************
Filename: zzUsbAPI.h
Function: usb联机线API接口。
Ver1.0 2012.6.28
Editor: LiuYaoKai
Date: 2012.6.28
Copyright(C) by LiuYaoKai 13803113171 0311-87024917
******************************************************************************/
//功能描述:初始化API, 获取设备ID,获取包尺寸,包尺寸最大为64K
//输入参数:无
int u2u_init();
//打开USB联机线设备。返回true成功,false失败
BOOL u2u_Open();
//功能描述:从usb接收数据
//输入参数:lpBuf 接收数据的缓冲区指针,接收缓冲区的尺寸应当大于等于包尺寸。
// len 接收的数据长度
// ret 用于返回错误代码或接收缓冲区内剩余的未处理包的数量。
BOOL u2u_RecvData(LPBYTE lpBuf, int& len, int& ret );
//功能描述:从usb发送数据
//输入参数:lpBuf 发送数据的缓冲区指针,发送缓冲区的尺寸应当小于等于包尺寸。如果
// lpBuf=NULL, 该函数返回发送缓冲区内剩余的未处理包的数量。
// len 发送的数据长度。
// ret 用于返回错误代码或发送缓冲区内剩余的未处理包的数量。
BOOL u2u_SendData(LPBYTE lpBuf, int len, int& ret );
//关闭usb联机线设备。
void u2u_Close();
//卸载API。应当先关闭usb联机线设备,再执行此操作。
void u2u_Exit();
//获取api操作的最后一个错误的错误代码
DWORD u2u_getLastErr();
//清空发送和接收缓冲区
void u2u_FreeTxRxBuf();
三、USB联机线简介
USB联机线和普通的USB线不同,他是一种中间带芯片的线。因为USB总线系统中只能有一个主机,通常电脑的USB接口都是主机接口,所以不能简单的把它们连接在一起,之间需要一个转换,中间的芯片就是完成这个转换的,这才有USB联机线的产生,USB联机线中间有个小疙瘩,或者一端类似U盘,有的联机线本身也可做U盘使用。
1条USB联网线 = 2块网卡+1条网线,且速率比100M网卡快得多。
USB联机线的用途:
。。。。。。。