在android emulator(qemu)模拟串口

来源:互联网 发布:公司电脑网络部署方案 编辑:程序博客网 时间:2024/04/27 22:57

默认的android 模拟器是没有串口的,但其实qemu自身是可以提供相应功能的。关于QEMU,可以参见官网 http://qemu.weilnetz.de/qemu-doc.html
启动一个带串口的模拟器,步骤如下:

1. 命令行形式启动一个emulator,这样我们就可以传参给QEMU了。下面是我写的一个例子,你可以改成自己的相应路径
   "C:\Program Files\Android\android-sdk\tools\emulator" -avd Device_Android2.3 -kernel "C:\Program Files\Android\android-sdk\platforms\android-10\images\kernel-qemu" -ramdisk "C:\Program Files\Android\android-sdk\platforms\android-10\images\ramdisk.img" -system "C:\Program Files\Android\android-sdk\platforms\android-10\images\system.img" -qemu -serial COM1

 注意红色的部分就是最终传参给QEMU,使用WINDOWS机器的COM1(其它机器见QEMU的文档说明),并把它映射成模拟器的/dev/ttyS2(和原机器已有的串口有关,比如原来已有S0,S1,你新增的就成了S2)。

2. 需要给ttyS2赋予读写权限。 
    adb shell
   # chomd 777 /dev/ttyS2

3. 然后你就可以打开这个ttyS2设备进行通讯了。比如你可以用serial-port-api 进行测试 (http://code.google.com/p/android-serialport-api/)


Enjoy it!