USB是个常用的接口。很多设备都使用了USB协议,而这些设备都被分好类,而且各自使用的上层协议又有所不同,如下图所示。

最常见的设备类协议是海量存储器的Bulk-Only协议(又叫BBB协议)。而这本要叙述的是Still Image Capture(静态图像捕捉)类协议(PIMA 15740,即ISO 15740),手机就属于Still Image Capture类。

Still Image Capture设备可以使用3种传输方式,其中默认端点使用的是控制传输,两个其它端点用于Bulk In和Bulk Out传输,最后再开一个端点用于Interrupt In传输,如下图所示。

各传输方式的用途,如下图所示。

控制传输:主机发送请求,从机返回设备当前状态。

块传输(Bulk Out):主机发送命令块或数据。

块传输(Bulk In):主机接收应答或数据。

中断传输:主机接收事件。

主从机通信过程中的状态转换图,如下图所示。

Still Image Capture设备类也使用了Bulk-Only协议来传输数据。

把Bulk In和Bulk Out看成一个整体,并把它想象成一个Bulk管道(此管道并非真实存在),那么主从机传输的数据都从这个管道中流入或流出,如下图所示。

PIMA15740中使用的Code(包括操作码、应答码、事件码等)在控制传输、块传输、中断传输中都是通用的。

在PIMA15740中,可以使用Bulk Out发送以下Data Set,其中Operation Code、Session ID、Transaction ID均在协议中有所介绍,而下面5个参数,则是不固定的,比如我发一个OpenSession的命令,一共16个Byte,后面带4个参数。而发一个GetDeviceInfo命令,一共12个Byte,后面不带参数。更详细的介绍,可以参看协议。

尽管那么多USB设备类自立门派,但也不用担心它的复杂性,因为它弄的协议都是非常简单的。

USB Still Image Capture设备类相关推荐

  1. USB 设备类协议入门【转】

    本文转载自:http://www.cnblogs.com/xidongs/archive/2011/09/26/2191616.html 一.应用场合 USB HID类是比较大的一个类,HID类设备属 ...

  2. stm32f103gd32的usb虚拟串口,打印类printer组合设备

    stm32f103&gd32的usb虚拟串口+打印类printer组合设备@TOC stm32f103&gd32的usb虚拟串口,打印类printer组合设备 由于gd32和stm32 ...

  3. USB-IF发布MIDI设备2.0版USB设备类规范

    最新更新对USB设备类进行了定义,以支持下一代MIDI设备 俄勒冈州比弗顿--(美国商业资讯)--USB技术发展和普及的支持组织USB实施者论坛(USB Implementers Forum, USB ...

  4. USB HID 设备类协议入门

    一.应用场合 USB HID类是比较大的一个类,HID类设备属于人机交互操作的设备.用于控制计算机操作的一些方面,如USB鼠标,USB键盘,USB游戏操纵杆,USB触摸板,USB轨迹球.电话拨号设备. ...

  5. 【USB】USB设备类代码表(USB Class Code)

    USB设备类代码表官网链接:http://www.usb.org/developers/defined_class USB defines class code information that is ...

  6. USB2.0 设备类代码表

    官网链接:https://www.usb.org/defined-class-codes USB定义了设备类的类别码信息,它的功能包括:可以用来识别设备并且加载设备驱动.这种代码信息有包含Base C ...

  7. USB及手机平板设备插拔响应解决方案

    USB及手机平板设备插拔响应解决方案 (一).基本原理:WM_DEVICECHANGE消息响应 一般WM_DEVICECHANGE只发给顶层窗口.你可以自己创建一个隐藏的顶层窗口来接收这个消息. (二 ...

  8. STM32 USB复合设备,USB键盘+自定义HID设备

    上面是我的微信和QQ群,欢迎新朋友的加入. 最近研究USB复合设备 主要是把键盘和电脑音量控制两个东西给合并成一个设备 首先要知道的一点的是,不论是键盘.鼠标.或者这个标准的HID用户控制设备,本质都 ...

  9. Linux设备模型组件-类设备-设备类及subsystem

    Linux设备模型   一.sysfs文件系统: sysfs文件系统是Linux2.6内核引入的,它被看成是与proc.devfs和devpty等同类别的文件系统,sysfs文件系统也是一个虚拟文件系 ...

  10. 字符设备驱动高级篇4——设备类(自动创建和删除设备文件)相关代码分析

    以下内容源于朱有鹏<物联网大讲堂>课程的学习整理,如有侵权,请告知删除. 主要涉及class_create和device_create函数. 1.sys文件系统简介 (1)sys文件系统的 ...

最新文章

  1. 白帽渗透测试的36条军规
  2. mysql错误用法insert into where
  3. matlab 混合C++编程mex方式初级入门
  4. 常用的生物学数据库及网站介绍,你都了解了吗?
  5. 看到一个暴强的翻译,闲的蛋疼,写个c#版的
  6. PMON和SMON的功能
  7. 比特币链上活跃度下降,近24小时交易额约为1050.57亿美元
  8. 获取客户端的IP地址
  9. 注解@CrossOrigin详解
  10. 前端基础8:HTML5新增标签及CSS3新属性 viewport 动画
  11. postfix邮件队列管理
  12. python做excel自动化-python操作excel让工作自动化
  13. linux常用文件及作用总结(profile/.bashrc等)
  14. 数值分析(3)-多项式插值: 牛顿插值法
  15. JS规则 是非颠倒(逻辑非操作符)!是逻辑非操作符,也就是不是的意思,非真即假,非假即真...
  16. 二元logistic模型案例_logistic回归分析案例
  17. 黑马学习之全平台听歌神器
  18. Ubuntu20.04 + ROS Noetic 安装 Projectory Dave 仿真环境
  19. anaconda安装python3.6_Windows10配置Anaconda+Python3.6+TensorFlow+PyCharm
  20. 首批!工信部下达2021年国家工业专项节能监察任务,涉及270 个数据中心(附名单)...

热门文章

  1. 金蝶KIS旗舰版7.03 KIS旗舰版7.01 金蝶KIS专业版16.04 KIS专业版16.01 KIS商贸版9.04 KIS商贸版9.01 金蝶K3 15.1 云星空Cloud7.6企业版标准版
  2. 深圳学校积分计算机,深圳计算机 初级证书入户积分吗,看这里就知道了!
  3. 生活中的十大心理学现象
  4. 【知识兔】自学Excel之4:窗口视图控制
  5. 远程桌面连接:系统管理员已限制你登录的计算机处理方法
  6. safri 对于display:block;的元素显示不出来 其他所有浏览器均正常
  7. 超全Python图像处理讲解(多图预警)
  8. ETL工作经验分享(1)
  9. 软件项目确立的几个步骤
  10. JAVA爬虫天眼查、启信宝...企业信息查询网站