基于i.MX6车载音视频系统的设计和实现
扫描二维码
随时随地手机看文章
摘要:随着汽车产业和电子技术的发展,车载系统的电子化程度越来越高,车载音视频系统作为汽车人机交互的重要组成部分,正成为研究的新热点。本文提出了智能手机和车载音视频系统相结合的应用方案,分析了实现i.MX6车载音视频系统的硬件模块和软件流程图,驱动初始化状态机实现方法。系统测试结果表明本文提出的音视频系统实现了音视频基本功能,还可实现多屏互动,并提供移动设备实时充电解决方案。
近年来,随着汽车用户的覆盖普及和电子技术的不断创新发展,人们对汽车性能要求也越来越高,由传统的交通工具单一功能向多媒体、信息化的多功能交通工具转变;汽车产业从单纯的机械产品向光机电一体化转变。未来的趋势是电子化比重不断加强,车载音视频系统作为汽车人机交互的重要组成部分,成为研究的新热点。
目前市场上的车载音视频设备大都是以完整的音视频系统的形式出现在车载环境中。本文提出了一种利用飞思卡尔半导体最新一代处理器i.MX6,并结合新颖的MHL协议研究车载音视频系统的新方案,实现了多屏互动功能,在多系统应用中注意防止同频干扰问题,并能提供移动设备实时充电解决方案。
1 基于i.MX6的车载音视频系统架构
基于i.MX6车载音视频系统的系统架构如图1所示。本文设计的车载音视频系统由原始音视频数据源接收模块、数据处理、视频数据和音频数据输出组成。
系统在正常工作时,通过集成MHL功能的智能手机向系统的接收模块输入音视频数据,数据可以储存在手机中的资源,也可以是从2G、GPRS、3G、LTE或WiFi等网络中获取的音视频数据。接收模块对接收到的MHL格式的数据进行预处理,将数据中的视频数据和音频数据分离,并将视频数据转换成MIPI格式,音频数据转换成I2S格式。
将MIPI格式的视频数据和I2S格式的音频数据同时输入处理器i.MX6,视频数据经过图像处理子系统的相关处理后,转换成LVDS显示识别的RGB格式视频数据,通过LVDS线缆输出到显示设备。同时,通过处理器的一个I2S接收模块接收音频数据,对数据不作处理,直接通过处理器的另外一个I2S发送模块送到音频驱动器,经驱动后,通过喇叭或者耳机播放与视频同步的音乐。
2 系统硬件设计
基于i.MX6车载音视频系统的系统架构如图2所示。基于i.MX6的车载音视频系统硬件部分主要包括ADV7481构成的MHL数据格式接收模块、i.MX6处理器模块、显示模块、WM8962音频驱动模块和电源部分。
2.1 电源部分
电源部分由两部分构成,第一部分是输入过压保护电路,防止输入电压过大或外界干扰进入,损坏电路;第二部分是集成电压管理电路,集成了开关型电压转换电路和线性电压转换电路。
输入过压保护电路如图3所示。在正常输入5 V电源电压时,闭合开关S1,Q1的源极为5 V,栅极电压由电阻R2、R4、R5的分压决定,约为0.26 V,这样Q1的VGS为-4.74 V,低于开启电压-2.1 V,Q1的漏极和源极之间导通,主电源5 V流入PSU_5V0供给后级试用。当输入端输入非正常的过压时,稳压二极管D2的反向电压会超过它的反向击穿电压限值,使得D2的阴极电位稳定在5.1 V左右,同时使得三极管Q2的UBE大于0.7 V时,Q2的集电极和发射极之间导通,会有大量电流从其内部流过,这些电流会在R4和R5上产生压降,在Q1的栅极产生一个电压,使得Q1的栅源电压近似相等,高于开启电压-2.1 V,Q1管截止,阻止过压流入后级电路,实现保护后级电路的功能。
集成电压管理电路选用了飞思卡尔半导体的MMPF0100解决方案,它主要包括电源管理控制、线性稳压电源转换、开关电源转换3个部分。电源的管理控制部分可以配置输出的电压值,精度,输出时序等。开关电源电路的本质是一个串联型开关型稳压电源。线性稳压电源转换电路,实质上就是一个线性调制器。
2.2 接收模块
接收模块兼容MHL和HDMI两种数据源输入,其中MHL的差分数据线和HDMI的DATA0+/-共用一对差分线,CBUS与HDMI_HPD_CON共用一根信号线,电源和地共用。
系统靠检测连接器第2脚的CD_SENSE信号线的电平来判别是什么数据源输入。当CD_SENSE为高电平时,表示是MHL源输入;当CD_SENSE为低电平时,表示是HDMI源输入。
MHL有个特殊的功能,Sink端可以为Source设备供电,5 V电压要向外输出,而兼容HDMI接口检测时需要接收Source设备的5 V电压,这就意味着在两种不同的输入模式下,5V电源管脚的电流方向截然相反。
为了解决两种不同的应用造成的困扰,本文设计了一种5 V电源方案,如图4所示。当系统检测到MHL输入时,CD_SENSE是高电平,Q7管导通,Q7和Q8的栅极约为0 V,由于Q7存在体二极管,使得Q7和Q8源极的电位只比5 V低二极管的导通压降,仍为高电平,两个MOS管的VGS大于开启电压,都呈现导通状态,5 V电源通过连接器的电源脚为Source设备充电。当系统检测到HDMI输入时,CD_SENSE是低电平,Q6管截止,R15上没有电流,Q3和Q4源极和栅极电压相等,都呈现截止状态,5 V不能向外供电,电源管脚只接收Source的电压实现检测功能。
2.3 i.MX6处理器模块
本文选用飞思卡尔公司的i.MX6处理器,它集成4核ARM Cortex—A9,采用先进的纳米技术,且每个内核运行时最高速率可以达到1.2 GHz。每个处理器提供一个64 bit的存储器接口,以及一系列外设接口。如MIPI CSI-2接口、I2S接口、无线接口、显示接口、摄像传感器接口等。从这款芯片特性可以看出,它速率高、安全、功耗低,片上集成了多个外设接口,资源丰富,可以满足不断增长的车载娱乐、远程信息访问和处理、人机交互界面、集群显示的市场需求。[!--empirenews.page--]
2.4 显示模块
MHL Source的音视频数据经过ADV7481解码,剥离出视频数据。视频数据通过MIPI接口传送到处理器,在经过处理器内部的图像处理单元和硬件模块处理电路的转换,生成可在LVDS接口传输的RGB格式的视频数据流。通过外接的TFT屏显示视频图像。对TFT屏还增加了额外的设计,如通过软件来设计屏幕的亮度,以及实现触控回传功能。
2.5 WM8962音频驱动模块
从ADV7481解码出的I2S格式音频信号,在SPI总线的控制下传输到处理器的I2S接收模块。音频数据仍以I2S格式,通过处理器内部另外一个独立的I2S发送模块传输到音频驱动,经过处理后从耳机接口输出。通常耳机线缆长度为1 m左右,在电磁兼容领域可以看成一根有效天线,很容易接收系统内部噪声,向外辐射能量,导致EMI超标。设计时需要在每根信号线上放置对地滤波电容,滤波高频噪声,防止向外辐射。
3 系统软件设计
3.1 系统软件流程图
根据系统设计的功能需求,基于i.MX6的车载音视频系统软件流程图如图5所示。
系统初始化后,配置电源管理模块,然后检测MHL输入还是HDMI输入,按不同输入模式配置解码芯片和处理器,配置MIPI时钟、帧时钟、控制音视频同步等,最后分别处理视频和音频数据并输出。
3.2 ADV7481驱动初始化流程图
ADV7481驱动初始化应用状态机进行编程。初始化时呈四种状态,开机之前的未知状态定义为Unknown模式;没有检测到线缆插入的状态定义为Free_run模式,系统输出默认的640x480@60的检测方格的视频图像;检测到MHL线缆插入定义为MHL_IN模式,按照MHL模式配置ADV7481芯片;检测到HDMI线缆插入定义为HDMI_IN模式,按照HDM模式配置ADV74 81芯片。
4个状态之间相互转换的状态图如图6所示。在芯片复位或者初始化时,Unknown状态跳转到Free_run状态;在Free_run状态,当检测到MHL线缆插入时插入MHL_IN状态,当检测到HDMI线缆插入时插入HDMI_IN状态;在MHL状态下检测到MHL线缆拨出或只检测到MHL线缆插入而没有检测到MHL设备时,跳转到Free_run状态;在HDMI状态下检测到HDMI线缆拨出或只检测到HDMI线缆插入而没有检测到HDMI设备时,跳转到Free_run状态。
3.3 MIPI时钟的设置
处理器i.MX6中集成的MIPI DPHY的最大串行数据速率为80 MHz~1 GHz,它必须与ADV7481的MIPI DPHY数据速率相匹配,否则MIPI_CSI错误状态寄存器会报出“Start of
Transmission Error on Data Lane”。当两者的速率相匹配时,MIPI_CSI_ERR1的值为0x0,当速率不匹配发生错误时,MIPI_CSL_ERR1为0x3。
ADV7481的数据速率取决于输入视频图像的像素时钟,每像素的比特数和通道数。为了匹配ADV7481的数据输出速率,必需设置MIPI_CSI_PHY_TST_CTRL1寄存器值。设置如下的结构体和数组。
3.4 帧速率的设置
帧速率(FPS)与像素时钟(Fpixel_clk),视频的分辨率和行列消隐三个参数有关。利用adv748x_get_fps()函数获得像素时钟为Fpixel_clk,通过748x_get_input_info()函数可以获取视频额分辨率为Width*Height,行列消隐为HBP、HFP、VBP和VFP等信息。利用公式(1)计算帧速率。
FPS=FPXCLK/(HBP+WIDTH+HFP)*(VBP+HEIGHT+VFP) (1)
4 系统功能测试
系统的功能测试包括两个部分:MHL格式数据输入的功能测试,这是本文设计的关键功能;HDMI格式数据输入的功能测试。
4.1 输入MHL格式数据的功能测试
在MHL格式数据源功能测试时,以联想公司生产的型号为K860I的智能手机作为数据源终端,输入到车载音视频系统中,进行音视频功能测试。
实际功能测试效果图如图7所示。系统上电后,黄色指示灯亮,表示MHL数据源输入。依次对设计的车载音视频系统进行了音频、图片、音视频、应用程序4个方面进行测试,测试结论如下:
1)手机播放歌曲时,在外接的耳机中能够听到清晰的音乐,音频满足预期设计要求。
2)手机查看图片时,能从LCD屏幕中看到清晰的图片,实现双屏互动,满足预期设计要求。
3)手机播放音视频时,也可从LCD屏幕中看到连续的视频,同时从外接的耳机听到同步的声音,实现信息娱乐功能,满足预期设计要求。
4)手机使用百度地图软件时,能够在LCD屏实时显示。启动软件中导航功能时,能够为驾驶员提供地图导航、语音导航和实时路况信息,满足预期设计要求。
4.2 输入HDMI格式数据的功能测试
文中设计的系统还兼容HDMI接口。以戴尔公司生产的型号为V1450的笔记本作为HDMI格式数据源输入到系统进行功能测试,实际功能测试图如图8所示。系统设计的HDMI接口,支持800*600像素。将笔记本的分辨率设置成800*600,在LCD屏幕上能够显示笔记本的桌面,满足设计要求。
5 结论
随着国内外汽车行业发展迅猛,各类车载电子设备及其应用技术的发展也日新月异,成为工业界研究的热点。本文正是基于这一需求,对车载的音视频系统进行深入研究,采用飞思卡尔半导体i.MX6,结合新颖的MHL协议,开发设计出一款可利用手机音视频资源的车载音视频系统。[!--empirenews.page--]
对系统整体功能进行测试,以智能手机作为MHL格式数据源终端,接入车载系统后,经处理在LCD屏幕上实时显示来自手机的图像或视频,并能实现多屏互动,耳机可听到同步的声音,同时可将手机中的娱乐、地图、导航等应用软件完美地融入到车载系统,并能提供移动设备充电解决方案,达到预期效果,满足设计要求。同时系统还能实现常规HDMI输入接口,丰富了数据源类型,提高了系统的兼容性和使用价值,具有较高的经济效益。