一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

屏幕更新请求的处理方法、装置及电子墨水屏设备与流程

2022-04-27 12:48:02 来源:中国专利 TAG:


1.本技术涉及数据处理技术领域,尤其涉及一种屏幕更新请求的处理方法、装置及电子墨水屏设备。


背景技术:

2.电子墨水屏是一组完整的显示屏,由tft、电子墨水薄膜、保护膜、驱动用的电子组件和连接器共同组成,电子墨水薄膜可以认为构成了一个大的像素矩阵,这些像素通过对应的tft矩阵来控制,对tft矩阵中的晶体管施加不同的电压,可以控制每一个对应像素的显示颜色,从而能够能够驱动屏幕显示不同的内容。
3.由于电子墨水屏幕驱动的复杂性,所以一般都是通过专用的电子墨水屏显示控制器(electrophoretic display controller,简称epdc)来驱动,epdc包含了内存和缓存的数据管理模块(memory&buffer manager),以及屏幕的时序控制电路(timing controller engine),从而极大的简化了电子墨水屏幕的驱动,节省了电子墨水屏幕设备开发时间。
4.但是,epdc在对屏幕更新请求进行处理时,由于其接口和功能都比较固定,且更新换代的频率较慢,从而使得epdc只能够针对特定场景下的屏幕更新请求进行处理,缺乏灵活性。


技术实现要素:

