本發(fā)明實(shí)施例涉及嵌入式技術(shù)領(lǐng)域,尤其涉及一種嵌入式設(shè)備的固件管理方法及裝置。
背景技術(shù):
目前,假鈔往往會(huì)與真鈔相混合進(jìn)入現(xiàn)金流通中。因此,為了最大程度的維護(hù)消費(fèi)者利益和財(cái)產(chǎn),驗(yàn)鈔器通常被用于鑒別假鈔。
目前的驗(yàn)鈔器通過(guò)檢測(cè)紙鈔的固有特性來(lái)分辨真假,涉及光、磁和電等多個(gè)領(lǐng)域。示例性的,驗(yàn)鈔器包括熒光檢測(cè)模組、磁性檢測(cè)模組、紅外穿透檢測(cè)模組和激光模組等,通過(guò)上述模組實(shí)現(xiàn)鑒別假鈔的功能。為了實(shí)現(xiàn)上述功能,驗(yàn)鈔器上需要安裝有各個(gè)模組的固件?,F(xiàn)有技術(shù)中,驗(yàn)鈔器版本管理只停留在一對(duì)一基礎(chǔ)上,即一組驗(yàn)鈔器模組的硬件型號(hào)對(duì)應(yīng)一套固件版本,驗(yàn)鈔器有多少組硬件型號(hào)必須提供對(duì)應(yīng)的多少套固件版本。
然而,驗(yàn)鈔器模組的型號(hào)通常會(huì)頻繁的變化,導(dǎo)致驗(yàn)鈔器硬件型號(hào)分組也越來(lái)越多,從而,使得驗(yàn)鈔器版本管理越來(lái)越復(fù)雜。發(fā)明人在實(shí)現(xiàn)本發(fā)明的過(guò)程中發(fā)現(xiàn)現(xiàn)有技術(shù)存在如下缺陷:
1、每次交付研發(fā)時(shí),需要提交的受控物(包括源碼、可執(zhí)行文件、升級(jí)包和燒錄包等)增多,由于受控物增多,增加了出錯(cuò)的概率和工作量(例如算法開(kāi)發(fā)人員還需要通過(guò)DSP系統(tǒng)移植代碼)。
2、由于需要為每一組硬件型號(hào)對(duì)應(yīng)的驗(yàn)鈔器提供一套固件版本,硬件型號(hào)分組增多必然導(dǎo)致需要燒錄的固件版本增多,增加了發(fā)生燒錄錯(cuò)誤的幾率。另外,技術(shù)人員根據(jù)驗(yàn)鈔器模組的硬件方案選擇對(duì)應(yīng)的燒錄包進(jìn)行固件燒錄或固件升級(jí),一旦選擇錯(cuò)誤,由于缺少檢測(cè)手段,錯(cuò)誤不易被發(fā)現(xiàn),可能會(huì)影響驗(yàn)鈔準(zhǔn)確率。
3、因升級(jí)包中包含不同硬件方案的固件版本,升級(jí)包占用存儲(chǔ)空間較大。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種嵌入式設(shè)備的固件管理方法及裝置,以保證固件管理安全和準(zhǔn)確,提高固件管理效率。
第一方面,本發(fā)明實(shí)施例提供了一種嵌入式設(shè)備的固件管理方法,包括:
獲取嵌入式設(shè)備的各個(gè)模組的硬件標(biāo)識(shí)和模組信息;
根據(jù)所述硬件標(biāo)識(shí)和所述模組信息判斷所述硬件標(biāo)識(shí)是否合法;
在所述硬件標(biāo)識(shí)合法時(shí),從設(shè)定固件文件集合中選取所述硬件標(biāo)識(shí)對(duì)應(yīng)的固件文件;
對(duì)所述固件文件進(jìn)行打包處理,生成與所述嵌入式設(shè)備的模組匹配的固件文件包,以供所述嵌入式設(shè)備下載。
第二方面,本發(fā)明實(shí)施例還提供了一種嵌入式設(shè)備的固件管理裝置,該裝置包括:
標(biāo)識(shí)獲取模塊,用于獲取嵌入式設(shè)備的各個(gè)模組的硬件標(biāo)識(shí)和模組信息;
標(biāo)識(shí)判斷模塊,用于根據(jù)所述硬件標(biāo)識(shí)和所述模組信息判斷所述硬件標(biāo)識(shí)是否合法;
固件文件確定模塊,用于在所述硬件標(biāo)識(shí)合法時(shí),從設(shè)定固件文件集合中選取所述硬件標(biāo)識(shí)對(duì)應(yīng)的固件文件;
文件包生成模塊,用于對(duì)所述固件文件進(jìn)行打包處理,生成與所述嵌入式設(shè)備的模組匹配的固件文件包,以供所述嵌入式設(shè)備下載。
本發(fā)明實(shí)施例通過(guò)獲取嵌入式設(shè)備的各個(gè)模組的硬件標(biāo)識(shí)和模組信息;根據(jù)所述硬件標(biāo)識(shí)和所述模組信息判斷所述硬件標(biāo)識(shí)是否合法;在所述硬件標(biāo)識(shí)合法時(shí),從設(shè)定固件文件集合中選取所述硬件標(biāo)識(shí)對(duì)應(yīng)的固件文件;對(duì)所述固件文件進(jìn)行打包處理,生成與所述嵌入式設(shè)備的模組匹配的固件文件包,以供所述嵌入式設(shè)備下載,實(shí)現(xiàn)動(dòng)態(tài)選擇與硬件型號(hào)匹配的固件文件進(jìn)行打包,無(wú)需預(yù)先準(zhǔn)備各個(gè)硬件型號(hào)匹配的固件文件包。本發(fā)明實(shí)施例解決目前驗(yàn)鈔器固件版本管理采用一對(duì)一方式,導(dǎo)致固件版本管理十分復(fù)雜的問(wèn)題,實(shí)現(xiàn)安全、準(zhǔn)確地管理驗(yàn)鈔器的固件,從而減輕了固件提供、固件維護(hù)和固件更新等方面的工作量,達(dá)到了降低開(kāi)發(fā)成本的效果。
附圖說(shuō)明
圖1是本發(fā)明實(shí)施例一中的一種嵌入式設(shè)備的固件管理方法的流程圖;
圖2是本發(fā)明實(shí)施例二中的另一種嵌入式設(shè)備的固件管理方法的流程圖;
圖3是本發(fā)明實(shí)施例三中的又一種嵌入式設(shè)備的固件管理方法的流程圖;
圖4a是本發(fā)明實(shí)施例四中的又一種嵌入式設(shè)備的固件管理方法的流程圖;
圖4b是本發(fā)明實(shí)施例四中的一種固件文件包的生成方法的流程圖;
圖5是本發(fā)明實(shí)施例五中的一種嵌入式設(shè)備的固件管理裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說(shuō)明。可以理解的是,此處所描述的具體實(shí)施例僅僅用于解釋本發(fā)明,而非對(duì)本發(fā)明的限定。另外還需要說(shuō)明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部結(jié)構(gòu)。
在更加詳細(xì)地討論示例性實(shí)施例之前應(yīng)當(dāng)提到的是,一些示例性實(shí)施例被描述成作為流程圖描繪的處理或方法。雖然流程圖將各項(xiàng)操作(或步驟)描述成順序的處理,但是其中的許多操作可以被并行地、并發(fā)地或者同時(shí)實(shí)施。此外,各項(xiàng)操作的順序可以被重新安排。當(dāng)其操作完成時(shí)所述處理可以被終止,但是還可以具有未包括在附圖中的附加步驟。所述處理可以對(duì)應(yīng)于方法、函數(shù)、規(guī)程、子例程、子程序等等。
實(shí)施例一
圖1為本發(fā)明實(shí)施例一提供的一種嵌入式設(shè)備的固件管理方法的流程圖,本實(shí)施例可適用于硬件型號(hào)繁多的嵌入式設(shè)備固件管理的情況,該方法可以由嵌入式設(shè)備的固件管理裝置來(lái)執(zhí)行,該裝置可通過(guò)硬件和/或軟件的方式實(shí)現(xiàn),所述裝置可作為計(jì)算機(jī)的一部分設(shè)置在計(jì)算機(jī)內(nèi)部。本實(shí)施例的方法具體包括如下步驟:
步驟110、獲取嵌入式設(shè)備的各個(gè)模組的硬件標(biāo)識(shí)和模組信息。
其中,模組包括磁性傳感器、紅外傳感器等各種傳感器。
其中,所述硬件標(biāo)識(shí)包括模組的硬件型號(hào)、硬件編號(hào)和廠家信息,例如春田磁性傳感器CT001等??梢酝ㄟ^(guò)硬件標(biāo)識(shí)代表硬件本身。在嵌入式設(shè)備進(jìn)行固件燒錄處理時(shí),根據(jù)該嵌入式設(shè)備所包括的模組的硬件型號(hào),為每個(gè)模組設(shè)置硬件標(biāo)識(shí)。示例性地,在固件燒錄時(shí),設(shè)置各個(gè)模組的硬件標(biāo)識(shí)的方式可以是掃描嵌入式設(shè)備包括的各個(gè)模組的二維碼信息,根據(jù)所述二維碼信息確定所述嵌入式設(shè)備包括的各個(gè)模組的硬件標(biāo)識(shí)。還可以是獲取用戶人工輸入的嵌入式設(shè)備包括的各個(gè)模組的硬件標(biāo)識(shí)。
其中,所述模組信息包括出廠時(shí)間和固件的程序版本,例如2015年3月春田磁性傳感器CT001版本V1,版本V2等。示例性地,在固件燒錄時(shí),人工輸入準(zhǔn)備燒錄進(jìn)嵌入式設(shè)備中的模組信息。
由于燒錄過(guò)程中已經(jīng)設(shè)置好當(dāng)前嵌入式設(shè)備的硬件標(biāo)識(shí)和模組信息,在固件升級(jí)時(shí),只需到預(yù)設(shè)存儲(chǔ)區(qū)域讀取硬件標(biāo)識(shí)和模組信息即可,無(wú)需再重復(fù)設(shè)置,提高驗(yàn)鈔器的固件版本管理效率。
步驟120、根據(jù)所述硬件標(biāo)識(shí)和所述模組信息判斷所述硬件標(biāo)識(shí)是否合法。
其中,判斷硬件標(biāo)識(shí)的合法性的條件可以是:在固件燒錄時(shí),硬件標(biāo)識(shí)與模組信息的對(duì)應(yīng)關(guān)系是否符合預(yù)設(shè)模組信息關(guān)系表;在固件升級(jí)時(shí),判斷模組是否適用于新的固件管理方法。
采用上述判斷硬件標(biāo)識(shí)是否合法的方式校驗(yàn)硬件標(biāo)識(shí)與模組信息的匹配度。若硬件標(biāo)識(shí)合法,則確定硬件標(biāo)識(shí)與模組信息的匹配度高。若硬件標(biāo)識(shí)不合法,則確定硬件標(biāo)識(shí)與模組信息的匹配度低。
步驟130、在所述硬件標(biāo)識(shí)合法時(shí),從設(shè)定固件文件集合中選取所述硬件標(biāo)識(shí)對(duì)應(yīng)的固件文件。
其中,設(shè)定固件文件集合包括預(yù)存燒錄包和預(yù)存固件升級(jí)包。在執(zhí)行燒錄操作時(shí),若確定硬件標(biāo)識(shí)合法,即硬件標(biāo)識(shí)與嵌入式設(shè)備的模組信息匹配,則根據(jù)硬件標(biāo)識(shí)查詢預(yù)存燒錄包,從該預(yù)存燒錄包中動(dòng)態(tài)選擇所述硬件標(biāo)識(shí)匹配的固件文件。在執(zhí)行固件升級(jí)操作時(shí),讀取硬件標(biāo)識(shí),根據(jù)硬件標(biāo)識(shí)查詢預(yù)存固件升級(jí)包,從該預(yù)存固件升級(jí)包中動(dòng)態(tài)選擇所述硬件標(biāo)識(shí)匹配的固件文件。
步驟140、對(duì)所述固件文件進(jìn)行打包處理,生成與所述嵌入式設(shè)備的模組匹配的固件文件包,以供所述嵌入式設(shè)備下載。
在選取與所述硬件標(biāo)識(shí)匹配的固件文件后,對(duì)所選取的固件文件進(jìn)行打包處理,得到當(dāng)前嵌入式設(shè)備的模組對(duì)應(yīng)的固件文件包。將該固件文件包下載進(jìn)入當(dāng)前嵌入式設(shè)備,實(shí)現(xiàn)根據(jù)嵌入式設(shè)備模組的不同硬件型號(hào)動(dòng)態(tài)生成固件文件包,無(wú)需預(yù)先為嵌入式設(shè)備的不同硬件型號(hào)的模組準(zhǔn)備一一對(duì)應(yīng)的固件文件包。
本實(shí)施例的技術(shù)方案,通過(guò)獲取嵌入式設(shè)備的各個(gè)模組的硬件標(biāo)識(shí)和模組信息;根據(jù)所述硬件標(biāo)識(shí)和所述模組信息判斷所述硬件標(biāo)識(shí)是否合法;在所述硬件標(biāo)識(shí)合法時(shí),從設(shè)定固件文件集合中選取所述硬件標(biāo)識(shí)對(duì)應(yīng)的固件文件;對(duì)所述固件文件進(jìn)行打包處理,生成與所述嵌入式設(shè)備的模組匹配的固件文件包,以供所述嵌入式設(shè)備下載,實(shí)現(xiàn)動(dòng)態(tài)選擇與硬件型號(hào)匹配的固件文件進(jìn)行打包,無(wú)需預(yù)先準(zhǔn)備各個(gè)硬件型號(hào)匹配的固件文件包。本實(shí)施例的技術(shù)方案解決目前驗(yàn)鈔器固件版本管理采用一對(duì)一方式,導(dǎo)致固件版本管理十分復(fù)雜的問(wèn)題,實(shí)現(xiàn)安全、準(zhǔn)確地管理驗(yàn)鈔器的固件,從而減輕了固件提供、固件維護(hù)和固件更新等方面的工作量,達(dá)到了降低開(kāi)發(fā)成本的效果。
實(shí)施例二
圖2是本發(fā)明實(shí)施例二提供的另一種嵌入式設(shè)備的固件管理方法的流程圖。本實(shí)施例的技術(shù)方案在上述實(shí)施例的基礎(chǔ)上,優(yōu)選地對(duì)在固件燒錄時(shí),根據(jù)所述硬件標(biāo)識(shí)和所述模組信息判斷所述硬件標(biāo)識(shí)是否合法進(jìn)行優(yōu)化。
基于上述優(yōu)化,本實(shí)施例的方法具體包括如下步驟:
步驟210、在固件燒錄時(shí),獲取嵌入式設(shè)備的各個(gè)模組的硬件標(biāo)識(shí)和模組信息。
其中,本實(shí)施例中的嵌入式設(shè)備可以是驗(yàn)鈔器。示例性地,可以通過(guò)人工輸入的方式,對(duì)當(dāng)前驗(yàn)鈔器的各個(gè)模組的硬件標(biāo)識(shí)和模組信息進(jìn)行燒錄配置。
步驟220、根據(jù)所述模組信息查詢預(yù)先配置的硬件標(biāo)識(shí)與模組信息關(guān)系表,確定與所述模組信息對(duì)應(yīng)的參考硬件標(biāo)識(shí)。
由于在生產(chǎn)驗(yàn)鈔器時(shí),其包括哪些模組,以及各個(gè)模組的硬件型號(hào)都是設(shè)計(jì)好的,且硬件標(biāo)識(shí)與模組信息的對(duì)應(yīng)關(guān)系以預(yù)先配置的硬件標(biāo)識(shí)與模組信息關(guān)系表形式體現(xiàn)。
因此,在獲取當(dāng)前驗(yàn)鈔器的模組信息之后,根據(jù)模組信息查詢預(yù)先配置的硬件標(biāo)識(shí)與模組信息關(guān)系表,可以確定與模組信息對(duì)應(yīng)的參考硬件標(biāo)識(shí)。
步驟230、判斷硬件標(biāo)識(shí)與參考硬件標(biāo)識(shí)是否匹配,若是,則執(zhí)行步驟240,若否,則執(zhí)行步驟250。
將所獲取的當(dāng)前驗(yàn)鈔器模組的硬件標(biāo)識(shí)與所述參考硬件標(biāo)識(shí)進(jìn)行比對(duì),若當(dāng)前驗(yàn)鈔器模組的硬件標(biāo)識(shí)與所述參考硬件標(biāo)識(shí)匹配,則執(zhí)行步驟240。若當(dāng)前驗(yàn)鈔器模組的硬件標(biāo)識(shí)與所述參考硬件標(biāo)識(shí)不匹配,則執(zhí)行步驟250。
步驟240、確定所述硬件標(biāo)識(shí)為合法的硬件標(biāo)識(shí)。
其中,驗(yàn)鈔器模組的硬件標(biāo)識(shí)合法代表該驗(yàn)鈔器的硬件標(biāo)識(shí)與模組信息匹配度高。在所述硬件標(biāo)識(shí)與所述參考硬件標(biāo)識(shí)匹配時(shí),確定所述硬件標(biāo)識(shí)為合法的硬件標(biāo)識(shí)。在所述硬件標(biāo)識(shí)合法時(shí),轉(zhuǎn)至執(zhí)行步驟260。
步驟250、確定所述硬件標(biāo)識(shí)為非法的硬件標(biāo)識(shí)。
其中,驗(yàn)鈔器模組的硬件標(biāo)識(shí)非法代表該驗(yàn)鈔器的硬件標(biāo)識(shí)與模組信息匹配度低,可能人工錄入硬件標(biāo)識(shí)時(shí)發(fā)生錯(cuò)誤。通過(guò)該檢測(cè)手段,避免由于人工輸入錯(cuò)誤導(dǎo)致燒錄包選擇錯(cuò)誤,進(jìn)而,影響驗(yàn)鈔率。在所述硬件標(biāo)識(shí)與所述參考硬件標(biāo)識(shí)不匹配時(shí),確定所述硬件標(biāo)識(shí)為非法的硬件標(biāo)識(shí)??蛇x地,顯示提示信息,以提示用戶當(dāng)前硬件標(biāo)識(shí)為非法硬件標(biāo)識(shí)。
步驟260、從設(shè)定固件文件集合中選取所述硬件標(biāo)識(shí)對(duì)應(yīng)的固件文件。
步驟270、對(duì)所述固件文件進(jìn)行打包處理,生成與所述嵌入式設(shè)備的模組匹配的固件文件包,以供所述嵌入式設(shè)備下載。
對(duì)所選取的固件文件進(jìn)行動(dòng)態(tài)打包處理,生成固件文件包。該固件文件包內(nèi)的固件文件與當(dāng)前驗(yàn)鈔器相匹配。在燒錄過(guò)程中,將該固件文件包下載到驗(yàn)鈔器,進(jìn)行驗(yàn)鈔器固件燒錄。
本實(shí)施例的技術(shù)方案,通過(guò)燒錄操作時(shí)獲取驗(yàn)鈔器的各個(gè)模組的硬件標(biāo)識(shí)和模組信息,根據(jù)所述模組信息查詢預(yù)先配置的硬件標(biāo)識(shí)與模組信息關(guān)系表,確定與所述模組信息對(duì)應(yīng)的參考硬件標(biāo)識(shí);在所述硬件標(biāo)識(shí)與所述參考硬件標(biāo)識(shí)匹配時(shí),確定所述硬件標(biāo)識(shí)為合法的硬件標(biāo)識(shí);在不匹配時(shí),確定所述硬件標(biāo)識(shí)為非法的硬件標(biāo)識(shí)。從而,根據(jù)合法的硬件標(biāo)識(shí)從設(shè)定固件文件集合中選取所述硬件標(biāo)識(shí)對(duì)應(yīng)的固件文件;打包該固件文件生成固件文件包,以供驗(yàn)鈔器下載。本實(shí)施例的技術(shù)方案解決了固件燒錄前需要根據(jù)驗(yàn)鈔器模組的硬件類型準(zhǔn)備與其一一對(duì)應(yīng)的燒錄程序的問(wèn)題,實(shí)現(xiàn)在燒錄過(guò)程中動(dòng)態(tài)生成與驗(yàn)鈔器模組的硬件類型匹配的固件文件包,減輕固件提供、固件維護(hù)和固件更新等方面的工作量,達(dá)到了降低開(kāi)發(fā)成本的效果。
實(shí)施例三
圖3是本發(fā)明實(shí)施例三提供的又一種嵌入式設(shè)備的固件管理方法的流程圖。本實(shí)施例的技術(shù)方案在上述實(shí)施例的基礎(chǔ)上,優(yōu)選地對(duì)在固件升級(jí)時(shí),根據(jù)所述硬件標(biāo)識(shí)和所述模組信息判斷所述硬件標(biāo)識(shí)是否合法進(jìn)行優(yōu)化。
基于上述優(yōu)化,本實(shí)施例的方法具體包括如下步驟:
步驟310、在固件升級(jí)時(shí),獲取嵌入式設(shè)備的各個(gè)模組的硬件標(biāo)識(shí)和模組信息。
其中,本實(shí)施例中的嵌入式設(shè)備可以是驗(yàn)鈔器。所述硬件標(biāo)識(shí)包括模組的硬件型號(hào)、硬件編號(hào)和廠家信息,以及,所述模組信息包括出廠時(shí)間和固件版本。示例性地,從設(shè)定存儲(chǔ)區(qū)域讀取當(dāng)前驗(yàn)鈔器的各個(gè)模組的硬件標(biāo)識(shí)和模組信息。
步驟320、判斷出廠時(shí)間是否早于固件管理方法的執(zhí)行起始時(shí)間,若是,則執(zhí)行步驟330,若否,則執(zhí)行步驟340。
將出廠時(shí)間與預(yù)存的固件管理方法的執(zhí)行起始時(shí)間進(jìn)行比較。若所述出廠時(shí)間早于所述固件管理方法的執(zhí)行起始時(shí)間,則執(zhí)行步驟330。若所述出廠時(shí)間晚于所述固件管理方法的執(zhí)行起始時(shí)間,則執(zhí)行步驟340。
步驟330、判斷是否存在硬件標(biāo)識(shí),若是,則執(zhí)行步驟340,若否,則執(zhí)行步驟350。
由于在執(zhí)行本實(shí)施例中的固件管理方法之前,在固件燒錄時(shí),不要求設(shè)置硬件標(biāo)識(shí),所以,未在設(shè)定存儲(chǔ)區(qū)域內(nèi)保存硬件標(biāo)識(shí)。但是,如果出現(xiàn)驗(yàn)鈔器返廠維修的情況,若返廠時(shí)間晚于本實(shí)施例中固件管理方法的執(zhí)行起始時(shí)間,則可能出現(xiàn)按照本實(shí)施例中固件管理方法,在該返廠驗(yàn)鈔器的固件燒錄時(shí),設(shè)置硬件標(biāo)識(shí),并存儲(chǔ)于設(shè)定存儲(chǔ)區(qū)域。
在所述出廠時(shí)間早于所述固件管理方法的執(zhí)行起始時(shí)間時(shí),查詢?cè)O(shè)定存儲(chǔ)區(qū)域,判斷所述設(shè)定存儲(chǔ)區(qū)域是否存儲(chǔ)有硬件標(biāo)識(shí)。若存在,則執(zhí)行步驟340,若不存在則執(zhí)行步驟350。
步驟340、確定所述嵌入式設(shè)備適用所述固件管理方法。
在所述出廠時(shí)間早于所述固件管理方法的執(zhí)行起始時(shí)間時(shí),若存在硬件標(biāo)識(shí),則確定驗(yàn)鈔器適用所述固件管理方法。以及,在所述出廠時(shí)間晚于所述固件管理方法的執(zhí)行起始時(shí)間時(shí),確定驗(yàn)鈔器適用所述固件管理方法。若當(dāng)前驗(yàn)鈔器使用所述固件管理方法,則執(zhí)行步驟360。
步驟350、確定所述嵌入式設(shè)備不適用所述固件管理方法。
步驟360、確定所述硬件標(biāo)識(shí)為合法的硬件標(biāo)識(shí)。
在適用所述固件管理方法時(shí),確定所述硬件標(biāo)識(shí)為合法的硬件標(biāo)識(shí)。
步驟370、從設(shè)定固件文件集合中選取所述硬件標(biāo)識(shí)對(duì)應(yīng)的固件文件。
在硬件標(biāo)識(shí)為合法的硬件標(biāo)識(shí)時(shí),從預(yù)存固件升級(jí)包中選取與所述硬件標(biāo)識(shí)匹配的固件文件。
步驟380、對(duì)所述固件文件進(jìn)行打包處理,生成與所述嵌入式設(shè)備的模組匹配的固件文件包,以供所述嵌入式設(shè)備下載。
對(duì)所選取的固件文件進(jìn)行動(dòng)態(tài)打包處理,生成固件文件包。該固件文件包內(nèi)的固件文件與當(dāng)前驗(yàn)鈔器相匹配。在升級(jí)過(guò)程中,將該固件文件包下載到驗(yàn)鈔器,進(jìn)行驗(yàn)鈔器升級(jí)。
本實(shí)施例的技術(shù)方案,通過(guò)升級(jí)操作時(shí)獲取驗(yàn)鈔器的各個(gè)模組的硬件標(biāo)識(shí)和模組信息,根據(jù)所述硬件標(biāo)識(shí)和所述模組信息判斷所述嵌入式設(shè)備是否適用所述固件管理方法;在適用所述固件管理方法時(shí),確定所述硬件標(biāo)識(shí)為合法的硬件標(biāo)識(shí)。從而,根據(jù)合法的硬件標(biāo)識(shí)從設(shè)定固件文件集合中選取所述硬件標(biāo)識(shí)對(duì)應(yīng)的固件文件;打包該固件文件生成固件文件包,以供驗(yàn)鈔器下載。本實(shí)施例的技術(shù)方案解決了固件升級(jí)前需要根據(jù)驗(yàn)鈔器模組的硬件類型準(zhǔn)備與其一一對(duì)應(yīng)的升級(jí)包的問(wèn)題,實(shí)現(xiàn)在固件升級(jí)過(guò)程中動(dòng)態(tài)生成與驗(yàn)鈔器模組的硬件類型匹配的升級(jí)包,減輕固件提供、固件維護(hù)和固件更新等方面的工作量,達(dá)到了降低開(kāi)發(fā)成本的效果。
實(shí)施例四
圖4a是本發(fā)明實(shí)施例四提供的又一種嵌入式設(shè)備的固件管理方法的流程圖。如圖4a所示,本實(shí)施例的方法具體包括如下步驟:
步驟410、判斷當(dāng)前操作類型是否燒錄操作,若是,則執(zhí)行步驟420,若否,則執(zhí)行步驟460。
通過(guò)用戶輸入操作確定當(dāng)前的操作類型是燒錄操作還是升級(jí)操作。在當(dāng)前操作是燒錄操作時(shí),執(zhí)行步驟420。在當(dāng)前操作是升級(jí)操作時(shí),執(zhí)行步驟460。
步驟420、配置燒錄包。
在執(zhí)行燒錄操作時(shí),展示操作界面,在所述操作界面中提供燒錄包選項(xiàng),以供用戶配置燒錄包。
步驟430、硬件標(biāo)識(shí)(硬件ID)設(shè)置。
在所述操作界面中還包括硬件標(biāo)識(shí)設(shè)置選項(xiàng),以供用戶設(shè)置硬件標(biāo)識(shí),或通過(guò)掃描方式設(shè)置硬件標(biāo)識(shí)。
步驟440、模組信息設(shè)置。
在所述操作界面中還包括模組信息設(shè)置選項(xiàng),以供用戶設(shè)置驗(yàn)鈔器模組的設(shè)置信息。
步驟450、校驗(yàn)硬件標(biāo)識(shí)(硬件ID)與模組信息的匹配度。
判斷硬件標(biāo)識(shí)與模組信息是否匹配,判斷方法與上述實(shí)施例類似,此處不再贅述。在硬件標(biāo)識(shí)與模組信息匹配度高時(shí),確定該硬件標(biāo)識(shí)為合法硬件標(biāo)識(shí)。在硬件標(biāo)識(shí)與模組信息匹配度低時(shí),確定該硬件標(biāo)識(shí)為非法硬件標(biāo)識(shí)。若驗(yàn)鈔器模組的硬件標(biāo)識(shí)合法,則執(zhí)行步驟470。
步驟460、配置固件升級(jí)包。
在執(zhí)行升級(jí)操作時(shí),展示操作界面,在所述操作界面中提供固件升級(jí)包選項(xiàng),以供用戶配置固件升級(jí)包。
步驟470、動(dòng)態(tài)打包固件文件。
在執(zhí)行燒錄操作時(shí),若確定硬件標(biāo)識(shí)合法,即硬件標(biāo)識(shí)與嵌入式設(shè)備的模組信息匹配,則根據(jù)硬件標(biāo)識(shí)查詢預(yù)存燒錄包,從該預(yù)存燒錄包中動(dòng)態(tài)選擇所述硬件標(biāo)識(shí)匹配的固件文件。在選取與所述硬件標(biāo)識(shí)匹配的固件文件后,對(duì)所選取的固件文件進(jìn)行打包處理,得到當(dāng)前嵌入式設(shè)備的模組對(duì)應(yīng)的固件文件包。
在執(zhí)行固件升級(jí)操作時(shí),讀取硬件標(biāo)識(shí),根據(jù)硬件標(biāo)識(shí)查詢預(yù)存固件升級(jí)包,從該預(yù)存固件升級(jí)包中動(dòng)態(tài)選擇所述硬件標(biāo)識(shí)匹配的固件文件。
執(zhí)行完成動(dòng)態(tài)打包固件文件的操作之后,執(zhí)行步驟480。
圖4b是本發(fā)明實(shí)施例四中的一種固件文件包的生成方法的流程圖,如圖4b所示,固件文件包的生成方法包括如下步驟:
步驟471、讀取moduledata配置信息。
其中,moduledata指模組數(shù)據(jù),即讀取模組數(shù)據(jù)。所述模組數(shù)據(jù)的配置信息包括出廠時(shí)間和固件的程序版本。
步驟472、判斷讀取操作是否成功,若是,則執(zhí)行步驟473,若否,則結(jié)束操作。
判斷讀取操作的返回值是否為代表讀取操作成功的值。在讀取操作的返回值是代表讀取操作成功的值時(shí),執(zhí)行步驟473,否則,執(zhí)行結(jié)束步驟。
步驟473、判斷是否采用新版本的固件管理方法,若是,則執(zhí)行步驟474,若否,則執(zhí)行步驟478。
將出廠時(shí)間與預(yù)存的固件管理方法的執(zhí)行起始時(shí)間進(jìn)行比較。若所述出廠時(shí)間晚于所述固件管理方法的執(zhí)行起始時(shí)間,則執(zhí)行步驟474。若所述出廠時(shí)間早于所述固件管理方法的執(zhí)行起始時(shí)間,則執(zhí)行步驟478。
步驟474、讀取硬件標(biāo)識(shí)。
由于在固件燒錄時(shí),要求設(shè)置硬件標(biāo)識(shí),所以,在設(shè)定存儲(chǔ)區(qū)域內(nèi)保存有硬件標(biāo)識(shí)。在需要使用硬件標(biāo)識(shí)時(shí),查詢?cè)O(shè)定存儲(chǔ)區(qū)域,即可獲取硬件標(biāo)識(shí)。
步驟475、判斷硬件標(biāo)識(shí)讀取是否成功,若是,則執(zhí)行步驟476,若否,則執(zhí)行結(jié)束步驟。
判斷讀取操作的返回值是否為代表讀取硬件標(biāo)識(shí)成功的值。在讀取操作的返回值是代表讀取硬件標(biāo)識(shí)成功的值時(shí),執(zhí)行步驟476,否則,執(zhí)行結(jié)束步驟。
步驟476、找到與硬件標(biāo)識(shí)匹配的固件文件。
示例性地,根據(jù)硬件標(biāo)識(shí)查詢預(yù)存固件升級(jí)包,從該預(yù)存固件升級(jí)包中動(dòng)態(tài)選擇所述硬件標(biāo)識(shí)匹配的固件文件。
步驟477、判斷是否找到硬件標(biāo)識(shí)匹配的固件文件,若是,則執(zhí)行步驟478,若否,則執(zhí)行結(jié)束操作。
步驟478、組合固件文件包。
在采用新版本的固件管理方法時(shí),將所選取的與硬件標(biāo)識(shí)匹配的固件文件進(jìn)行打包處理,生成固件文件包。
在未采用新版本的固件管理方法時(shí),選擇硬件標(biāo)識(shí)對(duì)應(yīng)的預(yù)存的固件文件包。
步驟480、下載固件包。
在生成固件文件包之后,按已有流程下載固件文件包至驗(yàn)鈔器。
本實(shí)施例的技術(shù)方案,提供一種硬件型號(hào)頻繁更新的嵌入式設(shè)備的固件版本管理方法,該方法同時(shí)也適用于硬件型號(hào)不變的嵌入式設(shè)備的固件版本管理。在保證固件版本管理安全、完善的基礎(chǔ)上,在很大程度上減輕了固件維護(hù),固件更新和固件提供方面的工作量,從而降低了研發(fā)成本。
實(shí)施例五
圖5是本發(fā)明實(shí)施例五提供的一種嵌入式設(shè)備的固件管理裝置的結(jié)構(gòu)示意圖。本實(shí)施例的裝置包括:標(biāo)識(shí)獲取模塊510、標(biāo)識(shí)判斷模塊520、固件文件確定模塊530和文件包生成模塊540。其中,
標(biāo)識(shí)獲取模塊510,用于獲取嵌入式設(shè)備的各個(gè)模組的硬件標(biāo)識(shí)和模組信息。其中,所述硬件標(biāo)識(shí)包括模組的硬件型號(hào)、硬件編號(hào)和廠家信息,以及,所述模組信息包括出廠時(shí)間和固件版本。
標(biāo)識(shí)判斷模塊520,用于根據(jù)所述硬件標(biāo)識(shí)和所述模組信息判斷所述硬件標(biāo)識(shí)是否合法;
固件文件確定模塊530,用于在所述硬件標(biāo)識(shí)合法時(shí),從設(shè)定固件文件集合中選取所述硬件標(biāo)識(shí)對(duì)應(yīng)的固件文件;
文件包生成模塊540,用于對(duì)所述固件文件進(jìn)行打包處理,生成與所述嵌入式設(shè)備的模組匹配的固件文件包,以供所述嵌入式設(shè)備下載。
本實(shí)施例的技術(shù)方案,通過(guò)標(biāo)識(shí)獲取模塊510獲取嵌入式設(shè)備的各個(gè)模組的硬件標(biāo)識(shí)和模組信息;通過(guò)標(biāo)識(shí)判斷模塊520根據(jù)所述硬件標(biāo)識(shí)和所述模組信息判斷所述硬件標(biāo)識(shí)是否合法;通過(guò)固件文件確定模塊530在所述硬件標(biāo)識(shí)合法時(shí),從設(shè)定固件文件集合中選取所述硬件標(biāo)識(shí)對(duì)應(yīng)的固件文件;通過(guò)文件包生成模塊540對(duì)所述固件文件進(jìn)行打包處理,生成與所述嵌入式設(shè)備的模組匹配的固件文件包,以供所述嵌入式設(shè)備下載,實(shí)現(xiàn)動(dòng)態(tài)選擇與硬件型號(hào)匹配的固件文件進(jìn)行打包,無(wú)需預(yù)先準(zhǔn)備各個(gè)硬件型號(hào)匹配的固件文件包。本實(shí)施例的技術(shù)方案解決目前驗(yàn)鈔器固件版本管理采用一對(duì)一方式,導(dǎo)致固件版本管理十分復(fù)雜的問(wèn)題,實(shí)現(xiàn)安全、準(zhǔn)確地管理驗(yàn)鈔器的固件,從而減輕了固件提供、固件維護(hù)和固件更新等方面的工作量,達(dá)到了降低開(kāi)發(fā)成本的效果。
在上述技術(shù)方案的基礎(chǔ)上,在固件燒錄時(shí),所述標(biāo)識(shí)獲取模塊510具體用于:
掃描嵌入式設(shè)備包括的各個(gè)模組的二維碼信息,根據(jù)所述二維碼信息確定所述嵌入式設(shè)備包括的各個(gè)模組的硬件標(biāo)識(shí);
或者,獲取用戶輸入的嵌入式設(shè)備包括的各個(gè)模組的硬件標(biāo)識(shí)。
在上述技術(shù)方案的基礎(chǔ)上,在固件燒錄時(shí),所述標(biāo)識(shí)判斷模塊520具體用于:
根據(jù)所述模組信息查詢預(yù)先配置的硬件標(biāo)識(shí)與模組信息關(guān)系表,確定與所述模組信息對(duì)應(yīng)的參考硬件標(biāo)識(shí);
在所述硬件標(biāo)識(shí)與所述參考硬件標(biāo)識(shí)匹配時(shí),確定所述硬件標(biāo)識(shí)為合法的硬件標(biāo)識(shí);
在所述硬件標(biāo)識(shí)與所述參考硬件標(biāo)識(shí)不匹配時(shí),確定所述硬件標(biāo)識(shí)為非法的硬件標(biāo)識(shí)。
在上述技術(shù)方案的基礎(chǔ)上,在固件升級(jí)時(shí),所述標(biāo)識(shí)判斷模塊520包括:
適用性判斷子模塊,用于根據(jù)所述硬件標(biāo)識(shí)和所述模組信息判斷所述嵌入式設(shè)備是否適用所述固件管理方法;
合法標(biāo)識(shí)確定子模塊,用于在適用所述固件管理方法時(shí),確定所述硬件標(biāo)識(shí)為合法的硬件標(biāo)識(shí)。
在上述技術(shù)方案的基礎(chǔ)上,所述硬件標(biāo)識(shí)包括模組的硬件型號(hào)、硬件編號(hào)和廠家信息,以及,所述模組信息包括出廠時(shí)間和固件版本;
以及,所述適用性判斷子模塊具體用于:
在所述出廠時(shí)間早于所述固件管理方法的執(zhí)行起始時(shí)間時(shí),若存在硬件標(biāo)識(shí),則確定所述嵌入式設(shè)備適用所述固件管理方法;
或者,在所述出廠時(shí)間晚于所述固件管理方法的執(zhí)行起始時(shí)間時(shí),確定所述嵌入式設(shè)備適用所述固件管理方法
上述嵌入式設(shè)備的固件管理裝置可執(zhí)行本發(fā)明任意實(shí)施例所提供的嵌入式設(shè)備的固件管理方法,具備執(zhí)行方法相應(yīng)的功能模塊和有益效果。
注意,上述僅為本發(fā)明的較佳實(shí)施例及所運(yùn)用技術(shù)原理。本領(lǐng)域技術(shù)人員會(huì)理解,本發(fā)明不限于這里所述的特定實(shí)施例,對(duì)本領(lǐng)域技術(shù)人員來(lái)說(shuō)能夠進(jìn)行各種明顯的變化、重新調(diào)整和替代而不會(huì)脫離本發(fā)明的保護(hù)范圍。因此,雖然通過(guò)以上實(shí)施例對(duì)本發(fā)明進(jìn)行了較為詳細(xì)的說(shuō)明,但是本發(fā)明不僅僅限于以上實(shí)施例,在不脫離本發(fā)明構(gòu)思的情況下,還可以包括更多其他等效實(shí)施例,而本發(fā)明的范圍由所附的權(quán)利要求范圍決定。