鄧桂芳
摘 要:本文介紹飛利浦公司生產(chǎn)的P89C669單片機(jī)在無線條形碼閱讀適配器中的應(yīng)用。本適配器以P89C669為主控CPU,利用其內(nèi)部大容量FLASH和IAP技術(shù)實(shí)現(xiàn)條形碼數(shù)據(jù)的存儲,用NRF403無線調(diào)制解調(diào)芯片作為無線通訊接口,用CP2101作為有線通訊接口。本適配器還內(nèi)置鋰電池,整機(jī)功耗低、體積小、攜帶方便、成本低。
關(guān)鍵詞:條形碼閱讀器;無線適配器;USB
1 引言
在大型圖書館或大型貨倉里,圖書管理員檢查圖書的館藏量或貨倉管理員檢查貨物的庫存時,需要把書本或貨物搬到電腦旁,使用電腦連接的手持激光條形碼閱讀器進(jìn)行檢查。這樣操作起來非常耗費(fèi)人力,并且十分不方便。本文介紹的無線條形碼閱讀適配器可以直接連接手持激光條形碼閱讀器,能把手持激光條形碼閱讀器讀取的條形碼信息存儲起來通過無線發(fā)送到電腦。電腦接收數(shù)據(jù)后可以用以圖書館藏量或貨倉庫存量統(tǒng)計(jì)。無線條形碼閱讀適配器配合手持激光條形碼閱讀器攜帶方便,工作人員攜帶到不同地方進(jìn)行收錄條形碼信息。
2 硬件的組成
2.1 硬件總體設(shè)計(jì)
按照系統(tǒng)設(shè)計(jì)要求,作為一種附加裝置應(yīng)在保證實(shí)現(xiàn)基本功能上,盡可能降低系統(tǒng)成本,盡可能減小功耗,盡可能縮小體積??傮w方案圍繞上述思想,方案擬定如下:由于設(shè)計(jì)要求系統(tǒng)能實(shí)時反映庫存、與上位機(jī)實(shí)時通信,主控部分采用微處理芯片進(jìn)行數(shù)據(jù)處理??紤]到數(shù)據(jù)庫儲存容量很大,而且需要不斷更新??墒褂镁哂写笕萘靠刹林貜?fù)擦寫FLASH的處理器如:PHILIP公司的P89C669具有IAP功能的片內(nèi)集成96K FlashRom非常適合當(dāng)前設(shè)計(jì)要求。數(shù)據(jù)接口部分采用NRF403無線調(diào)制解調(diào)芯片作為無線通訊接口,用CP2101作為USB有線通訊接口。系統(tǒng)方案得到的系統(tǒng)原理框圖如圖1所示。
2.2 各部分原理及硬件構(gòu)成
⑴信息顯示、功能鍵輸入。人機(jī)數(shù)據(jù)部分采用廉價小型(122*32)點(diǎn)陣黑白液晶顯示;人性化、圖形化操作界面??娠@示數(shù)據(jù)庫情況、當(dāng)前條形碼錄入情況、鍵盤輸入情況、適配器工作情況、電源情況。適合手感的鍵盤操作位置;可實(shí)現(xiàn)系統(tǒng)的翻頁、設(shè)置、確認(rèn)等功能。
⑵連接激光條形碼槍。條形碼的讀取是由外部的激光槍來完成,采用的是紅光條碼掃描槍。它的接口標(biāo)準(zhǔn)是PS/2接口標(biāo)準(zhǔn),是同步傳送方式,電平信號是標(biāo)準(zhǔn)的RS232電平信號。本設(shè)計(jì)采用I2C技術(shù)進(jìn)行接收激光槍信號。由于P89C669的P1.6/SCL為總線時鐘線,P1.7/SDA為總線數(shù)據(jù)線,因此只要把PS/2的CLK(時鐘線)和DAT(數(shù)據(jù)線)和分別單片機(jī)的P1.6和P1.7直接相連就可以了。
⑶與電腦無線通信。為了簡化電路和提高系統(tǒng)的穩(wěn)定性。我們用集成電路nFR403作為接收和發(fā)射。nRF403是挪威Nordic公司最新推出的數(shù)傳頻段433MHz單片無線收發(fā)一體芯片,該芯片集成了高頻發(fā)射、高頻接收、PLL合成、FSK調(diào)制、FSK解調(diào)、多頻道切換等功能,具有性能優(yōu)異、功耗低、使用方便等特點(diǎn),nRF401的外圍元件很少,只包括一個基準(zhǔn)晶振和幾個無源器件,沒有調(diào)試部件,這給研制及生產(chǎn)帶來了極大的方便。
⑷USB通信部分。該儀器通過主芯片CP2101與PC機(jī)連接,芯片CP2101的功能是把單片機(jī)的串口信號轉(zhuǎn)換成USB接口信號。該芯片包含一個USB 2.0全速功能控制器、USB收發(fā)器振蕩器和帶有全部的調(diào)制解調(diào)器。無需其他的外部USB元件。片內(nèi)EEPROM 可以用于由原始設(shè)備制造商自定義USB供應(yīng)商代碼、產(chǎn)品代碼、產(chǎn)品描述文字。功率標(biāo)牌、版本號和器件序列號等數(shù)據(jù)的存儲空間。
3 上位機(jī)軟件
此適配器要求能與PC機(jī)進(jìn)行數(shù)據(jù)通信,因此在PC機(jī)上設(shè)計(jì)了一個與適配器進(jìn)行數(shù)據(jù)交換的界面,此界面是利用VB語言來編成的,界面友好,容易操作。該接收軟件具備兩個工作模式:1)工作模式一,有界面工作模式。軟件開啟后可以分別查看PC機(jī)內(nèi)部數(shù)據(jù)和適配器上的相應(yīng)信息。其中的“下載”按鈕可以把條碼信息下載到適配器的臨時數(shù)據(jù)庫中,“上載”按鈕可以把保存在適配器中的信息上傳到PC機(jī)的數(shù)據(jù)庫中。“選擇”按鈕可以選擇與不同地址碼的適配器進(jìn)行無線通訊?!按蜷_”按鈕可以打開PC機(jī)中的數(shù)據(jù)庫,從而選擇其中的條碼信息。條碼信息以表格形式保存?!氨4妗卑粹o,把上傳的信息保存到PC機(jī)上的數(shù)據(jù)庫中。其中設(shè)有一個通訊顯示燈,如果PC機(jī)與適配器有數(shù)據(jù)交換,此燈就會亮。2)工作模式二,無界面工作模式。該模式開啟時,軟件界面會最小化,軟件會把接收到的無線數(shù)據(jù)通過內(nèi)部虛擬技術(shù)接入到PC機(jī)PS/2接口。這時,PC機(jī)可以啟動原有的其他管理軟件像接入普通有線手持激光條形碼閱讀器一樣工作。
[參考文獻(xiàn)]
[1]周立功,等編著.《USB 2.0與OTG規(guī)范及開發(fā)指南》.北京航空航天大學(xué)出版社,2004.
[2]何立民.《單片機(jī)應(yīng)用技術(shù)選編》(1)~(9).北京航空航天大學(xué)出版社,2004.