关键词:android 4.0 USB OTG 键盘 鼠标 device  u盘

平台信息:

内核:linux3.0

系统:android4.0.3

平台:S5PV310(samsung exynos 4210)

把这一段时间的工作内容记录下

一、OTG的概念

OTG是On-The-Go的缩写,是近年发展起来的技术,2001年12月18日由USB Implementers Forum公布,主要应用于各种不同的设备或移动设备间的联接,进行数据交换。特别是PDA、移动电话、消费类设备。改变如数码照相机、摄像机、打印机等设备间多种不同制式连接器,多达7种制式的存储卡间数据交换的不便。

简单的说,一个OGT口可以做主设备HOST、从设备device。

二、三星平台的伪“OTG”

说到三星平台的OTG,有点坑人,看下面的电路图,芯片是支持USB OTG2.0 和USB HOST2.0的,可是不知道是他们芯片没做好,还是三星给的 BSP不全,反正OTG这个功能不能用。

芯片和软件上都不支持,我们要从硬件上解决了。加入一个IC,通过xuotgid 来判断是那主设备还是从设备,如果是主设备,如平板外接键盘、鼠标,则接USBHOST2.0;如里是从设备,如平板电脑做u盘用,接到这个坑人的USB OTG2.0

三、关于android对键盘、鼠标的支持

Linux本身就支持键盘、鼠标,linux 内核的驱动是完好的,我们只要配置好就可以了,以前的android版本我不太清楚,android4.0是支持键盘、鼠标的。

1、鼠标

device Drivers --->

Inputdevice support --->

<*>Mouse interface

2、键盘

deviceDrivers --->

Input device support --->

[*]Keyboards --->

选择AT keyboard

3、USB中的选项

如下图所示

Device Drivers --->

[*] USB support --->

<*> OHCI HCD support

[*] S5P OHCI support

完成上面配置后,插入u盘、鼠标、键盘、u盘都可能用

如下插入u盘的信息:

插入U盘
[  138.620396] usb 1-1: new high speed USB device number 4 using s5p-ehci
[  138.761467] scsi2 : usb-storage 1-1:1.0
[  139.788733] scsi 2:0:0:0: Direct-Access     Netac    OnlyDisk         PMAP PQ: 0 ANSI: 0 CCS
[  139.808739] sd 2:0:0:0: Attached scsi generic sg0 type 0
[  140.228950] sd 2:0:0:0: [sda] 7831552 512-byte logical blocks: (4.00 GB/3.73 GiB)
[  140.234174] sd 2:0:0:0: [sda] Write Protect is off│
拔出  u 盘[  744.728526] usb 1-1: USB disconnect, device number 5
[  745.765254] FAT-fs (sda1): Directory bread(block 15304) failed
[  745.765450] FAT-fs (sda1): Directory bread(block 15305) failed
[  745.780105] FAT-fs (sda1): Directory bread(block 15306) failed
[  745.780309] FAT-fs (sda1): Directory bread(block 15307) failed
[  745.786486] FAT-fs (sda1): Directory bread(block 15308) failed
[  745.795189] FAT-fs (sda1): Directory bread(block 15309) failed
[  745.808332] FAT-fs (sda1): Directory bread(block 15310) failed
[  745.808526] FAT-fs (sda1): Directory bread(block 15311) failed
[  745.814463] FAT-fs (sda1): Directory bread(block 15304) failed
[  745.820176] FAT-fs (sda1): Directory bread(block 15305) failed
[  745.825991] FAT-fs (sda1): Directory bread(block 15306) failed
[  745.831829] FAT-fs (sda1): Directory bread(block 15307) failed
[  745.837628] FAT-fs (sda1): Directory bread(block 15308) failed
[  745.843420] FAT-fs (sda1): Directory bread(block 15309) failed
[  745.849224] FAT-fs (sda1): Directory bread(block 15310) failed
[  745.855036] FAT-fs (sda1): Directory bread(block 15311) failed这里可以看到usb的用户为system
shell@android:/mnt $ ls -l
drwxr-xr-x root     system            2000-01-01 04:15 asec
d--------- system   system            2000-01-01 04:15 ext_sd
drwxr-xr-x root     system            2000-01-01 04:15 obb
drwxrwxr-x root     sdcard_rw          2000-01-01 03:08 sdcard
drwx------ root     root              2000-01-01 04:15 secure
d---rwxr-x system   sdcard_rw          1970-01-01 00:00 usb

