《城市軌道交通聯網收費系統技術要求 第5部分:車票處理單元》征求_第1頁
《城市軌道交通聯網收費系統技術要求 第5部分:車票處理單元》征求_第2頁
《城市軌道交通聯網收費系統技術要求 第5部分:車票處理單元》征求_第3頁
《城市軌道交通聯網收費系統技術要求 第5部分:車票處理單元》征求_第4頁
《城市軌道交通聯網收費系統技術要求 第5部分:車票處理單元》征求_第5頁
已閱讀5頁,還剩29頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

Q/LB.□XXXXX-XXXX圖9。自動售票機自動售票機車票處理單元車票處理單元接口界面乘車憑證電源線信號線自動售票機圖SEQ圖\*ARABIC9車票處理單元與自動售票機接口界面示意圖車票處理單元與半自動售票機接口界面與半自動售票機間的接口界面滿足下列要求:USB驅動程序及預留RJ45或RS232/RS422接口:車票處理單元應提供不同運行環境(操作系統)平臺下的USB及RJ45或RS232/RS422驅動程序,車票處理單元USB、RJ45或RS232/RS422接口的驅動程序安裝于半自動售票機ECU;程序配置參數接口:半自動售票機主程序應根據有關規范向車票處理單元提供配置參數。配置參數包括:票價表、運行模式、運行時間、黑名單、產品參數等;通信控制命令接口:半自動售票機主程序應通過API函數調用的方式控制車票處理單元的運作、車票處理單元軟件更新、獲取交易數據與獲得車票處理單元的運行情況。與半自動售票機間的接口界面參見圖10。半自動售票機半自動售票機車票處理單元車票處理單元接口界面乘車憑證電源線信號線半自動售票機圖SEQ圖\*ARABIC10車票處理單元與半自動售票機接口界面示意圖

(資料性)

應用程序接口示例蜂鳴器APIBeepKeyOpenBeepKeyOpen包括:原型:S16_tBeepKeyOpen(void);描述:打開BeepKey(蜂鳴器)設備;參數:無。BeepKeyCloseBeepKeyClose包括:原型:S16_tBeepKeyClose(void);描述:關閉BeepKey(蜂鳴器)設備;參數:無。BeepBeep包括:原型:S16_tBeep(U32_tBeepLev,U32_tDelay50Ms);描述:蜂鳴器開始鳴叫;參數:U32_tBeepLev: Beep音調(06)其中6蜂鳴聲音最響;U32_tDelay50Ms:蜂鳴的聲音長度。函數返回值無特殊說明時,函數返回0為成功,其他為失敗。LED燈APILedLight包括:原型:S16_tLedLight(U32_tindex,U32_tmode);描述:控制LED燈;參數:U32_tindex:LED燈的索引位置,從1開始;U32_tmode:燈狀態0表示熄滅,1表示亮。以太網APITCPIP_CommOpenTCPIPCommOpen包括:原型:S32_tTCPIP_CommOpen(U8_t*pPortDescriptor,U8_t*pOpenParams,S32_tdwPortAttr,S32_tnTimeout,S32_t*pErrCode);描述:建立TCP連接;參數:U8_t*pPortDescriptor:Linux網絡設備描述符字符串("/dev/eth0","/dev/eth1");U8_t*pOpenParams:IP地址和端口號字符串具體格式IP:PORT比如"192.167.1.22:2000"如果作為服務器,IP地址可以忽略;S32_t dwPortAttr:

工作模式:

0表示本地服務器端口;

1表示連接遠程服務器的客戶機;

2表示連接本地服務器的客戶機;S32_tnTimeout:連接超時時間澹(單位毫秒);S32_t*pErrCode:出錯返回碼,參考本標準部分的“函數返回碼”。返回值:網絡句柄網絡句柄包括:=0出錯句柄無效;>0正確句柄有效。TCPIP_CommAcceptTCPIP_CommAccept包括:原型:S32_tTCPIP_CommAccept(S32_thPort);描述:服務器監控TCP/IP端口的TCP/IP連接;參數:

S32_thPort: 服務器端口號;返回值:

