CN109426625A - 一种多驱动兼容的控制装置和实现方法 - Google Patents
一种多驱动兼容的控制装置和实现方法 Download PDFInfo
- Publication number
- CN109426625A CN109426625A CN201710763249.1A CN201710763249A CN109426625A CN 109426625 A CN109426625 A CN 109426625A CN 201710763249 A CN201710763249 A CN 201710763249A CN 109426625 A CN109426625 A CN 109426625A
- Authority
- CN
- China
- Prior art keywords
- peripheral components
- configuration information
- identification information
- memory location
- particular memory
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- 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
-
- 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
-
- 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/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种多驱动兼容的控制装置和实现方法,所述多驱动兼容的控制装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现:获取连接的外围部件的标识信息;根据所述标识信息读取预先存储在特定存储单元中的所述外围部件对应的配置信息;根据所述配置信息加载相应的驱动程序。通过本发明实施例,可以兼容多个外围部件的驱动,提高了产品更换部件的灵活性,解决了外围部件生命周期与主模块生命周期不同步的问题。另外,外围部件的配置信息不受硬件条件限制,配置简单灵活。
Description
技术领域
本发明涉及信息技术领域,尤指一种多驱动兼容的控制装置和实现方法。
背景技术
手持式移动终端一般由主控芯片CPU(Central Processing Unit,中央处理器),以及ROM(Read-Only Memory,只读存储器)、DDR(Dual Data Rate,双倍速率同步动态随机存储器)、LCD(Liquid Crystal Display,液晶显示器)、TP(Touch Panel,触摸屏)、WiFi(Wireless-FiIdelity,无线保真)、BT(Blue Tooth,蓝牙),Camera(摄像头)和PMU(PowerManagement Unit,电源管理单元)等部件组合而成。在手持式移动终端的电路和硬件设计的时候,一般根据主控芯片CPU的特性,采用适当的总线将主控芯片CPU与其他所有部件连接起来。连接之后,可以将所有部件划分为主模块和外围部件。其中,主模块通常包括CPU、ROM、DDR以及PMU多个部件,而其他部件则是独立的外围部件。当主模块设计完成后,不会轻易更改,如果变更一般会更改整个设计方案。但一些外围部件,如LCD、TP、WiFi、BT、Camera、Battery(电池)等,由不同的供应商提供,其生命周期也许不会和主模块同步,在整个产品的生命周期中,可能会停产或者更换。
现有技术中,一般会将各个外围部件的配置信息以固定程序的方式写入主模块,然后通过拨码开关技术或者GPIO(General Purpose Input Output,通用输入输出)脚拉高拉低技术标记和适应不同的外围部件,然后运行对应的驱动程序,从而达到多驱动的兼容。这种设计方法受到组合状态数量的限制,只能区分简单的情况,而对于比较复杂的情况则区分不清楚。如果用到的外围部件比较多,而且每个外围部件都可能有几种替代料的情况,用传统的方法无法解决。
发明内容
为了解决上述技术问题,本发明提供了一种多驱动兼容的装置和实现方法,以增强驱动程序的兼容性,解决外围部件更换困难的问题。
为了达到本发明目的,本发明实施例提供了一种多驱动兼容的控制装置,所述装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现:
获取连接的外围部件的标识信息;
根据所述标识信息读取预先存储在特定存储单元中的所述外围部件对应的配置信息;
根据所述配置信息加载相应的驱动程序。
可选地,所述配置信息包括所述外围部件的编号以及相应的版本信息。
可选地,所述特定存储单元为独立的存储模块,或者
所述存储器中设置有一块非可擦除区,作为所述特定存储单元。
可选地,所述特定存储单元为电可擦可编程只读存储器EEPROM。
可选地,所述计算机程序被所述处理器执行时实现:
根据与所述外围部件的连接接口类型获取所述外围部件的标识信息;或者
直接获取所述特定存储单元中预先设置的所述外围部件的标识信息。
可选地,所述计算机程序被所述处理器执行时实现:
当更换不同版本的外围部件时,重新设置所述特定存储单元中存储的配置信息和/或存储的所述外围部件的标识信息。
可选地,所述计算机程序被所述处理器执行时实现:
当没有读取到所述外围部件对应的配置信息或者所述配置信息出错时,则加载默认的驱动程序。
本发明实施例还提供一种多驱动兼容的实现方法,应用于包括处理器和存储器的多驱动兼容的控制装置,所述多驱动兼容的控制装置与一个或者多个外围部件连接,所述方法包括:
获取连接的外围部件的标识信息;
根据所述标识信息读取预先存储在特定存储单元中的所述外围部件对应的配置信息;
根据所述配置信息加载相应的驱动程序。
可选地,所述配置信息包括所述外围部件的编号以及相应的版本信息。
可选地,所述特定存储单元为独立的存储模块,或者
所述存储器中设置有一块非可擦除区,作为所述特定存储单元。
可选地,所述特定存储单元为电可擦可编程只读存储器EEPROM。
可选地,所述获取连接的外围部件的标识信息,包括:
根据与所述外围部件的连接接口类型获取所述外围部件的标识信息;或者
直接获取所述特定存储单元中预先设置的所述外围部件的标识信息。
可选地,所述方法还包括:
当更换不同版本的外围部件时,重新设置所述特定存储单元中存储的配置信息和/或存储的所述外围部件的标识信息。
可选地,所述方法还包括:
当没有读取到所述外围部件对应的配置信息或者所述配置信息出错时,则加载默认的驱动程序。
本发明实施例还提供一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行上述多驱动兼容的实现方法。
与现有技术相比,本发明实施例具有如下优点:
1、可以兼容多个外围部件的驱动,提高了产品更换部件的灵活性,解决了外围部件生命周期与主模块生命周期不同步的问题;
2、传统的拨码开关占据PCB(Printed Circuit Board,印制电路板)面积大,而且表示的信息有限;用GPIO等引脚拉高和拉低方案,受到GPIO数量的限制,表示的信息也非常有限;而本发明实施例中,部件信息和版本信息配置不受硬件条件限制,配置简单灵活;
3、实现成本低,目前EEPROM(Electrically Erasable Programmable Read-OnlyMemory,电可擦可编程只读存储器)成本低,存储容量大,而且可靠性高。
4、若没有读取到外围部件对应的配置信息或者判断所述配置信息出错,则加载默认的驱动程序,可兼容没有配置信息或配置信息出错的情况。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本发明实施例的多驱动兼容的控制装置应用环境示意图;
图2为本发明实施例的多驱动兼容的控制装置的功能模块示意图。
图3为本发明应用示例的多驱动兼容的装置示意图;
图4为本发明应用示例的配置信息存储格式的示意图;
图5为本发明应用示例的部件版本信息示意图;
图6为本发明实施例的多驱动兼容的实现方法的流程图;
图7为本发明应用示例的多驱动兼容的实现方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本实施例提出基于配置信息的驱动加载,驱动程序支持多个硬件版本,根据外围部件的配置信息加载对应的驱动程序,解决外围部件更换困难的问题。
参阅图1所示,是本发明实施例之多驱动兼容的控制装置应用环境示意图。在本实施例中,所述多驱动兼容的控制装置11与一个特定存储单元12进行有线连接,并与一个或者多个外围部件13通过有线或者无线的方式连接。所述多驱动兼容的控制装置11可以是内置于任何其他电子装置中,用于对所述电子装置的外围部件13的多驱动进行兼容控制,也可以作为独立的电子控制装置,直接与一个或多个外围部件13连接后,然后对外围部件13的多驱动进行兼容控制。本发明实施例的多驱动兼容的控制装置11,可应用于上述主模块。
本发明实施例的多驱动兼容的控制装置11,包括:存储器112、处理器111及存储在所述存储器112上并可在所述处理器111上运行的计算机程序,所述计算机程序被所述处理器111执行时实现:
获取连接的外围部件13的标识信息;
根据所述标识信息读取预先存储在特定存储单元12中的所述外围部件13对应的配置信息;
根据所述配置信息加载相应的驱动程序。
通过本发明实施例,可以兼容多个外围部件的驱动,提高了产品更换部件的灵活性,解决了外围部件生命周期与主模块生命周期不同步的问题。另外,外围部件的配置信息不受硬件条件限制,配置简单灵活。
所称处理器111可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述多驱动兼容的控制装置11的控制中心,利用各种接口和线路连接多驱动兼容的控制装置11的各个部分。
所述存储器112至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。
在一实施方式中,所述配置信息包括所述外围部件13的编号以及相应的版本信息。
在一实施方式中,所述特定存储单元12为独立的存储模块,或者
所述存储器112中设置有一块非可擦除区,作为所述特定存储单元。
当所述特定存储单元12为独立的存储模块时,所述特定存储单元12也可以看作是一个外围部件。
当所述存储器112中设置有一块非可擦除区,作为所述特定存储单元时,所述特定存储单元12是所述存储器112的一部分。
在一实施方式中,所述特定存储单元12为EEPROM。
在一实施方式中,所述计算机程序被所述处理器执行时实现:
根据与所述外围部件13的连接接口类型获取所述外围部件13的标识信息;或者
直接获取所述特定存储单元12中预先设置的所述外围部件13的标识信息。
所述外围部件13的标识信息可以是外围部件的编号、标识等。
在一实施方式中,所述计算机程序被所述处理器执行时实现:
当更换不同版本的外围部件13时,重新设置所述特定存储单元12中存储的配置信息和/或存储的所述外围部件13的标识信息。
在一实施方式中,所述计算机程序被所述处理器执行时实现:
当没有读取到所述外围部件13对应的配置信息或者所述配置信息出错时,则加载默认的驱动程序。
参阅图2所示,是本发明实施例之多驱动兼容的控制装置的功能模块图。在本实施例中,所述多驱动兼容的控制装置中包括获取模块113、读取模块114、加载模块115、以及存储器112及处理器111。其中,存储器25及处理器26如上文所述,此处不再赘述。
所述获取模块113,用于获取连接的外围部件的标识信息;
所述读取模块114,用于根据所述标识信息读取预先存储在特定存储单元中的所述外围部件对应的配置信息;
所述加载模块115,用于根据所述配置信息加载相应的驱动程序。
在一实施方式中,所述读取模块114,进一步用于:
根据与所述外围部件的连接接口类型获取所述外围部件的标识信息;或者
直接获取所述特定存储单元中预先设置的所述外围部件的标识信息。
其中,所述连接接口类型可以是:UART(Universal Asynchronous Receiver/Transmitter,通用异步收发器)、I2C(Inter-Integrated Circuit)总线或者USB(Universal Serial Bus,通用串行总线)等。
在一实施方式中,所述装置还包括更新模块116,用于当更换不同版本的外围部件时,重新设置所述特定存储单元中存储的配置信息和/或存储的所述外围部件的标识信息。
在一实施方式中,所述加载模块115,进一步用于:
当没有读取到所述外围部件对应的配置信息或者所述配置信息出错时,则加载默认的驱动程序。
通过本发明实施例,可以兼容多个外围部件的驱动,提高了产品更换部件的灵活性,解决了外围部件生命周期与主模块生命周期不同步的问题。另外,外围部件的配置信息不受硬件条件限制,配置简单灵活。
下面以特定存储单元12为独立的EEPROM为例进行说明。
如图3所示,多驱动兼容的控制装置11为主模块,包括处理器111(即CPU)、存储器112和PMU113,其中存储器112包括ROM1121和DDR1122,外围部件13有LCD131、TP132、Camera133、Battery134、WiFi135和BT136。主模块11和外围部件13之间采用UART(Universal Asynchronous Receiver/Transmitter,通用异步收发器)、I2C(Inter-Integrated Circuit)或者USB(Universal Serial Bus,通用串行总线)等总线进行通信。
本应用示例中,对各外围部件13做集中配置管理,配置信息包括各外围部件对应的部件编号以及相应的版本信息。硬件设计上面,增加EEPROM12,用于存储外围部件13的配置信息。
由于EEPROM具有掉电后还能存储信息,在每次系统加电启动的时候,获取连接的外围部件13的标识信息,根据所述标识信息,从EEPROM中读取外围部件13的配置信息,根据配置信息加载不同的驱动程序。EEPROM里面的配置信息,根据产品不同批次使用的外围部件13进行不同的配置,在出厂的时候进行固化。如果遇到产品返修需要更换部件,前面配置的外围部件缺料,可以重新制作配置信息,刷新EEPROM里面的固件后,用驱动兼容的其他物料替换即可。
EEPROM12里面的配置信息,需要在所有驱动程序加载之前进行读取,而且读取时间应该尽量短,不影响系统的启动速度。通常EEPROM12与主模块11之间通过SPI(SerialPeripheral Interface,串行外设接口)、I2C或者UART通信。由于EEPROM存储容量不是很大,里面存储的信息需要尽量精简,同时又要蕴藏尽量大的信息。
如图4所示,采用了一种存储方式,存储信息按照字节顺序存放,前面12个字节为信息头,后面为存储的部件的配置信息。其中12字节的存储头分别为:
V:EEPROM的版本信息,1字节;
Len:EEPROM存储的数据长度,包括前面12个字节的信息头,2字节;
C:EEPROM里面存储的Len字节数据校验和,计算校验的时候这个字节按照FF计算,1字节;
R:预留信息,2字节;
Name:产品名字,最长6字节。
按照每2字节表示一个部件的配置信息,第一个字节表示部件编号,第二个字节表示部件的版本信息。版本信息可包括供应商标识和产品标识。有多少个部件,就存储多少对信息。最多可以表示256种部件的配置信息,足够目前大多数移动终端产品使用。
对于主模块中除主控芯片之外的部件,例如ROM,目前在移动终端中经常使用的是eMMC(Embedded Multi Media Card,嵌入式多媒体存储卡)或者Nand Flash(快闪记忆体),如果在进行硬件方案设计的时候,如果PIN脚兼容,同样可以根据动态配置运行不同的驱动程序。
为了保证EEPROM烧录程序和移动终端程序解析固件内容一致,对部件信息管理需要做相应的规范化,下表(一)提供了一个规范化的部件管理设计示例。
表(一)部分部件规范化编号管理
对于每个部件版本信息的管理,各厂商可以根据自己的设计而确定。如图5所示,为一种实现方案,前面4bit表示Vendor ID(供应商标识),后面4bit表示Product ID(产品标识),这样每个部件可以选择16个供应商,每个供应商可以兼容其16种产品。
需要说明的是,虽然本应用示例采用EEPROM作为特定存储单元,但本发明不限于此,只要能够存储配置信息,且存储介质为非易失性,即掉电不会丢失信息,均可实现本发明实施例,均在本发明保护范围之内。
还需要说明的是,图4和图5所示的EEPROM中的存储格式,仅为示例,本发明不限于此,可以根据需要采用其他格式。
另外,EEPROM与主模块除了通过I2C,SPI,UART方式连接外,还可以通过其他方式连接;其他外围部件与主模块之间,可以有非I2C,UART方式之外的其他连接方式,本发明不做具体限定。
如图6所示,本发明实施例的多驱动兼容的实现方法,应用于包括处理器和存储器的多驱动兼容的控制装置,所述多驱动兼容的控制装置与一个或者多个外围部件连接,所述方法包括:
步骤201,获取连接的外围部件的标识信息;
步骤202,根据所述标识信息读取预先存储在特定存储单元中的所述外围部件对应的配置信息;
步骤203,根据所述配置信息加载相应的驱动程序。
在一实施方式中,所述配置信息包括所述外围部件的编号以及相应的版本信息。
在一实施方式中,所述特定存储单元为独立的存储模块,或者
所述存储器中设置有一块非可擦除区,作为所述特定存储单元。
在一实施方式中,所述特定存储单元为电可擦可编程只读存储器EEPROM。
在一实施方式中,所述获取连接的外围部件的标识信息,包括:
根据与所述外围部件的连接接口类型获取所述外围部件的标识信息;或者
直接获取所述特定存储单元中预先设置的所述外围部件的标识信息。
在一实施方式中,所述方法还包括:
当更换不同版本的外围部件时,重新设置所述特定存储单元中存储的配置信息和/或存储的所述外围部件的标识信息。
在一实施方式中,所述方法还包括:
当没有读取到所述外围部件对应的配置信息或者所述配置信息出错时,则加载默认的驱动程序。
通过本发明实施例,可以兼容多个外围部件的驱动,提高了产品更换部件的灵活性,解决了外围部件生命周期与主模块生命周期不同步的问题;外围部件的配置信息不受硬件条件限制,配置简单灵活;特定存储单元为EEPROM时,实现成本低,存储容量大,可靠性高;若没有读取到外围部件对应的配置信息或者判断所述配置信息出错,则加载默认的驱动程序,可兼容没有配置信息或配置信息出错的情况。
本发明还提出一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于上述多驱动兼容的实现方法。
所述计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。
如图7所示,针对图3特定存储单元采用EEPROM,多驱动兼容的实现方法的软件流程图,包括如下步骤:
步骤301,机器上电,CPU,DDR,PMU,时钟,中断等基本系统初始化;
步骤302,平台级别驱动加载,比如I2C,UART,SPI等驱动,根据连接接口类型获取所述外围部件的标识信息;
步骤303,读取EEPROM里面信息头;
步骤304,根据EEPROM里面的长度,以及外围部件的标识信息,读取外围部件对应的配置信息;
步骤305,校验EEPROM里面的信息是否正确,如不正确,执行步骤306,如果正确,执行步骤307;
步骤306,输出相应的出错日志,执行步骤308;
步骤307,解析配置信息;
步骤308,外围部件驱动加载,如果外围部件有配置信息,则加载对应的驱动程序,否则加载默认的驱动程序。
上述软件运行环境可以包含Linux、Windows或者其他嵌入式系统。
本实施例中的示例可以参考上述实施例及实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明实施例的模块或步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (15)
1.一种多驱动兼容的控制装置,其特征在于,所述装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现:
获取连接的外围部件的标识信息;
根据所述标识信息读取预先存储在特定存储单元中的所述外围部件对应的配置信息;
根据所述配置信息加载相应的驱动程序。
2.根据权利要求1所述的装置,其特征在于,
所述配置信息包括所述外围部件的编号以及相应的版本信息。
3.根据权利要求1所述的装置,其特征在于,
所述特定存储单元为独立的存储模块,或者
所述存储器中设置有一块非可擦除区,作为所述特定存储单元。
4.根据权利要求1所述的装置,其特征在于,
所述特定存储单元为电可擦可编程只读存储器EEPROM。
5.根据权利要求1所述的装置,其特征在于,所述计算机程序被所述处理器执行时实现:
根据与所述外围部件的连接接口类型获取所述外围部件的标识信息;或者
直接获取所述特定存储单元中预先设置的所述外围部件的标识信息。
6.根据权利要求1~5中任意一项所述的装置,其特征在于,所述计算机程序被所述处理器执行时实现:
当更换不同版本的外围部件时,重新设置所述特定存储单元中存储的配置信息和/或存储的所述外围部件的标识信息。
7.根据权利要求1~5中任意一项所述的装置,其特征在于,所述计算机程序被所述处理器执行时实现:
当没有读取到所述外围部件对应的配置信息或者所述配置信息出错时,则加载默认的驱动程序。
8.一种多驱动兼容的实现方法,应用于包括处理器和存储器的多驱动兼容的控制装置,所述多驱动兼容的控制装置与一个或者多个外围部件连接,所述方法包括:
获取连接的外围部件的标识信息;
根据所述标识信息读取预先存储在特定存储单元中的所述外围部件对应的配置信息;
根据所述配置信息加载相应的驱动程序。
9.根据权利要求8所述的方法,其特征在于,
所述配置信息包括所述外围部件的编号以及相应的版本信息。
10.根据权利要求8所述的装置,其特征在于,
所述特定存储单元为独立的存储模块,或者
所述存储器中设置有一块非可擦除区,作为所述特定存储单元。
11.根据权利要求8所述的方法,其特征在于,
所述特定存储单元为电可擦可编程只读存储器EEPROM。
12.根据权利要求8所述的方法,其特征在于,所述获取连接的外围部件的标识信息,包括:
根据与所述外围部件的连接接口类型获取所述外围部件的标识信息;或者
直接获取所述特定存储单元中预先设置的所述外围部件的标识信息。
13.根据权利要求8~12中任意一项所述的方法,其特征在于,所述方法还包括:
当更换不同版本的外围部件时,重新设置所述特定存储单元中存储的配置信息和/或存储的所述外围部件的标识信息。
14.根据权利要求8~12中任意一项所述的方法,其特征在于,所述方法还包括:
当没有读取到所述外围部件对应的配置信息或者所述配置信息出错时,则加载默认的驱动程序。
15.一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求8-14任一项的多驱动兼容的实现方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710763249.1A CN109426625A (zh) | 2017-08-30 | 2017-08-30 | 一种多驱动兼容的控制装置和实现方法 |
PCT/CN2018/102998 WO2019042323A1 (zh) | 2017-08-30 | 2018-08-29 | 多驱动兼容的控制装置和实现方法 |
US16/804,594 US20200201654A1 (en) | 2017-08-30 | 2020-02-28 | Control device for multi-driver compatibility and implementation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710763249.1A CN109426625A (zh) | 2017-08-30 | 2017-08-30 | 一种多驱动兼容的控制装置和实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109426625A true CN109426625A (zh) | 2019-03-05 |
Family
ID=65502210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710763249.1A Pending CN109426625A (zh) | 2017-08-30 | 2017-08-30 | 一种多驱动兼容的控制装置和实现方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20200201654A1 (zh) |
CN (1) | CN109426625A (zh) |
WO (1) | WO2019042323A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110007973A (zh) * | 2019-03-26 | 2019-07-12 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN111881073A (zh) * | 2020-07-31 | 2020-11-03 | 卡莱特(深圳)云科技有限公司 | 一种fpga兼容多种硬件的方法、装置及电子设备 |
CN111930395A (zh) * | 2020-08-20 | 2020-11-13 | 展讯通信(上海)有限公司 | 智能终端的程序下载方法和智能终端 |
CN112650070A (zh) * | 2020-12-17 | 2021-04-13 | 青岛海尔空调电子有限公司 | 用于智能家居系统的控制方法 |
CN112835623A (zh) * | 2021-01-21 | 2021-05-25 | 成都万创科技股份有限公司 | 一种基于eeprom的设备兼容装置及方法 |
CN114816571A (zh) * | 2022-04-15 | 2022-07-29 | 西安广和通无线通信有限公司 | 外挂闪存的方法、装置、设备及存储介质 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7386012B2 (ja) * | 2019-07-30 | 2023-11-24 | 株式会社ワコム | 情報入力装置、方法、及びプログラム |
CN111290351A (zh) * | 2020-01-21 | 2020-06-16 | 深圳市雷赛软件技术有限公司 | 一种驱动器管理方法、系统、计算机设备及存储介质 |
CN112214015B (zh) * | 2020-09-04 | 2024-08-23 | 安克创新科技股份有限公司 | 自移动机器人及其回充的方法、系统及计算机存储介质 |
CN113360194B (zh) * | 2021-05-22 | 2024-06-14 | 深圳市华芯飞通讯有限公司 | 一种基于Python的驱动生成方法、系统及电子设备 |
CN117170752A (zh) * | 2022-05-27 | 2023-12-05 | 海信视像科技股份有限公司 | Tcon板初始化方法、显示设备及存储介质 |
CN115224774A (zh) * | 2022-08-16 | 2022-10-21 | 厦门紫光展锐科技有限公司 | 基于终端芯片的多充电芯片充电方法及装置、终端芯片、终端 |
CN116521247B (zh) * | 2023-06-29 | 2024-02-23 | 深圳艾为电气技术股份有限公司 | Ptc驱动器的同步装载控制方法、装置、设备及介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1577252A (zh) * | 2003-07-29 | 2005-02-09 | 刘丁阳 | 一种自动安装设备驱动程序的方法及设备 |
US20080126628A1 (en) * | 2006-11-29 | 2008-05-29 | Sony Ericsson Mobile Communications Ab | Methods, devices and computer program products for automatically providing an alternate usb configuration of a usb compliant peripheral device for exposure to a host computer |
CN101499009A (zh) * | 2008-02-02 | 2009-08-05 | 戴尔产品有限公司 | 安装外围软件驱动程序的方法、系统和介质 |
CN101673212A (zh) * | 2009-10-27 | 2010-03-17 | 华为技术有限公司 | 软件加载方法和装置 |
CN104991872A (zh) * | 2015-06-19 | 2015-10-21 | 上海卓易科技股份有限公司 | 一种实现智能设备驱动外围设备的方法及装置 |
CN105144090A (zh) * | 2013-02-28 | 2015-12-09 | 高通股份有限公司 | 用于在高级操作系统(hlos)启动之前预读连接到智能电话的外围设备的设备驱动的方法和装置 |
CN106304032A (zh) * | 2016-08-08 | 2017-01-04 | 周奇 | 手机配置兼容方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7853759B2 (en) * | 2007-04-23 | 2010-12-14 | Microsoft Corporation | Hints model for optimization of storage devices connected to host and write optimization schema for storage devices |
-
2017
- 2017-08-30 CN CN201710763249.1A patent/CN109426625A/zh active Pending
-
2018
- 2018-08-29 WO PCT/CN2018/102998 patent/WO2019042323A1/zh active Application Filing
-
2020
- 2020-02-28 US US16/804,594 patent/US20200201654A1/en not_active Abandoned
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1577252A (zh) * | 2003-07-29 | 2005-02-09 | 刘丁阳 | 一种自动安装设备驱动程序的方法及设备 |
US20080126628A1 (en) * | 2006-11-29 | 2008-05-29 | Sony Ericsson Mobile Communications Ab | Methods, devices and computer program products for automatically providing an alternate usb configuration of a usb compliant peripheral device for exposure to a host computer |
CN101499009A (zh) * | 2008-02-02 | 2009-08-05 | 戴尔产品有限公司 | 安装外围软件驱动程序的方法、系统和介质 |
CN101673212A (zh) * | 2009-10-27 | 2010-03-17 | 华为技术有限公司 | 软件加载方法和装置 |
CN105144090A (zh) * | 2013-02-28 | 2015-12-09 | 高通股份有限公司 | 用于在高级操作系统(hlos)启动之前预读连接到智能电话的外围设备的设备驱动的方法和装置 |
CN104991872A (zh) * | 2015-06-19 | 2015-10-21 | 上海卓易科技股份有限公司 | 一种实现智能设备驱动外围设备的方法及装置 |
CN106304032A (zh) * | 2016-08-08 | 2017-01-04 | 周奇 | 手机配置兼容方法及系统 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110007973A (zh) * | 2019-03-26 | 2019-07-12 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN110007973B (zh) * | 2019-03-26 | 2021-07-16 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN111881073A (zh) * | 2020-07-31 | 2020-11-03 | 卡莱特(深圳)云科技有限公司 | 一种fpga兼容多种硬件的方法、装置及电子设备 |
CN111881073B (zh) * | 2020-07-31 | 2022-06-03 | 卡莱特云科技股份有限公司 | 一种fpga兼容多种硬件的方法、装置及电子设备 |
CN111930395A (zh) * | 2020-08-20 | 2020-11-13 | 展讯通信(上海)有限公司 | 智能终端的程序下载方法和智能终端 |
WO2022037686A1 (zh) * | 2020-08-20 | 2022-02-24 | 展讯通信(上海)有限公司 | 智能终端的程序下载方法和智能终端 |
CN111930395B (zh) * | 2020-08-20 | 2023-03-07 | 展讯通信(上海)有限公司 | 智能终端的程序下载方法和智能终端 |
US12008171B2 (en) | 2020-08-20 | 2024-06-11 | Spreadtrum Communications (Shanghai) Co., Ltd. | Program download method for intelligent terminal with memory card identifier and intelligent terminal with memory card identifier |
CN112650070A (zh) * | 2020-12-17 | 2021-04-13 | 青岛海尔空调电子有限公司 | 用于智能家居系统的控制方法 |
CN112835623A (zh) * | 2021-01-21 | 2021-05-25 | 成都万创科技股份有限公司 | 一种基于eeprom的设备兼容装置及方法 |
CN114816571A (zh) * | 2022-04-15 | 2022-07-29 | 西安广和通无线通信有限公司 | 外挂闪存的方法、装置、设备及存储介质 |
CN114816571B (zh) * | 2022-04-15 | 2023-06-16 | 西安广和通无线通信有限公司 | 外挂闪存的方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20200201654A1 (en) | 2020-06-25 |
WO2019042323A1 (zh) | 2019-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109426625A (zh) | 一种多驱动兼容的控制装置和实现方法 | |
US10990415B2 (en) | Disk management method and apparatus in ARM device and ARM device | |
US9710284B1 (en) | System for programmably configuring a motherboard | |
US9411990B2 (en) | Working method of a multi-slot card reader based on the standard CCID protocol | |
US20180034224A1 (en) | Electrical device | |
US11294660B2 (en) | Apparatus and method for configuring or updating programmable logic device | |
CN103399809B (zh) | 板卡测试方法及测试装置 | |
CN114003538B (zh) | 一种智能网卡的识别方法及智能网卡 | |
CN102662708B (zh) | 一种Linux操作系统及其显卡驱动装置 | |
EP3736724A1 (en) | Electronic device and method for recognizing accessories | |
US20160079802A1 (en) | Wireless control method, and apparatus and server adapted to the same | |
CN103399840A (zh) | 一种计算机配置文件的带外修改方法及计算机 | |
WO2017202338A1 (zh) | 机顶盒加载驱动的方法及系统 | |
US20160266838A1 (en) | Method and electronic device for initializing memory and updating firmware | |
CN109690514A (zh) | 可自动配置的主机可插拔计算 | |
CN103677943A (zh) | 一种缝纫机控制器软件升级方法 | |
CN101685402A (zh) | 一种计算机bios配置方法 | |
WO2015196479A1 (zh) | 程序数据的更新方法及设备 | |
CN103092648A (zh) | 一种镜像升级方法、系统及用户设备和个人计算机 | |
CN108664275A (zh) | 备份配置参数的方法、系统及存储介质 | |
CN111752623A (zh) | 显示配置方法、装置、电子设备及可读存储介质 | |
CN109408124A (zh) | 存储设备及其制作方法、操作系统双模式引导方法及装置 | |
CN105204896A (zh) | 一种数字存储示波器的BootLoader设计方法 | |
CN111447514B (zh) | 无源光网络sfp ont的eeprom系统以及其数据更新控制方法 | |
CN118377513B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190305 |
|
RJ01 | Rejection of invention patent application after publication |