一種新型防偽讀碼器的設(shè)計(jì)
假冒偽劣商品一直是世界的公害,隨著仿造技術(shù)水平的不斷提高,被仿造產(chǎn)品的范圍也越來(lái)越大,仿造品的數(shù)量也日趨驚人,小到一粒藥片,大到飛機(jī)、汽車零部件,幾乎所有正牌、名牌產(chǎn)品,都被假冒行為所困擾,假貨充斥著大部分的市場(chǎng)。而且造假者不但仿造產(chǎn)品更有甚至仿造正品的防偽標(biāo)志,對(duì)于這樣的假冒偽劣產(chǎn)品只有少數(shù)的質(zhì)量專業(yè)人員才能辨認(rèn),消費(fèi)者根本無(wú)法辨認(rèn)產(chǎn)品的真?zhèn)?,從而?dǎo)致上當(dāng)受騙,同時(shí)企業(yè)也遭受了很大的損失,危及名優(yōu)企業(yè)生存發(fā)展。針對(duì)眾多的造假現(xiàn)象,生產(chǎn)廠家也采取了不同的防偽措施,目前市場(chǎng)上的防偽手段大致包括: 視覺防偽技術(shù)、電子識(shí)別防偽技術(shù)、數(shù)碼防偽技術(shù)等。在分析當(dāng)前數(shù)碼防偽系統(tǒng)存在的不足的基礎(chǔ)上,本文提出了一種新型的數(shù)碼防偽系統(tǒng)。
本文引用地址:http://2s4d.com/article/104184.htm防偽讀碼器的總體設(shè)計(jì)方案
1 總體設(shè)計(jì)方案
本設(shè)計(jì)所實(shí)現(xiàn)的硬件平臺(tái)主要由微處理器單元、存儲(chǔ)器單元、串口電平轉(zhuǎn)換、液晶顯示模塊、電源單元和JTAG接口單元組成,硬件功能框圖如圖1所示。其中串口有兩種功能,一種是與上位機(jī)進(jìn)行通信,通過(guò)它可以在線下載程序;另一種功能是與GPRS模塊進(jìn)行數(shù)據(jù)交換。讀碼器提供的GPRS網(wǎng)絡(luò)接口中除了包括串口的數(shù)據(jù)線外,還包括電源線和控制線。
圖1 系統(tǒng)原理框圖
2 系統(tǒng)工作原理
讀碼器是系統(tǒng)的核心部分,由產(chǎn)品經(jīng)銷商持有,它是產(chǎn)品生產(chǎn)廠家分配給經(jīng)銷商的,作用是讀取產(chǎn)品中的信息(即產(chǎn)品出廠時(shí)由廠家分配的ID號(hào)),然后連接并登陸遠(yuǎn)端的企業(yè)數(shù)據(jù)庫(kù)進(jìn)行查詢驗(yàn)證。連接網(wǎng)絡(luò)時(shí)必須通過(guò)身份驗(yàn)證,驗(yàn)證通過(guò)才允許登錄,否則拒絕登陸。對(duì)于讀碼器,廠家親自將預(yù)先選定的密鑰存放在其中,這一部分對(duì)外界是完全保密的。驗(yàn)證時(shí),將讀碼器與產(chǎn)品包裝上的接口連接,按照事先設(shè)定好的通信協(xié)議讀出其中的信息,存放在讀碼器中。此時(shí)需要進(jìn)行網(wǎng)絡(luò)查詢,在進(jìn)行查詢前必須通過(guò)身份驗(yàn)證登陸查詢網(wǎng)站。首先,由讀碼器發(fā)送登陸請(qǐng)求,服務(wù)器接到請(qǐng)求后發(fā)送一個(gè)隨機(jī)的數(shù)據(jù)串回來(lái),讀碼器使用自己的密鑰對(duì)其進(jìn)行加密,然后將這段密文發(fā)送回去。服務(wù)器收到以后,先是解密驗(yàn)證,如果是自己發(fā)送過(guò)去的原數(shù)據(jù),則通過(guò)驗(yàn)證,允許登錄,否則提示“密鑰錯(cuò)誤,登陸失敗”。成功登陸以后,讀碼器將產(chǎn)品序列號(hào)的密文發(fā)送給服務(wù)器,由服務(wù)器解密并恢復(fù)編碼并進(jìn)行查詢,若查詢失敗,則返回提示:“該產(chǎn)品并非是XX企業(yè)生產(chǎn)的正品,謹(jǐn)防假冒!”否則,將以密文的形式返回產(chǎn)品的驗(yàn)證信息,由讀碼器進(jìn)行解密并顯示提示信息,該信息包括:產(chǎn)品的物流渠道、廠家、生產(chǎn)信息等。此時(shí),讀碼器正處于等待狀態(tài),如果產(chǎn)品成功出售,通過(guò)按鍵向服務(wù)器返回相關(guān)提示信息,由服務(wù)器記錄下來(lái)該信息,即產(chǎn)品出售的時(shí)間和地點(diǎn),以備二次查詢;如果沒有成功出售則通過(guò)不同的按鍵發(fā)送信息,提示服務(wù)器“該產(chǎn)品沒有賣出”。至此,驗(yàn)證完畢。
防偽讀碼器的設(shè)計(jì)與實(shí)現(xiàn)
1 存儲(chǔ)器設(shè)計(jì)
微處理器S3C44BOX的存儲(chǔ)控制器可以為片外存儲(chǔ)器訪問提供必要的控制信號(hào)。每個(gè)地址空間的數(shù)據(jù)總線寬度是可以通過(guò)編程或引腳連接來(lái)配置的,由于系統(tǒng)上電啟動(dòng)或復(fù)位后總是從0X00000000地址開始執(zhí)行,Boo映射后的地址就是0X00000000,所以必須在第一次訪問ROM前設(shè)置Bank0的數(shù)據(jù)總線寬度。系統(tǒng)中將OM0通過(guò)上拉電阻與VDD相連接,OM1通過(guò)下拉電阻與GND相連接,即Bank0選用的是16位的數(shù)據(jù)總線寬度。
除了Bank0以外的其他地址空間可以在系統(tǒng)的啟動(dòng)代碼中通過(guò)編程予以設(shè)置,具體是通過(guò)設(shè)置存儲(chǔ)器控制專用寄存器BWSCON來(lái)實(shí)現(xiàn)的。存儲(chǔ)器控制專用寄存器包括總線寬度/等待控制寄存器、Bank控制寄存器、刷新控制寄存器、Bank大小控制寄存器和模式寄存器設(shè)置寄存器,各個(gè)寄存器的每一數(shù)據(jù)位的具體含義請(qǐng)參考數(shù)據(jù)手冊(cè)。
根據(jù)所選擇的Flash和SDRAM,系統(tǒng)各地址空間的數(shù)據(jù)總線寬度都設(shè)置為16位,存儲(chǔ)模式為小端模式,不使用等待狀態(tài),不使用UB/LB。
2 串口設(shè)計(jì)
ARM S3C44BOX的UART單元帶兩個(gè)異步串行口,皆可工作于中斷和DMA模式,各帶有16字節(jié)的FIFO。最大波特率115.2K。DART單元包括可編程波特率、紅外發(fā)送/接收、1個(gè)或2個(gè)停止位、5/6/7/8位數(shù)據(jù)寬度和奇偶校驗(yàn)位。每個(gè)DART有7種狀態(tài):溢出錯(cuò)誤、校驗(yàn)錯(cuò)誤、幀錯(cuò)誤、暫停態(tài)、接收緩沖區(qū)準(zhǔn)備好、發(fā)送緩沖區(qū)空、發(fā)送移位緩沖器空等,這些狀態(tài)可以由相應(yīng)的UTRSTATn/UERSTATn表示,并且與發(fā)送接收緩沖區(qū)相對(duì)應(yīng)的有錯(cuò)誤緩沖區(qū)。波特率可以通過(guò)控制波特率寄存器進(jìn)行設(shè)置。每一個(gè)DART的波特率發(fā)生器為收/發(fā)器提供一個(gè)連續(xù)時(shí)鐘,時(shí)鐘源可選為S3C44BOX的內(nèi)部系統(tǒng)時(shí)鐘。波特率的時(shí)鐘通過(guò)一個(gè)16位分頻器分頻后產(chǎn)生,16位分頻器的值由寄存器UBRDIVn寄存器具體說(shuō)明。
根據(jù)系統(tǒng)功能的需要,讀碼器在調(diào)試過(guò)程中需要與PC進(jìn)行通信,所以需要在微處理器和PC之間設(shè)計(jì)電平轉(zhuǎn)換電路。另外,系統(tǒng)與存放產(chǎn)品功號(hào)的芯片需要進(jìn)行通信,這里不需要電平轉(zhuǎn)換,系統(tǒng)在GPRS接口中直接將串口線引出,其中的部分引腳即可作為與存儲(chǔ)芯片連接的接口,連接電路如圖2所示。
圖2 串口電路
3 網(wǎng)絡(luò)通信信息與操作標(biāo)志位的設(shè)計(jì)
為了減少硬件方面的操作,節(jié)省硬件資源,提高驗(yàn)證效率,系統(tǒng)對(duì)于接收到的信息種類以及對(duì)信息進(jìn)行什么操作,都在數(shù)據(jù)包中設(shè)定相應(yīng)的數(shù)據(jù)位來(lái)作為標(biāo)志。系統(tǒng)的動(dòng)作大致有加密發(fā)送、解密顯示、解密保存(更換工作密鑰時(shí))。系統(tǒng)的信息種類大致包括登錄驗(yàn)證信息、登錄成功提示、登錄失敗提示、產(chǎn)品ID號(hào)密文、產(chǎn)品驗(yàn)證結(jié)果信息(對(duì)它的操作只有顯示,所以歸為一類)、產(chǎn)品出售信息和更換密鑰的信息。所以在數(shù)據(jù)段中設(shè)定一字節(jié),其中用兩位表示操作,用三位表示信息種類,具體設(shè)計(jì)如表1所示,其中第3 、4 位是操作位;第6、7、8位是信息位。根據(jù)這些標(biāo)志信息決定下一步的操作。必要時(shí)再由用戶進(jìn)行按鍵操作。具體操作標(biāo)志位的數(shù)據(jù)、信息種類標(biāo)志位與具體數(shù)據(jù)位的對(duì)應(yīng)關(guān)系如表2和表3所示。
4 讀碼器的軟件設(shè)計(jì)
讀碼器的鍵盤共設(shè)計(jì)了六個(gè)按鍵,外加一個(gè)系統(tǒng)復(fù)位鍵。讀碼器的整個(gè)工作過(guò)程通過(guò)軟件和這六個(gè)按鍵相配合來(lái)完成。產(chǎn)品驗(yàn)證的操作過(guò)程如下:首先連接讀碼器和產(chǎn)品上ID號(hào)存儲(chǔ)芯片的接口,然后按下一個(gè)按鍵讀取產(chǎn)品ID號(hào),讀取結(jié)束會(huì)顯示提示信息;顯示讀取成功后再按下網(wǎng)絡(luò)連接鍵,讀碼器會(huì)自動(dòng)撥號(hào)連網(wǎng),因?yàn)槠髽I(yè)的網(wǎng)號(hào)已經(jīng)事先固化在讀碼器中了,這一過(guò)程是由讀碼器自己完成的,它會(huì)根據(jù)接收到的數(shù)據(jù)中的標(biāo)志位判斷下一步的操作,同時(shí)顯示工作狀態(tài)信息,直到登錄成功或者登錄失敗;登陸成功后按鍵發(fā)送產(chǎn)品ID號(hào),然后是等待接收驗(yàn)證結(jié)果信息并顯示;最后,按下成功出售按鍵或未能出售按鍵發(fā)送產(chǎn)品出售結(jié)果信息。這樣總共使用了鍵盤中的五個(gè)鍵,另一個(gè)鍵暫時(shí)作為備用鍵。如果系統(tǒng)工作過(guò)程中出現(xiàn)不正常的問題,可以按下系統(tǒng)復(fù)位鍵重新啟動(dòng),重新驗(yàn)證。讀碼器總體軟件的設(shè)計(jì)流程如圖3所示。
圖3 讀碼器軟件流程圖
無(wú)線網(wǎng)絡(luò)傳輸設(shè)計(jì)
網(wǎng)絡(luò)傳輸部分的硬件關(guān)鍵是對(duì)無(wú)線網(wǎng)絡(luò)傳輸模塊的應(yīng)用。在眾多的無(wú)線網(wǎng)絡(luò)模塊中,MC35是應(yīng)用較為普及的一種。這是西門子公司的一款GPRS模塊,它具有40引腳的ZIF接口,主要有電源接口、標(biāo)準(zhǔn)RS232雙向串口、SIM卡3V接口和模擬語(yǔ)音接口等。本設(shè)計(jì)最終選用了該模塊來(lái)實(shí)現(xiàn)網(wǎng)絡(luò)傳輸。
硬件電路的連接是使用讀碼器硬件系統(tǒng)中設(shè)計(jì)的GPRS模塊接口。其中利用了串口、電源、天線等接口。具體實(shí)驗(yàn)原理是:主機(jī)與讀碼器通過(guò)串口通信,發(fā)送AT指令編碼給讀碼器,然后通過(guò)讀碼器控制MC35模塊的數(shù)據(jù)收發(fā),如圖4所示。
圖4 無(wú)線網(wǎng)絡(luò)傳輸模塊連接示意圖
評(píng)論