網絡句柄:

0表示出錯句柄無效;

大于0表示正確句柄有效。TCPIP_CommReadTCPIP_CommRead包括:原型:S32_tTCPIP_CommRead(S32_thPort,U8_t*pBuffer,S32_tnBytesToRead);描述:向已打開TCP/IP端口讀數據;參數:S32_thPort:端口句柄;U8_t*pBuffer:接收數據所放數據指針;S32_tnBytesToRead:希望接收的數據個數;返回值:實際從PORT端口讀的數據個數。TCPIP_CommWriteTCPIP_CommWrite包括:原型:IntTCPIP_CommWrite(S32_thPort,U8_t*pBuffer,S32_tnBytesToWrite);描述:向已打開TCP/IP端口寫入數據;參數:S32_thPort:端口句柄;U8_t*pBuffer:發送數據所放數據指針;S32_tnBytesToWrite: 希望發送的數據個數;返回值:實際向PORT端口發送的數據個數。TCPIP_CommControlTCPIP_CommControl包括:原型:

S32_tTCPIP_CommControl(S32_thPort,S32_tnCmd,void*pBuffer,S32_tnDataLength);描述:向已打開TCP/IP端口通過命令發送控制信息;參數:S32_t hPort: 端口句柄;S32_t nCmd:

發送命令字節具體規劃如下:

1表示獲取上次TCP/IP端口操作失敗的錯誤碼(適合服務器和客戶器);

2表示獲取向端口發送的信息數據(適合服務器和客戶器);

3表示設置通信超時間(單位ms)(適合服務器和客戶器);

4表示獲取通信超時間;

5表示清除發送緩沖區數據;

6表示清除接收緩沖區數據;

7表示設置最大可連接客戶機的個數;

8表示獲取最大可連接客戶機的個數;

9表示獲取當前已經連接的客戶機的個數;

10表示獲取當前服務器所能連接客戶機器最大個數能力;

其他值表示為預留;void*pBuffer: 輸入數據指針;S32_t nDataLength:輸入數據長度:

當nCmd=1時候,pBuffer:錯誤碼,nDataLength:固定4個字節;

當nCmd=2時候,pBuffer:輸入信息指針,nDataLength:輸入信息長度;

當nCmd=3、4時候,pBuffer:輸入超時信息結構指針,nDataLength:輸入超時信息結構長度;

當nCmd=5、6時候,pBuffer:NULL,nDataLength:NULL;

當nCmd=7、8、9、10時候,pBuffer:個數,nDataLength:固定4個字節。TCPIP_CommCloseTCPIP_CommClose包括:原型:S32_tTCPIP_CommClose(S32_thPort);描述:關閉已打開端口并釋放端口資源;參數:

