当前位置: 技术问答>linux和unix
关于嵌入式LINUX设备与WINDOWS PC进行USB通信的问题
来源: 互联网 发布时间:2015-12-04
本文导语: 小弟我的方案是:在嵌入式LINUX设备端,加载LINUX标准驱动,将USB设备当作设备文件,使用write,read函数进行通讯;在安装WINDOWS的PC端,安装公司自行编制的驱动,也将USB设备当作设备文件,使用WriteFile,ReadFile进行通讯....
小弟我的方案是:在嵌入式LINUX设备端,加载LINUX标准驱动,将USB设备当作设备文件,使用write,read函数进行通讯;在安装WINDOWS的PC端,安装公司自行编制的驱动,也将USB设备当作设备文件,使用WriteFile,ReadFile进行通讯.现在存在如下情况,使得通讯过程不可靠:
1.通讯时,一帧数据的最大长度不会超过32字节,如果越过,会分成若干帧进行传输;
2.一方数据发送成功后,如果另一方没有及时接收,通讯数据会丢失;
请问,这是哪一块存在问题呢,是否LINUX下以设备文件方式操作USB设备,其特性就是如此呢.
欢迎大家讨论.
1.通讯时,一帧数据的最大长度不会超过32字节,如果越过,会分成若干帧进行传输;
2.一方数据发送成功后,如果另一方没有及时接收,通讯数据会丢失;
请问,这是哪一块存在问题呢,是否LINUX下以设备文件方式操作USB设备,其特性就是如此呢.
欢迎大家讨论.
|
1.通讯时,一帧数据的最大长度不会超过32字节,如果越过,会分成若干帧进行传输;
ANSWER:很有可能是驱动层(设备端或PC端)的限制,只能改进驱动层.
2.一方数据发送成功后,如果另一方没有及时接收,通讯数据会丢失;
ANSWER:不一定是数据丢失,很有可能是数据覆盖,可以改进协议来避免.
ANSWER:很有可能是驱动层(设备端或PC端)的限制,只能改进驱动层.
2.一方数据发送成功后,如果另一方没有及时接收,通讯数据会丢失;
ANSWER:不一定是数据丢失,很有可能是数据覆盖,可以改进协议来避免.
|
肯定是你自己通信协议的问题。2.4, 2.6下的USB不会有问题。