Android操作串口时,可读不可写,视美泰A20~A40问题

背景:

最近由于项目需要将先前视美泰A20的程序升级到A40上使用,原则上不应该有问题的,但发现切换过来的程序操作串口数据时只能读不能写。

原因分析:

对于可读不可写,说明波特率、校验位等参数设置是正确的;可能出现在写入时的权限或串口程序解析问题。通过在串口用示波器测试波形发现并未写入,所以怀疑串口程序异常是不可能发生了,只能出现在节点权限上面。对比A20、A40节点权限发现:

对比不难发现,A20是root用户组,而A40是system用户组,对于熟悉Android的朋友来说不难解决此问题了。

解决办法:

1. 在manifest中添加android:sharedUserId="android.uid.system"属性;

2. 将程序使用A40的系统签名,签名后再安装到A40主板上。

以上两步操作完成后你会发现程序运行正常,问题得以解决。

发布了10 篇原创文章 · 获赞 1 · 访问量 2544

猜你喜欢

转载自blog.csdn.net/kerry1789/article/details/105352492