USB的包结构及包分类】的更多相关文章

USB的传输总是低位在前,高位在后. USB的传输方向:从设备到主机的数据为输入:从主机到设备的数据叫做输出. 1. 包结构 以同步域开始,紧跟着一个包标识符PID(Packet Identifier),最终以包结束符EOP(End of Packet)结束这个包. 同步域 作用:① 通知USB串行接口引擎数据要开始传输:② 同步主机和设备之间的时钟. 格式:① 全速/低速设备的同步域为00000001:② 高速设备的同步域为31个0,后面跟1个1:注意:这是对发送端的要求,接收端在解码时,0的…
USB是串行总线,所以数据是一位一位地在数据线上传送的.既然是一位一位地传送,就存在着一个数据位先后的问题.USB使用的是LSB在前的方式,即先出来的是最低位数据,接下来是次低位,最后是最高位(MSB).一个包,又被分成了很多个域(field),而LSB.MSB就是以域为单位来划分的. USB总线上传输数据是以包为基本单位的.一个包被分成不同的域.根据不同类型的包,所包含的域是不一样的.但是不同的包有个共同的特点,就是都要以同步域开始,紧跟着一个包标识符PID(Packet Identified…
一直想把这个流程整理一下. 包结构: 包 对(datacrc+protoID+dataSize)组成的byte[] 进行crc计算而得到 对(数据内容)进行crc计算而得到 协议号 数据内容的字节长度 数据内容 字段 headcrc datacrc protoID dataSize data 类型 uint uint ushort ushort byte[] 字节数 4 4 2 2 dataSize crc校验 问:TCP协议中,底层做了校验,那通信时我们还有必要再进行有CRC或者其他校验吗?…
作者:郭嘉 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell 一 JAR包结构分析 JAR(Java Archive FIle)Java归档文件,是Java标准的文档格式,是一个或多个Java字节码文件的打包压缩文件.採用常见的ZIP压缩算法,和ZIP文件十分相似,能够直接解压. JAR文件主要用来压缩和公布字节码文件,并且还用于部署和封装库.组件和插件程序.并…
用vue-cli创建的项目带有自动配置好的包结构,包结构都是固定的. 关于详细的解释,网上多得是,只说下最重要的内容 1.vue项目包结构和端口号配置 这里笔者下了个HBuilderX来写代码. 2.vue开发写什么? vue中编写的主要是.vue文件,如App.vue文件.大概结构如下图说明: 该vue文件的加载写在了main.js文件中,简要解析如下图: 仔细看来和当前访问的localhost:8080的页面的内容对不上,那么继续看下路由文件写了什么: 这里,路由文件指明了根路径下要加载一个…
今日内容概要 celery介绍,架构 celery 快速使用 celery包结构 celery执行异步任务 celery执行延迟任务 celery执行定时任务 django中使用celery 定时更新轮播图接口 内容详细 1.celery介绍,架构 # celery: 分布式(放在多台机器)的 异步任务 框架 Celery是一个简单.灵活且可靠的,处理大量消息的分布式系统 Celery is a project with minimal funding, so we don't support…
USB包类型和传输过程  USB是一种串行总线,因此数据都是一位一位传输的,如同串口那样,但是USB在真实物理电路上却不是TTL电平,而是一种差分信号采用NRZI编码,就是用变化表示0,不变表示1,同时在USB中数据时低字节先发送的即LSB.USB中的数据交互最小单位是包一个包由许多域组成,但是统一的是每个包都有同步域开始,然后紧接着PID,这里的PID不是指PID,而是指类似包命令码这么一个意思.PID只用到了低四位,高四位是低四位的取反用于校验PID字段,常见的PID由USB标准中查到如下,…
最近查看JDK源码时,无意间发现几个类在陌生包里:com.sun.*.sun.*.org.*,google了一把总结了下以备他人搜索,如内容有误欢迎指正!   Jre库包含的jar文件(jdk1.6):resources.jar.rt.jar.jsse.jar.jce.jar.charsets.jar.dnsns.jar.localedata.jar等共10个jar文件,其中resource.jar为资源包(图片.properties文件):rt.jar为运行时包,子包结构如下图:      …
    JavaScript缺少包结构.CommonJS致力于改变这种现状,于是定义了包的结构规范(http://wiki.commonjs.org/wiki/Packages/1.0 ).而NPM的出现则是为了在CommonJS规范的基础上,实现解决包的安装卸载,依赖管理,版本管理等问题.require的查找机制明了之后,我们来看一下包的细节.     一个符合CommonJS规范的包应该是如下这种结构: 一个package.json文件应该存在于包顶级目录下 二进制文件应该包含在bin目录下…
本文从JDK源码包中截取出concurrent包的所有类,对该包整体结构进行一个概述. 在JDK1.5之前,Java中要进行并发编程时,通常需要由程序员独立完成代码实现.当然也有一些开源的框架提供了这些功能,但是这些框架依然没有JDK自带的功能使用起来方便. 而当针对高质量Java多线程并发程序设计时,比如使用Java之前的wait().notify()和synchronized等,需要考虑性能.死锁.公平性.资源管理以及如何避免线程安全性方面带来的危害等诸多因素,往往会采用一些较为复杂的安全策…