发明内容
本发明实施例所要解决的技术问题在于,提供一种基于Android系统的双屏显示装置及显示方法,以解决现有技术中的Android系统不能将显示内容同时显示在LCD显示屏与HDMI显示屏上,从而增强用户体验。
为解决上述技术问题,本发明提供一种基于Android系统的显示装置,包括接口和主显示屏,该接口用于连接外接的扩展显示设备,该显示装置还包括:
缓冲存储单元,用于预先存储图形缓冲区渲染而生成的显示数据,其中,该显示数据按照该主显示屏的分辨率进行渲染。
第一显示控制单元,连接在该缓冲存储单元和主显示屏之间,用于从该缓冲存储单元中获取该显示数据,并控制该主显示屏显示该获取的显示数据以形成图像。
设备加载单元,与该接口连接,用于通过对该接口的监测判断该扩展显示设备是否通过该接口与该显示装置连接,并根据监测结果发送相应的控制信号。以及第二显示控制单元,连接在该缓冲存储单元、设备加载单元和接口之间,用于响应该设备加载单元发送的控制信号读取或不读取该缓冲存储单元中的显示数据,并当读取该显示数据时控制该扩展显示设备显示该显示数据以形成图像。
相应地,本发明还提供一种基于Android系统的双屏显示方法,应用于一基于Android系统的显示装置,该显示装置包括第一显示控制单元和第二显示控制单元,该方法包括:
监测一扩展显示设备是否与该显示装置连接。
根据监测结果产生并发送相应的控制信号至该第二显示控制单元。以及由该第二显示控制单元响应该控制信号与该第一显示控制单元读取显示数据并相应地控制扩展显示设备和显示装置的主显示屏形成图像或由该第一显示控制单元读取显示数据并控制该显示装置的主显示屏形成图像。
本发明提供的一种基于Android系统的双屏显示装置及显示方法,预先在缓冲存储单元中存储按照显示装置的主显示屏的分辨率进行渲染的显示数据,并通过对外接的扩展显示设备是否与显示装置连接的侦测相应地启动或关闭第二显示控制单元,以控制缓冲存储单元中的显示数据的读取,从而实现仅存在显示装置时由其主显示屏显示该显示数据以及同时存在显示装置和外接的扩展显示设备时同时由两个显示屏匹配地显示该显示数据,解决了现有技术中的Android系统不能将显示内容同时显示在LCD显示屏与HDMI显示屏上而降低用户体验的技术问题。
具体实施方式
为详细说明本发明的技术内容、构造特征、所实现目的及效果,以下结合实施方式并配合附图详予说明。
在Andriod系统中,把对硬件的支持分成两层,一层是用户空间,另一层是内核空间,内核驱动层运行在内核空间,硬件抽象层运行在用户空间。
硬件抽象层,就是对Linux内核驱动层程序的封装,向上层提供借口,屏蔽底层的实现细节。内核驱动层只提供简单的访问硬件逻辑,例如读写硬件寄存器的通道,至于从硬件中读到了什么值或者写了什么值到硬件中的逻辑,都放在硬件抽象层中。
内核fb驱动程序会申请一块内存区域作为显示缓冲区,应用程序将这块图形缓冲区映射到应用程序的地址空间来,以便可以向里面写入要绘制的画面内容。最后,用户空间中的应用程序通过fb设备将前面已经准备好的图形缓冲区渲染到帧缓冲区中去,即将图形缓冲区的内容绘制到显示屏中去,实现显示功能。
请参考图1,为本发明实施例中的显示装置的功能模块示意图,该显示装置10设置接口11,用于连接外接的扩展显示设备20。在本实施方式中,该接口11为HDMI接口,该扩展显示设备20为电视机,该HDMI接口用于将该电视机与该显示装置10连接起来。具体地,该显示装置10包括主显示屏12、第一显示控制单元13、第二显示控制单元14、缓冲存储单元15以及设备加载单元16。
该缓冲存储单元15用于存储上述图形缓冲区渲染而生成的显示数据,并且该显示数据按照该主显示屏12的分辨率进行渲染。在本实施方式中,该主显示屏12为LCD显示屏,该显示数据与该LCD显示屏的分辨率匹配。
该缓冲存储单元15分别与该第一显示控制单元13和第二显示控制单元14连接,并且该第一显示控制单元13还与该主显示屏12连接。该第一显示控制单元13用于从该缓冲存储单元15中获取存储的显示数据,并控制主显示屏12显示该获取的显示数据以形成图像。
该设备加载单元16连接在该接口11与第二显示控制单元14之间,用于通过对该接口11的监测而判断该外接的扩展显示设备20是否通过接口11与该显示装置10连接,并根据监测结果发送相应的控制信号至第二显示控制单元14。具体地,当确定该扩展显示设备20通过该接口11与该显示装置10进行连接时,该设备加载单元16产生第一控制信号至第二显示控制单元14,以启动第二显示控制单元14。此时,第一显示控制单元13和第二显示控制单元14同时从缓冲存储单元15中获取存储的显示数据。并且,该第一显示控制单元13直接控制该主显示屏12显示该获取的显示数据以形成图像,该第二显示控制单元14按照该扩展显示设备20的显示参数调整该获取的显示数据,并控制该扩展显示设备20显示该经过调整的显示数据以形成图像。在本实施方式中,该第二显示控制单元14按照该主显示屏12和扩展显示设备20的比例对该显示数据进行缩放。
在本实施方式中,该第二显示控制单元14将获取的显示数据按照HDMI的分辨率进行相应的缩放后,再送给扩展显示设备20进行显示。
当确定该扩展显示设备20未通过该接口11与该显示装置10进行连接时,该设备加载单元16产生第二控制信号至第二显示控制单元14,以关闭第二显示控制单元14。此时,只有第一显示控制单元13从缓冲存储单元15中获取存储的显示数据,并控制该主显示屏12显示该获取的显示数据以形成图像。
在本实施方式中,该缓冲存储单元15中设置三个帧缓冲区,以提高显示的流畅度。请参阅图2,为本发明基于Android系统的双屏显示方法的流程图,该方法包括:
步骤S20,启动Android系统,该设备加载单元16监测接口11以判断该外接的扩展显示设备20是否通过接口11与该显示装置10连接,若是,则进入步骤S21,否则,进入步骤S24。
在本实施方式中,该接口11为HDMI接口,该扩展显示设备20为电视机,该HDMI接口用于将该电视机与该显示装置10连接起来。
步骤S21,该设备加载单元16发送第一控制信号至第二显示控制单元14,以启动第二显示控制单元14。
步骤S22,该第一显示控制单元13和第二显示控制单元14同时从缓冲存储单元15中获取存储的显示数据。
步骤S23,该第一显示控制单元13直接控制该主显示屏12显示该获取的显示数据以形成图像,该第二显示控制单元14按照该扩展显示设备20的显示参数调整该获取的显示数据,并控制该扩展显示设备20显示该经过调整的显示数据以形成图像,然后,流程结束。
在本实施方式中,该主显示屏12为LCD主显示屏,该显示数据与该LCD主显示屏的分辨率匹配。该第二显示控制单元14将获取的显示数据按照HDMI的分辨率进行相应的缩放后,再送给扩展显示设备20进行显示。
步骤S24,该设备加载单元16发送第二控制信号至第二显示控制单元14,以关闭第二显示控制单元14。
步骤S25,该第一显示控制单元13从缓冲存储单元15中获取存储的显示数据,并控制该主显示屏12显示该获取的显示数据以形成图像,然后,流程结束。
本发明提供的一种基于Android系统的双屏显示装置及显示方法,预先在缓冲存储单元中存储按照显示装置的主显示屏的分辨率进行渲染的显示数据,并通过对外接的扩展显示设备是否与显示装置连接的侦测相应地启动或关闭第二显示控制单元,以控制缓冲存储单元中的显示数据的读取,从而实现仅存在显示装置时由主显示屏显示该显示数据以及同时存在显示装置和外接扩展显示设备时同时由两个主显示屏匹配地显示该显示数据,解决了现有技术中的Android系统不能将显示内容同时显示在LCD主显示屏与HDMI主显示屏上而降低用户体验的技术问题。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。