android串口消息

android平板,带一个miniusb的数据线接口,我现在想用这个usb接口外接一个usb转串口的转换器来发送串口消息,android的linux系统如何查看是否已经安... android平板,带一个mini usb的数据线接口,我现在想用这个usb接口外接一个usb转串口的转换器来发送串口消息,android的linux系统如何查看是否已经安装了usb转串口的驱动, 展开
 我来答
半塘无水
推荐于2016-08-28 · TA获得超过2.2万个赞
知道大有可为答主
回答量:4220
采纳率:68%
帮助的人:904万
展开全部
android串口消息连接的方法为:
1.模拟器可以使用PC的串口。
启动模拟器并加载PC串口 命令如下。
运行 emulator @模拟器名称 -qmu -serial COM1。
2.查看串口是否被加载。
启动后使用 adb shell 命令打开命令行
cd dev 查看会发现ttyS0 ttyS1 ttyS2,其他ttyS2 就是我们加载上来的串口COM1
3.修改权限
chmod 777 ttyS2
现在我们可以开发串口程序了。
4.串口程序实例
下载libserial_port.so ,放入libs/armeabi 目录,可以自己创建此目录
libserial_port.so 下载地址:
http://code.google.com/p/android-serialport-api/
import java.io.File;
import java.io.FileDescriptor;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

import android.util.Log;

public class SerialPort {

private static final String TAG = "SerialPort";

private FileDescriptor mFd;
private FileInputStream mFileInputStream;
private FileOutputStream mFileOutputStream;

public SerialPort(File device, int baudrate) throws SecurityException, IOException {

if (!device.canRead() || !device.canWrite()) {
try {
Process su;
su = Runtime.getRuntime().exec("/system/bin/su");
String cmd = "chmod 666 " + device.getAbsolutePath() + "n"
+ "exitn";
su.getOutputStream().write(cmd.getBytes());
if ((su.waitFor() != 0) || !device.canRead()
|| !device.canWrite()) {
throw new SecurityException();
}
} catch (Exception e) {
e.printStackTrace();
throw new SecurityException();
}
}

mFd = open(device.getAbsolutePath(), baudrate);
if (mFd == null) {
Log.e(TAG, "native open returns null");
throw new IOException();
}
mFileInputStream = new FileInputStream(mFd);
mFileOutputStream = new FileOutputStream(mFd);
}

public InputStream getInputStream() {
return mFileInputStream;
}

public OutputStream getOutputStream() {
return mFileOutputStream;
}

//JNI
private native static FileDescriptor open(String path, int baudrate);
public native void close();
static {
System.loadLibrary("serial_port");
}
}

####################################

import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

public class PrintClass {

//输入流
private static InputStream in;
//输出流
private static OutputStream out;

private static final String PORT = "/dev/ttyS2";//串口

private SerialPort serialPort;

private void Connect()
{
try {
serialPort = new SerialPort(new File(PORT), 38400);

in = serialPort.getInputStream();
out = serialPort.getOutputStream();

} catch (SecurityException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

public void CloseSerialPort()
{
try {
out.close();
in.close();
serialPort.close();
} catch (IOException e) {
e.printStackTrace();
}
}

}
rainheartsu
2012-07-04 · TA获得超过712个赞
知道答主
回答量:159
采纳率:100%
帮助的人:107万
展开全部
1. 如果是linux,不需要单独安装什么串口驱动
2. 但需要使用ls /dev/tty * 查看usb 串口设备是否被检测到
2. 然后使用linux下的MINICOM进行串口信息打印,具体配置和用法可以baidu一下
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
华歌诗
2012-07-01 · TA获得超过292个赞
知道小有建树答主
回答量:373
采纳率:100%
帮助的人:187万
展开全部
我的电脑→右键管理→设备管理器→查看你需要的串口→ok
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式