android OTG相关推荐

  1. 高通android usb otg,Android OTG支持USB读卡器

    我们知道,三星Android手机将USB读卡器通过OTG线插入Micro USB插口后,插拔读卡器里的SD卡,文件管理器也能够识别卡的插拔:而很多手机的OTG连上USB读卡器也来插拔SD卡,会发现文件 ...

  2. android usb arduino,Arduino Android OTG USB

    Arduino Android OTG USB 介绍 Arduino Android OTG USB This helps you to connect any arduino to android ...

  3. Android OTG (USB Hos) 编程

    前言:最近在做一个汽车发动机故障检测的项目,负责APP开发.汽车发动机将各种数据通过OTG传输到Android手机,APP可以实时显示数据. 一.权限 1. 声明支持USB Hos模式 在Androi ...

  4. android otg读写文件,Android USB Host在USB设备OTG中读/写文件

    我正在编写Android设备是主机的应用程序.用户将USB驱动器连接到Android设备,我的应用程序将在USB驱动器中写入一些文本文件.文本文件的路径就像USB_DRIVE/Data/APP_NAM ...

  5. android otg 挂载流程,android USB OTG功能如何打开及实现

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

  6. android otg开发笔记

    探讨otg是否支持读写功能---答案:是可以的,可读,可写. --参考网址:https://blog.csdn.net/csdn635406113/article/details/70146041 探 ...

  7. android OTG (USB读写,U盘读写)最全使用相关总结

    androidOTG (USB读写,U盘读写) 最全使用相关总结 简介 第一种读取方法:android推荐使用的通过endpoint的形式进行通信 第二种读取方法:像读你sdcard的形式来读你的U盘 ...

  8. android otg u盘 视频教程,Android OTG U盘文件读写

    最近要求对安卓平板开发时导出Excel表格到插在平板的U盘上,初步尝试发现,对U盘的文件读写只能操作Android/包名/的目录,不能直接写在根目录,不方便客户使用,于是研究了libaums的库可用是 ...

  9. Android OTG U盘文件读写

    Android U盘读写要用到的三方库:https://github.com/magnusja/libaums,使用方法地那就链接了解. 最近项目需要用到OTG功能,写了一个小demo,做为自己的笔记 ...

  10. android otg u盘 视频教程,手机u盘怎么用|OTG U盘正确使用教程

    当今社会,U盘的种类越来越多,今天小编想跟大家分享的是手机U盘.首先我们要弄清楚什么是"手机U盘". 手机U盘就是手机U盘,全称是智能手机USB闪存驱动器,简称智能U盘-V盘,英文 ...

最新文章

  1. 【Qt】Qt再学习(十六):QObject::connect: Cannot queue arguments of type ‘QString‘
  2. 用Leangoo项目管理工具怎么做多团队大规模Scrum敏捷开发?
  3. 解决Linux安装 VMware tools 工具的方法
  4. 浅谈电量传感器在数据中心的UPS电源中的应用
  5. 品质管控计划ppt怎样写_品质管理需要做好几件事
  6. 加油四班!加油佟穆!我们的征途是星辰大海!!!
  7. (cljs/run-at (JSVM. :all) 细说函数)
  8. 饥荒联机版服务器显示错误,小白求问 搭服务器出现这种情况是怎么回事
  9. git clone报错:fatal: unable to access ‘https://github.com/...
  10. 天呐,你竟然还在用 try–catch-finally
  11. 40行代码的人脸识别实践
  12. 2020腾讯秋招笔试编程题--压缩算法
  13. CCF CSP 20190301解答
  14. 思科模拟器Cisco Packet Tracer的下载
  15. Markdown 并排显示图片
  16. php储存网页内容的简单示范
  17. 爱签电子合同:湖北率先实现电子印章跨省互认
  18. 对标金九银十:各大厂最新Java面试真题整理+简历模板
  19. 7种SQL JOINS 的实现
  20. Windows8内核模式下开发NDIS应用-NDIS Filter讲解

热门文章

  1. 物联网卡智慧医疗的完美结合主要靠这几种技术
  2. IDEA快速导入包、默认设置以及自定义配置maven
  3. 怎样用U盘重装Win10系统?用U盘重装Win10系统教程
  4. 感悟之去年校内社会实践
  5. 《支付系统设计那些事儿》-初识账户
  6. 领投鸟喜获网贷互联优秀成员单位称号,筑牢信息安全防线
  7. 每次打开Visio Pro 2013都提示Windows正在配置。。。
  8. OpenGL学习笔记之坐标变换学习
  9. Splinter入门(十二)Executing javascript(执行JavaScript)
  10. 如何识别哭泣csdn_如何听哭声辨别宝宝需求