Android有连接ELM327的app,比如Torque,有功能简化的免费版本。
如果想编写姿搜Android连接ELM327的程序,迹衫历需要解决以下几个问题:
如何通过蓝牙连接到ELM327设备
发送和接收数据的格式
好在已经有人编写了开源项目,可实现基本的ELM327通讯的app,链接见:
https://code.google.com/p/android-obd-reader/
该作者编写的代码,依赖maven3,塌侍比较麻烦。我改写了他的代码:
不在需要依赖maven3,直接可导入到IDE工具生成项目
增加了手工输入命令和显示原始结果的功能
要看车的,不是车上所有的CAN bus都会引到OBD口的,引到OBD口的只是诊断用的低速CAN,尤其对于相对高档一点的车有多路CAN,多的甚至有7路CAN,当然相对低档的只有1路高速CAN的兼做诊断的车就会引到OBD上。高速CA大部分focus都有的ECU主要是:ABS(防抱死),EPS(电动助力转向),ICM(仪表板),PCM(发动机)是高速CAN(500K);
ACM(音箱),GEM(通用电子模块组),RCM(气囊)是低速CAN(125K);
它们都是在总线发送数据,区别在于高速和低速CAN的通信引脚和波特率不一样,
一个6#和14#(高速),一个3#和11#(低速)。
如果按照楼主的想法,充分利用CAN总线上的数据,确实可以做不少事情。
1,可以显示行车故障码,这个很实用吧,可以随时知道车有没有出问题,而且出了问题,
自己根据故障代码也可以查阅相关资料,也不会在修车时那么容易被忽悠,多花冤枉钱。
2,可以显示一些仪表板上不会反应的数据,行车上各个传感器和阀门的状态值,如水箱温度,
环境温度,模块电压,车速,怠速还有各个开关量(如开门状态,手刹状态,玻璃状态)等等
3,一些高级的应用,如配钥匙,模块编程,参数重设定,里程改写等等了。(这个比较难)
网纤指上有些公开的资运辩料可以查阅,总体上大致旁竖缺相同,有些细节上的东西就是ford原厂自行设定了,
这些功能都是基于你对focus车通信要十分了解才行,而且要自己懂单片机之类的硬件开发。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)