5.本技术的目的旨在至少能解决上述的技术缺陷之一,特别是现有技术中epdc只能够针对特定场景下的屏幕更新请求进行处理,缺乏灵活性的技术缺陷。
6.本技术提供了一种屏幕更新请求的处理方法,所述方法包括:
7.获取目标场景下的待处理的屏幕更新请求,所述待处理的屏幕更新请求包括所述目标场景下的更新策略和待更新区域;
8.确定当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域是否包含所述待更新区域;
9.若不包含,则直接对所述待处理的屏幕更新请求进行处理;
10.若包含,则基于所述更新策略确定所述待处理的屏幕更新请求的处理时机,并在所述处理时机到达时,对所述待处理的屏幕更新请求进行处理。
11.可选地,所述获取目标场景下的待处理的屏幕更新请求,包括:
12.获取预先构建的更新请求等待队列中位于队头的屏幕更新请求,并将所述屏幕更新请求作为目标场景下的待处理的屏幕更新请求;
13.其中,所述更新请求等待队列中保存有按照提交顺序进行排列的不同场景下的待处理的屏幕更新请求。
14.可选地,所述基于所述更新策略确定所述待处理的屏幕更新请求的处理时机,包括:
15.当所述更新策略为等待策略时,对所述正在处理的屏幕更新请求的处理进度进行
监测,并将所述正在处理的屏幕更新请求的处理完毕时刻作为所述待处理的屏幕更新请求的处理时机。
16.可选地,所述基于所述更新策略确定所述待处理的屏幕更新请求的处理时机,包括:
17.当所述更新策略为抢占策略时,依据所述待更新区域以及所述正在处理的屏幕更新请求对应的屏幕区域,对所述待处理的屏幕更新请求进行划分,并确定划分后的屏幕更新请求的处理时机。
18.可选地,所述基于所述更新策略确定所述待处理的屏幕更新请求的处理时机,包括:
19.当所述更新策略为等待抢占结合策略时,对所述正在处理的屏幕更新请求的处理进度进行监测;
20.在所述处理进度到达预设的进度阈值时,依据所述待更新区域以及所述正在处理的屏幕更新请求对应的屏幕区域,对所述待处理的屏幕更新请求进行划分,并确定划分后的屏幕更新请求的处理时机。
21.可选地,所述依据所述待更新区域以及所述正在处理的屏幕更新请求对应的屏幕区域,对所述待处理的屏幕更新请求进行划分,并依次确定划分后的屏幕更新请求的处理时机,包括:
22.将所述待更新区域与所述正在处理的屏幕更新请求所针对的屏幕区域进行比对,确定所述待更新区域中的冲突区域和不冲突区域,其中,所述冲突区域中包含所述正在处理的屏幕更新请求所针对的屏幕区域,所述不冲突区域中不包含所述正在处理的屏幕更新请求所针对的屏幕区域;
23.基于所述待处理的屏幕更新请求确定与所述冲突区域对应的第一更新请求,以及与所述不冲突区域对应的第二更新请求;
24.针对所述第一更新请求,依据预设的处理规则确定所述第一更新请求的处理时机;
25.针对所述第二更新请求,将所述不冲突区域的确定时刻作为所述第二更新请求的处理时机。
26.可选地,所述依据预设的处理规则确定所述第一更新请求的处理时机,包括:
27.当预设的处理规则为等待时,将所述第一更新请求添加至预先构建的更新请求等待队列的队头;
28.对所述冲突区域中正在处理的屏幕更新请求的处理进度进行监测,并在所述冲突区域中正在处理的屏幕更新请求处理完毕时,获取所述更新请求等待队列中位于队头的第一更新请求;
29.将所述冲突区域中正在处理的屏幕更新请求的处理完毕时刻作为所述第一更新请求的处理时机。
30.可选地,所述依据预设的处理规则确定所述第一更新请求的处理时机,包括:
31.当预设的处理规则为等待并调整时,将所述第一更新请求添加至预先构建的更新请求等待队列中的特定位置;
32.当所述第一更新请求排列至所述更新请求等待队列的队头时,将所述第一更新请
求排列至所述队头的时刻作为所述第一更新请求的处理时机。
33.可选地,所述依据预设的处理规则确定所述第一更新请求的处理时机,包括:
34.当预设的处理规则为丢弃时,将所述第一更新请求进行丢弃,并在预先构建的更新请求等待队列的队尾添加第三更新请求,所述第三更新请求为针对当前屏幕的整体更新请求;
35.当所述第三更新请求排列至所述更新请求等待队列的队头时,将所述第三更新请求排列至所述队头的时刻作为所述第一更新请求的处理时机。
36.可选地,所述待处理的屏幕更新请求还包括区域画面缓冲区数据和刷新模式;
37.对所述待处理的屏幕更新请求进行处理,包括:
38.根据所述区域画面缓冲区数据、所述当前屏幕对应区域的画面数据,以及所述刷新模式,计算所述区域画面缓冲区数据的刷新帧数以及每一帧需要输出的时序和波形数据;
39.按照帧输出频率将每一帧需要的时序和波形数据输出到电子墨水屏幕接口,直到到达所述刷新帧数为止。
40.可选地,所述方法还包括:
41.对所述区域画面缓冲区数据的刷新帧数进行记录,并在所述区域画面缓冲区数据的每一帧扫描完成时,更新正在处理的屏幕更新请求的处理进度。
42.本技术还提供了一种屏幕更新请求的处理装置,包括:
43.请求获取模块,用于获取目标场景下的待处理的屏幕更新请求,所述待处理的屏幕更新请求包括所述目标场景下的更新策略和待更新区域;
44.请求确定模块,用于确定当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域是否包含所述待更新区域;
45.第一处理模块,用于若不包含,则直接对所述待处理的屏幕更新请求进行处理;
46.第二处理模块,用于若包含,则基于所述更新策略确定所述待处理的屏幕更新请求的处理时机,并在所述处理时机到达时,对所述待处理的屏幕更新请求进行处理。
47.本技术还提供了一种电子墨水屏设备,所述电子墨水屏设备包括存储介质和一个或多个处理器,所述存储介质中存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如上述实施例中任一项所述的屏幕更新请求的处理方法。
48.从以上技术方案可以看出,本技术实施例具有以下优点:
49.本技术提供的屏幕更新请求的处理方法、装置及电子墨水屏设备,当获取到目标场景下的待处理的屏幕更新请求时,由于该待处理的屏幕更新请求中包含目标场景下的更新策略和待更新区域,因而可以进一步确定当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域是否包含待更新区域,如果不包含,则直接对待处理的屏幕更新请求进行处理,如果包含,则可以根据更新策略来确定待处理的屏幕更新请求的处理时机,并在该处理时机到达时,对待处理的屏幕更新请求进行处理;该过程中,用户可以为不同的应用程序中不同的应用场景设置相应的更新策略,这样当处理器对待处理的屏幕更新请求进行处理时,便可以依据其携带的更新策略来确定对应的处理时机,如更新策略为等待策略,则可以延缓处理,当更新策略为抢占策略时,则尽可能快速处理,这样不仅可以针对不同场景下的屏幕
更新请求进行灵活处理,还可以提升屏幕更新请求的处理效率。
附图说明
50.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
51.图1为本技术实施例提供的一种屏幕更新请求的处理方法的流程示意图;
52.图2为本技术实施例提供的多个正在处理的屏幕更新请求所针对的屏幕区域以及待更新区域的页面展示图;
53.图3为本技术实施例提供的一种屏幕更新请求的处理装置的结构示意图;
54.图4为本技术实施例提供的一种电子墨水屏设备的内部结构示意图。
具体实施方式
55.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
56.在一个实施例中,如图1所示,图1为本技术实施例提供的一种屏幕更新请求的处理方法的流程示意图;本技术提供了一种屏幕更新请求的处理方法,所述方法包括:
57.s110:获取目标场景下的待处理的屏幕更新请求。
58.本步骤中,当用户在电子墨水屏设备中执行相关操作时,会触发相应的操作指令,而电子墨水屏设备在接收到该操作指令后,可以生成与该操作指令对应的屏幕更新请求。例如,当用户使用电子墨水屏设备进行文本阅读时,用户若需要翻页,会触发翻页指令,电子墨水屏设备接收到该翻页指令后,可以生成与该翻页指令对应的页面更新请求,将该页面更新请求提交到相应的处理器中进行处理后,即可响应用户的翻页指令,并显示翻页后的文本。
59.可以理解的是,本技术中的电子墨水屏设备可以是电子书、pc,也可以是智能手机、平板电脑、便携式计算机、智能穿戴设备等具有电子墨水屏显示功能的可移动式终端设备,该可移动式终端设备的硬件结构可以包括处理器和存储器。其中,处理器可以是一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、电子墨水屏显示控制器、微控制器、微处理器或其他电子元件,在此不做限制。本技术中的处理器在使用时,可以调用存储器中存储的屏幕更新请求的处理程序,该屏幕更新请求的处理程序被处理器执行时可以实现本技术中的屏幕更新请求的处理方法的操作。
60.具体地,本技术在处理屏幕更新请求时,可以先获取待处理的屏幕更新请求,该屏幕更新请求可以是根据用户当前触发的操作指令而生成的屏幕更新请求,当生成屏幕更新请求后,可以将该屏幕更新请求添加至预先构建的更新请求等待队列中,并通过更新请求等待队列进行维护。当获取到待处理的屏幕更新请求后,可以将该待处理的屏幕更新请求
所对应的应用场景作为目标场景,并确定屏幕更新请求中携带的目标场景下的更新策略和待更新区域。
61.可以理解的是,由于不同的应用场景下的屏幕更新请求的处理时机有所不同。例如,当用户进行手写输入时,此时需要电子墨水屏设备能够快速响应用户的书写显示需求;而当用户进行文本阅读时,则无需达到手写输入时的响应速度。因此,本技术针对不同的应用场景设置有不同的更新策略,当处理器在处理屏幕更新请求时,可以根据该屏幕更新请求中的更新策略来判断该屏幕更新请求的处理时机,从而让一些需要快速响应的屏幕更新请求能够及时得到响应,而将响应速度没有过高要求的屏幕更新请求延迟响应。
62.另外,由于不同应用场景下的屏幕更新请求所对应的待更新区域不同,例如,当用户进行手写输入时,待更新区域则是当前手写笔记附近范围的行;而当用户播放视频时,此时待更新区域则是该播放视频的播放画面对应的区域。因此,本技术中的屏幕更新请求中包含有目标场景下的待更新区域,当处理器获取到该目标场景下的待更新区域时,可以根据屏幕更新请求的请求内容来对该待更新区域进行更新。
63.进一步地,本技术中的屏幕更新请求不仅可以包括更新策略和待更新区域,还可以包括刷新模式(如a2,gu,gc16等)、区域画面缓冲区数据以及其他请求相关数据。其中,刷新模式主要用于确定屏幕刷新请求输出的总帧数,比如需要高质量画面显示,但是对屏幕更新速度要求不高时,可以选择gc16的16级灰度刷新模式,如果需要实现屏幕快速响应,但是对画面质量要求低时,可以选择a2的黑白块刷新模式;区域画面缓冲区数据主要指的是屏幕更新请求所对应的区域画面数据,而区域画面数据主要用于确定待更新区域的像素坐标等,本技术中的区域画面缓冲区数据为可选项,比如某个区域全刷时,只需要刷新模式 更新策略 待更新区域即可,或者对刷新模式进行更改时,也不需要区域画面缓冲区数据。
64.s120:确定当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域是否包含待更新区域,若不包含,则执行s130,若包含,则执行s140。
65.本步骤中,通过s110获取到目标场景下的待处理的屏幕更新请求后,可以将当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域与待处理的屏幕更新请求中的待更新区域进行比对,确定当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域是否包含待更新区域,如果不包含,则表示当前屏幕中没有与待更新区域冲突的区域,如果包含,则表示当前屏幕中有一个或多个与待更新区域冲突的区域。
66.可以理解的是,在使用电子墨水屏设备的过程中,会产生多个屏幕更新请求,处理器需要根据每一屏幕更新请求的请求内容对当前屏幕的显示画面进行更新,若当前存在正在处理的屏幕更新请求,则可以先确定该正在处理的屏幕更新请求在当前屏幕中所针对的屏幕区域,并将该屏幕区域与待更新区域进行比对,确定该屏幕区域是否包含待更新区域;若当前不存在正在处理的屏幕更新请求,则可以直接对待处理的屏幕更新请求进行处理,并在读取下一个待处理的屏幕更新请求时,将该待处理的屏幕更新请求作为正在处理的屏幕更新请求。
67.在一种具体的实现方式中,本技术可以将当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域中各个像素的像素坐标,与待更新区域中各个像素的像素坐标进行比对,从而确定正在处理的屏幕更新请求所针对的屏幕区域中是否包含待更新区域。
68.进一步地,由于不同的屏幕更新请求所针对的屏幕区域可能存在一定的区别,因
此,同一时间可能存在多个正在处理的屏幕更新请求,当存在多个正在处理的屏幕更新请求时,本技术可以先确定当前屏幕中每一正在处理的屏幕更新请求所针对的屏幕区域,然后将每一屏幕区域分别与待更新区域进行比对,从而确定各个屏幕区域是否包含待更新区域。
69.示意性地,如图2所示,图2为本技术实施例提供的多个正在处理的屏幕更新请求所针对的屏幕区域以及待更新区域的页面展示图;图2中,电子墨水屏设备10的当前屏幕中显示有多个正在处理的屏幕更新请求所针对的屏幕区域12,分别用矩形、五边形、四角星、五角星来表示,与待处理的屏幕更新请求对应的待更新区域11用椭圆形表示,由图2可见,每一正在处理的屏幕更新请求所针对的屏幕区域均包含有待更新区域11对应的椭圆形区域,同时椭圆形区域中也存在未包含的区域。
70.s130:直接对待处理的屏幕更新请求进行处理。
71.本步骤中,通过s120可知,若当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域不包含待更新区域,则表示当前屏幕中没有与待更新区域冲突的区域,此时可以直接对待处理的屏幕更新请求进行处理,从而快速响应用户需求。
72.s140:基于更新策略确定待处理的屏幕更新请求的处理时机,并在处理时机到达时,对待处理的屏幕更新请求进行处理。
73.本步骤中,通过s120可知,若当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域包含待更新区域,则表示当前屏幕中有一个或多个与待更新区域冲突的区域,此时可以根据待处理的屏幕更新请求中的更新策略来确定待处理的屏幕更新请求的处理时机,并在该处理时机到达时,对待处理的屏幕更新请求进行处理。
74.例如,本技术可以预先根据不同应用场景下的屏幕更新请求所需要的响应时间来设置每一应用场景下的屏幕更新请求所对应的更新策略,也可以直接将用户指定的每一应用场景下的更新策略作为屏幕更新请求所对应的更新策略。当根据不同应用场景下的屏幕更新请求所需要的响应时间来设置更新策略时,该响应时间可以由用户进行自定义设置,也可以由电子墨水屏厂家进行默认设置,如动态场景下的屏幕更新请求的响应时间短于静态场景下的屏幕更新请求的响应时间。当某一应用场景下的屏幕更新请求的响应时间较短时,此时可以设置其对应的更新策略为抢占策略,从而优先响应该屏幕更新请求;当某一应用场景下的屏幕更新请求的响应时间较长时,此时可以设置其对应的更新策略为等待策略,从而优先响应其他屏幕更新请求。
75.当确定好每一应用场景下的屏幕更新请求所对应的更新策略后,处理器在获取到目标场景下的待处理的屏幕更新请求所对应的更新策略时,即可根据该更新策略来确定待处理的屏幕更新请求的处理时机,并在该处理时机到达时,对待处理的屏幕更新请求进行处理,从而达到灵活处理屏幕更新请求的目的。
76.上述实施例中,当获取到目标场景下的待处理的屏幕更新请求时,由于该待处理的屏幕更新请求中包含目标场景下的更新策略和待更新区域,因而可以先确定当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域是否包含待更新区域,如果不包含,则直接对待处理的屏幕更新请求进行处理,如果包含,则可以根据更新策略来确定待处理的屏幕更新请求的处理时机,并在该处理时机到达时,对待处理的屏幕更新请求进行处理;该过程中,用户可以为不同的应用程序中不同的应用场景设置相应的更新策略,这样当处理器对
待处理的屏幕更新请求进行处理时,便可以依据其携带的更新策略来确定对应的处理时机,如更新策略为等待策略,则可以延缓处理,当更新策略为抢占策略时,则尽可能快速处理,这样不仅可以针对不同场景下的屏幕更新请求进行灵活处理,还可以提升屏幕更新请求的处理效率。
77.在一个实施例中,s110中获取目标场景下的待处理的屏幕更新请求,可以包括:获取预先构建的更新请求等待队列中位于队头的屏幕更新请求,并将所述屏幕更新请求作为目标场景下的待处理的屏幕更新请求。
78.本实施例中,由于处理器需要处理的屏幕更新请求可能存在多个,而多个屏幕更新请求之间可能存在时间或空间上的冲突。因此,本技术可以预先构建更新请求等待队列,该更新请求等待队列中保存有按照提交顺序进行排列的不同场景下的待处理的屏幕更新请求,并且更新请求等待队列的队列长度可以事先进行设定,当然,也可以不限制更新请求等待队列的队列长度。
79.当最新提交的屏幕更新请求按照时间顺序加入到更新请求等待队列的队尾时,处理器便可以读取更新请求等待队列中位于队头的屏幕更新请求,并将该屏幕更新请求作为目标场景下的待处理的屏幕更新请求。
80.在一个实施例中,s140中基于所述更新策略确定所述待处理的屏幕更新请求的处理时机,可以包括:
81.s141:当所述更新策略为等待策略时,对所述正在处理的屏幕更新请求的处理进度进行监测,并将所述正在处理的屏幕更新请求的处理完毕时刻作为所述待处理的屏幕更新请求的处理时机。
82.本实施例中,若当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域中包含待更新区域,则表示待更新区域与正在处理的屏幕更新请求所针对的屏幕区域之间有重叠,此时可以将正在处理的屏幕更新请求作为冲突请求,针对该冲突请求,若本技术中待处理的屏幕更新请求中的更新策略为等待策略,则表示待处理的屏幕更新请求可以延迟响应。针对可以延迟响应的待处理的屏幕更新请求,本技术可以对正在处理的屏幕更新请求的处理进度进行监测,并将正在处理的屏幕更新请求的处理完毕时刻作为待处理的屏幕更新请求的处理时机。
83.在一个具体的实现方式中,本技术在对正在处理的屏幕更新请求的处理进度进行监测的过程中,可以通过更新正在处理的屏幕更新请求的处理进度实现监测。例如,在对屏幕更新请求进行处理的过程中,可以根据该屏幕更新请求指定的刷新模式以及当前的屏幕数据确定需要输出的总帧数,以及每一帧需要输出的时序和波形数据,接着可以按照帧输出频率将每一帧需要的时序和波形数据扫描并输出到电子墨水屏幕接口,同时记录正在处理的屏幕更新请求当前输出的刷新帧数,并在每帧扫描完成时,更新正在处理的屏幕更新请求的处理进度,从而实现对正在处理的屏幕更新请求的处理进度的监测,以便及时对等待处理的屏幕更新请求进行处理。
84.在一个实施例中,s140中基于所述更新策略确定所述待处理的屏幕更新请求的处理时机,可以包括:
85.s151:当所述更新策略为抢占策略时,依据所述待更新区域以及所述正在处理的屏幕更新请求对应的屏幕区域,对所述待处理的屏幕更新请求进行划分,并确定划分后的
屏幕更新请求的处理时机。
86.本实施例中,若当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域中包含待更新区域,则表示待更新区域与正在处理的屏幕更新请求所针对的屏幕区域之间有重叠,此时可以将正在处理的屏幕更新请求作为冲突请求,针对该冲突请求,若本技术中待处理的屏幕更新请求中的更新策略为抢占策略,则表示待处理的屏幕更新请求需要快速响应。针对需要快速响应的待处理的屏幕更新请求,本技术可以根据正在处理的屏幕更新请求所针对的屏幕区域以及待更新区域来对待处理的屏幕更新请求进行划分,并确定划分后的屏幕更新请求的处理时机。
87.具体地,在对待处理的屏幕更新请求进行划分时,可以将正在处理的屏幕更新请求所针对的屏幕区域与待更新区域之间进行对比,若正在处理的屏幕更新请求所针对的屏幕区域并没有完全涵盖待更新区域,则可以将没有涵盖的部分作为一个新的屏幕更新请求进行处理,而涵盖的部分则可以构成另外一个屏幕更新请求,并按照一定的处理规则进行处理,这样可以提前处理部分屏幕更新请求并显示,而不用等所有冲突请求处理完才提交,从而有效提高处理效率。
88.示意性地,如图2所示,当待处理的屏幕更新请求与正在处理的屏幕更新请求之间存在冲突时,由于存在冲突的区域没有完全包括待更新区域11,因此,本技术可以将图2中各个正在处理的屏幕更新请求所针对的屏幕区域12与待更新区域11之间的交集区域,以及无交集区域划分出来,并根据划分后形成的交集区域以及无交集区域来对待处理的屏幕更新请求进行划分,并确定划分后的屏幕更新请求的处理时机。
89.在一个实施例中,s140中基于所述更新策略确定所述待处理的屏幕更新请求的处理时机,可以包括:
90.s161:当所述更新策略为等待抢占结合策略时,对所述正在处理的屏幕更新请求的处理进度进行监测。
91.s162:在所述处理进度到达预设的进度阈值时,依据所述待更新区域以及所述正在处理的屏幕更新请求对应的屏幕区域,对所述待处理的屏幕更新请求进行划分,并确定划分后的屏幕更新请求的处理时机。
92.本实施例中,若当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域中包含待更新区域,则表示待更新区域与正在处理的屏幕更新请求所针对的屏幕区域之间有重叠,此时可以将正在处理的屏幕更新请求作为冲突请求,针对该冲突请求,若本技术中待处理的屏幕更新请求中的更新策略为等待抢占结合策略,则表示待处理的屏幕更新请求在尽可能的情况下进行快速响应。针对该种类型的待处理的屏幕更新请求,本技术可以对正在处理的屏幕更新请求的处理进度进行监测,并在处理进度到达预设的进度阈值时,依据待更新区域以及正在处理的屏幕更新请求对应的屏幕区域,对待处理的屏幕更新请求进行划分,并确定划分后的屏幕更新请求的处理时机。
93.在一个具体的实现方式中,本技术在对正在处理的屏幕更新请求的处理进度进行监测的过程中,可以通过更新正在处理的屏幕更新请求的处理进度实现监测。例如,在对屏幕更新请求进行处理的过程中,可以根据该屏幕更新请求指定的刷新模式以及当前的屏幕数据确定需要输出的总帧数,以及每一帧需要输出的时序和波形数据,接着可以按照帧输出频率将每一帧需要的时序和波形数据扫描并输出到电子墨水屏幕接口,同时记录正在处
理的屏幕更新请求当前输出的刷新帧数,并在每帧扫描完成时,更新正在处理的屏幕更新请求的处理进度,从而实现对正在处理的屏幕更新请求的处理进度的监测,以便及时对等待处理的屏幕更新请求进行处理。
94.当监测到正在处理的屏幕更新请求的处理进度到达预设的进度阈值时,本技术可以依据待更新区域以及正在处理的屏幕更新请求对应的屏幕区域,对待处理的屏幕更新请求进行划分,并确定划分后的屏幕更新请求的处理时机。
95.其中,本技术中预设的进度阈值可以是刷新帧数的帧数阈值,也可以是冲突请求所包含的像素数量的数量阈值。可以理解的是,本技术中处理器可以同时对多个屏幕更新请求进行处理,且每一屏幕更新请求在处理的过程中,一般是按照设定的帧输出频率对屏幕更新请求的每一帧画面数据进行处理,而本技术为了在保证屏幕刷新请求的处理效率的同时,避免同时处理的屏幕更新请求较多而导致处理器占用资源较多的情况发生,可以在当前正在处理的屏幕更新请求的刷新帧数达到帧数阈值,或像素数量达到数量阈值时,实行抢占策略。例如,本技术可以在冲突请求的当前帧数处理到了总帧数的80%,再开始实行抢占策略,另外也可以先等待,等冲突请求包含的像素数量少于一定数量,再开始抢占策略,具体的处理可以根据实际场景不同,选择不同的判断条件。
96.需要说明的是,由于当前正在处理的屏幕更新请求的数量,以及每一屏幕更新请求的刷新帧数是在动态变化的,因此,这里的帧数阈值可以基于待处理的屏幕更新请求的获取时刻,当前所有正在处理的屏幕更新请求的总帧数进行确定,而这里的像素数量也可以基于待处理的屏幕更新请求的获取时刻,当前所有正在处理的屏幕更新请求的像素数量进行确定。
97.进一步地,本技术在对待处理的屏幕更新请求进行划分时,可以将正在处理的屏幕更新请求所针对的屏幕区域与待更新区域之间进行对比,若正在处理的屏幕更新请求所针对的屏幕区域并没有完全涵盖待更新区域,则可以将没有涵盖的部分作为一个新的屏幕更新请求进行处理,而涵盖的部分则可以构成另外一个屏幕更新请求,并按照一定的处理规则进行处理,这样可以提前处理部分屏幕更新请求并显示,而不用等所有冲突请求处理完才提交,从而有效提高处理效率。
98.在一个实施例中,s151或s162中依据所述待更新区域以及所述正在处理的屏幕更新请求对应的屏幕区域,对所述待处理的屏幕更新请求进行划分,并依次确定划分后的屏幕更新请求的处理时机,可以包括:
99.s1621:将所述待更新区域与所述正在处理的屏幕更新请求所针对的屏幕区域进行比对,确定所述待更新区域中的冲突区域和不冲突区域。
100.s1622:基于所述待处理的屏幕更新请求确定与所述冲突区域对应的第一更新请求,以及与所述不冲突区域对应的第二更新请求。
101.s1623:针对所述第一更新请求,依据预设的处理规则确定所述第一更新请求的处理时机。
102.s1624:针对所述第二更新请求,将所述不冲突区域的确定时刻作为所述第二更新请求的处理时机。
103.本实施例中,在对待处理的屏幕更新请求进行划分时,可以将待更新区域与正在处理的屏幕更新请求所针对的屏幕区域进行比对,若正在处理的屏幕更新请求所针对的屏
幕区域并没有完全涵盖待更新区域,则可以将没有涵盖的部分作为不冲突区域,并确定与该不冲突区域对应的第二屏幕更新请求,而涵盖的部分则可以作为冲突区域,并确定与该冲突区域对应的第一屏幕更新请求。其中,冲突区域中包含正在处理的屏幕更新请求所针对的屏幕区域,而不冲突区域中不包含正在处理的屏幕更新请求所针对的屏幕区域。
104.当确定与冲突区域对应的第一更新请求,以及与不冲突区域对应的第二更新请求后,本技术可以根据预设的处理规则来确定第一更新请求的处理时机,如继续等待,还是不处理等;针对第二更新请求,本技术可以将不冲突区域的确定时刻作为第二更新请求的处理时机,即确定不冲突区域后,即可响应于第二更新请求,对该不冲突区域的屏幕画面数据进行更新。
105.在一个实施例中,s1623中依据预设的处理规则确定所述第一更新请求的处理时机,可以包括:
106.s231:当预设的处理规则为等待时,将所述第一更新请求添加至预先构建的更新请求等待队列的队头。
107.s232:对所述冲突区域中正在处理的屏幕更新请求的处理进度进行监测,并在所述冲突区域中正在处理的屏幕更新请求处理完毕时,获取所述更新请求等待队列中位于队头的第一更新请求。
108.s233:将所述冲突区域中正在处理的屏幕更新请求的处理完毕时刻作为所述第一更新请求的处理时机。
109.本实施例中,在确定冲突区域的第一更新请求的处理时机时,可以获取与该第一更新请求对应的预设的处理规则,该处理规则可以是用户预先在系统或应用程序中进行设置的,也可以是系统或应用程序默认设置的处理规则。当获取到与该第一更新请求对应的预设的处理规则后,若该预设的处理规则为等待,则表示当前的第一更新请求可以在冲突区域中正在处理的屏幕更新请求处理完毕后再进行处理。因此,本技术可以将冲突区域中正在处理的屏幕更新请求的处理完毕时刻作为第一更新请求的处理时机。
110.在一个实施例中,s1623中依据预设的处理规则确定所述第一更新请求的处理时机,可以包括:
111.s331:当预设的处理规则为等待并调整时,将所述第一更新请求添加至预先构建的更新请求等待队列中的特定位置。
112.s332:当所述第一更新请求排列至所述更新请求等待队列的队头时,将所述第一更新请求排列至所述队头的时刻作为所述第一更新请求的处理时机。
113.本实施例中,在确定冲突区域的第一更新请求的处理时机时,可以获取与该第一更新请求对应的预设的处理规则,当获取到与该第一更新请求对应的预设的处理规则后,若该预设的处理规则为等待并调整,则表示将第一更新请求添加至预先构建的更新请求等待队列后,还可以对该第一更新请求在更新请求等待队列中的位置调整,如放在队中,或者队列靠后的特定位置,该特定位置可以根据用户的习惯进行设置,也可以设置为默认位置。
114.当第一更新请求被放至更新请求等待队列后,此时可以等待第一更新请求排列至更新请求等待队列的队头时,再将第一更新请求排列至队头的时刻作为第一更新请求的处理时机。
115.在一个实施例中,s1623中依据预设的处理规则确定所述第一更新请求的处理时
机,可以包括:
116.s431:当预设的处理规则为丢弃时,将所述第一更新请求进行丢弃,并在预先构建的更新请求等待队列的队尾添加第三更新请求,所述第三更新请求为针对当前屏幕的整体更新请求。
117.s432:当所述第三更新请求排列至所述更新请求等待队列的队头时,将所述第三更新请求排列至所述队头的时刻作为所述第一更新请求的处理时机。
118.本实施例中,针对冲突区域的第一更新请求,若该冲突区域的区域范围较小,如一个像素点,或少于一定数量的像素时,还可以选择对该第一更新请求进行丢弃,且丢弃后并不会对显示画面造成太大影响。
119.进一步地,若选择将第一更新请求进行丢弃,本技术还可以在预先构建的更新请求等待队列的队尾添加第三更新请求,该第三更新请求为针对当前屏幕的整体更新请求,即将当前正在处理的所有屏幕更新请求所对应的屏幕画面数据作为一个整体画面数据,并根据该整体画面数据生成整体更新请求,从而避免因丢弃第一更新请求导致画面数据的丢失。
120.在一个实施例中,所述待处理的屏幕更新请求还可以包括区域画面缓冲区数据和刷新模式。s130或s140中对所述待处理的屏幕更新请求进行处理,可以包括:
121.s510:根据所述区域画面缓冲区数据、所述当前屏幕对应区域的画面数据,以及所述刷新模式,计算所述区域画面缓冲区数据的刷新帧数以及每一帧需要输出的时序和波形数据。
122.s511:按照帧输出频率将每一帧需要的时序和波形数据输出到电子墨水屏幕接口,直到到达所述刷新帧数为止。
123.本实施例中,在对待处理的屏幕更新请求进行处理时,可以根据待处理的屏幕更新请求所对应的区域画面缓冲区数据、刷新模式,以及当前屏幕对应区域的画面数据,来计算区域画面缓冲区数据的刷新帧数以及每一帧需要输出的时序和波形数据,当待处理的屏幕更新请求的所有输出数据都处理完毕后,可以按照帧输出频率将每一帧需要的时序和波形数据输出到电子墨水屏幕接口,电子墨水屏幕接口可以根据接收到的时序和波形数据驱动电子墨水屏显示对应的画面。
124.可以理解的是,当需要更新屏幕某个像素时,可以先确定像素当前颜色灰度,以及目标颜色灰度,通过查询由屏幕厂商提供的屏幕波形文件,根据当前刷新模式等参数找到对应的刷新波形表,里面确定了像素由当前灰度更新为目标灰度时候需要经过的刷新帧数,以及每一帧的驱动电压,然后在tft驱动电路帧扫描时候,根据当前的帧数施加对应的电压,从而将电子墨水屏更新为目标颜色灰度。
125.而本技术中的屏幕数据缓冲区主要用于维护当前屏幕画面数据,这样当有新的屏幕更新请求时,便可以将新的屏幕更新请求的画面数据与现有的屏幕数据进行对比,从而生成对应的时序和波形数据。
126.在一个实施例中,所述方法还可以包括:对所述区域画面缓冲区数据的刷新帧数进行记录,并在所述区域画面缓冲区数据的每一帧扫描完成时,更新正在处理的屏幕更新请求的处理进度。
127.本实施例中,为了对正在处理的屏幕更新请求的处理进度进行监测,本技术可以
在正在处理的屏幕更新请求的处理过程中,记录与该正在处理的屏幕更新请求对应的区域画面缓冲区数据的刷新帧数,并在区域画面缓冲区数据的每一帧扫描完成时,对正在处理的屏幕更新请求的处理进度进行更新,从而实现对正在处理的屏幕更新请求的处理进度进行监测。
128.下面对本技术实施例提供的屏幕更新请求的处理装置进行描述,下文描述的屏幕更新请求的处理装置与上文描述的屏幕更新请求的处理方法可相互对应参照。
129.在一个实施例中,如图3所示,图3为本技术实施例提供的一种屏幕更新请求的处理装置的结构示意图;本技术还提供了一种屏幕更新请求的处理装置,包括请求获取模块210、请求确定模块220、第一处理模块230、第二处理模块240,具体包括如下:
130.请求获取模块210,用于获取目标场景下的待处理的屏幕更新请求,所述待处理的屏幕更新请求包括所述目标场景下的更新策略和待更新区域。
131.请求确定模块220,用于确定当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域是否包含所述待更新区域。
132.第一处理模块230,用于若不包含,则直接对所述待处理的屏幕更新请求进行处理。
133.第二处理模块240,用于若包含,则基于所述更新策略确定所述待处理的屏幕更新请求的处理时机,并在所述处理时机到达时,对所述待处理的屏幕更新请求进行处理。
134.上述实施例中,当获取到目标场景下的待处理的屏幕更新请求时,由于该待处理的屏幕更新请求中包含目标场景下的更新策略和待更新区域,因而可以先确定当前屏幕中正在处理的屏幕更新请求所针对的屏幕区域是否包含待更新区域,如果不包含,则直接对待处理的屏幕更新请求进行处理,如果包含,则可以根据更新策略来确定待处理的屏幕更新请求的处理时机,并在该处理时机到达时,对待处理的屏幕更新请求进行处理;该过程中,用户可以为不同的应用程序中不同的应用场景设置相应的更新策略,这样当处理器对待处理的屏幕更新请求进行处理时,便可以依据其携带的更新策略来确定对应的处理时机,如更新策略为等待策略,则可以延缓处理,当更新策略为抢占策略时,则尽可能快速处理,这样不仅可以针对不同场景下的屏幕更新请求进行灵活处理,还可以提升屏幕更新请求的处理效率。
135.在一个实施例中,本技术还提供了一种电子墨水屏设备,所述电子墨水屏设备包括存储介质和一个或多个处理器,所述存储介质中存储有计算机可读指令,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如上述实施例中任一项所述的屏幕更新请求的处理方法。
136.示意性地,如图4所示,图4为本技术实施例提供的一种电子墨水屏设备的内部结构示意图,该电子墨水屏设备300可以被提供为一服务器。参照图4,电子墨水屏设备300包括处理组件302,其进一步包括一个或多个处理器,以及由存储器301所代表的存储器资源,用于存储可由处理组件302的执行的指令,例如应用程序。存储器301中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件302被配置为执行指令,以执行上述任意实施例的屏幕更新请求的处理方法。
137.电子墨水屏设备300还可以包括一个电源组件303被配置为执行电子墨水屏设备300的电源管理,一个有线或无线网络接口304被配置为将电子墨水屏设备300连接到网络,
和一个输入输出(i/o)接口305。电子墨水屏设备300可以操作基于存储在存储器301的操作系统,例如windows server tm、mac os xtm、unix tm、linux tm、free bsdtm或类似。
138.本领域技术人员可以理解,图4中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
139.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
140.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间可以根据需要进行组合,且相同相似部分互相参见即可。
141.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本技术。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献