使用Motorola EMDK 2.6解码GS1-128 UCC / EAN128

时间:2012-07-02 10:03:18

标签: barcode motorola motorola-emdk

我想用Motorola emdk 2.6版解码GS1-128(表格.ECC / EAN128)条码。我使用ES400作为测试设备。我只以原生文本格式获取数据。

例如(01)25416898545645(17)080600(30)0306180021返回012541689854564517080600300306180021

我没有获得FNC1(ascii102)或GS(ascii 29)字符。我尝试了没有结果的“RawData”。

我该如何处理?

2 个答案:

答案 0 :(得分:7)

设计中不存在“缺失的”FNC1。规范(GS1一般规范)规定,第一个位置的FNC1不得在发送的消息中表示。

此外,在固定长度的应用程序标识符之后,以及在条形码中的最后一个AI之后,不需要FNC1。您的AI 01和17是使用数据长度14和6定义的.AI 30是可变长度,但也是条形码中的最后一个元素,因此不需要FNC1。

所以解码GS1-128 :(读取AI,如果长度定义为固定,读取x个字符。如果它是可变长度,读取直到FNC1或条形码结束)重复直到条形码结束。

答案 1 :(得分:3)

Fisrt FNC1不会被解码为ascii102,而是“] C1”。看看AIM Symbology Identifiers

接下来FNC1被解释为<GS>,但很可能你看不到它们。尝试在文本编辑器中扫描它们,保存并加载到像Scite这样的文本编辑器中,您可以在其中看到控制字符。

您可以配置Motorola的DataWedge以显示AIM符号标识符,并将<GS>映射到常见字符,例如$=