基于NiosII的二維條碼識別系統(tǒng)設(shè)計(jì)
摘要 隨著SOPC技術(shù)的日益成熟,基于SoPC技術(shù)的嵌入式系統(tǒng)得到廣泛應(yīng)用。本文采用SOPC技術(shù),以EP2C35為主控芯片,實(shí)現(xiàn)二維條碼識別系統(tǒng)的設(shè)計(jì),并提出一種適用于嵌入式系統(tǒng)的PDF417條碼識別算法。實(shí)驗(yàn)表明,該識別系統(tǒng)能夠快速準(zhǔn)確地識別二維條碼,效果良好。
關(guān)鍵詞 SOPC 二維條碼 PDF417 嵌入式系統(tǒng) NiosII
二維條碼PDF417中PDF為Portable Data File的縮寫,每一個(gè)PDF碼的儲(chǔ)存量可高達(dá)1 108字節(jié),若將數(shù)字壓縮則可存放2 729字節(jié)。作為一種新的信息存儲(chǔ)和傳遞技術(shù),PDF417具有成本低、信息可隨載體移動(dòng)、不依賴于數(shù)據(jù)庫和計(jì)算機(jī)網(wǎng)絡(luò)、保密防偽性能強(qiáng)等優(yōu)點(diǎn),廣泛應(yīng)用在國防、公共安全、交通運(yùn)輸、醫(yī)療保健、工業(yè)、商業(yè)、金融、海關(guān)及政府管理等領(lǐng)域,PDF417碼的例子如圖1所示。
1 系統(tǒng)總體設(shè)計(jì)
本系統(tǒng)在FPGA上使用SOPC技術(shù)來實(shí)現(xiàn)無線手持二維條碼識讀器,與傳統(tǒng)一維條碼識讀器最大的區(qū)別在于完全脫離后臺(tái)數(shù)據(jù)庫,以及在高達(dá)50%破損率的情況下能夠進(jìn)行高效率識別。
SOPC技術(shù)是一種基于FPGA解決方案的SOC,由美國Altera公司于2000年提出?;赟OPC平臺(tái)的開發(fā)結(jié)合了FPGA靈活可編程與片上。NioslI軟核處理器的用戶可配置等特點(diǎn)。在實(shí)現(xiàn)某功能時(shí),通過在NiosII處理器下編寫C程序運(yùn)行,也可以使用硬件模塊來加速。本系統(tǒng)綜合兩種實(shí)現(xiàn)思路,采用高性價(jià)比的Cyclone II EP2C35系列FPGA實(shí)現(xiàn),系統(tǒng)總體結(jié)構(gòu)如圖2所示。
整個(gè)系統(tǒng)由低到高分為三個(gè)層次:條碼識別的硬件平臺(tái)、μC/OS―II操作系統(tǒng)、條碼譯碼核心算法。最底層硬件平臺(tái)采用Altera公司的Cylone II EP2C35與ADI公司的視頻解碼芯片ADV7181B,具有8 MB的Flash存儲(chǔ)器,1.MB的SRAM等外設(shè);中間層μC/OS―II操作系統(tǒng)提供任務(wù)調(diào)度和設(shè)備驅(qū)動(dòng),以及提供各種中斷來實(shí)現(xiàn)對外界請求的響應(yīng),如模式切換、LCM.顯示、射頻傳送等,有效地提高了系統(tǒng)運(yùn)行速率;最頂層條碼譯碼核心算法包括了對條碼圖像的預(yù)處理和對譯碼數(shù)據(jù)的RS糾錯(cuò),采用C語言在NiosII的集成開發(fā)環(huán)境中(IDE)實(shí)現(xiàn)。
評論