精华内容
下载资源
问答
  • USB otg
    2021-06-06 15:01:03

    一、检查HW原理图,确认是否支持OTG功能(vbus是否供上电,IDDIG pin连接是否正确)二、若HW确认支持OTG功能,则按照以下方法分别打开USB OTG功能及实现挂载:如

    一、检查HW原理图,确认是否支持OTG功能(vbus是否供上电,IDDIG pin连接是否正确)

    二、若HW确认支持OTG功能,则按照以下方法分别打开USB OTG功能及实现挂载:

    如何打开USB OTG功能:

    1).在alps/mediatek/config/[project]/autoconfig/kconfig/project中打开CONFIG_USB_MTK_OTG和CONFIG_USB_MTK_HDRC_HCD

    CONFIG_USB_MTK_OTG =y

    CONFIG_USB_MTK_HDRC_HCD = y

    2).在dws中设定OTG VBUS对应的输出控制pin配置为GPIO模式,var name为GPIO_OTG_DRVVBUS_PIN。再设定IDDIG pin默认模式为IDDIG,var name为GPIO_OTG_IDDIG_EINT_PIN

    如何实现挂载:

    1).alps/mediatek/config/[project]/init.project.rc起始位置处添加如下内容

    对于KK以前的版本:

    on early-init

    mkdir /mnt/usbotg 0000 system system

    对于KK(包含)以后的版本:

    #需要特别注意的是,这里是要另外添加on init,不是加在on early-init:

    on init

    mkdir /mnt/media_rw/usbotg 0700 media_rw media_rw

    mkdir /storage/usbotg 0700 root root

    ...

    #service加在on boot:

    on boot

    service fuse_usbotg /system/bin/sdcard -u 1023 -g 1023 -w 1023 -d /mnt/media_rw/usbotg /storage/usbotg

    class late_start

    disabled

    #

    # Connectivity related services (Begin)

    #

    2).fstab文件末尾添加如下一行

    对于KK以前的版本:

    修改alps/mediatek/config/[project]/vold.fstab

    dev_mount usbotg /mnt/usbotg auto /devices/platform/mt_usb

    对于KK(包含)以后的版本(注意,这里的fstab文件如果[project]中没有,从common中拷贝一个过来对应修改即可):

    修改alps/mediatek/config/[project]/fstab

    /devices/platform/mt_usb auto vfat  defaults voldmanaged=usbotg:auto

    3).storage_list.xml添加如下一个xml节点

    对于KK以前的版本:

    android:storageDescription="@string/storage_external_usb"

    android:removable="true"

    android:primary="false" />

    对于KK(包含)以后的版本:

    android:storageDescription="@string/storage_external_usb"

    android:removable="true"

    android:primary="false" />

    备注:具体修改哪个路径下的storage_list.xml文件,需要根据ProjectConfig.mk中的resource_overlay_support的值来定

    对于JB3以下版本,

    如果RESOURCE_OVERLAY_SUPPORT的值为generic  ==>>  则修改alps/mediatek/custom/[project]/resource_overlay/generic/frameworks/base/core/res/res/xml/storage_list.xml

    如果RESOURCE_OVERLAY_SUPPORT的值为空  ==>> 则修改alps/framework/base/core/res/res/xml/storage_list.xml

    对于JB3(包含)以上版本,RESOURCE_OVERLAY_SUPPORT的值可根据需要配置为sd_in_ex_otg或sd_ex_otg,则无需再修改该文件

    sd_in_ex_otg或sd_ex_otg分别表示内卡+外卡+otg或外卡+otg

    对应文件分别在alps/mediatek/custom/common/sd_in_ex_otg/resource_overlay/generic/frameworks/base/core/res/res/xml/storage_list.xml或alps/mediatek/custom/common/sd_ex_otg/resource_overlay/generic/frameworks/base/core/res/res/xml/storage_list.xml

    [Attention]

    目前USB OTG功能只支持U盘(FAT格式+一个分区)、Keyboard、Mouse、PTP device,

    更多相关内容
  • USB OTG设计

    2020-07-16 16:44:16
    随着PDA、移动电话、数码相机、打印机等消费类产品的...USB OTG标准在完全兼容USB2.0标准的基础上,增添了电源管理(节省功耗)功能,它允许设备既可作为主机,也可作为外设操作(两用OTG)。OTG两用设备完全符合USB2.0
  • 针对一般USB装置只能在PC机周围进行数据通信的限制,提出了基于USB OTG接口与STM32微控制器相结合的智能通信的设计方法。该方法是在基于Cortex内核的32 bit RAM芯片STM32F107上集成USB OTG接口上实现,它利用了STM32...
  • 由于USB总线是主从式结构,且设备的主从特性在设备设计时就已经固定,这样...本文介绍一款USB OTG IP核的设计与实现,该设备控制器可作为IP核用于SoC系统中,完成与主机控制器的通信,并能与普通的USB从设备进行通信。
  • 本文以TD1120为例,分析了嵌入式应用中USB OTG控制器的功能特性,以及基于TD1120的软件实现。  移动设备和嵌入式市场的爆炸性增长促进了通过公共标准接口在不同设备之间进行方便的数据共享需求的增长。...
  • USB OTG.rar

    2019-08-30 16:44:03
    USB OTG v2.0_ Amendment final_052609 USB_OTG_and_EH_2-0-final_plus_errata_and_ecn_20110714 - final ECN for OTG and EH Testability OTGEH Errata 2011-07-14 - final
  • 自动化将Raspberry Pi配置为USB OTG网络摄像头Raspberry Pi网络摄像头受David Hunt的博客文章的启发,该教程展示了如何将Raspberry Pi Zero和Pi摄像头用作USB网络摄像头以及justinschuldt的要旨,我想制作我的...
  • USBOTG技术解析.pdf

    2021-09-03 11:01:13
    USBOTG技术解析
  • STM32 USB OTG培训:FS/HS模块(2018.05)
  • Microchip近日宣布在其PIC32单片机系列中新增一款具备集成USB 2.0 On-The-Go (OTG) 功能的低成本器件。至此,PIC32单片机系列中的7款通用器件率先投入批量生产。Microchip PIC32系列现一共拥有12款器件,能满足客户...
  • 嵌入式Linux USB OTG体系结构.pdf
  •  本文以eCOG1X 16位系列产品的几款新器件为背景,描述了USB 2.0外设的工作原理和性能,包括on the go (OTG)兼容性,并重点介绍其强大性能和易实现性。  背景  USB标准是最近几年来获得巨大成功的标准之一。高...
  • 电子产品在挑战尺寸、容量、处理速度与便利性的同时,也考验着研发人员的设计能力。过去USB接口的单向传输方式已很难适应现在便携式电子产品所需要的强大功能,市场需要的是让便携设备...USB OTG的出现解决了这一问题。
  • 本文以TD1120为例,分析了嵌入式应用中USB OTG控制器的功能特性,以及基于TD1120的软件实现。   移动设备和嵌入式市场的爆炸性增长促进了通过公共标准接口在不同设备之间进行方便的数据共享需求的增长。通用串行...
  • OTG,即On-The-Go,该技术就是实现在没有电脑的情况下,实现从设备间的数据传送。 制作材料: USB A型母口一个,MiniUSBB型5Pin接口一个(其实就是我们平常用的USB连接线的两端) 四根相同长度的铜线和一根稍短些的,...
  • USB OTG原理中文学习笔记,学习USB OTG有很大的帮助
  • 基于STM32的USBOTG数据通信的实现.pdf
  • 以 Atmel 的 AVR(R)32 UC 内核为基础,UC3A 系列拥有 512K 字节的闪存,并拥有一个内置10/100以太网媒体接入控制器 (MAC)、一个具有 OTG (on-the-go) 功能的全速 (12 Mbps) USB 2.0 以及一个 SRAM/SDRAM 外部总线...
  • 在介绍USB OTG的基础上,着重介绍Maxim公司的MAX3301E型USB OTG电路的特点、内部结构和工作原理。
  • 电子-USBOTG调试.zip

    2019-09-05 13:35:19
    电子-USBOTG调试.zip,单片机/嵌入式STM32-F0/F1/F2
  • USB OTG介绍

    2014-05-08 11:06:47
    自1996年USB1.0规范以后,USB-IF(Universal Serial Bus Implementers Forums)又陆续公布了 1.0 、USB2.0和 USB OTG等几个规范,其中USB2.0的传输带宽达到480Mbps,而USB OTG更使USB装置摆脱了原来主从架构的限制,...
  • STM32官方USB otg例程详解

    热门讨论 2014-03-30 00:13:46
    这是STM32官方USB例程JoyStick详解
  • USB OTG可广泛应用于PC、智能手机、ePOS(电子销售点)和移动电源。主设备或从设备的角色可以根据协议进行改变。数据可从智能手机或相机传输存储到U盘中,当智能手机连接到主设备PC时,智能手机也可以充当从设备。...
  •  USB驱动的电子产品市场已出现爆炸性增长,通用串行总线On-the-Go(USB OTG)技术的出现为人们的连网生活提供了更多选择。USB OTG允许一个设备既可充当外部设备,也可充当主机。作为主机时,OTG设备可与其他外部...
  • USB背景知识USB是一种数据通信方式,也是一种数据总线,而且是最复杂的总线之一。硬件上,它是用插头连接。一边是公头(plug),一边是母头(receptacle)。例如,PC上的插座就是母头,USB设备使用公头与PC连接。目前...

    零 USB背景知识

    USB是一种数据通信方式,也是一种数据总线,而且是最复杂的总线之一。

    硬件上,它是用插头连接。一边是公头(plug),一边是母头(receptacle)。例如,PC上的插座就是母头,USB设备使用公头与PC连接。

    目前USB硬件接口分三种,普通PC上使用的叫Type;原来诺基亚功能机时代的接口为Mini USB;目前Android手机使用的Micro USB。

    Host

    USB是由Host端控制整个总线的数据传输的。单个USB总线上,只能有一个Host。

    OTG

    On The Go,这是在USB2.0引入的一种mode,提出了一个新的概念叫主机协商协议(Host Negotiation Protocol),允许两个设备间商量谁去当Host。

    预了解更多USB知识,请参考USB官网以及下面这篇文章:

    http://www.crifan.com/files/doc/docbook/usb_basic/release/html/usb_basic.html

    USB HOST/DEVICE/OTG概念:

    OTG控制器可以做host,也能做device,控制器的角色一般由USB ID电平来决定。完整的USB2.0 OTG 控制器硬件信号如下:

    USB_ID:输入信号,由 USB OTG 协议定义,用于识别 USB 口所接设备的默认角色(host or device)。USB_ID 默认上拉,处于 device 状况,如果要控制器进入 host 状态,需外接 mini-A 口或 micro-A 口将 USB_ID 短接到地。

    也可以由软件进行强制切换,通过控制

    /sys/bus/platform/drivers/usb20_otg/force_usb_mode

    实现,可以有如下三种值:

    0: 由硬件即USB ID决定

    1: 强制 host模式

    2: 强制 device模式

    HOST模式和OTG模式区别

    OTG和HOST的区别就是HOST支持的设备多一点,但需要有对应的从设备接口连接才能实现数据传输,而OTG传输方便,不需要别的机器上有从设备的接口就能传输。

    USB OTG的工作原理

    OTG补充规范对USB 2.0的最重要的扩展是其更具节能性的电源管理和允许设备以主机和外设两种形式工作。OTG有两种设备类型:两用OTG设备(Dualrole device)和外设式OTG设备(Peripheralonly OTG device) 。两用OTG设备完全符合USB 2.0规范,同时,他还要提供有限的主机能力和一个MiniAB插座、支持主机流通协议(Host Negotiatio n Protocol, HNP),并和外设式OTG设备一样支持事务请求协议(Session Request Protocol, SRP)。当作为主机工作时,两用OTG设备可在总线上提供8 mA的电流,而以往标准主机则需要 提供100~500 mA的电流。

    2个两用OTG设备连接在一起时可交替以主机和从机的方式工作,这个特点兼容了现有USB 规范主机/外设的结构模型。OTG主机负责初始化数据通信的任务,比如:总线复位、获取USB 各种描述符和配置设备。这些配置完成后,2个OTG设备便可以分别以主机和从机方式传输信息,2个设备主从角色交换的过程由主机传输协议(HNP)定义。

    1.1主机(Adevice)和从机(Bdevice)的初始功能

    设备的初始功能是通过定义连接器来实现的。OTG定义了一个叫做MiniAB的袖珍插孔,他能直接接入MiniA或者MiniB插口,MiniAB有一个ID引脚 上拉至电源端,MiniA插头有一个与地连接好的ID(R<10 Ω),Mini B插头有一个与地连接的开路ID引脚(R>100 kΩ)。当2个OTG设备连接到一起的时候 ,MiniA插头边的ID引脚会注入一个“0”状态,MiniB插头边的ID引脚为 “1”,ID为0的OTG设备默认为主机(Adevice),ID为1的OTG设备默认为从机(B device)。图1对上述内容进行了图解。

    1.2对话请求协议SRP(Session Request Protocol)

    这个协议允许Adevice(可以是电池供电)在总线未使用时通过切断Vbus来节省电源消耗,也为Bdevice启动总线活动提供了一种方法。任何一个Adevice, 包括PC或便携式电脑,都可以响应SRP;任何一个Bdevice,包括一个标准USB外设, 都可以启动SRP;要求一个双重功能设备既能启动SRP,又能响应SRP。

    1.3主机流通协议HNP(Host Negotiation Protocol)

    HNP是一种用来实现Adevice和Bdevice主机/从机转换的协议(实际上是电缆的反转)。主/从机功能交换的结果表现在下列过程中:

    (1)利用上拉电阻来发送信号给从机。

    (2)Adevice可在Bdevice上设置“HNP Enable”特性。

    (3)Bdevice断开上拉。

    (4)ADevice与上拉电阻相连,表明Adevice从属于从机。

    (5)Adevice给Vbus供电。

    (6)Bdevice检测Adevice的上拉。

    (7)复位/列举/使用Adevice。

    1.4驱动程序

    与PC主机不同,便携式设备没有便捷的方式和足够的空间装载新的驱动程序。因此,OTG 规范要求每个两用OTG设备有一个支持的外设式OTG目标设备的列表,列表中包括设备的类型和制造商等信息。

    与PC机不同,OTG两用设备的驱动程序栈由USB主机栈和USB设备栈构成以满足两种工作方式的需要。OTG驱动程序通过连接器的不同或者是否有NHP交换设备的工作方式来决定使用USB主机栈还是USB设备栈。

    当OTG两用设备以主机方式工作时,USB主机栈工作。其中的主机控制器驱动程序负责USB 主机栈与硬件端点的数据交换,USB驱动程序枚举并保存设备的信息,目标外设主机类驱动程序支持目标设备列表里的设备。主机类驱动程序由芯片制造商提供,同时,OTG提供通用的主机类驱动程序(可以修改以用于非通用设备)。

    当OTG两用设备以从机方式工作时,USB设备栈工作。其中的设备控制器驱动程序负责USB 设备栈与硬件端点的数据交换,USB协议层负责处理USB协议规范,设备类驱动程序的功能取决于该两用设备的功能(如数码照相机、存储设备、打印机等)。

    OTG驱动程序负责处理两用OTG设备的工作方式转换,同时,他还可以返回其结果(如设备是否支持HNP)并处理总线错误。应用层程序通过OTG驱动程序开始或者结束一个传输事务, 通过USB主机栈或设备栈与硬件层交换数据。

    1.5数据流模型

    OTG主机和设备被划分为功能层、USB设备层和USB接口层3个不同层次,如图2所示。

    USB接口层为OTG主机和OTG设备提供物理连接,USB系统软件使用主机控制器来管理主机与 USB设备的数据传输。USB系统软件相对于主机控制器而言,处理的是以客户角度观察的数据传输及客户与设备的交互。USB设备层为USB主机系统软件提供一个可用的逻辑设备。主机通过与之功能匹配的客户软件实现其各种功能。

    OTG设备与以往的USB设备一样有两种通道:数据流通道和消息通道。数据流通道没有定义好的结果,而消息通道则有固定的结构。但是,每个通道都有一定的带宽、传输类型、传输方向和缓冲区大小。自供电设备配置一个默认的控制通道,由他提供该设备的配置和状态等信息。

    一问一答:

    1 . 什么是USB OTG?

    USB OTG是USB 2.0的补充规范

    2.  USB OTG针对USB 2.0的最重要扩展是什么?

    更具节能性的电源管理和允许设备以主机和外设两种形式工作。

    3. USB2.0中定义三种类型: HOST(主机),Device(设备), HUB

    OTG新增两种设备: Dual-role device(两用设备),Perip-heral-only OTG device(OTG外设)

    4. USB 2.0中定义了三种连接器对(插头和插座): Standard-A(主机),Standard-B(外设),Mini-B(较小的外设)

    OTG新增插头: Mini-A

    OTG新增插座: Mini-A和Mini-AB(同时支持Mini-A或Mini-B的插头)

    其中插头和插座内部的塑料颜色:Mini-A为白色,Mini-B为黑色,Mini-AB为灰色

    5. USB 2.0中定义了两种电缆: Standard-A至Standard-B,  Standard-A至Mini-B

    OTG增加的两种电缆:Mini-A至Standard-B, Mini-A至Mini-B

    6. OTG的Dual-role device(两用设备)必须具备:

    1) 有限的主机能力

    2) 可作为全速的外设(可选的高速方式)

    3)可作为全速的主机(可选的低速或高速方式)

    3) OTG目标设备的列表及驱动程序

    4)支持SRP,HNP

    5)一个Mini-AB插座

    6)VBUS上不小于8mA的电流输出

    7)与用户通讯的方式

    7. Perip-heral-only OTG device(OTG外设):

    1.是普通的USB外设

    2. 支持SRP

    3. 一个Mini-B插座(不能使用Mini-AB)

    8.Android usb如何实现既可以发现accessory设备,同时也可以发下host设备

    做usb通信,首先要先弄清楚哪边是HOST那边是SLAVE

    比如你的android手机做host,要获得slave,用UsbDevice表示slave

    要是你的android手机做slave,要获得host,用UsbAccessory表示host

    ---------------------

    作者:Mr Cui

    来源:CSDN

    原文:https://blog.csdn.net/cui130/article/details/81329634

    版权声明:本文为博主原创文章,转载请附上博文链接!

    展开全文
  • Android Usb OTG源码

    2016-02-17 16:56:12
    Android Usb OTG源码,可以对USB OTG设备进行数据读写,经过验证。
  • USB OTG基本原理

    千次阅读 2021-03-24 10:39:55
    说明:USB OTG 标准在完全兼容 USB2.0 标准(ehci)的基础上,增添了电源管理(节省功耗)功能, 它允许设备既可作为主机,也可作为外设操作(两用 OTG)。OTG 两用设备完全符合 USB2.0 标准,并可 提供一定的主机...

    基础知识

    OTG:On-The-Go,安上即可用。

    说明:USB OTG 标准在完全兼容 USB2.0 标准(ehci)的基础上,增添了电源管理(节省功耗)功能, 它允许设备既可作为主机,也可作为外设操作(两用 OTG)。OTG 两用设备完全符合 USB2.0 标准,并可 提供一定的主机检测能力,支持主机通令协议(HNP)和对话请求协议(SRP)。在 OTG 中,初始主机设备 称为 A 设备,外设称为 B 设备。
    (注:A 设备总是为 VBUS 供电,即使作为外设)

    参考文档:USB_OTG_and_EH_2-0-version 1_1a.pdf

    OTG检测原理

    在这里插入图片描述
    micro 插头的 pin 脚定义:
    在这里插入图片描述
    1 pin 连接电源(VBUS);
    2、3 pin 用来传送数据(D+、D-);
    5 pin 接地(GND);
    4 pin 检测 ID。ID pin——当 OTG 设备检测到 ID pin 接地时,OTG 设备应初始化为 A 设备(主机); 而检测到 ID 引脚浮空时,应初始化为 B 设备(外设)。

    type-A 插头的 pin 脚定义:
    在这里插入图片描述
    在这里插入图片描述
    2 条用来传送数据(D+、D-);
    1 条是电源 线(VBUS);
    1 条是接地线(GND);

    type-A 接口,用于连接 host。

    举例
    在这里插入图片描述
    手机使用 OTG 线连接 U 盘时,OTG 线的 micro 插座,ID 引脚直接连接到 GND,ID pin 处于接地状态。 而 OTG 线另一端的 type-A 母座,是没有 ID pin 的。
    手机端的 micro 母座,检测到接入的 micro 插头的 ID pin 为接地,所以手机作为主设备 A。
    U 盘端 type-A 插座,ID pin 在设计之初就已经拉死,处于悬空状态,所以 U 盘作为从设备 B。
    (固定为 device 的设备,一般会直接将 ID pin 悬空,不需要引出到 type-A 接口)

    总结
    1.OTG 设备检测到 USB_ID 信号为低电平时,该设备应作为 Host(主机,也称 A 设备)。
    2.OTG 设备检测到 USB_ID 信号为高电平时,该设备应作为 Slave(外设,也称 B 设备)。
    3.实际的 USB 连接线缆中,不存在 USB_ID 线缆,而在接口部分就直接拉死,要不处于接地状态,要不就 是悬空状态。
    4.对于非 OTG 设备,host 设备默认将 USB_ID pin 和地短接,Slave 设备则默认将 USB_ID pin 悬空。

    拓展
    otg 转接线:
    在这里插入图片描述
    micro 数据线:

    在这里插入图片描述
    接口 ID pin 状态:
    在这里插入图片描述
    type-A 母座的设备,一般只作为 host,例如 PC。
    type-A 插头的设备,一般只作为 device,例如 mouse、keyboard、U 盘。
    micro 母座的 OTG 设备,既可作为 host,也可作为 device,例如手机。

    展开全文
  • 自1996年USB1.0规范以后,USB-IF(Universal Serial Bus Implementers Forums)又陆续公布了 USB OTG1.0 、USB2.0和 USB OTG等几个规范,其中USB2.0的传输带宽达到480Mbps,而USB OTG更使USB装置摆脱了原来主从架构...
  • usb otg 资料

    2019-04-26 19:34:25
    usb otg 调试 patch,对于调试 otg 非常有用。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 13,309
精华内容 5,323
关键字:

USB otg

友情链接: Calculationprocedure.rar