一台支持android系统的手机,一般只有一跟usb数据线,如何实现与设备串口通信呢,比如说单片机,
在windows下可以通过usb转串口,只需要写串口程序就可以了,应用协议对上就可以了。手机上可以
装usb转串口的驱动吗?还有usb是分主机和从机的,一般手机上的usb接口是从机的吧?有做过的朋友聊聊!

解决方案 »

  1.   

    手机上装的U转串的驱动 非 pc上装的U转串驱动
      

  2.   

    首先USB是分主机和从机的,如果你的USB是OTG的,那么就可以转为主机,让你的手机充当原来PC的角色,理论上手机上可以装usb转串口的驱动,不过是在集成的时候集成到linux中去,否则你无法在一般情况下安装。楼主这个想法有点不大现实,因为手机很少支持USB otg的,手机充当主机需要给从机输出电流,这个不大合适便携式的设备
      

  3.   

        4楼说的对不太现实。一般手机在开发阶段,会从主板上接几条线作为串口调试用,成品就拆了。你那样真的可以吗?第一需要手机支持usbhost,第二,android版的usb转串口的驱动可能还要自己开发(Linux可能有现成的)
      

  4.   

    你可以考虑用 TCP/IP转 COM口 的设备,这样就变成SOCKET编程,
      

  5.   

    to 8lou
    android的usb转串口跟linux下是一样的吧,就是说usb转串口芯片厂家一般提供驱动的,就是不知道android下如何安装驱动提供的驱动是一个mk文件,c文件,里面看了下是操作串口的!
      

  6.   

       to10楼,楼主,这么说供应商提供代码那就太好了,现在你只要移植到你的代码里就ok了(Linux内核中),我相信Linux已经提供这方面的扩展,只要成功移植进去,当你接上设备它能自动识别接通。
       我在代码中找了一下,果然是有的:在kernel\drivers\usb\serial里有usb-serial.c(这是Linux自带的usb转串口驱动)。
       ——看到这里我相信,只要你把供应商提供的驱动放在这里(最好建个文件夹,相信这种简单的驱动移植应该是没问题的),编译成功就绝对没问题,之前我做过usb转以太网,和这个很相似。
       忘记说了,前提必须是支持USBhost 哦。
       
      

  7.   

    搞usb多麻烦,直接蓝牙处理即可……
      

  8.   


    蓝牙功耗是个很大很大的问题,如果能够通过usb转化功耗的问题,那就很强大了。
      

  9.   

    一定要驱动的,我也是在弄android的hid通讯,最后发现要写驱动的.对于鼠标,键盘之类的HID设备,android只提供input,木有output.
    USB转COM的插到平板上,andorid根本就没反应,认不出来.
    插入鼠标,键盘之类能认出来并可使用,但是,插入HID输出设备就认不出来了.
    真是郁闷
      

  10.   

    code.google.com上面有一个开源项目是android串口通信的,通过JNI方式实现的,只是你手机要有串口才行
    要是没找到给我发邮件([email protected])我发给你
      

  11.   

    手机怎么会有串口啊,就是因为没有串口,才用USB to COM的.
    andorid里头串口非PC的串口,蓝牙也是串口的呀.
    在andorid平板电脑都不支持,何况是手机.
      

  12.   

    Android 版本的GPS能用USB口当串口用吗?像WinCE版的GPS那样。
      

  13.   

    请问楼主搞出来了吗?哪个手机支持OTG?这是关键啊
    现在GALAXY S2应该是支持了
    内核的驱动部分能否给出详细的步骤参考啊 多谢多谢
      

  14.   

    同样的疑惑。研究ADB驱动麻烦,觉得用蓝牙方便,设备上使用蓝牙转串模块。
      

  15.   

    我做过windows下hid设备的开放,windows下很简单,window大多都自带usb hid驱动,只管写单片机的usb部分就好了,然后再在pc上写个应用程序,你就可以轻松的控制hid设备的输入输出。android系统一点都不了解,我有一个手机,我如何实现外接设备的io输入输出呢?wifi?太贵了,自己再外接个wifi设备你还要在上面编程,手机就功能齐全再弄个能操控wifi模块的设备就是多此一举。蓝牙?这个好像现实一点点,买个蓝牙模块再挂接个单片机也能实现。看着android的USB,有什么能比物理连接更可靠传输速度快的呢?就USB了,其他io都在机器里面,usb是唯一被引出来的。据说可以自己写驱动,有些应该支持动态加载内核驱动的带root权限的,这样就要写驱动,有木有会的,至少我不会。
      

  16.   

    请问,普通的android手机USB都是从设备,木有OTG,HID也能用吗?我在windows下做过hid开发,是用带usb接口的单片机,实现键盘鼠标,等其他hid设备.
      

  17.   

    请问,普通的android手机USB都是从设备,木有OTG,HID也能用吗?我在windows下做过hid开发,是用带usb接口的单片机,实现键盘鼠标,等其他hid设备.
      

  18.   

    之前做过一个串口和单片机通信的项目,做法建一个动态库操作串口的读写,然后JNI动态加载这个库和java层交换数据,从而达到通信的目的,我想USB是不是也可以这样做呢?之前没有接触过USB,先看看再说