
linux-usb
charschu
你如果出色地完成了某件事,那你应该再做一些其他的精彩事儿。不要在前一件事上徘徊太久,想想接下来该做什么,让科技与艺术完美的结合,永无止境
展开
-
zynq usb dwc3中断事件异常
最近在调试zynq的 usb ,发现一个问题,给pc bulk传输吐log ,传输速率1MB左右速率发包,发现会传输终止, 调用epsend接口会失败 原因在于没有收到传输完成事件,收到连续2次not ready 事件,这种情况usb busy标志没有清除,结果send会进入update thansfer 分支指令,但是此时usb hardware已经释放了source index,会挂死掉这里,这样说明硬件已经发送了完成事件,但是事件buffer里面数据不对,没有实时更新 ...原创 2022-08-30 21:34:21 · 974 阅读 · 5 评论 -
USB gadget设备驱动解析(1)
利用Linux USB gadget设备驱动可以实现一些比较有意思的功能,举两个例子: 1、一个嵌入式产品中的某个存储设备,或是一个存储设备的某个分区,可以作为一个U盘被PC;设别,从而非常方便的完成文件交互,这个功能被广泛的应用于手机、数码相机等产品中。2、一个嵌入式设备通过USB连接到你的PC后,在你的PC端会出现一个新的网络连接,在嵌入式设备上也会有一个网卡设备,你可以配置它们的IP地址,并转载 2015-01-07 10:29:50 · 562 阅读 · 0 评论 -
Linux USB gadget设备驱动解析(2)---驱动调试
Linux USB gadget设备驱动解析(2)---驱动调试作者:刘老师, 华清远见嵌入式学院金牌讲师。这一节主要把在实现“linux模拟U盘功能”过程中的一些调试过程记录下来,并加以解析。一、背景知识 1、USB Mass Storage类规范概述 USB 组织在universal Serial Bus Mass Storage Clas转载 2015-01-07 10:25:54 · 832 阅读 · 0 评论 -
inux USB gadget设备驱动解析(4)--编写一个gadget驱动
作者:刘老师,华清远见嵌入式学院讲师。一、编写计划通过前面几节的基础,本节计划编写一个简单的gadget驱动。重在让大家快速了解gadget驱动结构。上节中简单介绍了zero.c程序。这个程序考虑到了多配置、高速传输、USB OTG等因素。应该说写的比较清楚,是我们了解gadget驱动架构的一个非常好的途径。但把这些东西都放在一起,对很多初学人员来说还是不能快速理解。那就再把它简化一些转载 2015-01-07 10:18:21 · 611 阅读 · 0 评论 -
USB gadget设备驱动解析(3)
USB gadget设备驱动解析(3)作者:刘老师,华清远见嵌入式学院讲师。Linux USB 设备端驱动有两部分组成。一部分是USB 设备控制器(USB Device Controller, UDC)驱动、另一部分是硬件无关的功能驱动(如:鼠标、u盘、usb串口、usb网络等);也可以分为3层的,分别是:Controller Drivers、Gadget Drivers、Upper La转载 2015-01-07 10:07:48 · 588 阅读 · 0 评论 -
Linux下的硬件驱动——USB设备(下)(驱动开发部分)
前言在上篇《 Linux下的硬件驱动--USB设备(上)(驱动配制部分)》中,我们知道了在Linux下如何去使用一些最常见的USB设备。但对于做系统设计的程序员来说,这是远远不够的,我们还需要具有驱动程序的阅读、修改和开发能力。在此下篇中,就是要通过简单的USB驱动的例子,随您一起进入USB驱动开发的世界。回页首USB驱动开发在掌握了USB设备的配置后,对于程序员,转载 2014-12-31 11:04:22 · 386 阅读 · 0 评论 -
Linux下的硬件驱动——USB设备(上)(驱动配置部分)
前言USB是英文"Universal Serial Bus"的缩写,意为"通用串行总线"。是由Compaq(康柏)、DEC、IBM、Intel、NEC、微软以及Northern Telecom(北方电讯)等公司于1994年11月共同提出的,主要目的就是为了解决接口标准太多的弊端。USB使用一个4针插头作为标准插头,并通过这个标准接头,采用菊花瓣形式把所有外设连接起来,它采用串行方式传输数据转载 2014-12-31 11:01:50 · 2061 阅读 · 0 评论