用vc++实现usb接口通信编程的一般步骤

用vc++实现usb接口通信编程的一般步骤,第1张

我来说下我做过的USB通信,我没有做过DSP跟上位机的通信,我只做过ARM类的STM32跟上位机的数据传递,虽然做过但是也不是很 懂,只是略知一二,我来说说我怎么做的吧,我是这么实现的:

USB是个很复杂的协议,你如果完全搞懂,我估计没有几个月专心钻研是不行的,但是如果只是能实现你的这个功能,我估计不是很复杂。

首先来说说USB通信:

USB通信传输方式分为四种:控制,中断,批量,同步传输四种,这个你可以看看网上资料,然后我用STM32通信,因为数据量不是很大,我用的是中断传输方式,但是DSP数据量应该会比较大,不知道中断传输行不行,但是一般问题不大。

传输方式说完了,再说说USB设备类型,你每次插usb设备到电脑上的时候就会有提示,这是一个什么设备,USB设备类型就是说的这个意思,是鼠标还是键盘还是别的什么的,如果你选用标准的类,你就不用自己写上位机(PC)的驱动程序,但是如果不用标准的类,就是用自定义的类就要自己写上层的设备驱动程序,就是所谓的DDK,WDM,WDF什么的,你没写过这方面的还真有点棘手,但是也不一定要写驱动程序,你可以试试有个类叫HID类,这个类在USB通信的时候用的还挺多的,不过这个类也有缺点,这个地方还要说一点,USB还分低速,全速,高速三种,不太了解DSP,不知道他支持什么模式,但是USB20的全速应该至少可以支持的。

USB20全速模式HID用中断方式每秒最多可以传输64KB的数据,不知道能不能达到你的要求,但是我估计一般问题不大了,如果你这歀DSP能支持高速模式,每秒用这种方式可以传输高达22MB的数据,这个速度一般问题不大了。

你可以照着我说的思路,去网上搜搜人家写好的程序,肯定有人做过DSP的USB通信,然后你按照自己的要求改一改,主要应该是USB的设备描述符部分要自己修改,然后可能还要根据自己的电路改改配置什么的,上位机软件网上有源代码的多的是,然后自己摸索摸索,我估计你要是编程水平还可以的话,只是摸索USB,一两个星期完全没有问题,祝你好运!

C# *** 作USB口需要看是什么硬件。

一些硬件虽然使用USB接口和PC通讯,但是它的驱动程序将它模拟成一个COM口、网口或者大容量存储设备。

那么C#完全可以按照COM通讯、网络通讯和文件读写的方法 *** 作这些设备。

关键看你的USB设备的驱动程序。

Private Type HIDP_CAPS

    Usage As Integer

    UsagePage As Integer

    InputReportByteLength As Integer

    OutputReportByteLength As Integer

    FeatureReportByteLength As Integer

    Reserved(16) As Integer

    NumberLinkCollectionNodes As Integer

    NumberInputButtonCaps As Integer

    NumberInputValueCaps As Integer

    NumberInputDataIndices As Integer

    NumberOutputButtonCaps As Integer

    NumberOutputValueCaps As Integer

    NumberOutputDataIndices As Integer

    NumberFeatureButtonCaps As Integer

    NumberFeatureValueCaps As Integer

    NumberFeatureDataIndices As Integer

End Type

interface USB {

public void upload();

public void download();

}

public class UDisk implements USB{

public void download() {

// TODO Auto-generated method stub

Systemoutprintln("正在下载");

}

public void upload() {

// TODO Auto-generated method stub

Systemoutprintln("正在上传");

}

public static void main(String[] args) {

USB U1 = new UDisk();

U1download();

U1upload();

}

}

以上就是关于用vc++实现usb接口通信编程的一般步骤全部的内容,包括:用vc++实现usb接口通信编程的一般步骤、急求关于C# 的USB接口编程、vb 编写一个读USB数据的程序!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9674829.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存