CN1822655A - 在电视机嵌入式Linux上进行人机交互界面快速开发的方法 - Google Patents

在电视机嵌入式Linux上进行人机交互界面快速开发的方法 Download PDF

Info

Publication number
CN1822655A
CN1822655A CN 200610032821 CN200610032821A CN1822655A CN 1822655 A CN1822655 A CN 1822655A CN 200610032821 CN200610032821 CN 200610032821 CN 200610032821 A CN200610032821 A CN 200610032821A CN 1822655 A CN1822655 A CN 1822655A
Authority
CN
China
Prior art keywords
hardware
osd
hardware platform
development
interactive interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 200610032821
Other languages
English (en)
Other versions
CN100356778C (zh
Inventor
白骥
郭敏强
黄黎明
徐勇
何彦
许雪松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Skyworth RGB Electronics Co Ltd
Original Assignee
Shenzhen Skyworth RGB Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Skyworth RGB Electronics Co Ltd filed Critical Shenzhen Skyworth RGB Electronics Co Ltd
Priority to CNB2006100328219A priority Critical patent/CN100356778C/zh
Publication of CN1822655A publication Critical patent/CN1822655A/zh
Application granted granted Critical
Publication of CN100356778C publication Critical patent/CN100356778C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

一种在电视机嵌入式Linux上进行人机交互界面快速开发的方法,其特征是包括如下步骤:A.首先设置一个编译开关,表明当前的开发处于PC上还是电视机硬件平台上;B.当处于PC上时,开发平台通过底层的应用程序将PC的屏幕显示区域限定为硬件显示的区域,从而模拟出一个硬件的OSD(On ScreenDisplay)装置;C.当连接上硬件平台时,通过这个编译开关,在初始化FrameBuffer时,先从电视机硬件内存中划分一块和硬件显示区域相对应的缓冲区,并将这块缓冲区通过映射成为Frame Buffer设备。通过该方法可以在电视机嵌入式Linux上进行人机交互界面快速开发。开发时不需要硬件平台,降低了开发成本;开发时借助计算机进行调试,方便快捷。开发完成后能迅速地转移到硬件平台上,节约时间。

Description

在电视机嵌入式Linux上进行人机交互界面快速开发的方法
【技术领域】
本发明涉及嵌入式操作系统领域,尤其是涉及一种在电视机嵌入式Linux上进行人机交互界面(GUI)快速开发的方法。
【背景技术】
传统的人机接口开发是:采用一套完全成型的商业版GUI,在硬件平台上进行应用开发。这类系统上一般都具有完备而且快速的显示系统,开发时需要计算机和嵌入式系统硬件平台配合使用。
而在电视机中应用中,采用的是轻量级的嵌入式Linux,如果采用商业级GUI,电视机的OSD显示速度不够快。并且,电视机的开发进度有严格的要求,如果采用传统的开发模式,在硬件平台未准备好之前,基本上是不能开发的。
在2.2.X版本以上的Linux中,有一种称为Frame Buffer的驱动程序接口,它可以理解为“帧缓冲”,是指图形设备所显示的内容在显存中的映射,由此可以抽象出一种Frame Buffer设备,它是图形硬件设备一种抽象,使用FrameBuffer和图形硬件建立联系,是用户进入图形界面的接口。有了FrameBuffer,用户的应用程序不需要对底层的驱动的深入了解就能够做出很好的图形。
但FrameBuffer仅仅只是提供简单的抽象而已,需要开发者自行做上层应用。在嵌入式环境下,图形开发是比较困难的,尤其是对于慢速显示设备的开发,更是如此。
因此,建立一套高效、适合于慢速显示设备的开发模式显得极其必要。
【发明内容】
本发明的目的在于提供一种在电视机嵌入式Linux上进行人机交互界面(GUI)快速开发的方法。
为实现上述目的,本发明提出一种在电视机嵌入式Linux上进行人机交互界面快速开发的方法,其特征是包括如下步骤:
A、首先设置一个编译开关,表明当前的开发处于PC上还是电视机硬件平台上;
B、当处于PC上时,开发平台通过底层的应用程序将PC的屏幕显示区域限定为硬件显示的区域,即电视机的OSD显示区域,从而模拟出一个硬件的OSD装置;
C、当连接上硬件平台时,通过这个编译开关,在初始化Frame Buffer时,先从电视机硬件内存中划分一块和硬件显示区域相对应的缓冲区,并将这块缓冲区通过映射成为Frame Buffer设备。
本发明还包括如下从属特征:
还包括局部更新机制,只更新有修改的部分,包括如下步骤:在相应的绘图操作后设立绘图坐标检测,在绘图完成后得到所有修改的区域,当区域累积到一定大小,或者上层应用认为需要更新的时候,将被修改的区域发送到硬件OSD设备,完成绘图。
在步骤B中,当处于PC上时,开发平台先进入800X600X32的模式。
与现有技术相比,本发明具有如下优点:通过该方法可以在电视机嵌入式Linux上进行人机交互界面(GUI)快速开发。开发时不需要硬件平台,降低了开发成本;开发时借助计算机进行调试,方便快捷。开发完成后能迅速地转移到硬件平台上,节约时间。
由于有一套针对慢速OSD的更新机制,使得GUI在电视上的响应速度大幅度提高。
【附图说明】
图1是在电视机嵌入式Linux上进行人机交互界面快速开发的方法流程图。
图2是绘图过程中局部更新机制示意图。
【具体实施方式】
实施例一:
请参阅图1:
本发明在电视机嵌入式Linux上进行人机交互界面(GUI)快速开发的方法是通过在内存建立一个和显示屏相同大小的区域进行缓冲,来实现Frame Buffer和硬件平台的互相对接的。通过这个缓冲区,上层应用和底层硬件平台完全隔离,上层应用就像是在操作Frame Buffer设备,不必考虑底层的实现情况。
首先设置一个编译开关,表明当前的开发处于PC(Personal Computer)上还是电视机硬件平台上。
当处于PC上时,开发平台先进入800X600X32的模式,并通过底层的应用程序将PC的屏幕显示区域限定为硬件显示的区域(电视机的OSD显示区域),从而模拟出一个硬件的OSD(On Screen Display)装置。其好处是:所有的上层应用按照PC上开发Frame Buffer应用程序时的方法开发,不存在任何差异。在这上面开发应用程序,可以脱离硬件平台,并可以实时地看到在硬件平台上的效果。
当连接上硬件平台时,通过这个编译开关,在初始化Frame Buffer时,先从电视机硬件内存中划分一块和硬件显示区域相对应的缓冲区,并将这块缓冲区通过映射成为Frame Buffer设备。这样,相对于上层程序并没有发生任何变化。
为了和硬件上的OSD显示设备接口,并加快显示速度,特别针对电视机慢速OSD设计一套局部更新机制,只更新有修改的部分。具体是:在相应的绘图操作(画线、画框、贴图)后设立绘图坐标检测,在绘图完成后得到所有修改的区域(一般为矩形区域),当区域累积到一定大小,或者上层应用认为需要更新的时候,将被修改的区域发送到硬件OSD设备,完成绘图。如图2所示。
其中,由标准化的要求,所有的绘图操作均被设计为针对缓冲操作的方式,更换开发平台对绘图操作无任何影响。同时由于将绘图操作同慢速硬件隔开,加快了绘图操作,缩短了应用的绘图开销时间。
综上所述,本发明实现了以下几大功能:
1.借助Linux内核中Frame Buffer设备支持,使人机接口开发脱离硬件平台。
2.专门针对电视机慢速OSD设计一套局部更新机制。
3.设计一套标准的Frame Buffer->慢速OSD内存拷贝机制,以实现开发后快速移植。
在某高端LCD电视上,已经采用此办法,实现了电视机菜单、PVR(个人视频录放器)菜单的开发实验,证明本方法可以达到上述有益效果。

Claims (3)

1.一种在电视机嵌入式Linux上进行人机交互界面快速开发的方法,其特征是包括如下步骤:A、首先设置一个编译开关,表明当前的开发处于PC上还是电视机硬件平台上;B、当处于PC上时,开发平台通过底层的应用程序将PC的屏幕显示区域限定为硬件显示的区域,即电视机的OSD显示区域,从而模拟出一个硬件的OSD装置;C、当连接上硬件平台时,通过这个编译开关,在初始化Frame Buffer时,先从电视机硬件内存中划分一块和硬件显示区域相对应的缓冲区,并Frame Buffer将这块缓冲区通过映射成为FrameBuffer设备。
2.如权利要求1所述的电视机嵌入式Linux上进行人机交互界面快速开发的方法,其特征是:还包括局部更新机制,只更新有修改的部分,包括如下步骤:在相应的绘图操作后设立绘图坐标检测,在绘图完成后得到所有修改的区域,当区域累积到一定大小,或者上层应用认为需要更新的时候,将被修改的区域发送到硬件OSD设备,完成绘图。
3.如权利要求1所述的电视机嵌入式Linux上进行人机交互界面快速开发的方法,其特征是:在步骤B中,当处于PC上时,开发平台先进入800×600×32的模式。
CNB2006100328219A 2006-01-13 2006-01-13 在电视机嵌入式Linux上进行人机交互界面快速开发的方法 Expired - Fee Related CN100356778C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2006100328219A CN100356778C (zh) 2006-01-13 2006-01-13 在电视机嵌入式Linux上进行人机交互界面快速开发的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006100328219A CN100356778C (zh) 2006-01-13 2006-01-13 在电视机嵌入式Linux上进行人机交互界面快速开发的方法

Publications (2)

Publication Number Publication Date
CN1822655A true CN1822655A (zh) 2006-08-23
CN100356778C CN100356778C (zh) 2007-12-19

Family

ID=36923694

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100328219A Expired - Fee Related CN100356778C (zh) 2006-01-13 2006-01-13 在电视机嵌入式Linux上进行人机交互界面快速开发的方法

Country Status (1)

Country Link
CN (1) CN100356778C (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101990073A (zh) * 2009-08-03 2011-03-23 康佳集团股份有限公司 一种显示装置、实现多层osd显示刷新管理的方法及系统
CN102004647A (zh) * 2010-12-24 2011-04-06 青岛海信信芯科技有限公司 Osd应用程序框架的实现方法、装置及多媒体终端
CN101163297B (zh) * 2007-09-18 2011-04-20 中兴通讯股份有限公司 嵌入式界面设计装置及方法
CN102043628A (zh) * 2010-12-24 2011-05-04 青岛海信信芯科技有限公司 Osd应用软件的开发方法、系统及多媒体终端
CN102063307A (zh) * 2011-01-07 2011-05-18 杭州海康威视数字技术股份有限公司 嵌入式硬盘录像机的图形用户界面创建方法及其系统
CN102081520A (zh) * 2011-01-14 2011-06-01 杭州海康威视数字技术股份有限公司 嵌入式硬盘录像机的图形用户界面创建方法及其系统
CN102196308A (zh) * 2011-05-19 2011-09-21 广东星海数字家庭产业技术研究院有限公司 一种基于数字电视的多硬件接口兼容驱动系统
CN109710356A (zh) * 2018-12-19 2019-05-03 深圳市金刚蚁机器人技术有限公司 Linux系统下的图形显示实现方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7979880B2 (en) * 2000-04-21 2011-07-12 Cox Communications, Inc. Method and system for profiling iTV users and for providing selective content delivery
GB0105583D0 (en) * 2001-03-06 2001-04-25 Sony Uk Ltd Development apparatus and method of developing an interactive application
KR100513093B1 (ko) * 2002-12-23 2005-09-07 한국전자통신연구원 씨.엠.엘.투를 기반으로한 리눅스 커널, 응용 소프트웨어패키지의 통합 설정과 파일목록 생성방법

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101163297B (zh) * 2007-09-18 2011-04-20 中兴通讯股份有限公司 嵌入式界面设计装置及方法
CN101990073A (zh) * 2009-08-03 2011-03-23 康佳集团股份有限公司 一种显示装置、实现多层osd显示刷新管理的方法及系统
CN102004647A (zh) * 2010-12-24 2011-04-06 青岛海信信芯科技有限公司 Osd应用程序框架的实现方法、装置及多媒体终端
CN102043628A (zh) * 2010-12-24 2011-05-04 青岛海信信芯科技有限公司 Osd应用软件的开发方法、系统及多媒体终端
CN102063307A (zh) * 2011-01-07 2011-05-18 杭州海康威视数字技术股份有限公司 嵌入式硬盘录像机的图形用户界面创建方法及其系统
CN102063307B (zh) * 2011-01-07 2015-07-15 杭州海康威视数字技术股份有限公司 嵌入式硬盘录像机的图形用户界面创建方法及其系统
CN102081520A (zh) * 2011-01-14 2011-06-01 杭州海康威视数字技术股份有限公司 嵌入式硬盘录像机的图形用户界面创建方法及其系统
CN102081520B (zh) * 2011-01-14 2015-04-29 杭州海康威视数字技术股份有限公司 嵌入式硬盘录像机的图形用户界面创建方法及其系统
CN102196308A (zh) * 2011-05-19 2011-09-21 广东星海数字家庭产业技术研究院有限公司 一种基于数字电视的多硬件接口兼容驱动系统
CN102196308B (zh) * 2011-05-19 2013-11-06 广东星海数字家庭产业技术研究院有限公司 一种基于数字电视的多硬件接口兼容驱动系统
CN109710356A (zh) * 2018-12-19 2019-05-03 深圳市金刚蚁机器人技术有限公司 Linux系统下的图形显示实现方法

Also Published As

Publication number Publication date
CN100356778C (zh) 2007-12-19

Similar Documents

Publication Publication Date Title
CN1822655A (zh) 在电视机嵌入式Linux上进行人机交互界面快速开发的方法
CN107728901B (zh) 界面显示方法、装置及终端
US9715326B2 (en) Superimposed annotation output
TWI446178B (zh) 用以控制雙電子顯示裝置的方法
US20140137034A1 (en) Asynchronous handling of a user interface manipulation
CN110347317B (zh) 一种窗口切换方法、装置、存储介质及交互智能平板
WO2013010143A2 (en) Foreground/background assortment of hidden windows
JP2013546043A (ja) 即時リモートレンダリング
US9286122B2 (en) Display techniques using virtual surface allocation
EP2250558A1 (en) Buffers for display acceleration
US9235925B2 (en) Virtual surface rendering
US10043489B2 (en) Virtual surface blending and BLT operations
US9959668B2 (en) Virtual surface compaction
CN101211258B (zh) 完整获取GDI和DirectX数据的方法
CN101105746B (zh) 采用过滤驱动获取图形设备接口调用的方法
EP3189410A1 (en) Semantic card view
CN109375980B (zh) 基于Andriod系统的触控绘图方法
JP5442214B2 (ja) 複数の表示画面領域に同時にマウスポインターを表示する方法及び装置、マウスシミュレーションプログラム
JP6504248B2 (ja) 画像出力制御方法、画像出力制御プログラム及び表示装置
US9324299B2 (en) Atlasing and virtual surfaces
CN101034358A (zh) 双屏播放幻灯片的方法
CN103164142B (zh) 一种画中画界面下屏幕触点位置的调整方法及电子设备
CN102693111B (zh) 一种Android移动终端支持不同分辨率的方法
JP2000200179A (ja) 組込みシステム内におけるバッファレス子グラフィックス・コンテキストを使用したアプレット及びアプリケ―ションの表示
WO2021253141A1 (zh) 一种图像数据处理的装置和方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1094638

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1094638

Country of ref document: HK

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20071219

Termination date: 20150113

EXPY Termination of patent right or utility model