近段时间要做android下串口通信的东东,大概功能是android系统端的ARM和系统外的一个MCU通信。
有几种通讯方式(同一串口):
1、android上面可以用app和mcu进行串口通讯。
2、驱动下面的模块也要和mcu通过串口通讯。
2.1、某模块需要每3秒通过串口读取mcu的信息;
2.2、某模块需要在某一时刻通过串口和mcu通讯;
我想其中应该会涉及并发、异步、阻塞等。
现在我想再编写一个驱动模块,在这个模块内处理这些冲突。
系统和mcu进行串口通信都通过这个模块。
不知道这样做行不行?
大家有没有更好的方法?
能不能帮我想一下具体细化的编写思路?
希望高手们指导一下!
谢谢大家了!
android的app和驱动的模块通过串口访问的内容是一致的吗?我觉得如果要获取的内容不多,固定几个request和reply。
那么对于app的读操作,可以在驱动里面定时轮询,然后将轮询结果缓存,在app进行访问时,直接将缓存值返回,这样避免了app对串口的直接访问。
对于app的写操作,那么使用request队列的方式,发给内核驱动统一处理。
当然以上只是对于实时性要求不是非常高的系统而言的。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。