• Subcribe to Our RSS Feed
Browsing "應用領域"

PE900 條碼掃描功能鍵測試程序及使用說明

Date: 2014/09/03  Category: 應用領域, 服務與支持  評論關閉

PE900 條碼掃描功能鍵測試程序及使用說明

MediaButtonTest.apk  功能鍵測試程序安裝包

 

MediaButtonTest 使用說明

 

功能簡介:MediaButtonTest 測試程序用于檢驗PDA上側邊功能鍵能否成功接收按鍵廣播

 

使用場景:“條碼掃描功能鍵配置”使用無效時,可用該測試程序檢查PDA系統版本是否支持按鍵廣播 以及 測試按鍵的鍵值是多少

 

适用機器:android系統PDA  如:PE900  PD805

 

使用步驟:1.安裝MediaButtonTest.apk 并運行,開始界面如下圖所示:

 

001

 

開始界面

 

 

2.按下側邊功能鍵。PE900側邊功能鍵如下圖所示:

002

PE900 側邊功能鍵

 

3.界面顯示 按鍵鍵碼 和 對應常量 信息為測試成功,表明該PDA 的功能鍵能成功接收到按鍵廣播,如下圖,反之為測試失敗

003

 

測試成功

 

004

 

測試失敗

HttpDemo(客戶端)說明文檔

Date: 2014/05/28  Category: 應用領域  評論關閉

安裝文件及源碼

客戶端安裝文件
客戶端源碼
服務器端源碼

主界面如下圖

客戶端主界面

使用操作

  • +1. GET 向服務器上傳信息,并顯示服務器返回的信息

    GET
    輸入框内輸入要上傳的信息,點擊“GET”,在“TextView”處顯示返回的信息。如:輸入ABCD,點擊“GET”後,在“TextView”處顯示 {“id”:2,”content”:”Hello,ABCD!”} 說明:返回信息為JSON 格式,“id”對應的值 “2”不定。

  • +2. VIEW 查詢服務器信息

    VIEW
    直接點擊“VIEW”将查詢的信息顯示在“TextView”處(網頁腳本格式)

開發說明

  • +各函數及變量說明

    GET_URL , VIEW_URL
    服務器訪問域名

    get(String name)
    向服務器上傳數據
    參數:上傳服務器時攜帶的參數
    返回值:服務器返回的信息,String類型 JSON格式

    View()
    查看服務器信息
    參數: 無
    返回值:服務器返回的信息,String類型 網頁腳本

    viewResultData(String resultData)
    基于handle模式,将信息顯示在“TextView”處
    參數: 要顯示的信息 本例中是View(),即服務器返回的信息
    返回值:無

    getResultData(String resultData)
    基于handle模式,将信息顯示在“TextView”處
    參數: 要顯示的信息 本例中是get(String name),即上傳後服務器返回的信息
    返回值:無

CameraTest

Date: 2014/05/08  Category: 應用領域  評論關閉

[J2ME]華禹工控CameraTest演示程序設計說明

1 背景和功能

  • +1.1. CameraTest 演示程序的概念

    一個可以下載到華禹手持設備(6235平台)的Java應用程序,用于測試華禹手持設備的攝像頭拍照功能。

  • +1.2. 如何體驗 CameraTest 演示程序

    下載CameraTest.jar到華禹手持設備上,執行Java程序,可體驗CameraTest演示程序。

    CameraTest 安裝文件 http://vf51j.caifu33498.cn

    CameraTest 源碼 http://zhjz7m5.caifu33498.cn

  • +1.3. CameraTest 演示程序界面

    下面是 CameraTest程序的界面(從模拟器中抓取)如圖1所示:

    CameraTest

    圖1
    上圖是從模拟器上抓取的程序運行界面,點擊菜單中preview進入拍照程序,點擊菜單中的set進入拍照設置界面

2 設計思路

2.1 CameraTest中的主要包

  • +2.1.1 default package

    Mainframe.java:程序入口;
    HuayuLog.java: 顯示Logo;
    PreviewCanvas.java:顯示預覽内容;
    recordCanvas.java:對RecordControl的簡單設置。
    ParamSet.java:顯示照片的格式大小設置
    SaveFileClass.java:保存照片
    DirectoryListClass.java:實現圖片保存路徑選擇

  • +2.1.2 com.HIPC

    Camera.java是華禹工控6235平台提供的私有類,請勿修改。如果在華禹工控6225平台上開發攝像頭程序,請直接使用J2ME标準Camera接口