S32_thPort:端口句柄;返回值:0表示關閉成功;小于0表示關閉失敗。函數返回碼無特殊說明時,函數返回0為成功,其他為失敗。串口APISerial_CommOpenSerial_CommOpen包括;原型:S32_tSerial_CommOpen(U8_t *pPortDescriptor,U8_t*pOpenParams,S32_tdwPortAttr,S32_t nTimeout,S32_t*pErrCode);描述:打開串口函數;參數:U8_t*pPortDescriptor:Linux串口設備描述符字符串;串口0:"/dev/ttyS0";串口1:"/dev/ttyS1";串口2:"/dev/ttyS2";串口3:"/dev/ttyS3";串口4:"/dev/ttyS4";U8_t*pOpenParams:串口參數字符串具體格式如:"9600,n,8,1";S32_tdwPortAttr:工作模式;=0本地服務器端口;=1連接遠程服務器的客戶機;=2連接本地服務器的客戶機;S32_t nTimeout: 連接超時時間(單位毫秒);S32_t *pErrCode: 出錯返回碼,參考本標準部分的“函數返回碼”;返回值:網絡句柄=0出錯句柄無效;>0正確句柄有效。Serial_CommReadSerial_CommRead包括:原型:S32_tSerial_CommRead(S32_thPort,U8_t*pBuffer,S32_tnBytesToRead);描述:向已打開TCP/IP端口讀數據;參數:S32_thPort:端口句柄;U8_t*pBuffer:接收數據所放數據指針;S32_tnBytesToRead: 希望接收的數據個數;返回值:實際從PORT端口讀的數據個數。Serial_CommWriteSerial_CommWrite包括:原型:S32_tSerial_CommWrite(S32_thPort,U8_t*pBuffer,S32_tnBytesToWrite);描述:向已打開TCP/IP端口寫入數據;參數:S32_thPort:端口句柄;U8_t*pBuffer:發送數據所放數據指針;S32_tnBytesToWrite: 希望發送的數據個數;返回值:實際向PORT端口發送的數據個數。Serial_CommControlSerial_CommControl包括:原型:S32_tSerial_CommControl( S32_thPort,S32_t nCmd,void*pBuffer, S32_tnDataLength;描述:向已打開串口端口通過命令發送控制信息;參數:S32_thPort: 端口句柄;S32_t nCmd: 發送命令字節具體規劃如下:=1獲取上次TCP/IP端口操作失敗的錯誤碼(適合服務器和客戶器);=2獲取向端口發送的信息數據(適合服務器和客戶器);=3設置通信超時間(單位ms)(適合服務器和客戶器);=4獲取通信超時間;=5清除發送緩沖區數據;=6清除接收緩沖區數據;=7設置最大可連接客戶機的個數;=8獲取最大可連接客戶機的個數;=9獲取當前已經連接的客戶機的個數;=10獲取當前服務器所能連接客戶機器最大個數能力;=其他保留以后使用;void*pBuffer: 輸入數據指針;S32_t nDataLength: 輸入數據長度:當nCmd=1時:pBuffer:錯誤碼;nDataLength:固定4個字節;當nCmd=2時:pBuffer:輸入信息指針;nDataLength:輸入信息長度; 當nCmd=3、4時:pBuffer:輸入超時信息結構指針;nDataLength:輸入超時信息結構長度;當nCmd=5、6時:pBuffer:NULL;nDataLength:NULL;當nCmd=7、8、9、10時:pBuffer:個數;nDataLength:固定4個字節。Serial_CommCloseSerial_CommClose包括:原型:S32_tSerial_CommClose(S32_thPort);描述:關閉已打開端口并釋放端口資源;參數:

S32_thPort:端口句柄。函數返回碼無特殊說明時,函數返回0為成功,其他為失敗。射頻驅動程序API射頻模塊操作函數RFIDMoudleOpenRFIDModuleOpen包括:原型:S16_tRFIDMoudleOpen(U32_tbIndex);描述:打開射頻模塊功能;參數:

U32_tbIndex:選擇射頻模塊號,在這里固定為1。RFIDMoudleCloseRFIDMoudleClose包括:原型:S16_tRFIDMoudleClose(U32_tbIndex)描述:關閉射頻模塊功能參數:

U32_tbIndex:選擇射頻模塊號,在這里固定為1RFIDInitRFIDInit包適:原型:S16_tRFIDInit(U32_tbIndex);描述:初始化射頻模塊功能;參數:

U32_tbIndex:選擇射頻模塊號(JC5620固定為1)。SelectRFIDSlotSelectRFIDSlot包括:原型:S16_tSelectRFIDSlot(U32_tsLot);描述:打開射頻模塊功能;參數:

U32_tsLot: 選擇射頻模塊號0或者1。TypeA卡(MifareOne)相關函數MifareGetSNRMifareGetSNR包括:原型:S16_tMifareGetSNR(U32_tmode,U8_t*bLen,U8_t*pSNR);描述:尋卡并讀出UID+SNK+ATQA;參數:U32_tmode:=0尋IDLE狀態的卡;=1尋HALT狀態的卡;U8_t*bLen:信息長度U8_t*pSNR:包括(bLen-1)個字節UID,一個字節為SNK碼+2個字節的ATQA。mif_Authenmif_Authen包括:原型:S16_tmif_Authen(U8_tcKeyab,U8_tcSecotrNo,U8_t*pKey,U8_t*pSNR);描述:對S50/S70卡進行密鑰認證;參數:

U8_tcKeyab; =1 A密鑰; =0 B密鑰;U8_tcSecotrNo:扇區號;U8_t*pKey:密鑰;U8_t*pSNR:卡唯一號。mif_Readmif_Read包括:原型:S16_tmif_Read(U8_tcBlockNo,U8_t*pRdData);描述:對S50/S70卡進行讀卡操作;參數:U8_tcBlockNo:塊號;U8_t*pRdData:讀出的數據。mif_Writemif_Write包括:原型:S16_tmif_Write(U8_tcBlockNo,U8_t*pWrData);描述:對S50/S70卡進行寫操作;參數:U8_tcBlockNo:塊號;U8_t*pWrData:寫入的數據。mif_Changemif_Change包括:原型:S16_tmif_Change(U32_tcSubCommand,U32_tcBlockNo,U8_t*pValue);描述:對S50/S70卡進行密鑰加減操作;參數:U32_tcSubCommand:=0xC0 減值操作;=0xC1 加值操作;U32_tcBlockNo:塊號;U8_t*pValue:值塊。mif_transfermif_transfer包括:原型:S16_tmif_transfer(U32_tcBlockNo);描述:對S50/S70卡進行密鑰傳輸操作;參數:

U32_tcBlockNo:塊號。mif_Haltmif_Halt包括:原型:voidmif_Halt(void);描述:對卡進行暫停操作;參數:無;返回值:無。Mifare_incMifare_inc包括:原型:S16_tmifare_inc(U8_tblock,S32_tvalue);描述:對TypeA進行加值操作;參數:

U8_tblock:塊號(0-63);S32_tvalue:值域(小在前)。Mifare_decMmifare_dec包括:原型:S16_tmifare_dec(U8_tblock,longvalue);描述:對TypeA進行減值操作;參數:

U8_tblock:塊號(0-63);

longvalue:值域(小在前).Mifare_restorMifare_restor包括:原型:S16_tmifare_restor(U8_tdest_block,U8_tsrc_block);描述:對TypeA數據塊進行移動操作;參數:

U8_tdest_block:目標塊;

U8_tsrc_block:源塊;

源塊和目標塊都必應滿足Mifare值域數據格式標準。TypeA卡(非接觸CPU卡)操作函數MifareGetSNRMifareGetSNR包括:原型:S16_tMifareGetSNR(U32_tmode,U8_t*bLen,U8_t*pSNR);描述:尋卡并讀出UID+SNK+ATQA;參數:U32_tmode:=0尋IDLE狀態的卡;=1尋HALT狀態的卡;U8_t*bLen:信息長度U8_t*pSNR:包括(bLen-1)個字節UID,一個字節為SNK碼+2個字節的ATQA。TypeA_RATSTypeA_RATS包括:原型:S16_tTypeA_RATS(U32_tcid,U8_t*resp);描述:卡復位;參數:U32_tcid:CID碼;U8_t*resp:卡復位信息,第一個字節是復位信息的長度。RF_APDURF_APDU包括:原型:S16_tRF_APDU(U32_tcid,U8_t*send,U32_tlen,APDU_RET*pStuApduResp);描述:對TypeA的CPU卡進行操作;參數:U32_tcid:多卡操作cid碼;U8_t*send:發送數據指令;U32_tlen:發送數據長度;APDU_RET*pStuApduResp:接收數據結構指針;APDU_RET結構定義如下:

typedefstruct{

U32_t Len;//接收數據長度;

U8_t inf[200];//接收數據存放指針;

U16_tSW;//接收數據狀態字;

}APDU_RET。TypeA卡(非接觸DesFire卡)操作函數MifareGetSNRMifareGetSNR包括;原型:S16_tMifareGetSNR(U32_tmode,U8_t*bLen,U8_t*pSNR);描述:尋卡并讀出UID+SNK+ATQA;參數:U32_tmode:=0尋IDLE狀態的卡;=1尋HALT狀態的卡;U8_t*bLen:U8_t*pSNR:包括(bLen-1)個字節UID,一個字節為SNK碼+2個字節的ATQA。DesFire_APDUDesFire_APDU包括:原型:S16_tDesFire_APDU(DES_EXCHANGE*pStuApduResp);描述:對TypeA的DesFire卡進行操作;參數:DES_EXCHANGE*pStuApduResp:發送接收數據結構指針;DES_EXCHANGE結構定義如下:

typedefstruct{

U8_t cSeLen;//發送數據長度;

U8_t cSendBuff[100];//發送數據緩沖區指針;

U8_t cReLen;//接收數據長度;

U8_t cReBuff[100];//接收數據緩沖區指針;

U8_t cTimeOut;//接收數據超時單位毫秒;

}DES_EXCHANGE。TypeB卡操作函數PiccREQBPiccREQB包括:原型:unsignedcharPiccREQB(unsignedcharafi,unsignedcharparam,unsignedchar*atqb);描述:對TypeB卡進行尋卡操作;參數:unsignedcharafi:0所有的卡都響應,<>0僅對應AFI的卡響應;unsignedcharparam:

b7-b4:保留;b3:1—喚醒halt狀態的卡;0—喚醒IDLE狀態的卡;b2-b0:0–1timeSlot;1–2timeSlot;2–4timeSlot;3–8timeSlot;4–16timeSlot;unsignedchar*atqb:響應的數據。PiccAttribPiccAttrib包括:原型:unsignedcharPiccAttrib(unsignedchar*uid,unsignedcharcid,unsignedchar*inf,unsignedcharinf_len,unsignedchar*ata);描述:對TypeB卡發送相應的APDU指令數據;參數:unsignedchar*uid:卡的PUPI(4bytes);unsignedcharcid:0-14;unsignedchar*inf:發送的指令數據信息;unsignedcharinf_len:發送的數據長度;unsignedchar*ata:返回的應答數據。函數返回碼無特殊說明時,函數返回0為成功,其他為失敗。SIM卡驅動程序APIOpenSimMoudleOpenSimMoudle包括:原型:S16_tOpenSimMoudle(U32_tucPlusinID);描述:打開SIM卡模塊;參數:

U32_tucPlusinID:卡槽(1<=ucPiusinID<=4)。IccSimResetIccSimReset包括:原型:

S16_tIccSimReset(U32_tucPlusinID,U32_tbaud,

U32_tucVoltage,U8_t*rLen,U8_t*ATR);描述:讀取復位應答參數:

U32_tucPlusinID:卡槽(1<=ucPiusinID<=4);

U32_tbaud:波特率(9600,19200,38400,115200);

U32_tucVoltage:電壓(1:1.8v;2:3.3V;3:5V);

U8_t*rLen:復位應答數據長度;

U8_t*ATR:讀取復位應答數據指針。SimdSendAPDUT0SimdSendAPDUT0包括:原型:

S16_tSimdSendAPDUT0(U32_tSlot,ISO7816_ADPU_SEND*ApduSend,

ISO7816_ADPU_RESPONSE*ApduRecv);描述:向SIM卡發送指令和數據;參數:

U32_tSlot:輸入的卡槽(1,2,3,4)

ISO7816_ADPU_SEND*ApduSend:輸入命令參數;

ISO7816_ADPU_RESPONSE*ApduRecv:接收的參數結果;

ISO7816_ADPU_SEND定義格式如下:

typedefstruct{

U8_tCLA;

U8_tS;

U8_tP1;

U8_tP2;

U8_tLC;

U8_tDATA[240];

U8_tLEN;

}ISO7816_ADPU_SEND;

ISO7816_ADPU_RESPONSE定義格式如下:

typedefstruct{

U8_tLEN;

U8_tDATA[240];

U8_tSW1;

U8_tSW2;

}ISO7816_ADPU_RESPONSE。IccCpuDetectIccCpuDetect包括:原型:S16_tIccCpuDetect(void);描述:檢測CPU卡;參數:無。CloseSimModuleCloseSimModule包括:原型:S16_tCloseSimModule(U32_tucPlusinID);描述:關閉SIM卡模塊;參數:U32_

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論