OTG 即On The Go,是USB的一种工作模式.

USB协议中规定了两类设备,一类是Host一类是Device

Host为主控设备,如PC,Device为从设备,如鼠标、U盘等,Device只能连接到Host上并由Host控制。

OTG是一种特殊的USB设备,它本身是Device,可以连接Host,并被Host所控制。但它同时也能作为Host连接Device。

OTG在硬件上由 ID 引脚决定做 Host 还是 Device,上拉为 Device,下拉为 Host。

目前大部分手机都支持 OTG,根据原理自己可以动手制作一根 OTG 线。

TQ3568开发板中有一个USB3.0 OTG接口,在日常开发中,用户可以根据需求灵活的将其设置为host模式或device模式。当我们需要在otg、host、device之间相互切换时,RK已经为我们做好了节点,我们只需要在开发板上执行命令就行

1、将OTG改为usb host使用: 

echo host >  /sys/devices/platform/fe8a0000.usb2-phy/otg_mode

2、将OTG改为usb device使用: 

echo peripheral >  /sys/devices/platform/fe8a0000.usb2-phy/otg_mode

3、转换回OTG: 

echo otg >  /sys/devices/platform/fe8a0000.usb2-phy/otg_mode