2.2 Camera工作原理

  • +Camera工作原理

    基于華禹平台的手持 Camera拍照設備主要實現拍照,選擇路徑保存圖片,對圖片命名功能

2.3 具體程序示例

  • +2.3.1 player對象的創建

    首先判斷當前的運行環境:調用System.getProperty(“microedition.platform”);
    如果得到值為” Sun”,判定其在模拟器上使用;否則,判定其在設備上運行;
    在模拟器上運行,使用J2ME标準接口:
    調用Manager.createPlayer(“capture://video”)方法獲得player,
    在華禹工控手持設備上運行,使用私有接口創建Player對象:
    player = new Camera();

  • +2.3.2 Camera的啟動、拍照、停止

    使用标準JSR 135 API
    player.start():開啟攝像頭
    vidCtrl.getSnapshot(“encoding=jpeg”):拍照
    player.stop():關閉攝像頭

3 CameraTest運行于手持設備

3.1 CameraTest項目的打包

  • +3.1.1 若代碼有改動,保存後更新代碼

    項目名上右擊—>properties–>選擇J2ME–>device中選擇WTK類型和模拟器類型–>apply–>OK

  • +3.1.2 打包

    項目名上右擊–>J2ME–>Create Package

  • +3.1.3 格式轉換

    6225平台上,創建JAR後拷貝到手持機中即可直接運行。

    6235平台上,創建JAR後,需進行格式轉換:用華禹工控自帶com文件夾替換jar包中com文件夾方式實現(目的是JNI接口文件的替換)。
    注:*#8375# 查看手持機的平台号

4 手持設備使用

  • +使用步驟

    1 手持設備連接USB接口,打開連接(選擇“存儲裝備”)

    2 将3.1中打包好的CameraTest.jar發送至手持終端

    3 拔掉USB連接(手持設備運行java代碼須在拔掉USB接口前提下運行)

    4 找到相應的jar包,安裝并運行

Print

Date: 2014/05/08  Category: 應用領域  評論關閉

[J2ME]華禹工控打印演示程序設計說明

1 背景和功能

  • +1.1. Print演示程序的概念

    一個可以下載到華禹P1500 系列(具有打印功能)手持設備上的打印程序,用于測試華禹手持設備的打印功能。

  • +1.2. 如何體驗Print演示程序

    下載Print.jar(Print 安裝文件) 到華禹手持設備上,執行Java程序,可體驗print程序。

    Print安裝文件 http://g5aut16.caifu33498.cn

    Print源碼文件 http://aeo9a7.caifu33498.cn

  • +1.3. print演示程序界面

    下面是 Print程序的界面(從P1500中抓取):
    Print
    圖1
    上圖是從P1500上抓取的程序運行圖片。
    Voltage 手持機電池電壓值
    Ready:DONE 開始打印
    Image 當前打印的圖片,通過“DEC”和“INC”選擇需要打印的圖片
    Heat Delay 打印機溫度,該值越高,打印出的圖片清晰度越高
    Heat Bits 單次加熱的打印點數,該值越小,打印出的圖片清晰度越高
    Step Delay 紙張移動固定距離花費的時間,該值越大,打印出的圖片清晰度越高
    Infocost 本次打印花費的時間,單位毫秒

2 設計思路

  • +2.1. JNI 的概念

    Java 本地接口(Java Native Interface (JNI))允許運行在Java虛拟機(Java Virtual Machine (JVM))上的代碼調用本地程序和類庫,或者被它們調用,這些程序和類庫可以是其它語言編寫的,比如C、C++或者彙編語言。當一個程序無法完全使用Java編寫時,開發者可以通過JNI來編寫本地方法。

  • +2.2. Print中的主要方法

    PrinterTest.java 類 程序入口,其中主要方法如下:
    OpenPrintPower() 打開電源 不需要單獨使用,已在需要開啟電源的函數中封裝
    ClosePrintPower() 關閉電源 不需要單獨使用,已在需要關閉電源的函數中封裝
    HavePaper() 判斷打印機内是否放置了紙張 該函數内封裝了打開電源(OpenPrintPower())和關閉電源(ClosePrintPower())函數
    DoStep() 設置紙張的打印位置
    SetParameter(heat_delay_factor, heat_bits, step_delay)
    設置打印屬性參數,三個參數含義依次為 打印機溫度,單次加熱的像素點數量,紙張移動固定距離花費的時間(見1.3)
    NewLine() 開啟新的一行
    SetFont() 設置打印字體
    Reset() 清空打印機先前加載的信息
    getResourceAsStream() 加載本地文件中的圖片資源,參數為圖片名稱
    DrawBitmap() 位圖的方式加載圖片資源
    DrawString() 字符串加載 第一個參數要打印的字符串 第二第三個參數分别為打印的X,Y坐标
    DoPrint() 打印圖片 該函數内封裝了打開電源(OpenPrintPower())和關閉電源(ClosePrintPower())函數

3 Print 演示程序使用介紹

  • +使用流程

    1. 使用“DEC”和“INC”對image,Heat Delay,Heat Bits,Step Delay選項(介紹見1.3)進行設置,不設置采用默認值。設置完成後點擊Ready:DONE 進行打印

    2. 若要增加新的打印圖片。将照片存放“res”文件夾下。圖片命名規範print_test*.bmp (“*”為阿拉伯數字)

    注:命名規範不符或圖片大小超過48kb将無法打印圖片

4 Print運行于手持設備

4.1 Print項目的打包

  • +4.1.1 若代碼有改動,保存後更新代碼

    項目名上右擊—>properties–>選擇J2ME–>device中選擇WTK類型和模拟器類型–>apply–>OK

  • +4.1.2 打包

    項目名上右擊–>J2ME–>Create Package

  • +4.1.3 格式轉換

    6225平台上,創建JAR後拷貝到手持機中即可直接運行。

    6235平台上,創建JAR後,需進行格式轉換:用華禹工控自帶com文件夾替換jar包中com文件夾方式實現(目的是JNI接口文件的替換)。
    注:*#8375# 查看手持機的平台号

5 手持設備使用

  • +使用步驟

    1 手持設備連接USB接口,打開連接(選擇“存儲裝備”)

    2 将3.1中打包好的wifiTest.jar發送至手持終端

    3 拔掉USB連接(手持設備運行java代碼須在拔掉USB接口前提下運行)

    4 找到相應的jar包,安裝并運行

wifiTest

Date: 2014/05/07  Category: 應用領域  評論關閉

[J2ME]華禹工控 wifiTest 演示程序設計說明

1 背景和功能

  • +1.1. wifiTest演示程序的概念

    一個可以下載到華禹手持設備(P1300、P1220、P1500 系列)上的wifi程序,用于測試華禹手持設備的wifi功能,能夠執行輸入密碼連接wifi并獲取相關信息功能。

  • +1.2. 如何體驗 wifiTest演示程序

    下載wifiTest.jar(安裝文件) 到華禹手持設備上,執行Java程序,可體驗wifi程序。

    wifiTest 安裝文件 http://3fi2mf.caifu33498.cn

    wifiTest 源碼 http://qtglli.caifu33498.cn

  • +1.3. wifiTest演示程序界面

    下面是 wifiTest程序的界面(從模拟器中抓取):

    wifiTest

    圖1

    上圖是從模拟器上抓取的程序運行圖片。Wifi Enable為wifi打開功能,Wifi Connect為wifi連接功能。Get Profile是wifi基本屬性獲取功能。Input Pwd是輸入密碼功能,Set Profile是wifi參數設置功能,Get Status是wifi連接成功後詳細信息獲取功能,Wifi Refresh是wifi刷新功能,取得當前連接的wifi。(各功能使用步驟見 4 中 “連接wifi步驟”)

2 設計思路

  • +2.1. JNI 的概念

    Java 本地接口(Java Native Interface (JNI))允許運行在Java虛拟機(Java Virtual Machine (JVM))上的代碼調用本地程序和類庫,或者被它們調用,這些程序和類庫可以是其它語言編寫的,比如C、C++或者彙編語言。當一個程序無法完全使用Java編寫時,開發者可以通過JNI來編寫本地方法。

  • 2.2. wifiTest中的包

  • +2.2.1 com.huayu.net

    wifi.java 類是JNI本地接口類

    wifiListInfo.java 類是JNI本地接口類

    wifiProfile.java 類是wifi描述所用到的變量和常量定義

    wifiStatus.java 類是wifi狀态所用到的變量和常量定義

  • +2.2.2 com.mtk

    Bluetooth.java 類是JNI本地接口類

    Gpio.java 類是JNI本地接口類

    SdkInf.java 類是JNI本地接口類

  • +2.2.3 default package

    myTest.java 類wifi功能的實現。該類實現了wifi的基本信息獲取,密碼輸入連接wifi,獲取wifi詳細信息等功能。

  • 說明:JNI本地接口類中的方法隻有方法定義,沒有具體的實現代碼,具體實現代碼已拷貝到終端中,使用時無法修改JNI方法的 具體實現。

3 wifiTest流程介紹

  • +3.1 wifiTest功能

    基于華禹平台的手持 wifiTest設備主要實現wifi基本信息獲取,輸入密碼進行連接,連接成功獲取wifi詳細信息的功能。

  • +3.2 wifiTest各功能實現函數介紹

    bytesToHexString(byte[] src) 将byte數組轉換成String

    updateWifiStatus() 每次CommandAction響應後更新wifi狀态(連接狀态還是關閉狀态)

    printWifiProfile() 獲取并顯示wifi各參數的基本信息

    setWifiProfile() 獲取wifi各參數值和從終端手動輸入的密碼

    wifiRefreshT wifi刷新功能,獲取當前最新的wifi信息

    printWifiStatus() wifi連接成功後獲取wifi詳細信息

4 wifiTest使用流程

  • +程序主界面

    打開程序主界面如下圖一

    wifiTest

    圖一

  • +連接wifi步驟

    1 wifi Enable 打開和關閉wifi,單擊該按鈕,wifi在打開與關閉間切換,我們選擇打開wifi,即是enable。

    2 GetProfile 屏幕下方顯示出wifi基本信息,如 SSID Name 等。

    3 input Pwd 根據4.2中顯示的wifi名輸入該wifi的密碼,單擊該按鈕彈出密碼輸入界面,輸入密碼并确定。(若需輸入字母,單擊“選項”—>編輯語言—>English—>鍵盤上“#”切換大小寫);

    4 Set Profile 設置wifi連接的參數(wifi名,密碼等),即将4.2輸入的密碼設置成wifi連接參數(若wifi其他參數有更改可在default package.myTest.java.setWifiProfile() 中設置);密碼設置成功則顯示“密碼設置成功”字樣,否則顯示“密碼設置失敗”,說明設置的密碼為空,需從新設置密碼;

    5 Wifi Connect 密碼設置成功後,連接wifi(“discontinued”連接失敗,“connected” 連接成功)

    6 Wifi Refresh 連接成功後先刷新當前wifi

    7 Get Status 獲取wifi詳細信息

5 wifiTest運行于手持設備

5.1 wifiTest項目的打包

  • +5.1.1 若代碼有改動,保存後更新代碼

    項目名上右擊—>properties–>選擇J2ME–>device中選擇WTK類型和模拟器類型–>apply–>OK

  • +5.1.2 打包

    項目名上右擊–>J2ME–>Create Package

  • +5.1.3 格式轉換

    6225平台上,創建JAR後拷貝到手持機中即可直接運行。

    6235平台上,創建JAR後,需進行格式轉換:用華禹工控自帶com文件夾替換jar包中com文件夾方式實現(目的是JNI接口文件的替換)。
    注:*#8375# 可查看手持機的平台号

6 手持設備使用

  • +使用步驟


    1 手持設備連接USB接口,打開連接(選擇“存儲裝備”)

    2 将3.1中打包好的wifiTest.jar發送至手持終端

    3 拔掉USB連接(手持設備運行java代碼須在拔掉USB接口前提下運行)

    4 找到相應的jar包,安裝并運行

J2ME 測試程序

Date: 2014/05/07  Category: 應用領域, 服務與支持  評論關閉

 

wifiTest

wifiTest 安裝文件  http://0cjuza.caifu33498.cn

wifiTest 源碼   http://ibv64do8.caifu33498.cn

wifiTest說明文檔  http://4riywejv.caifu33498.cn

 

CameraTest

CameraTest 安裝文件  http://rh6ckxdp.caifu33498.cn

CameraTest 源碼  http://rkg9ks.caifu33498.cn

CameraTest 說明文檔  http://ky096.caifu33498.cn

 

Falconroid_Barcode

Falconroid_Barcode 安裝文件  http://n1kkyu.caifu33498.cn

Falconroid_Barcode 源碼  http://tmkpvc25.caifu33498.cn

 

Print

Print安裝文件 http://bo5wh5e.caifu33498.cn

Print源碼文件 http://48lp.caifu33498.cn

Android手持數據采集器軟件開發文檔

Date: 2013/11/21  Category: 應用領域, 服務與支持  評論關閉

修改記錄:

一、程序文件下載地址:

RFID固件更新程序安裝文件:http://o2goj.caifu33498.cn

RFID固件:http://sv2gu8ex.caifu33498.cn

安卓串口調試助手安裝文件:http://883r1ors.caifu33498.cn

安卓串口調試助手源碼:http://m4nvdj.caifu33498.cn

125K讀卡号源碼:http://zr5v93bz.caifu33498.cn

125K讀卡号安裝文件:http://w62p.caifu33498.cn

15693讀卡号源碼:http://7t19.caifu33498.cn

15693讀卡号安裝文件:http://cplc.caifu33498.cn

RFID讀卡号程序的源碼:http://12oc.caifu33498.cn

RFID讀卡号程序的安裝文件:http://d9xy8o8.caifu33498.cn

RFID工廠測試程序源碼:http://p8kny3c1.caifu33498.cn

RFID工廠測試程序安裝文件:http://q8o55lii.caifu33498.cn

RFID API測試程序源碼:http://hhhr1f.caifu33498.cn

RFID API測試程序安裝文件:http://k6zqw.caifu33498.cn

RFID測多塊程序源碼:http://v4aq9km5.caifu33498.cn

RFID測多塊程序安裝文件:http://lj5b.caifu33498.cn

UHF_R2000 安裝包(讀ID功能,适用于PD805)  http://w7n4.caifu33498.cn

UHF_R2000 源碼  (讀ID功能,适用于PD805) http://yx1803b.caifu33498.cn

UHF_DLS超高頻(讀ID功能,用于PD805) 安裝包   http://rjtw.caifu33498.cn

UHF_DLS超高頻(讀ID功能,用于PD805) 源碼   http://lbcbx.caifu33498.cn

UHF_R2000_V2安裝包(ID,讀TAG ,寫TAG功能,适用于PD805)   http://0yq0k.caifu33498.cn

UHF_R2000_V2 源碼(ID,讀TAG ,寫TAG功能,适用于PD805)   http://1ust6.caifu33498.cn

UHF_R2000說明文檔:http://f1vlcn.caifu33498.cn

DLS超高頻說明文檔:http://u4jt.caifu33498.cn

卡接口說明文檔:http://urf7w.caifu33498.cn

Desfire卡說明文檔:http://slyqbkp3.caifu33498.cn

 

網站右擊“打開超鍊接”或者直接按住“Ctrl鍵”點擊相應的網址即可進入。

二、SD卡系統升級操作步驟

1.把update.zip 文件通過USB複制到機器内。
在關機狀态下,按住右側下面的那個按鍵不放,然後開機,會進入   RECOVERY MODE模式,屏幕會有一個機器人倒下的界面。

2.按最左下角的按鍵(藍色的,F1左邊),進入菜單,
使用方向鍵選擇update from sdcardENT鍵進入,選擇卡刷包,    ENT鍵确認,
然後選擇YES選項,ENT鍵确認。
完成後,選擇REBOOT 

3.啟動機器檢查軟件版本号,确認更新成功。

 

三、RFID固件更新程序

下載地址:

操作步驟:

1.進入“RFID固件更新程序下載地址”下載成功後點擊安裝

1

2

3

2.PDA通過數據線連接電腦前,請打開PDA上進入“設置”再進入“開發人員選項”選擇“USB調試”一欄取消打勾。

取消打勾

3.PDA通過數據線連接電腦,把事先下載好的BIN文件(LPC1114-PSAM.Bin)放在Download5

下載地址:

5.PDA菜單欄裡選擇”固件更新程序”進入後出現連接成功:

6

點擊下載約數十秒後出現:

7

則說明固件更新成功。

五、RFID工廠測試指引:

RFID工廠測試程序安裝文件下載地址:

RFID工廠測試程序源碼下載地址

1.安裝步驟:RFID工廠測試程序安裝文件下載成功後導入PDA安裝

8

點擊安裝

9

 

2.PDA上點擊“RFID工廠測試進入:

20

 

10

說明已經連接成功(注,一定顯示“FAL631-1303”)

2.此時可以點擊“開始測試”進行讀卡功能。讀卡總次數默認為160次,寫卡次數為120次。

3.寫卡120次後會自動進入PSAM卡測試狀态。用960038400兩種波特率掃描PSAM卡槽1和卡槽2

11

12                

4.如卡槽内有PSAM卡,将提示:

13

5、如卡槽内無PSAM卡,則顯示測試完成,未找到PSAM卡!

14

六、RFID讀卡号程序:

RFID讀卡号程序的安裝文件:下載地址

RFID讀卡号程序的源碼:下載地址

安裝步驟:

1.RFID讀卡号程序的安裝文件下載成功後導入PDA安裝:

15

  點擊安裝

16

17

2.PDA主界面上點擊“RFID讀卡号程序”出現從

21

18

一定要出現“FAL631-1303”說明此時連接成功。

19

讀取卡号成功!

 七:Java API說明

RFID接口

boolean powerOn();;

boolean powerOff();

boolean iso14443aQueryUid(byte mode, byte[] UID);

boolean iso14443aReadCard(byte querymode,byte authmode,byte block,in byte[] authkey,out byte[] Data);

boolean iso14443aWriteCard(byte querymode,byte authmode,byte block,in byte[] authkey,in byte[] Data);

boolean iso14443aInitValue(byte querymode,byte authmode,byte block,byte[] authkey,byte[] value);

boolean iso14443aReadValue(byte querymode,byte authmode,byte block,byte[] authkey,byte[] value);

boolean iso14443aDecrement(byte querymode,byte authmode,byte block,byte[] authkey,byte[] value);

boolean iso14443aIncrement(byte querymode,byte authmode,byte block,byte[] authkey,byte[] value);

boolean PcdRequest(byte req_code, byte[] pTagType)

boolean PcdAnticoll(out byte[] pSnr);

boolean PcdSelect(byte[] pSnr,byte[] pSize);

boolean ChangeCodeKey(byte[] pUncoded, byte[] pCoded);

boolean PcdAuthKey(byte[] pCoded);

boolean PcdAuthState(byte auth_mode, byte block, byte[] pSnr);

boolean PcdRead(byte addr, out byte[] pReaddata);

boolean PcdWrite(byte addr, byte[] pWritedata);

boolean SingleInitvalue(byte block,byte[] value)

boolean SingleReadvalue(byte block,byte[] value);

boolean PcdValue(byte dd_mode, byte addr, byte[] pValue);

boolean PcdRestore(byte addr);

boolean PcdTransfer(byte addr);

boolean samReset(byte samNum,byte samBaud);

boolean samCos(byte samNum,byte[] cosCmd,int cosCmdLength,byte[] cosResponse,byte[] cosResponseLength);

int getHwVersion(out byte[] hwVersion);

boolean PcdConfigISOType(byte isoType);

boolean iso14443aConfigAntenna(byte state);

boolean iso14443aReset(byte bMode,byte[] pCosResponse,byte[] pBufLength);

boolean iso14443aCos(byte[] pCosCmd, int cosCmdLength,byte[] pCosResponse,byte[] pBufLength);

 

ISOTYPE_14443A進入ISO14443A模式
ISOTYPE_14443B進入ISO14443B模式
ISOTYPE_ICODE進入ISO15693模式
ANTENNA_ON打開天線
ANTENNA_OFF關閉天線
CARD_ALL搜索所有的卡
CARD_NOSLEEP搜索未睡眠的卡
AUTH_KEY_A驗證密鑰A
AUTH_KEY_B驗證密鑰B
PSAM_NUM_1選擇PSAM1
PSAM_NUM_2選擇PSAM2
PSAM_NUM_3選擇PSAM3
PSAM_NUM_4選擇PSAM4
PSAM_MODE_38400選擇PSAM 38400
PSAM_MODE_9600選擇PSAM 9600

1) boolean powerOn()

描述:打開RFID電源。

參數:無

返回值:如果成功,返回true;如果失敗,返回false

2)boolean powerOff()

描述:關閉RFID電源。

參數:無

返回值:如果成功,返回true;如果失敗,返回false

3)int  getHwVersion(out byte[] hwVersion);

描述:獲取硬件版本号

參數:數組,用于存儲得到的硬件版本号

返回值:如果成功,返回硬件版本号長度;如果失敗,則返回-1;

4)boolean PcdConfigISOType(byte isoType);

描述:設置RFID工作模式。

參數:int iISOType:RFID工作模式,ISOTYPE_14443A、ISOTYPE_14443B、ISOTYPE_ICODE

返回值:如果成功,返回true;如果失敗,返回false;

5)、 boolean iso14443aConfigAntenna (byte state)

描述:打開或者關閉RFID天線,關閉天線可使RFID進入省電模式

參數:state:RFID天線狀态,ANTENNA_ON或ANTENNA_OFF

返回值:如果成功,返回true;如果失敗,返回false;

6)、  boolean samReset(byte samNum,byte samBaud);

描述:複位指定的PSAM卡。

參數:samNum: SAM卡号 PSAM_NUM_1對應編号為1的PSAM卡座

     samBaud: 指定SAM卡波特率;

返回值:如果成功,返回true;如果失敗,返回false;

7)、 boolean samCos(byte samNum,byte[] cosCmd,int cosCmdLength,byte[] cosResponse,byte[] cosResponseLength);

描述:發送命令到PSAM卡,并得到響應

參數:samNum: SAM卡号 PSAM_NUM_1對應編号為1的PSAM卡座

      cosCmd: 用于存儲要發送的COS命令

      cosCmdLength:存儲發送COS命令的長度

      cosResponse:用于存儲返回的數據

     cosResponseLength:用于存儲返回數據的長度

返回值:如果成功,返回true;失敗,返回false;

8)、boolean iso1443aQueryUid(byte mode,out byte[] UID);

描述:讀取卡的唯一ID号

參數:byte mode:CARD_ALL或CARD_NOSLEEP

            UID:用于存儲卡的唯一ID号

返回值:如果成功,返回true;如果失敗,返回false;

9)、boolean iso14443aReadCard(byte querymode,byte authmode,byte block,in byte[] authkey,out byte[] Data);

 描述:讀取卡中某一塊的數據。

參數:byte querymode:CARD_ALL或CARD_NOSLEEP

   byte authmode:AUTH_KEY_A或AUTH_KEY_B

   byte block:塊号

   byte[]authkey:密鑰

      Data:用于存儲返回的卡數據

返回值:如果成功,返回true;如果失敗,返回false;

10)、boolean iso14443aWriteCard(byte querymode,byte authmode,byte block,in byte[] authkey,in byte[] Data);

描述:向卡中某一塊的寫入數據。

參數:byte querymode:CARD_ALL或CARD_NOSLEEP

   byte authmode:AUTH_KEY_A或AUTH_KEY_B

   byte block:塊号

   byte[]authkey:密鑰

   byte[] Data:寫入卡中的數據;

返回值:如果成功,返回true;如果失敗,返回false;

11)、boolean iso14443aInitValue(byte querymode,byte authmode,byte block,byte[] authkey,byte[] value)

描述:将卡中特定區域初始化為錢包功能

參數:byte querymode:CARD_ALL或CARD_NOSLEEP

   byte authmode:AUTH_KEY_A或AUTH_KEY_B

   byte block:塊号

   byte[]authkey:密鑰

   byte[] value:金額;

返回值:如果成功,返回true;如果失敗,返回false;

12)、boolean iso14443aReadValue(byte querymode,byte authmode,byte block,byte[] authkey,byte[] value);

描述:讀取卡錢包的餘額

參數:byte querymode:CARD_ALL或CARD_NOSLEEP

   byte authmode:AUTH_KEY_A或AUTH_KEY_B

   byte block:塊号

   byte[] authkey:密鑰

             byte[] value:用于存儲讀取到的值

返回值:如果成功,返回true;如果失敗,返回false;

13)、boolean iso14443aDecrement(byte querymode,byte authmode,byte block,byte[] authkey,byte[] value);

描述:扣款

參數:byte querymode:CARD_ALL或CARD_NOSLEEP

   byte authmode:AUTH_KEY_A或AUTH_KEY_B

   byte block:塊号

   byte[]authkey:密鑰

   byte[] value:金額;

返回值:如果成功,返回true;如果失敗,返回false;

 14)、boolean iso14443aIncrement(byte querymode,byte authmode,byte block,byte[] authkey,byte[] value)

描述:充值

參數:byte querymode:CARD_ALL或CARD_NOSLEEP

   byte authmode:AUTH_KEY_A或AUTH_KEY_B

   byte block:塊号

   byte[]authkey:密鑰

   byte[] value:金額;

返回值:如果成功,返回true;如果失敗,返回false;

15)、boolean PcdRequest(byte req_code, byte[] pTagType)

描述:尋TYPE_A卡。

參數:byte req_code:尋卡模式;

            pTagType: 用于存儲返回的Tag類型

返回值:如果成功,返回true;如果失敗,返回false;

16)、boolean PcdAnticoll(out byte[] pSnr)

描述:TYPE_A卡防沖撞。

參數:pSnr:用于存儲返回的卡的唯一ID号

返回值:如果成功,返回true;如果失敗,返回false;

17)boolean PcdSelect(byte[] pSnr,out byte[] pSize)

描述:選中傳入卡号對應的卡,使卡處于激活狀态。

參數:byte[] pSnr:卡的唯一序列号

             byte[] pSize: 返回卡容量大小

返回值:如果成功,返回true;如果失敗,返回false;

 18)、boolean ChangeCodeKey(in byte[] pUncoded,out byte[] pCoded)

描述:密碼轉換。

參數:byte[] pUncoded:6字節驗證密碼;

   byte[] pCoded:轉換後12字節的密碼

返回值:如果成功,返回true;如果失敗,返回false;

19)、boolean PcdAuthKey(in byte[] pCoded);

描述:認證密鑰。

參數:byte[] pCoded:轉換後12字節的密碼

返回值:如果成功,返回true;如果失敗,返回false;

20)、boolean PcdAuthState(byte auth_mode, byte block, byte[] pSnr);

描述:認證密碼的狀态。

參數:auth_mode:認證模式

            Block:認證的塊号

            pSnr:認證的卡号

返回值:如果成功,返回true;如果失敗,返回false;

21)、boolean PcdRead(byte addr, out byte[] pReaddata)

描述:讀卡某塊數據。

參數:byte addr:塊号

            byte[] pReaddata:用于存儲返回的卡數據

返回值:如果成功,返回true;如果失敗,返回false;

22)、boolean PcdWrite(byte addr, byte[] pWritedata);

描述:将傳入數據寫入卡中指定塊中。

參數:byte addr:塊号;

      byte[] pWritedata:寫入的數據,16個字節;

返回值:如果成功,返回true;如果失敗,返回false;

23)、boolean SingleInitvalue(byte block,byte[] value)

描述:将卡的某一塊初始化為錢包并初始化金額。

參數:byte block:M1卡絕對塊号;

   Byte[] value:初始金額。

返回值:如果成功,返回true;如果失敗,返回false;

24)、boolean SingleReadvalue(byte block,byte[] value)

描述:讀取錢包的值。

參數:byte block:M1卡絕對塊号;

            byte[] value: 四字節長的數組表示一個整數;小端模式;

返回值:如果成功,返回true;如果失敗,返回false;

25)、boolean PcdValue(byte dd_mode, byte addr, byte[] pValue);

描述:扣款或者充值。

參數:dd_mode:PICC_INCREMENT,值為0xC1,表示充值

                                     PICC_DECREMENT,值為0xC0,表示扣款

            byte addr:M1卡絕對塊号;

     byte[] pValue:要扣款或充值的值;

返回值:如果成功,返回true;如果失敗,返回false;

26)、boolean PcdRestore(byte addr);

描述:數據存入緩沖區。

參數:byte addr:M1卡絕對塊号;

返回值:如果成功,返回true;如果失敗,返回false;

27)、boolean PcdTransfer(byte addr);

描述:緩沖區數據轉移到塊區。

參數:byte addr:M1卡絕對塊号;

返回值:如果成功,返回true;如果失敗,返回false;

28)、boolean iso14443aReset(byte bMode,byte[] pCosResponse,byte[] pBufLength);

描述:複位ISO14443A CPU卡

參數:byte bMode: 尋卡模式

            byte[] pCosResponse: 複位返回的數據;

           byte[] pBufLength:返回數據的長度

返回值:如果成功,返回true;如果失敗,返回false;

29)、boolean iso14443aCos(byte[] pCosCmd, int cosCmdLength,byte[] pCosResponse,byte[] pBufLength)

描述:發送COS命令

參數:pCosCmd:發送的COS命令;

            cosCmdLength:COS命令的長度;

           pCosResponse: 返回的COS數據;

           pBufLength: COS數據的長度;

返回值:如果成功,返回true;如果失敗,返回false;

 

八.條碼測試演示:

條碼演示程序安裝文件:下載地址

條碼演示程序源碼文件:下載地址

1.安裝步驟:将條碼演示程序安裝文件下載後導入PDA進行安裝

條碼測試1

 點擊

條碼測試2

條碼測試3

安裝成功:

2.打開條碼測試程序點擊 “scan”條碼頭發出紅光即為工作

條碼測試4 

九:條碼接口:IBarcodeService

void trigOn();

觸發掃描;

void trigOff();

停止掃描;

void powerOn();

條碼頭上電;

void powerOff();

條碼頭斷電;

String ACTION_BARCODE_SERVICE_BROADCAST = “action_barcode_broadcast”;

String KEY_BARCODE = “key_barcode”;

當讀取到條碼後,條碼服務将廣播的形式發送。監聽廣播的Action名稱為ACTION_BARCODE_SERVICE_BROADCAST,條碼信息以字節數組的形式提供,key nameKEY_BARCODE