车载主机与智能手机互动系统设计*
2013-07-05曾昭德洪晓斌
曾昭德 洪晓斌
(1.广东好帮手电子科技股份有限公司 2.华南理工大学机械与汽车工程学院)
0 引言
近年来,智能手机的发展已在很多方面领先于车载主机,尤其是多媒体和移动网络方面。例如,用户可以方便地在线升级智能手机的电子地图,安装第三方软件扩展功能,还可以方便地更新和播放手机的音乐、视频和照片等。但智能手机不能完全替代车载主机,因为智能手机不能与汽车总线、音响等实现稳定地连接和控制,也不具备安全辅助驾驶、汽车故障诊断等功能。因此,行业已开始研究将智能手机与车载主机连接起来,在车载主机显示手机的屏幕。用户通过手机屏幕的操作,运行手机上的应用程序,对于与汽车总线和传感器相关的行车安全、辅助驾驶等功能,由车载主机结合传感器和总线控制等实现。
MirrorLink是由国际性知名手机厂商和汽车制造商联合发起建立的一种“车联网”标准,目的是通过跨产业合作打造无缝隙的车内通讯环境,让智能手机、平板电脑、电子书等各式移动终端都能通过该标准,快捷地与车载信息娱乐系统互联使用,为用户提供最简单和直接的体验。MirrorLink已成为2012年值得关注的十大新技术[1]。但MirrorLink协议目前在手机行业中没完全普及,许多手机还不支持该协议。
本系统的设计目的是为了兼容更多的手机,实现不支持MirrorLink协议但提供移动终端高清影音标准接口(mobile high-definition link,MHL)[2]或者高清晰度多媒体接口(high definition multimedia interface,HDMI)的智能手机与车载主机的连接,在车载主机显示手机屏幕和播放声音;同时实现用户通过车载主机屏幕操作手机的应用。
随着车载主机和智能手机采用双核、四核CPU,1G、2G内存,整机性能不断增强,车载主机和智能手机的多屏互动效果也将越来越流畅。在多屏互联互通应用中[3],MHL技术作为一种连接便携式消费电子装置的影音标准接口[4],音视频转换模块通过MHL_HDMI桥接集成电路,把未经压缩的MHL视频信号转换成标准HDMI兼容信号,其输出画面理论可达1080p(目前主流支持到720p/1080i)。音视频转换模块把标准 HDMI兼容信号再转换成 CVBS(VGA或RGB)格式的视频流和L/R音频流,传输到车载主机。
支持MHL/HDMI方式的手机[5]不断增加,例如:三星的 I9250(Galaxy Nexus),I9220(Galaxy Note),I9100 Galaxy SII,Galaxy SII LTE,移动版I9108,电信版I9100,I997Infuse 4G等;HTC的G19 Raider 4G,G18(Sensation XE),G17(EVO 3D),HTC Flyer,G14,HTC Jestream等;LG的LG Optimus 4X,LG X3 P880,LG Optimus LTE,LU6200等;魅族的MX,OPPO X905 Find 3等等。
1 系统组成
智能手机与车载主机互动系统由智能手机(客户端软件)、音视频转换模块和车载主机(服务端软件)组成,如图1所示。智能手机音频/视频通过MHL或者HDMI接口输出,经过转换后在车载主机显示手机屏幕和播放声音;智能手机与车载主机通过蓝牙或者WiFi连接和通讯,由车载主机上监控鼠标事件的服务器程序,将用户在车载主机屏幕上的触摸事件和坐标发送给手机客户端,客户端模拟对应的鼠标事件,实现用户通过车载主机屏幕操作手机的应用。
图1 系统组成
该系统成本低,操作方便。对于车主,智能手机和车载主机都已有,无需另外购买,升级本系统方案只需增加音视频转换模块。
2 转换模块设计
转换模块结构如图2 所示。智能手机的音视频数据输出接口与音视频转换模块的输入接口连接,如果智能手机的输出是MHL信号,则音视频转换模块先把MHL格式的信号转换为HDMI格式。音视频转换模块将 HDMI格式的音视频信号转换为CVBS/VGA/RGB格式的视频信号和L/R音频信号。将CVBS/VGA/RGB格式的视频信号输出到车载主机CVBS/VGA/RGB视频输入接口,将音频信号输出到车载主机L/R音频输入接口。
图2 转换模块结构
转换模块采用龙讯科技的 LT8612芯片,通过MICRO USB接口的MHL线和手机连接(如图3 所示)。转换模块支持MHL1.2和HDMI1.4协议,480p或480i的视频直接输出到主机的IPOD接口,音频通过DAC芯片PCM5100后输出到主机。
图3 MICRO USB接口转MHL
音视频转换模块将智能手机的屏幕界面和音频数据,分别以视频流和音频流的方式传输给车载主机;车载主机的触摸屏显示智能手机的屏幕界面,与车载主机连接的音响设备播放音频数据。
3 功能实现
3.1 WiFi设置与连接
WiFi一直被视为通信网络的有效补充,大多数智能手机已具备这一功能。如果车主用户选择 WiFi方式,车载主机通过WiFi网卡连接智能手机的WiFi热点,车载主机服务器软件通过SOCKET方式与智能手机客户端软件进行数据交换[5]。车载主机与智能手机客户端通过WiFi方式建立无线连接过程如图4所示。智能手机客户端软件启动后,先按照协议约定,设置手机 WiFi热点的服务集标识(service set identifier,SSID)的名称、加密方式和密码(见图5a)。智能手机客户端软件判断WiFi模块是否处于上网状态,由于WiFi模块的上网功能与热点功能是互斥的,所以智能手机客户端软件首先通过手机系统提供的API接口调用isWiFiEnabled()方法判断WiFi模块是否处于上网状态,若是,则通过手机系统提供的 API接口调用setWiFiEnabled(false)方法关闭WiFi模块的上网功能。在确认WiFi模块的上网功能处于关闭状态后,智能手机客户端软件调用 API接口函数getWiFiApConfiguration()获取手机 WiFi热点的原始信息,包括原始 SSID、加密方式、密码等,将手机WiFi热点的原始信息与协议约定配置的SSID、加密方式、密码信息进行比较。如果不一致,则通过调用setWiFiApConfiguration()对手机 WiFi热点的原始信息进行修改,使其与协议约定配置的WiFi 热点信息一致,启动手机WiFi热点。
图4 建立WiFi无线连接流程图
车载服务器端启动自动搜索智能手机WiFi热点功能(见图5b),车载服务器软件判断车载主机是否搜索到约定名称的手机WiFi热点,若搜索到,车载主机以协议约定的加密方式和密码进行连接,手机与车载主机软件提示连接成功。
3.2 鼠标点击事件监控
无线连接成功后,手机客户端通过API接口函数获取手机屏幕大小,发送给车载主机服务器软件,车载主机服务器软件接收智能手机屏幕像素大小数据并进行预设置。车机服务器软件启动鼠标钩子(Mouse HOOK),监控用户的屏幕触摸操作,将鼠标事件(WM_ LBUTTONDOWN,WM_LBUTTONUP,WM_ MOUSEMOVE)和根据手机屏幕大小计算后的坐标发送到手机客户端;手机客户端根据这些数据同步模拟手机屏幕的鼠标事件。这样,就实现了在车载主机屏幕上进行点击,远程操作手机应用的功能。
由于车载主机一般都是宽屏幕的,例如800×480像素,智能手机以横屏状态投影到车载主机的效果比较好(见图6)。横屏状态投影方式的算法参数说明如下:X为车载主机屏幕点的x坐标;Y为车载主机屏幕点的y坐标;Width为车载主机屏幕触摸区宽度;Height为车载主机屏幕触摸区高度;PhoneW为智能手机屏幕触摸区宽度;PhoneH为智能手机屏幕触摸区高度。
需要发给手机的点的 x坐标算法:float rx =(float)Y/ (float)Height*(float)PhoneH;需要发给手机的点的 y坐标算法:float ry = (float)X/ (float)Width*(float)PhoneW。制定相应的通讯协议,车载主机服务器程序将鼠标事件和坐标数据按照协议进行数据打包,发送给智能手机客户端程序,智能手机客户端程序模拟对应的鼠标事件,实现对智能手机的应用程序操作。
图6 手机横屏投影到车载主机
3.3 功能按钮
为了更方便操作,在车载主机的控制面板上设置3个按键,模拟智能手机的“返回”按键Black,“主页”按键 Home,以及“菜单”按键 Menu。按键操作由Down和Up两条指令组合完成,在协议中,指令用1位字节进行区别。
4 结束语
本文给出了一种智能手机与车载主机的互动方法。本系统的方案兼容性强,能够适配多种型号的智能手机,促进了车载电子多屏互动和TeleMatics的发展。
[1]张元文,陈玮.车载系统 MirrorLink方案的研究[J].信息技术,2013(2):55-58.
[2]Silicon Image 推出新型移动高清连接技术[J].世界电子元器件,2008(2):23.
[3]张健伟,潘梦鹞,刘桂雄.基于GFSIN的车载式智能加速度传感单元的设计[J].自动化与信息工程,2009,30(4):21-24.
[4]郭勇.移动设备新看点MHL技术能否引发视频接口变革[J].电脑迷,2012(10):41.
[5]张庆.基于MHL技术的画中画显示及键鼠控制系统研究[C].第二十六届中国(天津)2012 IT、网络、信息技术、电子、仪器仪表创新学术会议:170-173.