当前位置:编程学习 > wap >>

android串口通信 接收数据问题

PC端的串口工具直接对"/dev/ttyS2 测试过,能读到数据。

本人在这里http://code.google.com/p/android-serialport-api/下载个可读写串口的sample 源码。
编译生成 ***.apk文件, 安装完成后,第一个button “SetUp” 配置完串口(ttyS2,57600)。
点第二个button “Console”,在界面里面发送框 发送数据,PC串口工具能收到;但是反之,PC串口工具发送数据,终端程序界面接收不到数据,这是怎么回事呢?
求高手指点。比较急,谢谢! --------------------编程问答-------------------- 希望高手指点,有没有人成功使用的啊 --------------------编程问答-------------------- 就感觉ReadThread进程没有跑下去。 代码如下:

private class ReadThread extends Thread {

@Override
public void run() {
super.run();
while(!isInterrupted()) {
int size;
try {
byte[] buffer = new byte[300];
Log.d(TAG, "----ReadThread start----");
if (mInputStream == null) 
{
return;
}
Log.d(TAG, "----read(buffer)----");
size = mInputStream.read(buffer);
Log.d(TAG, "----size----" + String.valueOf(size));
if (size > 0) {
Log.d(TAG, "----ReadThread size>0----");
onDataReceived(buffer, size);
}
} catch (IOException e) {
Log.d(TAG, "----ReadThread printStackTrace----");
e.printStackTrace();
return;
}
}
}
}


通过adb 查看log,前面两个log都打印出来了,
第三个 “Log.d(TAG, "----size----" + String.valueOf(size));” 就没有打印出来,后面几个log也没有打印出来。
希望知道的,做过的,高手们指点。
谢谢! --------------------编程问答-------------------- 求高人指点,谢谢 --------------------编程问答-------------------- 也就是说你机子的串口 TX是可用的 但RX不能用 ,你去看下对应串口的内核配置,有没问题,看看datasheet --------------------编程问答-------------------- 帮自己顶一下,很急,希望高手指点! --------------------编程问答-------------------- 启动我的终端设备,PC串口能看到启动信息等log。终端设备android 系统启动好了,PC串口 输入“ls”,“cd” 等命令都可以。当进入该apk程序后,点第二个button “Console”,则PC串口不能输入任何东西了,但是还能接收终端设备的信息。
真不知道为什么,求高手教教我。谢谢 --------------------编程问答-------------------- 解决了吗楼主,我也遇到同样的问题。 --------------------编程问答-------------------- 没有弄过,帮你顶吧 --------------------编程问答-------------------- 编码的问题可能会照成你接收不到数据,将编码改成utf-8 --------------------编程问答-------------------- 估计是终端这边还有其他进程打开并读取了/dev/ttyS2设备。 --------------------编程问答-------------------- 楼主 一定要帮我看看我的问题。
http://www.eoeandroid.com/thread-182339-1-1.html --------------------编程问答-------------------- 楼主你的可以使用了吗?我可以读到数据,可是会出现丢失现象,你有没有这种情况?是如何解决的? --------------------编程问答-------------------- 楼主你的问题解决了没有?我的也一样就是读不到数据,PC机往arm上发送可以,但是arm上发过来不行,不知道为啥!求帮助!~ --------------------编程问答-------------------- 你的android设备是开发板吗?
你要将你的串口设备ttySX   port设置正确,同时要在你的init.rc文件中,给你的这些ttySX 附上权限,如下:
chmod  0666  /dev/ttyS1

关键就是这步! --------------------编程问答-------------------- 嗯嗯  这些都处理好了,能够发数据,就是接受不到数据!~~~
用Google给的那个官方例子也接受不到数据!~~ --------------------编程问答--------------------
引用 9 楼 tangcheng_ok 的回复:
编码的问题可能会照成你接收不到数据,将编码改成utf-8
  这个能够详细点吗?求解啊 先谢谢了 --------------------编程问答--------------------
引用 15 楼 zhaokanghui 的回复:
嗯嗯  这些都处理好了,能够发数据,就是接受不到数据!~~~
用Google给的那个官方例子也接受不到数据!~~
哥们解决了没啊,烦人啊 --------------------编程问答--------------------
引用 17 楼 kingda008 的回复:
Quote: 引用 15 楼 zhaokanghui 的回复:

嗯嗯  这些都处理好了,能够发数据,就是接受不到数据!~~~
用Google给的那个官方例子也接受不到数据!~~
哥们解决了没啊,烦人啊

呵呵,后来我直接用板子发了,没有接受了,怎么都接受不到,就卡在那个read函数那里过不去了,现在复习考试了,没弄了!呵呵,不好意思,帮不了你了! --------------------编程问答-------------------- --------------------编程问答-------------------- 有人解决了吗?我也好烦啊!!! --------------------编程问答-------------------- 有哪位大师解决了啊!帮下忙呗。急啊!
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,