基于OHCI的USB主机 —— OHCI(自定义数据结构)

简介:
OHCI 接口层用到的数据结构定义如下,这些数据定义都是我自己的程序里所使用的自定义数据结构,是根据OHCI的标准与程序的处理方式进行定义的:
/**

 * USB 设备信息

 */

typedef   struct  _USB_DEV_INFO

{

     unsigned   char   addr ;          //!< USB 设备地址

     unsigned   char   bulkInPort ;    //!<  批量出端口号

     unsigned   char   bulkOutPort ;   //!<  批量入端口号

} USB_DEV_INFO ;

 

常量定义:
#define  TD_SETUP         0x0

#define  TD_OUT           0x1

#define  TD_IN            0x2

#define  TD_DELAY_INT     0x2

 

#define  ED_SETUP         0x0

#define  ED_OUT           0x1

#define  ED_IN            0x2

 

#define  USB_CMD_WAIT_OVER   1

#define  USB_CMD_WAIT_OVER_2 2

#define  USB_CMD_OVER        100

 

#define  USB_CMD_TYPE_BULK_WRITE 1

#define  USB_CMD_TYPE_BULK_READ  2

#define  USB_CMD_TYPE_BULK_CMD   3

#define  USB_CMD_TYPE_CTRL_READ  4

#define  USB_CMD_TYPE_CTRL_WRITE 5





本文转自 tywali 51CTO博客,原文链接:http://blog.51cto.com/lancelot/244578,如需转载请自行联系原作者
目录
相关文章
|
7月前
|
存储 缓存 并行计算
C/C++ 数据结构设计与应用(二):自定义数据结构的设计 (Design of Custom Data Structures)
C/C++ 数据结构设计与应用(二):自定义数据结构的设计 (Design of Custom Data Structures)
144 0
|
2月前
|
算法 Java 测试技术
数据结构 —— Java自定义代码实现顺序表,包含测试用例以及ArrayList的使用以及相关算法题
文章详细介绍了如何用Java自定义实现一个顺序表类,包括插入、删除、获取数据元素、求数据个数等功能,并对顺序表进行了测试,最后还提及了Java中自带的顺序表实现类ArrayList。
35 0
|
5月前
|
存储 安全 Java
如何在Java中实现自定义数据结构:从头开始
如何在Java中实现自定义数据结构:从头开始
|
5月前
|
存储 Java 开发者
如何在Java中实现自定义数据结构
如何在Java中实现自定义数据结构
|
算法 安全 Java
【算法与数据结构】3 知行合一,线性查找的自定义类测试
【算法与数据结构】3 知行合一,线性查找的自定义类测试
【数据结构实践】手把手带你快速实现自定义二叉树
什么是树 在学习二叉树之前.我们先来了解什么是树,跟我们现实生活中的树有什么联系,又有什么区别,树是一种很简单的结构,他是非线性的结构.在这种结构中,所有的元素之间的关系具有明显的层次特性,节点(Node)是树的基本构成部分,每个节点只有一个前件,成为父节点,没前件的父节点只有一个,那就是树的根节点(Root).每个节点可以有多个后件,这就是树的子节点(Children).没有后件(没有子节点)的节点称为叶子节点(Leaf Node),在树结构中,一个节点拥有的后件(子节点)个数称为节点的度,最大的度称为树的度,最大的层次(Level)称为树的深度(Height).
149 1
|
IDE 开发工具 C语言
C++菜鸟学习笔记系列(5)——自定义数据结构
C++菜鸟学习笔记系列(5)——自定义数据结构
164 0
C++菜鸟学习笔记系列(5)——自定义数据结构
|
Python
【数据结构实践】简单实现Python自定义队列
队列:跟数组一样,队列中的数据也是呈线性排列的,它是一种先进先出(FIFO: First in First Out)的线性结构,队列是只允许在一端进行插入操作,而在另一端进行删除操作的线性表.即在队列的尾部入队,在队列的头部出队。 在队列中添加和删除数据的操作分别是在两端进行的。顾名思义,他就和我们现实生活中的‘队列’是一样的,你可以把它想象操场上排成一列的队伍,在队列中,操作总是从第一名开始往后进行,而新来的人只能排在队尾。先来的数据先处理是一种很常见的思路,所以队列的应用范围非常广泛。就比如:疫情区间,你去做核酸,你先去的话你排在前面,你后面去的只能排在别人后面,做完核酸的人往前面走,相当
430 1
|
存储 Python
【数据结构实践】手把手带你实现 Python 自定义数组
无论是任何语言,数组或者类似数组的数据结构永远是计算机编程语言不可或缺的基本数据结构,有了数组的存在更有利于我们的程序对数据的存储和操作.本文将从面向对象的入手,实现自定义数组类,实现数组的基本操作和运算等功能 1、数组(Array)是有序的元素序列。若将有限个类型相同的变量的集合命名,那么这个名称为数组名。 2、组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。 3、用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按有序的形式组织起来的一种形式。这些有序排列的同类数据元素的集合称为数组。也就是说数组是存储相同类型数据
837 1
|
存储 Python
【数据结构实践】手把手带你简单实现Python自定义栈
栈又叫堆栈,它是一个有序集合.栈跟队列一样,也是一种呈线性排列的数据结构,而且两者极其相似,队列是先进先出(FIFO),而栈是后进先出(LILO).即像栈这种结构是最后添加的数据最先被取出,而且在这种结构中,我们只能访问最新添加的数据.栈就像一摞书,拿到新书时,我们就会把新书放在书堆上,取书的时候也只能从最上面的新书开始取.可看出它是是一种操作受限的线性表,所以往栈中添加和删除元素都是发生在同一端,通常称作发生操作的这一端为顶部,对应的端为底部.其实栈更像一个桶,你把东西放进桶里,你每次只能从最上面去拿,因为底下是封闭的,如果你想取下面的东西,就必须得先把上面的东西拿走.将目标物体暴露在最上面
230 0