设备有usb OTG
以下是场景
当设备连接到PC时,设备充当从设备 (设备如何知道它必须充当奴隶)
当设备连接到打印机时,设备充当主设备。 (设备如何知道它必须充当主人)
设备连接到OTG时执行的步骤是什么。 如何实现这种机制(简而言之)?
答案 0 :(得分:3)
USB OTG设备的确切行为在usb.org上的specification中有所描述。 zip中有一个名为USB_OTG的PDF。
第6节中的主机协商协议涵盖了两个OTG设备如何决定哪一个获得嵌入式主机。基本上,这是通过驱动D +线上的上拉和下拉电阻来存档的。
注意:在谈论USB时,不使用术语主/从。主设备称为主机并为总线供电,而从设备称为设备。在OTG的情况下(通常,参见例外规范),这两个部分都具有成为主机或设备的能力。当主机通过主机协商协议计算出来时,该部分将成为所谓的嵌入式主机。
答案 1 :(得分:1)
在您提到的两种情况中,USB设备可以通过电缆知道是主机还是设备。 USB电缆(非C型)不对称。一方是主机,另一方是设备。连接器上有一个称为ID引脚的引脚,它在器件侧浮动,在主机侧接地。这允许每侧的USB控制器知道它所连接的电缆的哪一侧,以及连接时它应该是哪个角色(主机或设备)。这些类型的设备称为双角色设备。
如果您有这样的设备,那么您可以将其插入常规主机(如您的笔记本电脑),它将充当设备。您可以将其插入常规设备(如打印机),它将充当主机。这完全基于电缆。
如果您将两个双角色OTG设备互相插入。他们的初始角色由电缆以相同的方式决定。
确定初始角色后,他们可以通过主机协商协议(HNP)从最初的电缆确定角色交换角色。
就此而言。没有简短的解释方法。每个控制器都不同,您必须阅读控制器数据手册和编程模型以实现所有这些过程。除了对USB和OTG规格本身有很好的理解外。
一个好的起点是http://usb.org,您可以在其中找到所有规格。