CN116737243B - 屏幕参数补丁升级方法及终端设备 - Google Patents
屏幕参数补丁升级方法及终端设备 Download PDFInfo
- Publication number
- CN116737243B CN116737243B CN202211199269.8A CN202211199269A CN116737243B CN 116737243 B CN116737243 B CN 116737243B CN 202211199269 A CN202211199269 A CN 202211199269A CN 116737243 B CN116737243 B CN 116737243B
- Authority
- CN
- China
- Prior art keywords
- screen
- display
- terminal device
- parameter
- patch
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000005192 partition Methods 0.000 claims description 54
- 238000003860 storage Methods 0.000 claims description 45
- 238000004590 computer program Methods 0.000 claims description 4
- 238000007726 management method Methods 0.000 description 45
- 238000004891 communication Methods 0.000 description 30
- 230000006870 function Effects 0.000 description 25
- 238000010295 mobile communication Methods 0.000 description 16
- 230000008439 repair process Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000009826 distribution Methods 0.000 description 6
- BFBTVZNKWXWKNZ-HWKANZROSA-N (e)-3-[1-[(2,4-dichlorophenyl)methyl]-5-fluoro-3-methylindol-7-yl]-n-(4,5-dichlorothiophen-2-yl)sulfonylprop-2-enamide Chemical compound C12=C(\C=C\C(=O)NS(=O)(=O)C=3SC(Cl)=C(Cl)C=3)C=C(F)C=C2C(C)=CN1CC1=CC=C(Cl)C=C1Cl BFBTVZNKWXWKNZ-HWKANZROSA-N 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000011084 recovery Methods 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000009434 installation Methods 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 125000000484 butyl group Chemical group [H]C([*])([H])C([H])([H])C([H])([H])C([H])([H])[H] 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例提供了一种屏幕参数补丁升级方法及终端设备,涉及终端领域。支持通过服务器向终端设备推送用于修复屏幕显示故障的补丁包。终端设备在显示屏亮屏时进行判断,如果存在用于修复屏幕显示故障的补丁包,则将补丁包中的屏幕参数用于显示屏;如果不存在用于修复屏幕显示故障的补丁包,则采用系统中原始的屏幕参数用于显示屏。能够实现屏幕参数的补丁升级。
Description
技术领域
本申请涉及终端领域,尤其涉及一种屏幕参数补丁升级方法及终端设备。
背景技术
新产品上市后,屏幕显示故障的占比很大。其中一部分屏幕显示故障是由于屏幕参数设置不当导致的屏幕黑化、屏幕闪等问题。屏幕参数配置不合理导致的屏幕问题,不需要进行硬件维修或更换,只需要进行软件升级即可解决。但是目前不支持通过补丁方式对屏幕参数进行升级,只能通过升级系统的方式对屏幕参数进行修复。系统升级时间周期较长,不能快速解决屏幕显示故障的问题,影响用户使用体验。
发明内容
本申请实施例提供一种屏幕参数补丁升级方法及终端设备,能够实现屏幕参数补丁包通过服务器推送至终端设备,终端设备采用补丁升级方式完成屏幕参数更新。
为达到上述目的,本申请的实施例采用如下技术方案:
第一方面,提供了一种屏幕参数补丁升级方法,应用于终端设备,终端设备包括显示屏,以及用于适配显示屏与终端设备操作系统的显示驱动,该方法包括:终端设备开机上电;终端设备的操作系统控制显示驱动对显示屏的文件和参数进行初始化,显示驱动获取显示屏的第一屏幕参数;之后,终端设备的操作系统控制显示驱动启动点亮屏幕;如果显示驱动确定存在显示屏的第二屏幕参数,显示驱动向显示屏发送第二屏幕参数;显示屏根据第二屏幕参数点亮屏幕;其中,第二屏幕参数与第一屏幕参数的项目不同,或者,第二屏幕参数与所述第一屏幕参数中同一项目的值不同;屏幕参数是用于配置显示屏硬件节点的数据。
在该方法中,在显示屏亮屏时增加了补丁包的判断。如果确定存在补丁包,显示屏就采用补丁包中的屏幕参数进行显示。如果确定不存在补丁包,显示屏就采用初始配置的屏幕参数进行显示。实现了屏幕参数的补丁升级。这样,当发现屏幕显示故障后,可以制作针对故障的补丁包,通过服务器将针对屏幕显示故障的补丁包推送到终端设备上,终端设备采用补丁升级方式安装该补丁包,就可以解决屏幕显示故障。
在第一方面的一种可能的实现方式中,该方法还包括:终端设备从服务器接收补丁包,该补丁包包括第二屏幕参数。
在第一方面的一种可能的实现方式中,终端设备从服务器接收补丁包后,将第二屏幕参数保存在预设的存储空间内,比如,预设的存储空间为存储空间中ODM补丁分区。
在第一方面的一种可能的实现方式中,可以对屏幕参数进行多次补丁升级。显示屏补丁包包括版本信息,用于记录显示屏补丁包的版本。在一种实现方式中,终端设备每次下载新的显示屏补丁包后,替换保存在终端设备中预设的存储空间中的显示屏补丁包。这样,终端设备中预设的存储空间保存的都是最新的显示屏补丁包。在另一种实现方式中,终端设备每次下载新的显示屏补丁包后,都保存在预设的存储空间。终端设备中预设的存储空间保存了每次更新的显示屏补丁包。点亮屏幕时,显示驱动根据各个显示屏补丁包中的版本信息,读取最新的显示屏补丁包,获取重新配置后的屏幕参数。这样,如果需要对屏幕显示故障进行多次修复。可以多次制作显示屏补丁包;终端设备采用补丁升级方式更新屏幕参数,实现根据最新的屏幕参数配置显示屏,解决屏幕显示故障。
在第一方面的一种可能的实现方式中,终端设备的操作系统控制显示驱动启动点亮屏幕之后,如果显示驱动确定不存在显示屏的第二屏幕参数,显示驱动向显示屏发送第一屏幕参数;显示屏根据第一屏幕参数点亮屏幕。
在该方法中,如果确定不存在补丁包,就采用初始配置的屏幕参数。
在第一方面的一种可能的实现方式中,显示驱动获取显示屏的第一屏幕参数,包括:显示驱动从终端设备的存储空间中原始设计商分区获取第一屏幕参数,保存至终端设备的内部存储器中。
在第一方面的一种可能的实现方式中,显示驱动向显示屏发送第一屏幕参数之前,该方法还包括:显示驱动从终端设备的内部存储器中读取第一屏幕参数。
在第一方面的一种可能的实现方式中,如果显示驱动确定是首次点亮屏幕,则显示驱动从终端设备的内部存储器中读取第一屏幕参数。如果显示驱动确定不是首次点亮屏幕,就不需要再次从内部存储器中读取第一屏幕参数。
在第一方面的一种可能的实现方式中,屏幕参数包括像素点距,分辨率,扫描频率和刷新速度中至少一项。
第二方面,提供了一种屏幕参数补丁升级方法,该方法可以应用于显示驱动。该方法包括:从终端设备的操作系统接收初始化指令,对终端设备的显示屏的文件和参数进行初始化,获取显示屏的第一屏幕参数;从操作系统接收启动点亮屏幕指令;如果确定存在显示屏的第二屏幕参数,向显示屏发送第二屏幕参数;其中,第二屏幕参数与第一屏幕参数的项目不同,或者,第二屏幕参数与第一屏幕参数中同一项目的值不同;屏幕参数是用于配置显示屏硬件节点的数据。
在该方法中,显示驱动在显示屏亮屏时增加了补丁包的判断。如果确定存在补丁包,就通知显示屏采用补丁包中的屏幕参数进行显示。如果确定不存在补丁包,就通知显示屏采用初始配置的屏幕参数进行显示。实现了屏幕参数的补丁升级。这样,当发现屏幕显示故障后,可以制作针对故障的补丁包,通过服务器将针对屏幕显示故障的补丁包推送到终端设备上,终端设备采用补丁升级方式安装该补丁包,就可以解决屏幕显示故障。
在第二方面的一种可能的实现方式中,第二屏幕参数是通过从服务器接收的补丁包解析获取的。
在一种实现方式中,如果显示驱动确定预设的存储空间中包括多个补丁包,就从版本最新的补丁包中获取第二屏幕参数。
在第二方面的一种可能的实现方式中,从操作系统接收启动点亮屏幕指令之后,如果确定不存在显示屏的第二屏幕参数,向显示屏发送第一屏幕参数。
在第二方面的一种可能的实现方式中,获取显示屏的第一屏幕参数,包括:从终端设备的存储空间中原始设计商分区获取第一屏幕参数,保存至终端设备的内部存储器中。
在第二方面的一种可能的实现方式中,向显示屏发送第一屏幕参数之前,从终端设备的内部存储器中读取第一屏幕参数。
在第二方面的一种可能的实现方式中,如果确定是首次点亮屏幕,则从终端设备的内部存储器中读取第一屏幕参数。如果确定不是首次点亮屏幕,就不需要再次从内部存储器中读取第一屏幕参数。
在第二方面的一种可能的实现方式中,屏幕参数包括像素点距,分辨率,扫描频率和刷新速度中至少一项。
第三方面,提供了一种终端设备,该终端设备具有实现上述第一方面所述的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
第四方面,提供了一种终端设备,包括:处理器和存储器;该存储器用于存储计算机执行指令,当该终端设备运行时,该处理器执行该存储器存储的该计算机执行指令,以使该终端设备执行如上述第一方面中任一项所述的方法。
第五方面,提供了一种终端设备,包括:处理器;所述处理器用于与存储器耦合,并读取存储器中的指令之后,根据所述指令执行如上述第一方面中任一项所述的方法。
第六方面,提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机可以执行上述第一方面或第二方面中任一项所述的方法。
第七方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机可以执行上述第一方面或第二方面中任一项所述的方法。
第八方面,提供了一种装置(例如,该装置可以是芯片系统),该装置包括处理器,用于支持终端设备实现上述第一方面中所涉及的功能。在一种可能的设计中,该装置还包括存储器,该存储器,用于保存终端设备必要的程序指令和数据。该装置是芯片系统时,可以由芯片构成,也可以包含芯片和其他分立器件。
其中,第三方面至第八方面中任一种设计方式所带来的技术效果可参见第一方面或第二方面中不同设计方式所带来的技术效果,此处不再赘述。
附图说明
图1为本申请实施例提供的屏幕参数补丁升级方法所适用的系统架构示意图;
图2为本申请实施例提供的一种终端设备的硬件结构示意图;
图3为本申请实施例提供的一种终端设备的软件架构示意图;
图4为本申请实施例提供的屏幕参数补丁升级方法的一种流程示意图;
图5为本申请实施例提供的屏幕参数补丁升级方法的一种示意图;
图6为本申请实施例提供的屏幕参数补丁升级方法的一种流程示意图;
图7为本申请实施例提供的屏幕参数补丁升级方法的一种流程示意图;
图8为本申请实施例提供的一种终端设备结构组成示意图。
具体实施方式
在本申请实施例的描述中,以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请以下各实施例中,“至少一个”、“一个或多个”是指一个或两个以上(包含两个)。术语“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。术语“连接”包括直接连接和间接连接,除非另外说明。“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
补丁,也叫补丁包,是用来解决软件缺陷的独立的软件单元(小的程序包)。相对系统版本而言,补丁是以体积小、推送迅速的优点修复致命、高危、紧急的故障(包含漏洞)。补丁的核心特点为,可以完成历史版本中指定问题的修复,同步不破坏原有的针对此历史版本制作的无线下载(over the air,OTA)升级包的正常升级。
按照补丁的修复功能,补丁可以包括:微小补丁、APK(Android applicationpackage,应用程序包)补丁、Kernel(内核)补丁、NV补丁、MODEM补丁和FWK(framework,框架)补丁等。
微小补丁可以用于修复六大组件的软件故障,六大组件包括system(系统)、vendor(硬件供应商)、product(产品)、ODM(original design manufacturer,原始设计商)、version(版本)、cust(用户定制)。微小补丁通常采用overlay(文件替换)机制进行升级。APK补丁用于修复应用程序的漏洞;采用google install机制,将修复后的APK安装在data/app下。Kernel补丁用于修复内核的软件故障,采用动态函数替换机制。NV补丁用于修复界面相关漏洞,MODEM补丁用于修复通信功能的软件故障;NV补丁及MODEM补丁采用开机合成机制,在开机流程中合成修复的NV及MODEM,开机加载合成后的NV及MODEM。
按照升级补丁是否需要重启终端设备,可以将补丁分为冷补丁和热补丁。
升级冷补丁需要终端设备重启安装;终端设备内升级引擎检测到当前补丁为冷补丁时,就会将升级命令写入到cache/recovery/command中,重启终端设备安装补丁包。升级热补丁不需要终端设备重启;终端设备内升级引擎检测到当前补丁为热补丁时,调用update_engine完成补丁安装。
一般来说,补丁升级依托OTA升级机制实现。当发现致命、高危、紧急的故障(包含漏洞)需要使用补丁包紧急修复的时候,在服务器上单独上传针对该故障的紧急补丁包。终端设备通过升级引擎下载补丁包,提示用户进行升级。升级完成后重启终端设备,在初始化进程中执行补丁分区挂载,执行overlay操作或安装APK操作或合成NV文件、MODEM文件等,达到修复故障目的。
目前,终端设备中一些模块支持补丁升级,一些模块不支持补丁升级。示例性的,如表1所示,应用程序(application,App)、HIDL service(HIDL服务)和Kernel驱动支持进行热补丁升级或冷补丁升级。DTS配置和Fastboot驱动不支持补丁升级。
表1
序号 | 模块 | 形态 | 支持热补丁升级 | 支持冷补丁升级 |
1 | App | APK | 支持 | 支持 |
2 | HIDL服务 | xxx.so | 支持 | 支持 |
3 | Kernel驱动 | Boot image | 支持 | 支持 |
4 | DTS配置 | Dtbo image | 不支持 | 不支持 |
5 | Fastboot驱动 | Fastboot image | 不支持 | 不支持 |
设备树(device tree,DT)是用于描述终端设备中“不可发现”硬件的命名节点和属性构成的一种数据结构。操作系统(例如在中使用的Linux内核)会使用DT来支持/>设备使用的各种硬件配置。硬件供应商会提供硬件对应的DT源文件,即DTS(device tree source);接下来Linux会将这些DTS编译到引导加载程序(BootLoader)使用的设备树块(device tree blob,DTB)文件中。
DTS,即.dts文件,是一种ASCII文本格式的DT描述。一般来说,一个.dts文件对应一个硬件(machine),部署在内核的arch/arm/boot/dts目录。由于一个SoC可能对应多个硬件(一个SoC可以对应多个产品和电路板),这些.dts文件可能会包含许多共同部分;Linux内核为了简化,把SoC公用的部分或者多个硬件(machine)共同的部分提炼为DTSI文件(.dtsi文件)。其他硬件(machine)对应的.dts文件include这个.dtsi。
设备树块覆盖(DTB Overlay,Dtbo)用于在DTB的基础上添加或修改硬件节点信息。它可以配置ODM(original design manufacturer,原始设计商)和OEM(originalequipment manufacturer,原始设备生产商)特有的硬件节点,使这些硬件配置与片上系统(system on chip,SoC)隔离,从而让硬件配置的更新更加方便灵活。
屏幕参数是用于配置显示屏(屏幕)硬件节点的数据,属于DTS配置;部署在设备内核dts目录下的Dtbo image(Dtbo镜像)中。示例性的,屏幕参数包括像素点距、分辨率、扫描频率、刷新速度等。当终端设备上市后,如果显示屏(屏幕)出现显示故障,需要通过重新配置屏幕参数来解决;由于目前DTS配置不支持补丁升级,无法快速解决显示故障问题。
本申请实施例提供一种屏幕参数补丁升级方法,在发现屏幕显示故障后,可以制作针对该故障的补丁包,通过服务器将针对屏幕显示故障的补丁包推送到终端设备上,终端设备采用补丁升级方式安装该补丁包,就可以解决屏幕显示故障。
本申请实施例提供的屏幕参数补丁升级方法,可以应用于图1所示的系统。该系统包括终端设备100和服务器200,终端设备100和服务器200可以通过有线通信方式或无线通信方式传输指令与数据。
如果发现终端设备100存在屏幕显示故障,需要重新配置终端设备100的屏幕参数,以重新配置显示屏(屏幕)硬件节点的数据;则可以在服务器200上使用补丁包制作工具制作针对该屏幕显示故障的补丁包(本申请中称为显示屏补丁包)。在一种示例中,显示屏补丁包包括重新配置后的屏幕参数。当然,在另一些实施例中,也可以在其他设备上生成显示屏补丁包,然后上传至服务器200。
服务器200将显示屏补丁包推送至终端设备100。终端设备100下载显示屏补丁包,就可以在终端设备100上安装该显示屏补丁包,采用重新配置后的屏幕参数重新配置显示屏(屏幕)硬件节点,修复屏幕显示故障。
需要说明的是,为了描述方便,图1中仅示出了一个终端设备200。在实际应用中,一批终端设备200可能存在同样的屏幕显示故障,需要对一批终端设备200的屏幕参数进行重新配置。服务器200可以将该显示屏补丁包推送至一批终端设备100(比如,同一个系统版本的手机)。一批终端设备100都采用该显示屏补丁包修复屏幕显示故障。也就是说,在另一些实施例中,该系统中可以包括多个终端设备100。
上述终端设备100可以包括手机、平板电脑、笔记本电脑、个人电脑(personalcomputer,PC)、超级移动个人计算机(ultra-mobile personal computer,UMPC)、手持计算机、上网本、智能家居设备(比如,智能电视、智慧屏、大屏、智能音箱、智能空调等)、个人数字助理(personal digital assistant,PDA)、可穿戴设备(比如,智能手表、智能手环等)、车载设备、虚拟现实设备等,本申请实施例对此不做任何限制。上述服务器200可以是云服务器,比如OTA服务器。
图2示出了终端设备100的一种结构示意图。
终端设备100可以包括处理器110,外部存储器接口120,内部存储器121,存储器122,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,显示屏190等。其中传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
可以理解的是,本发明实施例示意的结构并不构成对终端设备100的具体限定。在本申请另一些实施例中,终端设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是终端设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过终端设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为终端设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏190,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
终端设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。终端设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在终端设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏190显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在终端设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信(near field communication,NFC),红外(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,终端设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得终端设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
本申请实施例中,终端设备100可以通过移动通信模块150或无线通信模块160与服务器200进行通信。例如,通过移动通信模块150或无线通信模块160从服务器200下载显示屏补丁包。
终端设备100通过GPU,显示屏190,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏190和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏190(屏幕190)用于显示图像,视频等。显示屏190包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dotlight emitting diodes,QLED)等。在一些实施例中,终端设备100可以包括1个或N个显示屏190,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当终端设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。终端设备100可以支持一种或多种视频编解码器。这样,终端设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现终端设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
终端设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展终端设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行终端设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储终端设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
存储器122(也可以称为存储容量或存储空间等),用于为终端设备100的操作系统和软件提供储存空间,也可以提供给用户进行数据存储。例如,存储器122可以包括只读存储器(read-only memory,rom)。
在本申请实施例中,上述终端设备100是可以运行操作系统,安装应用程序的电子设备。可选地,终端设备100运行的操作系统可以是安卓系统,/>系统,/>系统等。
一般来说,终端设备100的操作系统会对终端设备100的存储空间(比如图2中存储器122)进行系统分区。以安卓系统为例,存储器122可以包括以下分区。
bootloader分区:当终端设备100上电启动后,首先从bootloader分区中一个固定的地址开始执行指令,根据用户按键有选择的进入某种启动模式。该分区内存储有引导加载程序(BootLoader),用于控制操作系统的初始化过程。
boot分区:包含通过mkbootimg组合在一起的kernel镜像和ramdisk。使能system-as-root后,该分区仅存放kernel镜像。
system分区:主要包含框架。使能system-as-root后,该分区会包含原始system.img和ramdisk.img的合并内容。
recovery分区:用于存储在OTA升级时使用的recovery系统。如果设备支持A/B更新,OTA升级可以通过ramdisk执行,该分区可以不需要。
cache分区:用于存储临时数据,OTA升级包也会下载到这个分区。如果设备使用A/B更新,则可以不要此分区。
misc分区:分区供recovery使用,存储空间不能小于4KB。
userdata分区:存储用户安装的应用和数据。
metadata分区:如果设备被加密,则需要使用该分区,分区的存储空间不能小于16MB。
vendor分区:包含所有不可分发给开源项目(AOSP)的二进制文件。如果没有专有信息,可以不要该分区。
radio分区:包含无线装置映像。只有包含无线装置的设备才需要此分区。
tos分区:用于存储Trusty操作系统的二进制映像文件,仅在设备包含Trusty时使用。
product分区:用于存放产品专用的配置和应用,以便OEM定制自己的系统。product分区是对system分区的扩展,必须同时升级这两个分区。
ODM分区:用于ODM自定义自己的板级支持包。ODM分区是对vendor分区的扩展。ODM器件的数据包一般存储在ODM分区。显示屏(屏幕)属于ODM器件,屏幕参数通常保存在ODM分区。
终端设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的系统为例,示例性说明终端设备100的软件结构。
图3是本发明实施例的终端设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些示例中,系统包括应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核(Kernel)层。
应用程序层可以包括一系列应用程序包。如图3所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,亮灭屏管理应用等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。应用程序框架层可以包括窗口管理器,内容提供器,视图系统,资源管理器,事件分发管理服务,电源管理服务(power manager service,PMS)等。窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等。电源管理服务可以用于控制点亮或者熄灭终端设备100的屏幕。事件分发管理服务用于分发事件。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,音频驱动,传感器驱动。
终端设备100包括很多硬件(组件、器件),在终端设备100开机上电后,引导加载程序(BootLoader)启动操作系统进行初始化过程,对终端设备100内各个硬件(组件、器件)进行初始化;包括加载各个硬件(组件、器件)的驱动相关的文件和参数。参考图4,终端设备100开机后,各个硬件的驱动开始初始化该硬件的文件和参数。其中,显示驱动初始化显示屏相关的文件和参数(屏幕参数)。在一种实现方式中,显示驱动读取终端设备100的存储空间(比如图2中存储器122)中ODM分区,通过解析DTSI文件获取到屏幕参数,并将屏幕参数动态拷贝到内部存储器中(比如,图2中内部存储器121)。
显示驱动初始化完成后,操作系统启动亮屏。参考图3,操作系统接收到亮屏信号,生成点亮屏幕事件。事件分发管理服务将点亮屏幕事件分发至亮灭屏管理应用。亮灭屏管理应用通知应用程序框架层的电源管理服务点亮屏幕。电源管理服务通过表面管理器通知显示驱动点亮屏幕。
继续参考图4,显示驱动将内部存储器中保存的屏幕参数发送给显示屏,显示屏根据该屏幕参数点亮屏幕。
在一些场景下,终端设备100的显示屏会在亮屏和灭屏之间循环切换。每次灭屏后再次点亮屏幕时,操作系统接收到亮屏信号,生成点亮屏幕事件。事件分发管理服务将点亮屏幕事件分发至亮灭屏管理应用。亮灭屏管理应用通知应用程序框架层的电源管理服务点亮屏幕。电源管理服务通过表面管理器通知显示驱动点亮屏幕。显示驱动将内部存储器中保存的屏幕参数发送给显示屏,显示屏根据该屏幕参数点亮屏幕。
如果屏幕参数配置不合适,会导致屏幕显示故障,比如显示屏无法点亮、显示屏闪等。本申请实施例提供的屏幕参数补丁升级方法,在发现屏幕显示故障后,可以制作针对该屏幕显示故障的补丁包。比如,可以修改对显示屏配置的屏幕参数的项目;示例性的,原来的屏幕参数未配置刷新速度,那么可以在修改后的屏幕参数中增加刷新速度的配置。比如,可以修改配置的屏幕参数的某一项或多项的值;示例性的,原来的扫描频率为第一值,修改后屏幕参数中扫描频率为第二值。
针对屏幕显示故障的补丁包制作好之后,通过服务器将该补丁包(显示屏补丁包)推送到终端设备。终端设备采用显示屏补丁包中重新配置后的屏幕参数配置显示屏,就可以解决屏幕显示故障。
示例性的,如图5所示,可以在服务器(比如图1中服务器200)上使用补丁包制作工具制作针对屏幕显示故障的补丁包。示例性的,采用补丁包制作工具根据重新配置的屏幕参数制作显示屏补丁包。在一种示例中,服务器200包括OTA服务器210和推送服务器220;OTA服务器210用于管理在线升级的补丁包,比如管理补丁包的版本、补丁包的目标升级设备等;推送服务器220用于将补丁包推送至目标升级设备。
如图5所示,OTA服务器210将显示屏补丁包通过推送服务器220推送至终端设备100。终端设备100包括补丁包推送客户端,补丁包推送客户端与推送服务器220通过协商,下载显示屏补丁包。终端设备100的升级引擎提示用户进行补丁包升级。接收到用户升级补丁包的指示,则将显示屏补丁包保存在终端设备100中预设的存储空间。在一种示例中,将显示屏补丁包保存在存储空间(比如图2中存储器122)的ODM补丁分区中。示例性的,如图5所示,存储空间内包括ODM补丁分区,用于存储ODM器件的补丁包,其中可以包括替换补丁包集合、内核热补丁包、APK热补丁包、显示屏补丁包等。这样,终端设备100的显示屏可以采用显示屏补丁包中重新配置后的屏幕参数配置显示屏,解决屏幕显示故障。
在一些实施例中,如图6所示,在终端设备100开机上电后,引导加载程序(BootLoader)启动操作系统进行初始化过程,对终端设备100内各个硬件(组件、器件)进行初始化。其中,显示驱动初始化显示屏相关的文件和参数(屏幕参数)。在一种实现方式中,显示驱动读取终端设备100的存储空间(比如图2中存储器122)中ODM分区,通过解析DTSI文件获取到屏幕参数,并将屏幕参数动态拷贝到内部存储器中(比如,图2中内部存储器121)。显示驱动初始化完成后,操作系统启动亮屏。操作系统接收到亮屏信号,生成点亮屏幕事件。事件分发管理服务将点亮屏幕事件分发至亮灭屏管理应用。亮灭屏管理应用通知应用程序框架层的电源管理服务点亮屏幕。电源管理服务通过表面管理器通知显示驱动点亮屏幕。
显示驱动判断是否存在显示屏补丁包;在一种示例中,显示驱动查询ODM补丁分区是否存储有显示屏补丁包;如果确定ODM补丁分区存在显示屏补丁包,则确定存在显示屏补丁包;如果确定ODM补丁分区不存在显示屏补丁包,则确定不存在显示屏补丁包。
如果确定存在显示屏补丁包,显示驱动读取显示屏补丁包中重新配置后的屏幕参数,将重新配置后的屏幕参数发送给显示屏,比如显示驱动通过MIPI(mobile industryprocessor interface,移动产业处理器接口)总线将重新配置后的屏幕参数发送给显示屏,显示屏根据重新配置后的屏幕参数点亮屏幕。
如果确定不存在显示屏补丁包,显示驱动读取内部存储器中(比如,图2中内部存储器121)保存的屏幕参数,将内部存储器中的屏幕参数发送给显示屏,显示屏根据该屏幕参数点亮屏幕。
在一些场景下,终端设备100的显示屏会在亮屏和灭屏之间循环切换。显示驱动每一次接收到点亮屏幕的指令后,都判断是否存在显示屏补丁包。如果确定存在显示屏补丁包,显示驱动读取显示屏补丁包中重新配置后的屏幕参数,将重新配置后的屏幕参数发送给显示屏。这样,显示屏就可以根据最新的屏幕参数进行显示。可选的,在一些实施例中,如果确定不存在显示屏补丁包,显示驱动还判断是否首次点亮屏幕;如果确定是首次点亮屏幕,显示驱动读取内部存储器中的屏幕参数并保存,然后将该屏幕参数发送给显示屏,显示屏根据该屏幕参数点亮屏幕。如果确定不是首次点亮屏幕,就可以直接将首次点亮屏幕时保存的屏幕参数发送给显示屏,显示屏根据原始的屏幕参数点亮屏幕。
图7示出了本申请实施例提供的屏幕参数补丁升级方法的另一种实现方式。与图6所示实施方式不同的是,显示驱动接收到点亮屏幕的指令后,不进行是否首次亮屏的判断。每次点亮屏幕时,如果确定不存在显示屏补丁包,都会重新读取显示驱动初始化时内部存储器中保存的屏幕参数。
示例性的,在另一些实施例中,如图7所示,在终端设备100开机上电后,引导加载程序(BootLoader)启动操作系统进行初始化过程,对终端设备100内各个硬件(组件、器件)进行初始化。其中,显示驱动初始化显示屏相关的文件和参数(屏幕参数)。在一种实现方式中,显示驱动读取终端设备100的存储空间(比如图2中存储器122)中ODM分区,通过解析DTSI文件获取到屏幕参数,并将屏幕参数动态拷贝到内部存储器中(比如,图2中内部存储器121)。显示驱动初始化完成后,操作系统启动亮屏。操作系统接收到亮屏信号,生成点亮屏幕事件。事件分发管理服务将点亮屏幕事件分发至亮灭屏管理应用。亮灭屏管理应用通知应用程序框架层的电源管理服务点亮屏幕。电源管理服务通过表面管理器通知显示驱动点亮屏幕。
在一些场景下,终端设备100的显示屏会在亮屏和灭屏之间循环切换。显示驱动接收到点亮屏幕的指令后,判断是否存在显示屏补丁包;在一种示例中,显示驱动查询ODM补丁分区是否存储有显示屏补丁包;如果确定ODM补丁分区存在显示屏补丁包,则确定存在显示屏补丁包;如果确定ODM补丁分区不存在显示屏补丁包,则确定不存在显示屏补丁包。如果确定不存在显示屏补丁包,显示驱动读取初始化时内部存储器中保存的屏幕参数,将初始化时获取的屏幕参数发送给显示屏,显示屏根据原始的屏幕参数点亮屏幕。如果确定存在显示屏补丁包,显示驱动读取显示屏补丁包中重新配置后的屏幕参数,将重新配置后的屏幕参数发送给显示屏,显示屏根据重新配置后的屏幕参数点亮屏幕。
这样,如果针对屏幕显示故障制作了显示屏补丁包,终端设备100从服务器200下载显示屏补丁包,并将显示屏补丁包存储在预设的存储空间。当显示屏每次点亮时,显示驱动确定存在显示屏补丁包,就会使用显示屏补丁包中重新配置后的屏幕参数代替原始的屏幕参数,将重新配置后的屏幕参数发送给显示屏;显示屏按照重新配置后的屏幕参数进行配置,就可以正常显示,解决了屏幕显示故障。本申请实施例提供的屏幕参数补丁升级方法,实现了屏幕参数的补丁升级,不需要重启终端设备,更不需要升级整个操作系统。当需要对显示屏进行器件替代、参数修复、器件故障修复时,就可以采用本申请实施例提供的屏幕参数补丁升级方法进行显示屏补丁包的补丁升级,快速解决问题。
在一些场景中,可能对屏幕参数进行多次补丁升级。比如,每次重新配置屏幕参数后,生成新的显示屏补丁包。显示屏补丁包包括版本信息,用于记录显示屏补丁包的版本。每次OTA服务器210将新的显示屏补丁包通过推送服务器220推送至终端设备100。终端设备100的补丁包推送客户端与推送服务器220通过协商,下载新的显示屏补丁包。在一种实现方式中,终端设备100每次下载新的显示屏补丁包后,替换保存在终端设备100中预设的存储空间中的显示屏补丁包。这样,终端设备100中预设的存储空间(比如ODM补丁分区)保存的都是最新的显示屏补丁包。点亮屏幕时,显示驱动如果确定存在显示屏补丁包,读取该最新的显示屏补丁包,获取重新配置后的屏幕参数。在另一种实现方式中,终端设备100每次下载新的显示屏补丁包后,都保存在预设的存储空间(比如ODM补丁分区)。这样,终端设备100中预设的存储空间(比如ODM补丁分区)保存了每次更新的显示屏补丁包。点亮屏幕时,显示驱动如果确定存在显示屏补丁包,根据各个显示屏补丁包中的版本信息,读取最新的显示屏补丁包,获取重新配置后的屏幕参数。这样,如果需要对屏幕显示故障进行多次修复。可以多次制作显示屏补丁包;终端设备采用补丁升级方式更新屏幕参数,实现根据最新的屏幕参数配置显示屏,解决屏幕显示故障。
可以理解的是,本申请实施例提供的终端设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
本申请实施例可以根据上述方法示例对上述终端设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在一种示例中,请参考图8,其示出了上述实施例中所涉及的终端设备的一种可能的结构示意图。该电子设备800包括:处理单元810、存储单元820、显示单元830和通信单元840。
其中,处理单元810,用于对电子设备800的动作进行控制管理。存储单元820用于保存电子设备800的程序代码和数据,处理单元810调用存储单元820存储的程序代码,以执行以上方法实施例中的各个步骤。显示单元830用于显示电子设备800的用户界面。通信单元840用于电子设备800与其他电子设备进行通信。
当然,上述电子设备800中的单元模块包括但不限于上述处理单元810、存储单元820、显示单元830和通信单元840。例如,电子设备800中还可以包括电源单元等。电源单元用于对电子设备800供电。
其中,处理单元810可以是处理器或控制器,例如可以是中央处理器(centralprocessing unit,CPU),数字信号处理器(digital signal processor,DSP),专用集成电路(application-specific integrated circuit,ASIC),现场可编程门阵列(fieldprogrammable gate array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。存储单元820可以是存储器。显示单元830可以是显示屏等。
例如,处理单元810为处理器(如图2所示的处理器110),存储单元820可以为存储器(如图2所示的内部存储器121),显示单元830可以为显示屏(如图2所示的显示屏190),通信单元840可以包括移动通信模块(如图2所示的移动通信模块150)和无线通信模块(如图2所示的无线通信模块160)。本申请实施例所提供的电子设备800可以为图2所示的终端设备100。其中,上述处理器、存储器、显示屏等可以连接在一起,例如通过总线连接。处理器调用存储器存储的程序代码,以执行以上方法实施例中的各个步骤。
本申请实施例还提供一种芯片系统,该芯片系统包括至少一个处理器和至少一个接口电路。处理器和接口电路可通过线路互联。例如,接口电路可用于从其它装置(例如电子设备的存储器)接收信号。又例如,接口电路可用于向其它装置(例如处理器)发送信号。示例性的,接口电路可读取存储器中存储的指令,并将该指令发送给处理器。当所述指令被处理器执行时,可使得电子设备执行上述实施例中的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令,当所述计算机指令在上述终端设备上运行时,使得该终端设备执行上述方法实施例中的各个功能或者步骤。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行上述方法实施例中各个功能或者步骤。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (16)
1.一种屏幕参数补丁升级方法,应用于终端设备,所述终端设备包括显示屏,以及用于适配所述显示屏与所述终端设备操作系统的显示驱动,其特征在于,所述方法包括:
所述终端设备开机上电;
所述终端设备的操作系统控制所述显示驱动对所述显示屏的文件和参数进行初始化,所述显示驱动获取所述显示屏的第一屏幕参数;
所述终端设备的操作系统控制所述显示驱动启动点亮屏幕;
如果所述显示驱动确定存在所述显示屏的第二屏幕参数,所述显示驱动向所述显示屏发送所述第二屏幕参数;其中,所述第二屏幕参数与所述第一屏幕参数的项目不同,或者,所述第二屏幕参数与所述第一屏幕参数中同一项目的值不同;
所述显示屏根据所述第二屏幕参数点亮屏幕;
其中,所述屏幕参数是用于配置所述显示屏硬件节点的数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述终端设备从服务器接收补丁包,所述补丁包包括所述第二屏幕参数。
3.根据权利要求1所述的方法,其特征在于,所述终端设备的操作系统控制所述显示驱动启动点亮屏幕之后,所述方法还包括:
如果所述显示驱动确定不存在所述显示屏的第二屏幕参数,所述显示驱动向所述显示屏发送所述第一屏幕参数;
所述显示屏根据所述第一屏幕参数点亮屏幕。
4.根据权利要求3所述的方法,其特征在于,所述显示驱动获取所述显示屏的第一屏幕参数,包括:
所述显示驱动从所述终端设备的存储空间中原始设计商分区获取所述第一屏幕参数,保存至所述终端设备的内部存储器中。
5.根据权利要求4所述的方法,其特征在于,所述显示驱动向所述显示屏发送所述第一屏幕参数之前,所述方法还包括:
所述显示驱动从所述终端设备的内部存储器中读取所述第一屏幕参数。
6.根据权利要求5所述的方法,其特征在于,所述显示驱动从所述终端设备的内部存储器中读取所述第一屏幕参数之前,所述方法还包括:
所述显示驱动确定是首次点亮屏幕。
7.根据权利要求1-6中任意一项所述的方法,其特征在于,所述屏幕参数包括像素点距,分辨率,扫描频率和刷新速度中至少一项。
8.一种屏幕参数补丁升级方法,其特征在于,所述方法包括:
从终端设备的操作系统接收初始化指令,对终端设备的显示屏的文件和参数进行初始化,获取所述显示屏的第一屏幕参数;
从所述操作系统接收启动点亮屏幕指令;
如果确定存在所述显示屏的第二屏幕参数,向所述显示屏发送所述第二屏幕参数;其中,所述第二屏幕参数与所述第一屏幕参数的项目不同,或者,所述第二屏幕参数与所述第一屏幕参数中同一项目的值不同;
其中,所述屏幕参数是用于配置所述显示屏硬件节点的数据。
9.根据权利要求8所述的方法,其特征在于,所述第二屏幕参数是通过从服务器接收的补丁包解析获取的。
10.根据权利要求8所述的方法,其特征在于,所述从所述操作系统接收启动点亮屏幕指令之后,所述方法还包括:
如果确定不存在所述显示屏的第二屏幕参数,向所述显示屏发送所述第一屏幕参数。
11.根据权利要求10所述的方法,其特征在于,所述获取所述显示屏的第一屏幕参数,包括:
从所述终端设备的存储空间中原始设计商分区获取所述第一屏幕参数,保存至所述终端设备的内部存储器中。
12.根据权利要求11所述的方法,其特征在于,所述向所述显示屏发送所述第一屏幕参数之前,所述方法还包括:
从所述终端设备的内部存储器中读取所述第一屏幕参数。
13.根据权利要求12所述的方法,其特征在于,所述从所述终端设备的内部存储器中读取所述第一屏幕参数之前,所述方法还包括:
确定是首次点亮屏幕。
14.根据权利要求8-13中任意一项所述的方法,其特征在于,所述屏幕参数包括像素点距,分辨率,扫描频率和刷新速度中至少一项。
15.一种终端设备,其特征在于,包括:
一个或多个处理器;
显示屏;
存储器;
其中,所述存储器中存储有一个或多个计算机程序,所述一个或多个计算机程序包括指令,当所述指令被所述终端设备执行时,使得所述终端设备执行如权利要求1-7中任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,包括计算机指令;当所述计算机指令在终端设备上运行时,使得所述终端设备执行如权利要求1-14中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211199269.8A CN116737243B (zh) | 2022-09-29 | 2022-09-29 | 屏幕参数补丁升级方法及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211199269.8A CN116737243B (zh) | 2022-09-29 | 2022-09-29 | 屏幕参数补丁升级方法及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116737243A CN116737243A (zh) | 2023-09-12 |
CN116737243B true CN116737243B (zh) | 2024-04-16 |
Family
ID=87908594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211199269.8A Active CN116737243B (zh) | 2022-09-29 | 2022-09-29 | 屏幕参数补丁升级方法及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116737243B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117473873B (zh) * | 2023-11-13 | 2024-04-26 | 上海交通大学 | 基于DeepM&Mnet神经网络的核热耦合实现方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105788522A (zh) * | 2014-12-26 | 2016-07-20 | 西安光向信息科技有限公司 | 一种基于手机控制的led显示屏操作系统及其控制方法 |
CN106485120A (zh) * | 2016-09-22 | 2017-03-08 | 宇龙计算机通信科技(深圳)有限公司 | 点亮屏幕方法、点亮屏幕装置及终端 |
CN107230445A (zh) * | 2017-06-05 | 2017-10-03 | 广州视源电子科技股份有限公司 | 一种屏幕参数的配置方法及装置 |
CN110457062A (zh) * | 2018-05-07 | 2019-11-15 | 青岛海尔多媒体有限公司 | 屏幕参数配置的方法、装置及计算机可读存储介质 |
CN112068885A (zh) * | 2019-06-10 | 2020-12-11 | 广东美的制冷设备有限公司 | 屏幕自适应驱动方法及装置 |
CN112116888A (zh) * | 2019-06-21 | 2020-12-22 | 北京小米移动软件有限公司 | 屏幕校准方法、校准装置及存储介质 |
CN113553017A (zh) * | 2021-07-28 | 2021-10-26 | 展讯半导体(南京)有限公司 | 一种终端屏幕的适配方法、系统、设备及介质 |
WO2021237425A1 (zh) * | 2020-05-25 | 2021-12-02 | 深圳传音控股股份有限公司 | 屏幕亮度调节方法、终端及存储介质 |
-
2022
- 2022-09-29 CN CN202211199269.8A patent/CN116737243B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105788522A (zh) * | 2014-12-26 | 2016-07-20 | 西安光向信息科技有限公司 | 一种基于手机控制的led显示屏操作系统及其控制方法 |
CN106485120A (zh) * | 2016-09-22 | 2017-03-08 | 宇龙计算机通信科技(深圳)有限公司 | 点亮屏幕方法、点亮屏幕装置及终端 |
CN107230445A (zh) * | 2017-06-05 | 2017-10-03 | 广州视源电子科技股份有限公司 | 一种屏幕参数的配置方法及装置 |
CN110457062A (zh) * | 2018-05-07 | 2019-11-15 | 青岛海尔多媒体有限公司 | 屏幕参数配置的方法、装置及计算机可读存储介质 |
CN112068885A (zh) * | 2019-06-10 | 2020-12-11 | 广东美的制冷设备有限公司 | 屏幕自适应驱动方法及装置 |
CN112116888A (zh) * | 2019-06-21 | 2020-12-22 | 北京小米移动软件有限公司 | 屏幕校准方法、校准装置及存储介质 |
WO2021237425A1 (zh) * | 2020-05-25 | 2021-12-02 | 深圳传音控股股份有限公司 | 屏幕亮度调节方法、终端及存储介质 |
CN113553017A (zh) * | 2021-07-28 | 2021-10-26 | 展讯半导体(南京)有限公司 | 一种终端屏幕的适配方法、系统、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116737243A (zh) | 2023-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8719810B2 (en) | Program upgrade system and method for over the air-capable mobile terminal | |
CN110569130B (zh) | 一种跨进程通信方法、装置及设备 | |
CN114461239B (zh) | 软件升级系统和软件升级方法 | |
US20220100490A1 (en) | Firmware updating method, and electronic apparatus and storage media for same | |
CN111316230B (zh) | 一种补丁包生成方法及设备 | |
WO2021052167A1 (zh) | 一种实现应用插件化的方法及电子设备 | |
CN116737243B (zh) | 屏幕参数补丁升级方法及终端设备 | |
CN112817634B (zh) | Cota包下载方法及装置 | |
CN115643338B (zh) | 一种参数更新方法及设备 | |
CN115309431B (zh) | 一种参数更新方法、可读介质和电子设备 | |
JP2010044574A (ja) | 携帯端末、携帯端末制御方法、及び携帯端末制御プログラム | |
CN116257262A (zh) | 内核升级方法、芯片、电子设备及计算机可读存储介质 | |
CN114168237A (zh) | 主题包适配方法及装置 | |
CN114253558A (zh) | 一种补丁包安装方法和装置 | |
CN114443117B (zh) | 一种定制包的处理方法及电子设备 | |
CN113885928B (zh) | 程序更新方法和电子设备 | |
CN114489689A (zh) | 应用程序的安装方法、系统、电子设备及服务器 | |
CN116679990B (zh) | 一种服务状态初始化的统一方法及电子设备 | |
CN115767602B (zh) | 设备协议子系统异常自动纠错方法和电子设备 | |
CN116661812B (zh) | 设备升级方法、电子设备及系统 | |
CN116048563B (zh) | 一种系统升级方法、电子设备以及存储介质 | |
CN116643778B (zh) | 一种应用程序优化方法及电子设备 | |
CN112905285B (zh) | 数据处理方法及装置 | |
CN117991939A (zh) | 一种文件下载方法及相关装置 | |
CN117971305A (zh) | 操作系统的升级方法、服务器及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |