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