CN110990072A - 价签屏幕多驱动动态加载方法 - Google Patents
价签屏幕多驱动动态加载方法 Download PDFInfo
- Publication number
- CN110990072A CN110990072A CN201911086176.2A CN201911086176A CN110990072A CN 110990072 A CN110990072 A CN 110990072A CN 201911086176 A CN201911086176 A CN 201911086176A CN 110990072 A CN110990072 A CN 110990072A
- Authority
- CN
- China
- Prior art keywords
- screen
- price tag
- dynamic loading
- drive dynamic
- loading method
- 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
- 238000011068 loading method Methods 0.000 title claims abstract description 39
- 238000000034 method Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 9
- 230000009191 jumping Effects 0.000 claims description 4
- 230000007246 mechanism Effects 0.000 abstract description 2
- 238000001514 detection method Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral 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/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/63—Image based installation; Cloning; Build to order
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Control Of Indicators Other Than Cathode Ray Tubes (AREA)
Abstract
本发明公开了一种价签屏幕多驱动动态加载方法,包括以下步骤:步骤S1:编写重定向工具,并且利用重定向工具烧写具有重定位功能的屏幕驱动;步骤S2:在初始化过程中加载步骤S1烧写的屏幕驱动并且执行。本发明公开的价签屏幕多驱动动态加载方法,提出一种价签屏幕驱动动态加载的机制,屏幕驱动都保存在flash中,由价签根据所驱动的屏幕类型加载对应的屏幕驱动代码到RAM中,这样即使有100种,1000种屏幕驱动,固件也最多只消耗1个屏幕驱动的资源,所使用的资源不会随着屏幕驱动的增多而增长。另外,采用此种方式当屏幕驱动需要更换或升级时,不需要重新编译整个固件的代码,只需单独更新屏幕驱动即可,提高了灵活性和易用性。
Description
技术领域
本发明属于价签屏幕驱动技术领域,具体涉及一种价签屏幕多驱动动态加载方法。
背景技术
公开号为CN109740391A,主题名称为电子价签及其控制方法、电子价签系统及其控制方法的发明专利申请,其技术方案公开了“电子墨水屏可通过显示屏驱动电路进行驱动显示。扫描器30可与扫描识别芯片连接,由扫描识别芯片对扫描器30的扫描结果进行识别,从而得到物品ID。在此基础上,所述电子价签还可以包括时钟芯片、电量检测模块等。时钟芯片用于计时,以使MCU根据时钟芯片设置的时间,来控制电子价签01进入休眠状态,从而使电子价签01处于最省电的模式。电量检测模块用于对电池的电量进行检测。显示屏驱动电路、扫描识别芯片可与SPI(Serial Peripheral Interface,串行外设接口)连接;EEPROM、时钟芯片可与IIC(Inter-Integrated Circuit,集成电路总线)连接;电量检测模块可与AD转换器连接。SPI、IIC、AD转换器、蓝牙模块为MUC内部集成的模块”。
然而,在价签屏幕驱动技术领域,以上述发明专利申请为例,尽管公开了“电子墨水屏可通过显示屏驱动电路进行驱动显示”等技术手段,但完全没有涉及到驱动动态加载的概念。具体地,价签的软硬件资源非常有限,RAM一般都是几十KB,对代码量非常敏感,而随着价签支持的屏幕类型越来越多,固件中包含的屏幕驱动代码占用的代码段空间也自然的越来越大,这就导致其他模块能使用的代码空间越来越小,限制了价签增加新功能、新需求的发展空间。
发明内容
本发明针对现有技术的状况,克服以上缺陷,提供一种价签屏幕多驱动动态加载方法。
本发明采用以下技术方案,所述价签屏幕多驱动动态加载方法包括以下步骤:
步骤S1:编写重定向工具,并且利用重定向工具烧写具有重定位功能的屏幕驱动;
步骤S2:在初始化过程中加载步骤S1烧写的屏幕驱动并且执行。
根据上述技术方案,作为上述技术方案的进一步优选技术方案,步骤S1具体实施为以下步骤:
步骤S1.1:编写1个重定位工具;
步骤S1.2:利用该重定位工具将屏幕驱动生成的可重定位文件根据主程序的相关信息进行重定位并生成对应的bin文件。
根据上述技术方案,作为上述技术方案的进一步优选技术方案,步骤S1还包括步骤S1.3:
步骤S1.3:将该bin文件烧写到flash中。
根据上述技术方案,作为上述技术方案的进一步优选技术方案,步骤S2具体实施为以下步骤:
步骤S2.1:在初始化过程中,从对应的flash中读取步骤S1.3中烧写的bin文件;
步骤S2.2:将bin文件对应的屏幕驱动加载到屏幕驱动加载区域。
根据上述技术方案,作为上述技术方案的进一步优选技术方案,步骤S2还包括步骤S2.3:
步骤S2.3:跳转到加载的屏幕驱动处并且执行。
本发明专利申请还公开了一种价签屏幕多驱动动态加载方法,包括以下步骤:
步骤S1:利用重定向工具烧写具有重定位功能的屏幕驱动;
步骤S2:在初始化过程中加载步骤S1烧写的屏幕驱动并且执行。
根据上述技术方案,作为上述技术方案的进一步优选技术方案,步骤S1具体实施为以下步骤:
步骤S1.1:确定所需的重定位工具;
步骤S1.2:利用该重定位工具将屏幕驱动生成的可重定位文件根据主程序的相关信息进行重定位并生成对应的bin文件。
根据上述技术方案,作为上述技术方案的进一步优选技术方案,步骤S1还包括步骤S1.3:
步骤S1.3:将该bin文件烧写到flash中。
根据上述技术方案,作为上述技术方案的进一步优选技术方案,步骤S2具体实施为以下步骤:
步骤S2.1:在初始化过程中,从对应的flash中读取步骤S1.3中烧写的bin文件;
步骤S2.2:将bin文件对应的屏幕驱动加载到屏幕驱动加载区域。
根据上述技术方案,作为上述技术方案的进一步优选技术方案,步骤S2还包括步骤S2.3:
步骤S2.3:跳转到加载的屏幕驱动处并且执行。
本发明公开的价签屏幕多驱动动态加载方法,其有益效果在于,提出一种价签屏幕驱动动态加载的机制,屏幕驱动都保存在flash中,由价签根据所驱动的屏幕类型加载对应的屏幕驱动代码到RAM中,这样即使有100种,1000种屏幕驱动,固件也最多只消耗1个屏幕驱动的资源,所使用的资源不会随着屏幕驱动的增多而增长。另外,采用此种方式当屏幕驱动需要更换或升级时,不需要重新编译整个固件的代码,只需单独更新屏幕驱动即可,提高了灵活性和易用性。
具体实施方式
本发明公开了一种价签屏幕多驱动动态加载方法,下面结合优选实施例,对本发明的具体实施方式作进一步描述。
优选实施例。
优选地,所述价签屏幕多驱动动态加载方法包括以下步骤:
步骤S1:编写重定向工具,并且利用重定向工具烧写具有重定位功能的屏幕驱动;
步骤S2:(价签代码)在初始化过程中加载步骤S1烧写的屏幕驱动并且执行。
进一步地,步骤S1具体实施为以下步骤:
步骤S1.1:编写1个重定位工具;
步骤S1.2:利用该重定位工具将屏幕驱动生成的可重定位文件根据主程序的相关信息进行重定位并生成对应的bin文件。
进一步地,步骤S1还包括步骤S1.3:
步骤S1.3:将该bin文件烧写到flash中。
进一步地,步骤S2具体实施为以下步骤:
步骤S2.1:(价签代码)在初始化过程中,从对应的flash中读取步骤S1.3中烧写的bin文件;
步骤S2.2:将bin文件对应的屏幕驱动加载到屏幕驱动加载区域。
进一步地,步骤S2还包括步骤S2.3:
步骤S2.3:(价签代码)跳转到加载的屏幕驱动处并且执行。
进一步地,所述价签屏幕多驱动动态加载方法还包括步骤S3:
步骤S3:当屏幕驱动需要更换或升级时,不需要重新编译整个固件的代码,只需单独更新屏幕驱动即可。
值得一提的是,在本实施例,将“重定向工具”的编写过程作为步骤S1的一部分。换而言之,在本实施例中,需要先构建重定向工具,再在重定向工具的基础上进一步执行后续步骤。
第一实施例。
优选地,所述价签屏幕多驱动动态加载方法包括以下步骤:
步骤S1:利用重定向工具烧写具有重定位功能的屏幕驱动;
步骤S2:(价签代码)在初始化过程中加载步骤S1烧写的屏幕驱动并且执行。
进一步地,步骤S1具体实施为以下步骤:
步骤S1.1:确定所需的重定向工具;
步骤S1.2:利用该重定位工具将屏幕驱动生成的可重定位文件根据主程序的相关信息进行重定位并生成对应的bin文件。
进一步地,步骤S1还包括步骤S1.3:
步骤S1.3:将该bin文件烧写到flash中。
进一步地,步骤S2具体实施为以下步骤:
步骤S2.1:(价签代码)在初始化过程中,从对应的flash中读取步骤S1.3中烧写的bin文件;
步骤S2.2:将bin文件对应的屏幕驱动加载到屏幕驱动加载区域。
进一步地,步骤S2还包括步骤S2.3:
步骤S2.3:(价签代码)跳转到加载的屏幕驱动处并且执行。
进一步地,所述价签屏幕多驱动动态加载方法还包括步骤S3:
步骤S3:当屏幕驱动需要更换或升级时,不需要重新编译整个固件的代码,只需单独更新屏幕驱动即可。
值得一提的是,在本实施例,“重定向工具”的编写过程已经作为现有技术提前完成,而不作为步骤S1的一部分。换而言之,在本实施例中,可直接利用现有的重定向工具,再在重定向工具的基础上进一步执行后续步骤。
值得一提的是,本发明专利申请涉及的重定向工具的具体编码过程等应被视为现有技术,这些技术特征的具体结构、工作原理以及可能涉及到的控制方式、空间布置方式采用本领域的常规选择即可,不应被视为本发明专利的发明点所在,本发明专利不做进一步具体展开详述。
对于本领域的技术人员而言,依然可以对前述各实施例所记载的技术方案进行修改,或对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围。
Claims (10)
1.一种价签屏幕多驱动动态加载方法,其特征在于,包括以下步骤:
步骤S1:编写重定向工具,并且利用重定向工具烧写具有重定位功能的屏幕驱动;
步骤S2:在初始化过程中加载步骤S1烧写的屏幕驱动并且执行。
2.根据权利要求1所述的价签屏幕多驱动动态加载方法,其特征在于,步骤S1具体实施为以下步骤:
步骤S1.1:编写1个重定位工具;
步骤S1.2:利用该重定位工具将屏幕驱动生成的可重定位文件根据主程序的相关信息进行重定位并生成对应的bin文件。
3.根据权利要求2所述的价签屏幕多驱动动态加载方法,其特征在于,步骤S1还包括步骤S1.3:
步骤S1.3:将该bin文件烧写到flash中。
4.根据权利要求3所述的价签屏幕多驱动动态加载方法,其特征在于,步骤S2具体实施为以下步骤:
步骤S2.1:在初始化过程中,从对应的flash中读取步骤S1.3中烧写的bin文件;
步骤S2.2:将bin文件对应的屏幕驱动加载到屏幕驱动加载区域。
5.根据权利要求4所述的价签屏幕多驱动动态加载方法,其特征在于,步骤S2还包括步骤S2.3:
步骤S2.3:跳转到加载的屏幕驱动处并且执行。
6.一种价签屏幕多驱动动态加载方法,其特征在于,包括以下步骤:
步骤S1:利用重定向工具烧写具有重定位功能的屏幕驱动;
步骤S2:在初始化过程中加载步骤S1烧写的屏幕驱动并且执行。
7.根据权利要求6所述的价签屏幕多驱动动态加载方法,其特征在于,步骤S1具体实施为以下步骤:
步骤S1.1:确定所需的重定位工具;
步骤S1.2:利用该重定位工具将屏幕驱动生成的可重定位文件根据主程序的相关信息进行重定位并生成对应的bin文件。
8.根据权利要求7所述的价签屏幕多驱动动态加载方法,其特征在于,步骤S1还包括步骤S1.3:
步骤S1.3:将该bin文件烧写到flash中。
9.根据权利要求8所述的价签屏幕多驱动动态加载方法,其特征在于,步骤S2具体实施为以下步骤:
步骤S2.1:在初始化过程中,从对应的flash中读取步骤S1.3中烧写的bin文件;
步骤S2.2:将bin文件对应的屏幕驱动加载到屏幕驱动加载区域。
10.根据权利要求9所述的价签屏幕多驱动动态加载方法,其特征在于,步骤S2还包括步骤S2.3:
步骤S2.3:跳转到加载的屏幕驱动处并且执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911086176.2A CN110990072A (zh) | 2019-11-08 | 2019-11-08 | 价签屏幕多驱动动态加载方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911086176.2A CN110990072A (zh) | 2019-11-08 | 2019-11-08 | 价签屏幕多驱动动态加载方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110990072A true CN110990072A (zh) | 2020-04-10 |
Family
ID=70083581
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911086176.2A Pending CN110990072A (zh) | 2019-11-08 | 2019-11-08 | 价签屏幕多驱动动态加载方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110990072A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101484878A (zh) * | 2006-07-18 | 2009-07-15 | 英特尔公司 | 为基于efi的固件中的预efi初始化模块使用全局变量的方法 |
US20100257311A1 (en) * | 2009-04-06 | 2010-10-07 | Samsung Electronics Co., Ltd. | Method relocating code objects and disc drive using same |
CN102831334A (zh) * | 2011-06-15 | 2012-12-19 | 奇智软件(北京)有限公司 | 一种目标地址定位方法和系统 |
WO2016091071A1 (zh) * | 2014-12-11 | 2016-06-16 | 北京奇虎科技有限公司 | 加载Linux内核驱动的方法及装置 |
CN107729083A (zh) * | 2014-04-30 | 2018-02-23 | 华为技术有限公司 | 一种加载驱动程序的方法及嵌入式设备 |
-
2019
- 2019-11-08 CN CN201911086176.2A patent/CN110990072A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101484878A (zh) * | 2006-07-18 | 2009-07-15 | 英特尔公司 | 为基于efi的固件中的预efi初始化模块使用全局变量的方法 |
US20100257311A1 (en) * | 2009-04-06 | 2010-10-07 | Samsung Electronics Co., Ltd. | Method relocating code objects and disc drive using same |
CN102831334A (zh) * | 2011-06-15 | 2012-12-19 | 奇智软件(北京)有限公司 | 一种目标地址定位方法和系统 |
CN107729083A (zh) * | 2014-04-30 | 2018-02-23 | 华为技术有限公司 | 一种加载驱动程序的方法及嵌入式设备 |
WO2016091071A1 (zh) * | 2014-12-11 | 2016-06-16 | 北京奇虎科技有限公司 | 加载Linux内核驱动的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3100162B1 (en) | Task scheduling method and apparatus | |
CN104424895B (zh) | 显示器背光调整方法及其背光调整装置 | |
CN1783004A (zh) | 使用可扩展固件接口的持久性存储器操作 | |
WO2019042323A1 (zh) | 多驱动兼容的控制装置和实现方法 | |
US20100049961A1 (en) | Update method for basic input/output system and update system thereof | |
US11886222B1 (en) | Dynamic link library loading method and apparatus | |
CN102314354A (zh) | 一种嵌入式系统启动方法及嵌入式装置 | |
CN109979411B (zh) | 一种显示面板、显示面板的烧录方法及上电方法 | |
CN116382462B (zh) | 振动方法和振动装置 | |
CN103593281A (zh) | 测试系统及测试方法 | |
CN1432992A (zh) | 显示设备的驱动器 | |
CN110135130A (zh) | 一种嵌入式设备软件防改装方法及系统 | |
CN1490702A (zh) | Pc卡控制装置、使用其的计算机系统及pc卡识别方法 | |
CN110990072A (zh) | 价签屏幕多驱动动态加载方法 | |
CN114443083A (zh) | 系统升级方法、装置、电子设备及存储介质 | |
CN110377303B (zh) | 基于备用存储区方式升级程序的方法及其设备 | |
CN1442862A (zh) | 半导体存储装置及使用该器件的电子信息装置 | |
US20070143540A1 (en) | RAID setting system having scanning module and related method | |
CN111857785B (zh) | 一种mcu的启动方法、装置及终端设备 | |
CN109446851B (zh) | 显示面板中数据的保护方法及其显示装置 | |
US8280927B2 (en) | Electronic equipment and memory managing program | |
CN1659513A (zh) | 把数据写入非易失性存储器的方法和设备 | |
CN109240749B (zh) | 电子设备的启动装置及启动方法 | |
US7293167B2 (en) | Method and apparatus for driving a non-native SATA hard disk | |
TWI780391B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200410 |