原创 EAN13

2007-12-4 09:28 2149 13 13 分类: MCU/ 嵌入式



EAN13码的基本结构




EAN条码符号标准版
表示13位数字的EAN条码(EAN-13)称为标准版的EAN条码,其结构如图所示: en13.gif


左侧空白区 起始符 左侧数据符 中间分隔符 右侧数据符 校验符 终止符 右测空白区
9个模块 3个模块 42个模块 5个模块 35个模块 7个模块 3个模块 9个模块


注意:在EAN码中一个模块的宽度为0.33mm。


EAN码的编码规则


数字符 左侧数据符 右侧数据符
A B C
0 0001101 0100111 1110010
1 0011001 0110011 1100110
2 0010011 0011011 1101100
3 011101 0100001 1000010
4 0100011 0011101 1011100
5 0110001 0111001 1001110
6 0101111 000101 1010000
7 0111011 0010001 1000100
8 0110111 0001001 1001000
9 0001011 0010111 1110100


起始符:101


中间分隔符:01010


终止符:101。


A、B、C中的“0”和“1”分别表示具有一个模块宽度的“空”和“条”。


因为左侧数据编码方式有两种,要按照前置码选其中一种,如表:


前置字符 左侧数据符编码规则的选择
0 A A A A A A
1 A A B A B B
2 A A B B A B
3 A A B B B A
4 A B A A B B
5 A B B A A B
6(中国) A B B B A A
7 A B A B A B
8 A B A B B A
9 A B B A B A

EAN标准码的尺寸


宽:全部37.29mm 条码31.35mm


长:数据符条码22.85/23.18mm 起始符/分隔符/终止符24.50mm 全部26.26mm


放大倍数:0.8 ----- 2


2 . EAN条码符号缩短版


表示8位数字的EAN条码(EAN-8)称为缩短版EAN条码,其结构如表所示en13-2.gif左侧空白区 起始符 左侧数据符 中间分隔符 右侧数据符 校验符 终止符 右侧空白区
7个模块 3个模块 28个模块 5个模块 21个模块 7个模块 3个模块 7个模块


EAN缩短码的尺寸


宽:条码22.11mm 全部26.73


长:数据符条码18.23/18.56mm 起始符/分隔符/终止符19.88mm 全部21.64mm


放大倍数:0.8 --- 2.0


总结:在EAN标准版中,前置符不用条码符表示。在缩短版中前置符包括在左侧数据符中,用条码符表


示并且左侧数据符均用A组编码规则,右侧数据符均用B组编码规则。


3 . EAN码校验位的计算方法


标准版和缩短版的校验码计算方法相同。


从代码位置序号2开始,所有偶数位的数字代码求和为a。
将上步中的a乘以3为a。
从代码位置序号3开始,所有奇数位的数字代码求和为b。
将a和b相加为c。
取c的个位数d。
用10减去d即为校验位数值。
例:234235654652的校验码的计算如下表:


数据码 校验码

代码位置序号 13 12 11 10 9 8 7 6 5 4 3 2 1
数字码 2 3 4 2 3 5 6 5 4 6 5 2 ?
偶数位   3 + 2 + 5 + 5 + 6 + 2  
奇数位 2 + 4 + 3 + 5 + 4 + 5    


步骤1:3+2+5+5+6+2=23

步骤2:23*3=69

步骤3:2+4+3+5+4+5=23

步骤4:69+23=92

步骤5:10-2=8

步骤6:校验码为 8


 


 


EAN13条形码



EAN13条形码
EAN13码标准码共13位数,系由「国家代码」3位数,「厂商代码」4位数,「产品代码」5位数,以及「检查码」1位数组成。其排列如下:


EAN-13码的结构与编码方式如图 3.1所示,包括:
1.国家号码由国际商品条码总会授权,我国的「国家号码」为「691」。
厂商代码由国家商品条码策进会核发给申请厂商,占四个码,代表申请厂商的号码。
产品代码占五个码,系代表单项产品的号码,由厂商自由编定。
2.检查码占一个码,系为防止条码扫瞄器误读的自我检查。

EAN-13码的编码方式如下:
1.导入值:为EAN-13的最左边第一个数字,即国家代码的第一码,是不用条码符号表示的,
  功能:做为左资料码的编码设定之用。
2.左护线:为辅助码,不代表任何资料,长度较一般资料长,逻辑型态为101,其中1代表细黑,0代表细白。
3.左资料码:即左护线和中线间的条码部分,共有六个数字资料,其编码方式取决於导入值之大小,
规则如表3.1所示:
表 3.1 EAN-13码左资料码编码规则导入值 编码方式 导入值 编码方式
0 AAAAAA
1 AABABB
2 AABBAB
3 AABBBA
4 ABAABB
5 ABBAAB   
6 ABBBAA
7 ABABAB
8 ABABBA
9 ABBABA  

表 3.2 EAN-13码
左资料码 逻辑值  A类编码原则 B类编码原则
字码  值   逻辑值   逻辑值
0   0   0001101   0100111
1   1  0011001   0110011
2   2  0010011  0011011
3   3  0111101   0100001
4   4   0100011  0011101
5   5   0110001   0111001
6   6  0101111  0000101
7   7   0111011   0010001
8    8   0110111   0001001
9    9   0001011   0010111
注: 0为空白,1为线条

4.中线:为辅助码,作区分左资料码与右资料码之用。中线长度较一般资料为长,逻辑型态为01010。
5.右资料码:即位於右护线与中线之间的部份。包括五位数产品代码与一位检查码。其编码方式采为C类编码规则,如表 3.3。
表 3.3 EAN-13码
右资料码逻辑值 
 C 类编码原则
字码  值  逻辑值
0  0  1110010
1  1  1100110
2  2 1101100
3  3  1000010
4  4  1011100
5  5 1001110
6  6  1010000
7  7  1000100
8  8 1001000
9  9 1110100
注: 0为空白,1为线条

6.右护线:为辅助码,列印长度与左护线、中线相同,逻辑型态亦为101。
7.EAN-13码的检查码的算法与UPC-A码相同,例如假设一EAN-13码各码代号如下:
N1 N2 N3 N4 N5 N6 N7 N8 N9 N10 N11 N12 C
检查码之计算步骤如下:
C1 = N1+ N3+N5+N7+N9+N11C2 = (N2+N4+N6+N8+N10+N12)× 3CC = (C1+C2) 取个位数
C (检查码) = 10 - CC (若值为10,则取0)

文章评论0条评论)

登录后参与讨论
我要评论
0
13
关闭 站长推荐上一条 /2 下一条