在安卓/linux环境下如何同时与多个串口进行通讯?
问题描述
在安卓环境下同时打开两个串口 其中一个收到指令后发送指令到另一个串口 但是第二个串口的命令会出现阻塞现象 经常会返回乱码或者两条指令合并为一条发送
问题出现的环境背景及自己尝试过哪些方法
环境为rk3288开发板 Android5.0操作系统 串口为ttl电平 接口使用的是网上流传最广的谷歌android-serialport-api编译的jni库 添加打开串口命令的flags参数O_NONBLOCK(非阻塞模式)之后没有任何帮助 在Windows系统下测试没有任何问题
相关代码
mFd = open(path, baudRate, O_NOCTTY | O_NONBLOCK);
你期待的结果是什么?实际看到的错误信息又是什么?
希望两个串口能够同时工作不受IO阻塞的干扰
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我了个擦 最后打了安卓主板厂商技术支持电话才知道 两个TTL不能同时使用。。。 所以并不存在“同时使用两个串口需要注意哪些问题”这个命题
当多个串口时, 你 open 函数的 path 参数不一样就可以了
比中我机器上的串口路径: