产品名称 | 2DStudyBarcode |
文档版本 | 二维条码测试程序 |
一个可以下载到华禹手持设备(P1300、P1220、P1500系列)的Java应用程序,用于测试华禹手持设备的二维条码扫描功能。
下载 2DStudyBarcode.jad 和 2DStudyBarcode.jar 到华禹手持设备上,执行Java程序,可体验二维条码功能。
下面是2DStudyBarcode程序的界面(从模拟器中抓取):
图1: | 图2: |
打开之后会进入到图1-1,点击进入测试后进入图1-2。
第一个选项为进入扫描界面,第二个是设置,第三个是使用说明。
Java 本地接口(Java Native Interface (JNI))允许运行在Java 虚拟机(JVM)上的代码调用本地程序和类库,或者被它们调用,这些程序和类库可以是其它语言编写的,比如C、C++或者汇编语言。当一个程序无法完全使用 Java 编写时,开发者可以通过 JNI 来编写本地方法。
com.mtk包中的Gpio.java中操作GPIO的方法为华禹提供的JNI方法。
com.huayu.gpio包中的GpioPort.java定义了华禹手持设备的GPIO控制引脚。
对 Gpio 操作更详细的介绍见华禹工控手持设备GPIO测试程序设计说明。
1. java 程序:演示程序是2DStudyBarcode。
2. java 程序通过串口与条码头通信,并通过gpio 控制条码头的电源及条码头数据传输方式。
扫描条码时,java 程序将TRIG 引脚电平拉低,条码头开始扫描,扫描到条码信息后将 信息返回串口,串口接收信息解析后显示。
原理如下:
打开串口前判定是否在手持机上使用,调用
System.getProperty("microedition.platform");
如果得到值为" Sun",判定其在模拟器上使用
s_commUrl = s_commUrlEmu;
当值不为" Sun",判定其在真机上使用
s_commUrl = s_commUrlDevice;
s_commUrlEmu与s_commUrlDevice赋值与说明:
s_commUrlDevice = "tckcomm:1;baudrate=9600;blocking=off;autocts=off;autorts=off";
s_commUrlEmu= "comm:COM3;baudrate=9600;blocking=off;autocts=off;autorts=off";
COM3 为实际使用的串口。
图3: |
图1-3 打开串口线程:
cc = (CommConnection) Connector.open(s_commUrl);接收线程:
While(m_start) {在华禹平台上,可能存在一个串口两种用途的情况。
例如,条码和 RFID 共用一个串口,模拟开关用于控制串口的实际用途。
P1220 平台:
P1220:HuayuNative.writeIO(ContentManager.P1220_SWITCH_PIN, ContentManager.P1220_BARCODE_SWITCH );
华禹工控资源:
1. SE955 FINAL IG.pdf
2. 华禹工控手持设备 GPIO 测试程序设计说明
3. 二维条码测试程序源码下载:2DStudyBarcode
编写者 | 日期 | 关键词 |
华禹工控 | 2010-07-28 | 2DBarcode、J2ME、华禹手机模块、JNI |