增强便携式装置的显示输出能力的设备和方法

文档序号:6440521阅读:120来源:国知局
专利名称:增强便携式装置的显示输出能力的设备和方法
技术领域
本发明涉及便携式计算装置,尤其涉及增强便携式装置的显示输出及交互能力的装置和方法。
背景技术
诸如移动电话、个人数字助理等具有计算能力的便携式装置正在受到越来越多的应用。用户使用这种便携式装置时,可输入命令或运行应用程序,使便携式装置处理数据,并在LCD显示屏上显示结果。由于LCD显示屏较小,用户有时可能希望将应用程序输出的图形数据在另一个大尺寸的外部的显示器上(例如个人电脑显示器)显示。
申请号US2002/0080091的美国专利申请公开了一种用于便携式计算装置的信息传输和显示方法及系统,这里作为参考全文引用。该专利申请提出了一种扩展模块,它包括一个通信接口,用于将扩展模块连接到一个带有扩展插槽的便携式计算装置,诸如个人数字助理(PDA);扩展模块也包括一个存储器和一个外部显示控制器。当扩展模块连接到PDA时,PDA检测到扩展模块的存在。PDA中的(或者扩展模块中的)微控制器执行一个控制软件,在PDA的显示屏上显示一个图形控制界面,用户能利用这个图形控制界面,操作该控制软件,使PDA在外部显示器上显示图形数据,诸如演讲图片。其中,控制软件首先对便携式计算装置中事先存储的图形数据解码,再把解码后的图形数据经扩展插槽传递到扩展模块中。解码后的图形数据进一步被转换成电信号后,通过外部显示控制器被发送到外部显示器。
上述扩展模块只解码和传输在PDA中存储的各个静态图形数据,例如一帧帧的演讲图片,因此只能在外部显示器显示这种静态图形数据。
US2002/0080091的扩展模块只显示事先编辑好的静态图形,其应用是有局限的。在便携式计算装置里不仅有存储的静态图片,还有许多的应用程序,而这些应用程序的界面如果要用上述扩展模块显示到外部显示器上,需要实时地生成大量连续的静态图片,并发送到所附的装置上进行处理,这对资源有限的便携式计算装置来说是不现实的。
因此,需要对上述扩展模块做出改进,使得该附加装置能以更有效的方式传输和处理图形数据,达到在外部显示器上实时地显示便携式装置中运行的应用程序输出的即时图形数据。

发明内容
本发明的目的是提供一种智能代理设备及其控制方法,以便能把在便携式装置上运行的应用程序输出的结构化图形数据在外部显示器上输出,并允许通过外部显示器与应用程序互动,以改变应用程序输出的结构化图形数据。
本发明基于这样的原理,即当在便携式装置上运行应用程序时,应用程序的界面输出都是要通过调用底层绘图函数绘制而成;如果界面要在远端显示器上显示,则只需要将同样的绘图函数调用传递至连接外部显示器的代理设备上执行即可。这样就能有效地降低传输的数据量,且不需要额外的计算,达到实时同步地在外接的显示器上显示便携式装置上的应用程序界面的目的。
进一步地,有很大一部分应用程序的界面是以标记语言(Markup Language)描述的,例如著名的因特网(Internet)应用是基于HTML语言。本发明在前述原理的基础上,针对此类特殊应用,采用将用标记语言描述的页面传输至代理设备、由代理设备上的智能处理单元解释处理的方法,可进一步减低需要传输的数据,更加快捷地在外部显示器上再现应用界面。
本发明一方面提供一种用于增强便携式装置的显示输出能力的设备,该设备包含用于连接便携式装置的通信接口、用于向外部显示器提供显示信号的显示控制器。此外,智能代理设备还包含一个操作控制器,该操作控制器包含连接管理器,用于建立连接和管理数据流;图形数据接收器,用于通过通信接口接收来自便携式装置上运行的应用程序输出的结构化图形数据,将其转换成相应的图形函数调用;窗口管理器,用于响应连接的建立或断开,生成或关闭外部显示器上的应用程序窗口,以及根据所述图形函数调用,调用一个图形函数库来管理应用程序窗口。
按照本发明的优选实施例,智能代理设备可进一步连接到外部键盘和/或鼠标,操作控制器可接收并解释键盘/鼠标事件,并响应键盘/鼠标事件而管理外部显示器上的窗口,或者与应用程序交互。
本发明的智能代理设备最好采用高速串行数据接口,尤其是USB接口。采用USB的好处是其通用性,即能与越来越多有USB标准配置的智能便携式装置接合。
由于上述结构,本发明的智能代理设备能接受应用程序输出的结构化图形数据,例如图形API和抽象标记语言,在外部显示器上动态地构图,并管理显示窗口,使用者可以方便地在外部显示器上查看便携式装置上应用程序的显示输出,还可通过外接键盘及鼠标完成与应用程序的交互操作。
本发明的另一个方面是提供一种用于增强便携式装置的显示输出能力的方法及计算机程序。


附图作为说明书的一部分,用于图解本发明的实施例,并和说明书一起用于解释本发明的原理,其中相似的附图标记代表相同或相似的单元。
图1A和1B表示按照本发明连接便携式装置与个人电脑显示器的智能代理设备的示意图;图2是表示按照本发明的智能代理设备的结构的示意框图;图3是表示图2所示智能代理设备中的操作控制器的框图;图4表示按照本发明的、连接管理器在便携式装置与智能代理设备之间建立连接和传输数据的流程图;
图5表示图3中的操作控制器的窗口管理器的操作的流程图;图6表示按照一个实施例向操作控制器添加的服务管理器的操作流程图;图7是说明本发明的智能代理设备一个最佳实施例的工作流程的框图。
图8A和8B是表示在外部显示器上显示的应用程序的输出的示意图。
具体实施例方式
现在参看图1A,该图表示一个其中实现了本发明的一个实施例的系统。如图所示,系统包括一个便携式装置11、一个诸如个人电脑显示器的LCD显示器12和本发明的智能代理设备10。本发明所称的便携式装置11,指的是具有一定计算能力的所谓“智能”装置,包括个人数字助理(PDA)、移动电话等等。这种智能装置包含处理器和存储器,能够运行一定的应用程序,能够接入因特网,从因特网上获得诸如HTML页的内容。作为示例,这里用移动电话具体代表便携式装置,移动电话中位于常规应用程序和接口之间的定制驱动代理,提供智能代理设备10与移动电话11上运行的应用程序交互,并转发应用程序运行时输出的结构化图形数据,以便在外部的显示器12上显示。
图1B是所示的一个其中实现了本发明的另一个实施例的系统,与图1A相比,智能代理设备10增加了一个键盘21和一个鼠标22。用户通过操作键盘和鼠标,能控制在外部的显示器12上显示,并与便携式装置11实现交互操作。
图2是表示按照本发明的智能代理设备10的框图。如图所示,智能代理设备10包含一个通信接口101,按照本发明的一个优选实施例,通信接口101是一个高速串行数据通信接口,例如USB接口,能在外设控制器的控制下与便携式装置的USB通信端口连接。此外,智能代理设备10还包含显示控制器103,用于将数字信号转换成模拟信号传送给显示器12;用于执行程序的微处理器(MCU)105;以及用于存储指令/数据的存储器107。以上部件的功能和实现是所属技术领域的技术人员熟知的,例如,作为USB接口的通信接口还可包含USB驱动程序,显示控制器中还可包含显示接口和适当的显示驱动程序。在一个实施例中,显示接口通过VGA电缆(例如15引脚VGA连接线)连接到显示器12。再如,通信接口和/或显示控制器可包含或连接到外设控制器,用于控制通信接口和外部显示器。为简明起见,这里不再对上述部件作详述。
除了以上部件,本发明的智能代理设备10中还包含一个操作控制器109,用于建立与便携式装置11的数据通信、接收和解释结构化的图形数据,生成和管理在外部显示器上显示的应用程序窗口。
可选地,智能代理设备10中还可包含电源111,例如电池或者来自A/D转换器的直流电压输入。尽管可以使用来自例如便携式装置中的电源,智能代理设备10包含独立电源的好处是无需耗费便携式装置的电能,从而延长其工作时间。可选地,智能代理设备10中还可包含一个或多个额外的接口113,例如USB接口,用于连接到外部键盘21和/或鼠标22,以方便进一步通过键盘21和/或鼠标22控制外部显示器的显示。
图3是详细表示图2所示智能代理设备中的操作控制器109的框图。本发明的操作控制器109的基本部件是连接管理器1091,图形数据接收器(GDR)1093和窗口管理器1095。连接管理器1091用于建立连接和管理数据流,例如通过外设控制器,连接诸如USB接口的高速串行装置;图形数据接收器(GDR)1093用于通过通信接口101接收来自便携式装置11的结构化图像数据,并将其转换为相应的图形函数,传给窗口管理器1095。按照本发明的一个实施例,结构化图形数据例如包括图形函数API集、标记语言页(例如HTML、XML、DHTML等等)。如果结构化图形数据是标记语言,GDR 1093进一步将其转换成相应的图形函数。窗口管理器1095用于生成和管理在外部显示器上显示的应用程序窗口。具体来说,在与便携式装置11连接和断开连接时,窗口管理器1095生成或关闭应用程序窗口。在连接期间,窗口管理器1095根据所接收的数据,通过提供基本的图形组件及绘制函数的图形函数库1096,管理在外部显示器上显示的应用程序窗口,此外,窗口管理器1096还监视与窗口有关的操作事件,并将相应的事件回传给便携式装置上的应用程序。
按照本发明的优选实施例,操作控制器109还可包含键盘/鼠标数据接收器(KMDR)1094,用于接收键盘/鼠标事件。键盘/鼠标事件指的是用户为控制显示而操作键盘21/鼠标22的动作,例如按压某个键或点击/滚动鼠标。在这个实施例中,窗口管理器1095被进一步配置得可响应键盘/鼠标事件而管理外部显示器13上的窗口。
具体来说,窗口管理器1095接收键盘/鼠标事件的数据后,解释键盘/鼠标事件。如果是窗口事件,窗口管理器1095相应地管理外部显示器上的窗口,例如移动窗口、调整窗口大小、窗口获得/失去焦点。如果键盘/鼠标事件是应用程序内部组件事件,例如点击应用程序输出的菜单选项,则窗口管理器1095通过连接管理器1091,把该事件分发到便携式装置11,由正在运行的应用程序处理,由此改变的应用程序的输出,进而反映在外部显示器13上。
按照本发明的优选实施例,操作控制器109中还可以添加一个服务管理器1092。所属技术领域的熟练人员知道,服务管理器可搜集代理设备上的设备信息,例如外接显示器、键盘及鼠标等的参数特性)。如果与便携式装置中定制的驱动代理协商,提供这些外设信息,应用程序就能利用这种信息更好地运行。按照现有技术,上述设备信息通常以服务的形式封装,又称为设备服务或服务,实现上述功能的模块称为“服务管理器”。
下面参照图4、5、6进一步说明操作控制器109的操作。
图4表示按照本发明的连接管理器1091在便携式装置与智能代理设备之间建立连接和传输数据的流程图。在步骤400,监视与智能代理设备的USB的一个连接。USB是一种即插即用的端口,如何监视USB的连接是现有技术中众所周知的,这里不作详述。在一个实施例中,步骤400例如可由USB驱动器的一个回叫(call back)例程实现。在步骤401,在便携式装置与智能代理设备之间建立一个TCP/IP连接,为随后的数据传输提供一个独立于媒体的(media-independent)通信通道。每当在步骤400或401建立了一个连接时,就执行步骤402,向窗口管理器通知这个连接消息,以便窗口管理器相应地改变显示输出。然后,过程进行到步骤403,建立多个同时执行的等待/监视线程。
第一个线程始于步骤441,该步骤创建一个TCP/IP套接字(sock),监视某个端口与服务管理器的连接。在步骤442,将在便携式装置11与智能代理设备10之间传输的数据,传送到服务管理器1092。
第二个线程始于步骤461,步骤461建立一个与图形数据接收器(GDR)1093的连接,步骤462通过该连接把结构化图形数据传送到GDR 1093。在步骤463,判断是否该结构化图形数据是API类型的。如果不是,则执行步骤464,图形数据接收器1093将所接收的结构化图形数据转换成API格式。
第三个线程始于步骤481,步骤481建立一个与键盘/鼠标接收器(KBDR)1094的连接,步骤482通过该连接把键盘/鼠标事件传送到KBDR 1094。
第四个线程始于步骤49,在步骤49,检测到TCP/IP连接或USB连接的断开。然后执行步骤402,向窗口管理器通知这个断开消息,以便窗口管理器相应地更新显示输出。
现在参看图5。图5表示本发明的窗口管理器1095的操作的流程图。在步骤50,显示器处于空闲或待机状态,在这个状态下,窗口管理器等待连接管理器1901的关于USB和TCP/IP连接的消息。此时,窗口管理器可在显示器上显示指示这个状态的信息,例如显示一个墙纸。在步骤51,判断是否一个装置已经被连接。如果是,则在步骤52,在显示器上显示一个背景画面,表明该装置已经被连接。然后,过程前进到步骤53,建立多个并行执行的线程。
第一个线程始于步骤541,在步骤541,从GDR 1093接收图形函数,并调用图形函数库1096,将其转换成能被窗口管理器1095理解的消息。在步骤542,将消息再现成在背景画面上显示的各个窗口。
第二个线程始于步骤551,在步骤551,判断连接是否被断开。如果是,则执行步骤552,把显示器上显示的窗口清除。
如上所述,按照本发明的一个优选实施例,还可连接到外接键盘和/或鼠标。在这样的实施例中,窗口管理器1095也建立第三个线程。该线程始于步骤561,在步骤561,窗口管理器1095接收键盘或鼠标事件。在步骤562,窗口管理器解释键盘/鼠标事件。在步骤563,判断所接收的键盘/鼠标事件是不是窗口事件。如果是窗口事件,则控制显示器执行相应的操作,例如移动窗口、调整窗口大小、高亮度突出多个窗口中的某个窗口等等。如果不是窗口事件,表明键盘/鼠标事件的作用对象是应用程序内部的部件,则窗口管理器把所解释的事件数据分发给便携式装置的应用程序。
图6表示按照本发明的优选实施例、服务管理器1092搜集设备信息以及在便携式装置11与智能代理设备10之间协商和发送设备信息的流程图。
在步骤60,服务管理器1092监视和搜索智能代理设备10上的外部设备。在步骤61,读取和解析这些外设的信息,如外接显示器的屏幕大小、支持的颜色数等,以及是否有键盘21/鼠标22、键盘/鼠标的制式等。在步骤62,将上述设备信息封装为统一的服务格式,并在本地建立设备服务列表63,供查询检索,此服务列表63可储存在存储器107中。
服务管理器1092还可向便携式装置提供上述设备信息。在步骤64,当便携式装置11与智能代理设备10建立了连接时,服务管理器1092与便携式装置11中的驱动代理协商,建立服务查询通道。在步骤65,服务管理器1092接收到设备服务查询,并解析此查询。然后,步骤66根据查询检索设备服务列表63,读取设备信息。最后在步骤67,向便携式装置11返回有关的设备信息服务。
图7是说明本发明的智能代理设备一个最佳实施例的工作流程的框图。
在步骤70,外部设备(如外部显示器12、键盘21\鼠标22)与智能代理设备10建立物理连接,以及在便携式装置11与智能代理设备10之间建立物理连接,连接管理器1091在此物理链路上建立TCP/IP连接,以提供数据传输的通道。
在步骤71,连接管理器1091从便携式装置11接收结构化图形数据。该数据是由在便携式装置11上启动的应用程序输出的。具体来说,应用程序将绘制界面的指令以结构化图形数据(如图形API或标记语言)的形式、并通过驱动代理及已经建立的数据传输通道逐级传送给代理设备10。
在步骤72,连接管理器把所接收的数据转发给GDR 1093。如果数据类型是图形API函数(步骤73,Yes),GDR 1093将其直接发给窗口管理器1095;否则,如果是标记语言(Markup Language)则调用内嵌的解释转换器将标记语言转换为图形API函数,再发给窗口管理器1095。
按照本发明的一个优选实施例,可以下述方式对标记语言进行转换。例如,HTML页面中的“<HR>”表示画一条横线,GDR1093在解释此HTML页面时会将此代码转换成画线的API函数(伪代码drawLine(起点的相对坐标,终点的相对坐标,[缺省的颜色],[缺省的线宽])函数),供窗口管理器1095绘制页面时调用。
在步骤75,窗口管理器1095根据所接收的绘制界面的图形API函数,调用图形函数库1096生成绘图指令。最后,在步骤76,该绘图指令被传达给显示控制器,用于在外接显示器上绘制出应用程序的界面。
按照本发明的一个实施例,在步骤70中外部设备与智能代理设备10的物理连接完成之后,服务管理器1092搜集各外部设备的设备信息,生成设备服务列表63,并将其存储起来。在TCP/IP连接建立之后,服务管理器1092与便携式装置11上的驱动代理进行协商,报告服务信息;便携式装置11发出服务查询,通过服务管理器1092从设备服务列表63中获取可用外设的信息。上述过程由步骤90表示。由此获得外部设备信息可用于应用程序的配置。
按照本发明的一个实施例,如果键盘21和/或鼠标22设备存在,使用者的操作将通过这些输入设备的输入被窗口管理器1095获得和解释(步骤80),如果输入事件是应用相关的事件(框81,Yes),窗口管理器把所解释的事件数据通过数据传输通道反馈给便携式装置11上的应用程序(步骤82),以实现使用者和应用程序的交互。否则(框81,No),窗口管理器根据该输入管理应用程序窗口(步骤83)。
图8A和8B展示了一例应用程序的界面,该应用程序为一个文本编辑器,具有应用程序窗体(包括标题“Title”等)、文本编辑框、保存(“Save”)和退出(“Exit”)按钮等图形部件。该程序的功能是编辑和保存在便携式装置上的一个文本文件。在运行该程序时,指定的文本文件内容(此例为“abcdefg”)显示在文本编辑框内(伪代码showText(坐标,“abcdefg”)函数)。使用者的输入操作会即时通知应用程序,如在文本编辑框内按“h”键,则此事件将被反馈回应用程序,应用程序将新插入的文字“h”加入原有文本之后(伪代码appendText(坐标,“h”)函数),则文本编辑框内的文字被刷新显示为“abcdefgh”。同样,用户在保存按钮上的鼠标点击操作也会反馈给应用程序,最终导致此文本文件被写回便携式装置11的存储介质。另一方面,窗口管理器1095也依据输入事件对应用程序窗体进行管理,如移动、缩放、获得/失去焦点等等。
以上通过实现本发明的优选实施例,举例对本发明作了说明。但是上述说明和实施例的细节不能解释为对本发明保护范围的限制。例如,以上描述的单独的功能部件,例如图形数据接收器、键盘/鼠标数据接收器和窗口管理器,可以被集成在同一个部件中。再如,实施例中描述的功能特征和步骤,可以以硬件、软件或者它们的组合的形式实现。例如,实施例中的操作控制器,可以表现为例如集成电路的单一模块或组合,也可以由微处理器执行的软件实现。所属技术领域的熟练人员在本文的启迪下,可以在不脱离本发明的精神或范围的情况下对本发明的实施例作出各种修改。
权利要求
1.一种用于增强便携式装置的显示输出能力的设备,该设备包含一个用于连接便携式装置的通信接口和一个用于向外部显示器提供显示信号的显示控制器,特征在于还包含一个操作控制器,该操作控制器包含连接管理器,用于建立连接和管理数据流;图形数据接收器,用于通过通信接口接收来自便携式装置上运行的应用程序输出的结构化图形数据,将其转换成相应的图形函数调用;窗口管理器,用于响应连接的建立或断开,生成或关闭外部显示器上的应用程序窗口,以及根据所述图形函数调用,调用一个图形函数库来管理应用程序窗口。
2.按照权利要求1的设备,进一步包含一个或多个额外的接口,用于连接键盘/鼠标,并且操作控制器进一步包含键盘/鼠标数据接收器,用于接收键盘或鼠标事件,其中窗口管理器被进一步配置得响应键盘/鼠标事件而管理外部显示器上的窗口。
3.按照权利要求2的设备,其中,响应键盘/鼠标事件而管理外部显示器上的窗口包括解释键盘/鼠标事件,并控制外部显示器上的移动窗口、调整窗口大小、窗口获得/失去焦点的操作或这些操作的组合
4.按照权利要求2的设备,其中,响应键盘/鼠标事件而管理外部显示器上的窗口包括解释键盘/鼠标事件,并把应用程序内部组件事件分发到便携式装置,以便由所述应用程序进一步处理。
5.按照权利要求1-4的任何一项的设备,其中,操作控制器进一步包含一个服务管理器,用于搜集该设备上的外设信息,并向便携式装置提供这些外设信息。
6.按照权利要求1-4的任何一项的设备,其中,通信接口是USB接口。
7.按照权利要求2-4的任何一项的设备,其中,所述额外的接口是USB接口。
8.按照权利要求1-4的任何一项的设备,进一步包含独立的电源。
9.按照权利要求1-4的任何一项的设备,其中,所述结构化图形数据包括图形API。
10.按照权利要求1-4的任何一项的设备,其中,所述图形函数调用是API调用。
11.按照权利要求10的设备,其中,所述结构化图形数据进一步包括标记语言。
12.按照权利要求11的设备,其中,所述标记语言是HTML、XML、DHTML构成的组中的一种。
13.一种在连接便携式装置与外部显示器的设备上执行的增强便携式装置的显示输出能力的方法,所述设备包含微处理器、存储器、用于连接便携式装置的通信接口、用于向外部显示器提供显示信号的显示控制器,该方法包含以下步骤建立便携式装置与外部显示器的通信连接;接收便携式装置上应用程序输出的结构化图形数据;将所接收的结构化图形数据转换成相应的图形函数调用;根据所述图形函数调用,调用一个图形函数库来管理应用程序窗口。
14.按照权利要求13的方法,进一步包含以下步骤响应连接的建立,生成外部显示器上的应用程序窗口;或者响应连接的断开,关闭外部显示器上的应用程序窗口。
15.按照权利要求13的方法,进一步包含接收外部键盘或鼠标事件;解释键盘/鼠标事件;如果键盘/鼠标事件是窗口事件,则响应键盘/鼠标事件而管理外部显示器上的窗口;否则,将所解释的事件数据分发到便携式装置的应用程序。
16.按照权利要求15的方法,其中,管理外部显示器上的窗口包含键盘/鼠标事件移动窗口、调整窗口大小、窗口获得/失去焦点的操作或这些操作的组合。
17.按照权利要求13-16的方法,进一步包含以下步骤搜集所述设备上的外设信息;向便携式装置提供所述外设信息。
18.按照权利要求13-16的任何一项的方法,其中,所述结构化图形数据包括图形API和标记语言。
19.按照权利要求13-16的任何一项的方法,其中,所述图形函数调用是API调用。
20.按照权利要求17的方法,其中,所述标记语言是HTML、XML、DHTML构成的组中的一种。
21.一种计算机程序产品,体现为可存储在存储介质上的计算机程序指令序列,该计算机程序指令序列在连接便携式装置与外部显示器的设备上运行时,执行体现如权利要求13-19所述的方法的程序指令。
全文摘要
一种用于增强便携式装置的显示输出及交互能力的智能代理设备及其方法,可将便携式计算装置的图形数据接收器,用于通过通信接口接收来自便携式装置上运行的应用程序输出的结构化图形数据,将其转换成相应的图形函数调用;窗口管理器,可根据图形函数调用,调用一个图形函数库来管理应用程序窗口。智能代理设备操作控制器可包括全功能的计算机键盘输入及鼠标输入功能,能响应外部键盘/鼠标事件,管理外部显示器上的窗口和/或与应用程序交互,从而赋予便携式装置额外的交互操作能力。
文档编号G06F3/033GK1779634SQ20041009507
公开日2006年5月31日 申请日期2004年11月23日 优先权日2004年11月23日
发明者傅荣耀, 柴海新, 林国辉, 叶天正, 刘晓曦 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1