我想在安卓设备上使用JavaComm应用程序接口类通过串口发送信号,下面是我的设想:
1- Android设备将是: Archos 3.2,它具有android 2.2和USB主机模式。
2-在我的RxTx应用中包含Android lib包。并包含使用Android NDK的RxTx原生代码。
3- usb-->串行的短电缆。
你能给我解释一下我在哪里可能会遇到问题吗?
发布于 2011-03-03 12:07:01
我刚刚将JavaCOMM ( GNU RXTX )库移植到了安卓上。这里是链接http://v-lad.org/projects/gnu.io.android/
您可能仍然需要重新构建内核,还可能需要针对您的环境重新编译共享库。但这应该是你开始学习的起点。
发布于 2011-01-14 07:19:53
如上所述,您需要为您拥有的任何USB<->串行设备提供设备驱动程序。这些设备中的许多都使用了多产的PL2303芯片:
http://www.qbik.ch/usb/devices/showdr.php?id=175
这是普通的linux内核所支持的,并且已经存在很长时间了。我已经用过了,它工作得很好,所以我建议你坚持使用使用这个芯片的USB<->串行设备。
除此之外,使用udev时,这些设备通常显示为/dev/ttyUSB#。我不知道Android是如何做到这一点的,所以你需要弄清楚。
最后,您将需要构建RxTx本机代码。这段代码相当粗糙-我在一个相当现代的Angstrom上构建它时遇到了问题,而且我根本没有试图交叉编译。
发布于 2012-02-01 00:57:11
是的,在Android上从手机端使用串行设备肯定是一团糟。问题是AOS上的各种设备没有文档记录,并且很少与标准的Linux设备重合。因此,你永远不能确定你实际上在和什么人说话,某个设备,抽象层(HAL,UART,PCI等)。以下是关于如何从外部USB连接的PC与串行设备(调制解调器)通信的教程。
在任何情况下,如果您的手机确实支持USB主机模式,则必须有其他方法来访问使用该模式的串行端口/设备。毕竟,向后兼容性通常会确保您的USB电缆支持某种类型的传真、电话或外部调制解调器。也有可能包含一些虚拟串行设备的tehtering ...
这里有一些关于这个here的教程。
PS。这类程序(如Vlad)和应用程序(如串行api)的主要问题是,它们对设备/端口名称和访问(读/写)这些设备/端口所需的权限做了过强的假设。
https://stackoverflow.com/questions/4621580
复制相似问题