CN110688864B - 一种磁条卡读卡器差分解码方法 - Google Patents

一种磁条卡读卡器差分解码方法 Download PDF

Info

Publication number
CN110688864B
CN110688864B CN201910870215.1A CN201910870215A CN110688864B CN 110688864 B CN110688864 B CN 110688864B CN 201910870215 A CN201910870215 A CN 201910870215A CN 110688864 B CN110688864 B CN 110688864B
Authority
CN
China
Prior art keywords
time
card reader
sequence
value
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910870215.1A
Other languages
English (en)
Other versions
CN110688864A (zh
Inventor
范振伟
李立
刘占利
杨磊
马洪祥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhaoxun Hengda Technology Co ltd
Original Assignee
Zhaoxun Hengda Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhaoxun Hengda Technology Co ltd filed Critical Zhaoxun Hengda Technology Co ltd
Priority to CN201910870215.1A priority Critical patent/CN110688864B/zh
Publication of CN110688864A publication Critical patent/CN110688864A/zh
Application granted granted Critical
Publication of CN110688864B publication Critical patent/CN110688864B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/08Methods or arrangements for sensing record carriers, e.g. for reading patterns by means detecting the change of an electrostatic or magnetic field, e.g. by detecting change of capacitance between electrodes
    • G06K7/082Methods or arrangements for sensing record carriers, e.g. for reading patterns by means detecting the change of an electrostatic or magnetic field, e.g. by detecting change of capacitance between electrodes using inductive or magnetic sensors
    • G06K7/083Methods or arrangements for sensing record carriers, e.g. for reading patterns by means detecting the change of an electrostatic or magnetic field, e.g. by detecting change of capacitance between electrodes using inductive or magnetic sensors inductive

Landscapes

  • Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明实施例涉及一种磁条卡读卡器差分解码方法,其特征在于,所述方法包括:获取磁条数据的数字电平信号;根据数字电平信号按时间顺序以前后相邻两次持续电平信号反转的时间点为起始和结束时间做电平信号持续时间提取操作生成信号时间序列;对信号时间序列进行信号时间均值计算生成均值信号时间;对信号时间序列中相邻的信号时间进行差分计算生成差分时间序列;根据差分时间序列进行差分门限参数计算操作生成差分时间负门限、差分时间正门限;根据差分时间负门限、差分时间正门限、均值信号时间、信号时间序列,利用差分时间序列进行信号解码操作,生成第一编码序列;根据第一编码序列,对第一编码序列进行半1比特融合处理,生成第二编码序列。

Description

一种磁条卡读卡器差分解码方法
技术领域
本发明涉及磁条卡解码技术领域,尤其涉及一种磁条卡读卡器差分解码方法。
背景技术
磁条卡目前被广泛地应用于金融交易、身份识别、物流货运等领域。所存储的数据格式是按磁条卡编码格式F2F编码格式进行编制存储的。对磁条卡的解码就是对读出的数据信号按F2F编码格式进行解码。在日常情况下,如果或者刷卡的速度不是匀速,会导致读出的数据信号时间不是标准时间周期,当前的技术实现在波形时间出现异常之后会对之后的所有编码造成错误解码,这样会导致磁条卡在日常使用中的解码失败率过高,从而使得磁条卡使用寿命减短,与磁条卡对应的读卡器使用维护成本也增加。
发明内容
本发明的目的,就是针对上述技术缺陷,提供一种磁条卡读卡器差分解码方法。通过使用本发明方法,对接收的数字电平信号的相邻反转电平持续时间进行时间差分解码处理,避免了由标准时间周期进行解码的误判与漏判。使用本发明方法,在恶劣的磁条卡使用环境恶中,也能提高读卡器的有效解码率,不但提高了磁条卡的使用寿命,也降低了读卡器的维护成本。
为实现上述目的,本发明提供了一种磁条卡读卡器差分解码方法,包括:
读卡器通过磁头与磁条的相对运动,获取磁条数据的数字电平信号;
所述读卡器根据所述数字电平信号,按时间顺序,以前后相邻两次持续电平信号反转的时间点为起始和结束时间,做电平信号持续时间提取操作,生成信号时间序列,其中所述信号时间序列包括多个信号时间;
所诉读卡器根据所述信号时间序列,对所述信号时间序列进行信号时间均值计算,生成均值信号时间;
所述读卡器根据所述信号时间序列,对所述信号时间序列中相邻的信号时间进行差分计算,生成差分时间序列,其中所述差分时间序列包括多个差分时间;
所述读卡器根据所述差分时间序列,进行差分门限参数计算操作,生成差分时间负门限、差分时间正门限;
所述读卡器根据所述差分时间负门限、差分时间正门限、均值信号时间、信号时间序列,利用所述差分时间序列进行信号解码操作,生成第一编码序列,所述第一编码序列包括多个第一编码,所述第一编码的值包括:0比特编码,半1比特编码;
所述读卡器根据所述第一编码序列,对所述第一编码序列进行半1比特融合处理,生成第二编码序列,并将所述第二编码序列作为最终解码结果向上位机发送。
进一步的,所述读卡器根据所述数字电平信号,按时间顺序,以前后相邻两次持续电平信号反转的时间点为起始和结束时间,做电平信号持续时间提取操作,生成信号时间序列,其中所述信号时间序列包括多个信号时间,具体包括:
所述读卡器初始化临时信号时间序列为空;
所述读卡器根据所述数字电平信号,按时间顺序获取第一处电平信号反转的时间点生成第一信号起始时间点,获取第二处电平信号反转的时间点生成第一信号结束时间点,并根据所述第一信号结束时间点减去所述第一信号起始时间点的差生成第一信号时间数据;
所述读卡器将所述第一信号时间数据作为序列数据项向所述临时信号时间序列做第一数据项添加操作;
所述读卡器根据所述第一信号结束时间点生成第二信号起始时间点,获取第三处电平信号反转的时间点生成第二信号结束时间点,并根据所述第二信号结束时间点减去所述第二信号起始时间点的差生成第二信号时间数据;
所述读卡器将所述第二信号时间数据作为序列数据项向所述临时信号时间序列做第二数据项添加操作;
所述读卡器按时间顺序提取下一处电平信号反转的时间点直至所述数字电平信号的最后一处电平信号反转的时间点;
所述读卡器根据所述临时信号时间序列,生成所述信号时间序列。
进一步的,所诉读卡器根据所述信号时间序列,对所述信号时间序列进行信号时间均值计算,生成均值信号时间,具体包括:
所诉读卡器根据所述信号时间序列,获取所述信号时间序列的数据项总数生成第一数据项总数;
所诉读卡器根据所述信号时间序列,对所述信号时间序列的所有信号时间数据项进行总和计算,生成第一总和;
所述读卡器根据所述第一总和除以所述第一数据项总数的商,生成所述均值信号时间。
进一步的,所述读卡器根据所述信号时间序列,对所述信号时间序列中相邻的信号时间进行差分计算,生成差分时间序列,具体包括:
步骤41,所述读卡器初始化第一索引的值为2,初始化上一索引的值为0,初始化临时差分时间序列为空;
步骤42,所述读卡器获取所述信号时间序列的信号时间数据项总数,生成第二数据项总数;
步骤43,所述读卡器根据所述第一索引的值减1的差,生成所述上一索引;
步骤44,所述读卡器根据所述信号时间序列,提取所述上一索引信号时间生成第一信号时间,提取所述第一索引信号时间生成第二信号时间;
步骤45,所述读卡器根据所述第二信号时间减去所述第一信号时间的差,生成第一差分时间数据;
步骤46,所述读卡器将所述第一差分时间数据作为序列数据项向所述临时差分时间序列做第一数据项添加操作;
步骤47,所述读卡器将所述第一索引的值加1;
步骤48,所述读卡器判断所述第一索引的值是否大于所述第二数据项总数的值,如果所述第一索引的值大于所述第二数据项总数的值转至步骤49,所述第一索引的值小于或等于所述第二数据项总数的值转至步骤43;
步骤49,所述读卡器提取所述临时差分时间序列的所有数据,生成所述差分时间序列。
进一步的,所述读卡器根据所述差分时间序列,进行差分门限参数计算操作,生成差分时间负门限、差分时间正门限,具体包括:
所述读卡器根据所述差分时间序列,对所述差分时间序列中进行差分时间数据项最小值提取操作,生成差分时间最小值;
所述读卡器根据所述差分时间序列,对所述差分时间序列中进行差分时间数据项最大值提取操作,生成差分时间最大值;
所述读卡器根据所述差分时间最小值除以2的商,生成所述差分时间负门限;
所述读卡器根据所述差分时间最大值除以2的商,生成所述差分时间正门限。
进一步的,所述读卡器根据所述差分时间负门限、差分时间正门限、均值信号时间、信号时间序列,利用所述差分时间序列进行信号解码操作,生成第一编码序列,具体包括:
步骤61,所述读卡器初始化第二索引的值为1,获取所述差分时间序列的差分时间数据项总数生成第三数据项总数;
步骤62,所述读卡器初始化临时第一编码序列,具体的:设置所述临时第一编码序列的数据项总数具体为所述第三数据项总数的值加1的和;
步骤63,所述读卡器根据所述第二索引的值生成第一编码索引,根据所述第一编码索引的值加1的和生成第二编码索引;
步骤64,所述读卡器根据所述差分时间序列,提取所述第二索引差分时间,生成第一差分时间;
步骤65,所述读卡器判断所述第一差分时间是否大于或等于0,如果所述第一差分时间大于或等于0则转至步骤66,如果所述第一差分时间小于0则转至步骤69;
步骤66,在当所述第一差分时间大于所述差分时间正门限时,所述读卡器将所述临时第一编码序列的所述第一编码索引数据项的值置为所述半1比特编码,将所述临时第一编码序列的所述第二编码索引数据项的值置为所述0比特编码,转至步骤72;
步骤67,在当所述第一差分时间小于或等于所述差分时间正门限时,且在当所述第二索引的值不为1时,所述读卡器设置所述临时第一编码序列的所述第二编码索引数据项的值具体为所述临时第一编码序列的所述第一编码索引数据项的值,转至步骤72;
步骤68,在当所述第一差分时间小于或等于所述差分时间正门限时,且在当所述第二索引的值为1时,所述读卡器根据所述均值信号时间、信号时间序列对所述临时第一编码序列的所述第一编码索引数据项、所述第二编码索引数据项进行设置,转至步骤72;
步骤69,在当所述第一差分时间小于所述差分时间负门限时,所述读卡器将所述临时第一编码序列的所述第一编码索引数据项的值置为所述0比特编码,将所述临时第一编码序列的所述第二编码索引数据项的值置为所述半1比特编码,转至步骤72;
步骤70,在当所述第一差分时间大于或等于所述差分时间负门限时,且在当所述第二索引的值不为1时,所述读卡器设置所述临时第一编码序列的所述第二编码索引数据项的值具体为所述临时第一编码序列的所述第一编码索引数据项的值,转至步骤72;
步骤71,在当所述第一差分时间大于或等于所述差分时间负门限时,且在当所述第二索引的值为1时,所述读卡器根据所述均值信号时间、信号时间序列对所述临时第一编码序列的所述第一编码索引数据项、所述第二编码索引数据项进行设置,转至步骤72;
步骤72,所述读卡器将所述第二索引的值加1;
步骤73,所述读卡器判断所述第二索引的值是否大于所述第三数据项总数的值,如果所述第二索引的值大于所述第三数据项总数的值则转至步骤74,如果所述第二索引的值小于或等于所述第三数据项总数的值则转至步骤63;
步骤74,所述读卡器提取所述临时第一编码序列的所有数据,生成所述第一编码序列。
优选的,所述在当所述第一差分时间小于或等于所述差分时间正门限时,且在当所述第二索引的值为1时,所述读卡器根据所述均值信号时间、信号时间序列对所述临时第一编码序列的所述第一编码索引数据项、所述第二编码索引数据项进行设置,具体包括:
在当所述第一差分时间小于或等于所述差分时间正门限时且在当所述第二索引的值为1时,所述读卡器提取所述信号时间序列的第1个信号时间数据项生成第三信号时间数据;
所述读卡器判断所述第三信号时间数据的值是否大于或等于所述均值信号时间,如果所述第三信号时间数据的值大于或等于所述均值信号时间则所述读卡器将所述临时第一编码序列的所述第一编码索引数据项的值与所述第二编码索引数据项的值均置为所述0比特编码,如果所述第三信号时间数据的值小于所述均值信号时间则所述读卡器将所述临时第一编码序列的所述第一编码索引数据项的值与所述第二编码索引数据项的值均置为所述半1比特编码。
优选的,所述在当所述第一差分时间大于或等于所述差分时间负门限时,且在当所述第二索引的值为1时,所述读卡器根据所述均值信号时间、信号时间序列对所述临时第一编码序列的所述第一编码索引数据项、所述第二编码索引数据项进行设置,具体包括:
在当所述第一差分时间大于或等于所述差分时间负门限时,且在当所述第二索引的值为1时,所述读卡器提取所述信号时间序列的第1个信号时间数据项生成第四信号时间数据;
所述读卡器判断所述第四信号时间数据的值是否大于或等于所述均值信号时间,如果所述第四信号时间数据的值大于或等于所述均值信号时间则所述读卡器将所述临时第一编码序列的所述第一编码索引数据项的值与所述第二编码索引数据项的值均置为所述0比特编码,如果所述第四信号时间数据的值小于所述均值信号时间则所述读卡器将所述临时第一编码序列的所述第一编码索引数据项的值与所述第二编码索引数据项的值均置为所述半1比特编码。
进一步的,所述读卡器根据所述第一编码序列,对所述第一编码序列进行半1比特融合处理,生成第二编码序列,具体包括:
步骤91,所述读卡器初始化第三索引的值为1,初始化临时第二编码序列为空;
步骤92,所述读卡器根据所述第一编码序列,获取所述第一编码序列的数据项总数生成第四数据项总数;
步骤93,所述读卡器根据所述第三索引的值加1的和,生成第四索引;
步骤94,所述读卡器根据所述第一编码序列,提取所述第一编码序列的所述第三索引数据项生成第一比特编码,提取所述第一编码序列的所述第四索引数据项生成第二比特编码;
步骤95,所述读卡器将所述第一比特编码作为数据项,向所述临时第二编码序列进行数据项添加操作;
步骤96,在当所述第一比特编码、第二比特编码的值均为所述半1比特编码时,所述读卡器将所述第三索引的值加2;
步骤97,在当所述第一比特编码、第二比特编码的值不是全为所述半1比特编码时,所述读卡器将所述第三索引的值加1;
步骤98,所述读卡器判断所述第三索引的值是否大于所述第四数据项总数,如果所述第三索引的值大于所述第四数据项总数则转至步骤99,如果所述第三索引的值小于或等于所述第四数据项总数则转至步骤93;
步骤99,所述读卡器根据所述临时第二编码序列,生成所述第二编码序列。
本发明提供一种磁条卡读卡器差分解码方法,对数字电平信号进行信号时间序列提取,通过对信号时间序列做差分计算生成差分时间序列;进一步根据差分时间序列提取差分时间数据项的最小与最大值并分别对其进行半除,得到差分时间负门限、差分时间正门限;然后以差分时间负门限、差分时间正门限作为判定门限阈值对差分时间序列进行解码处理:当某个差分值大于或等于0时,对差分值与差分时间正门限做比较,如果差分值大于差分时间正门限说明信号时间发生由比特0信号时间到半比特1信号时间的转变即当前差分值对应的前一个电平信号是0比特信号、后一个电平信号是半1比特信号;如果差分值小于或等于差分时间正门限说明信号未发生变化,即当前差分值对应的前一个与后一个电平信号不是同为0比特信号就是同为半1比特信号。当某个差分值小于0时,对差分值与差分时间负门限做比较,如果差分值小于差分时间负门限说明信号时间发生由半1比特信号时间到0信号时间的转变即当前差分值对应的前一个电平信号是半1比特信号、后一个电平信号是0比特信号;如果差分值大于或等于差分时间负门限说明信号未发生变化,即当前差分值对应的前一个与后一个电平信号不是同为0比特信号就是同为半1比特信号。差分信号解码之后,生成的第一编码序列还不是最终编码序列,因为根据磁条卡编码格式F2F编码格式一个1比特信号由两个半1比特信号组成,那么就需要对第一编码序列进行半1比特融合处理,连续两个半1比特信号视为一个1比特信号,最终生成的第二编码序列才是最终解码后的编码序列。
附图说明
图1为本发明实施例提供的磁条卡编码格式F2F编码格式示意图;
图2为本发明实施例一提供的一种磁条卡读卡器差分解码方法示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
首先,如图1为本发明实施例提供的磁条卡编码格式F2F编码格式示意图所示,先对磁条卡编码格式F2F编码格式做如下简要介绍。
磁条卡编码格式F2F编码规定;1个数据周期内,磁通量不发生反转视为数据“0”;1个数据周期内,磁通量发生一次反转视为数据“1”。由磁通量变换转换为数字电平信号变换,即1个数据周期内,电平信号不发生反转视为数据“0”;1个数据周期内,电平信号发生一次反转视为数据“1”。
此处,所谓1个数据周期,因为磁条卡的数据最小单位为比特位,所以1个数据周期即一个比特时间。如图1所示。
进一步的,对于“0”值比特,其数据周期T1即是一个比特时间;对于“1”值比特,其内单一持续电平信号时间T2即是半个比特时间。再进一步的,也就是对于“0”值比特,在其持续的即一个比特时间内,电平信号的相位不会发生改变;对于“1”值比特,在其持续的即一个比特时间内,电平信号的相位会发生一次改变。
本发明实施例一,如图2为本发明实施例一提供的一种磁条卡读卡器差分解码方法示意图所示,方法包括以下步骤:
步骤1,读卡器通过磁头与磁条的相对运动,获取磁条数据的数字电平信号。
步骤2,读卡器根据数字电平信号,按时间顺序,以前后相邻两次持续电平信号反转的时间点为起始和结束时间,做电平信号持续时间提取操作,生成信号时间序列,其中信号时间序列包括多个信号时间,
具体包括:步骤21,读卡器初始化临时信号时间序列为空;
步骤22,读卡器根据数字电平信号,按时间顺序获取第一处电平信号反转的时间点生成第一信号起始时间点,获取第二处电平信号反转的时间点生成第一信号结束时间点,并根据第一信号结束时间点减去第一信号起始时间点的差生成第一信号时间数据;
步骤23,读卡器将第一信号时间数据作为序列数据项向临时信号时间序列做第一数据项添加操作;
步骤24,读卡器根据第一信号结束时间点生成第二信号起始时间点,获取第三处电平信号反转的时间点生成第二信号结束时间点,并根据第二信号结束时间点减去第二信号起始时间点的差生成第二信号时间数据;
步骤25,读卡器将第二信号时间数据作为序列数据项向临时信号时间序列做第二数据项添加操作;
步骤26,读卡器按时间顺序提取下一处电平信号反转的时间点直至数字电平信号的最后一处电平信号反转的时间点;
步骤27,读卡器根据临时信号时间序列,生成信号时间序列。
步骤3,读卡器根据信号时间序列,对信号时间序列进行信号时间均值计算,生成均值信号时间,
具体包括:步骤31,所诉读卡器根据信号时间序列,获取信号时间序列的数据项总数生成第一数据项总数;
步骤32,所诉读卡器根据信号时间序列,对信号时间序列的所有信号时间数据项进行总和计算,生成第一总和;
步骤33,读卡器根据第一总和除以第一数据项总数的值,生成均值信号时间。
步骤4,读卡器根据信号时间序列,对信号时间序列中相邻的信号时间进行差分计算,生成差分时间序列,其中差分时间序列包括多个差分时间,
具体包括:步骤41,读卡器初始化第一索引的值为2,初始化上一索引的值为0,初始化临时差分时间序列为空;
步骤42,读卡器获取信号时间序列的信号时间数据项总数,生成第二数据项总数;
步骤43,读卡器根据第一索引的值减1的差,生成上一索引;
步骤44,读卡器根据信号时间序列,提取上一索引信号时间生成第一信号时间,提取第一索引信号时间生成第二信号时间;
步骤45,读卡器根据第二信号时间减去第一信号时间的差,生成第一差分时间数据;
步骤46,读卡器将第一差分时间数据作为序列数据项向临时差分时间序列做第一数据项添加操作;
步骤47,读卡器将第一索引的值加1;
步骤48,读卡器判断第一索引的值是否大于第二数据项总数的值,如果第一索引的值大于第二数据项总数的值转至步骤49,第一索引的值小于或等于第二数据项总数的值转至步骤43;
步骤49,读卡器根据临时差分时间序列,生成差分时间序列。
步骤5,读卡器根据差分时间序列,进行差分门限参数计算操作,生成差分时间负门限、差分时间正门限,
具体包括:步骤51,读卡器根据差分时间序列,对差分时间序列中进行差分时间数据项最小值提取操作,生成差分时间最小值;
步骤52,读卡器根据差分时间序列,对差分时间序列中进行差分时间数据项最大值提取操作,生成差分时间最大值;
步骤53,读卡器根据差分时间最小值除以2的商,生成差分时间负门限;
步骤54,读卡器根据差分时间最大值除以2的商,生成差分时间正门限。
步骤6,读卡器根据差分时间负门限、差分时间正门限、均值信号时间、信号时间序列,利用差分时间序列进行信号解码操作,生成第一编码序列,第一编码序列包括多个第一编码,第一编码的值包括:0比特编码,半1比特编码,
具体包括:步骤61,读卡器初始化第二索引的值为1,获取差分时间序列的差分时间数据项总数生成第三数据项总数;
步骤62,读卡器初始化临时第一编码序列,具体的:设置临时第一编码序列的数据项总数具体为第三数据项总数的值加1的和;
步骤63,读卡器根据第二索引的值生成第一编码索引,根据第一编码索引的值加1的和生成第二编码索引;
步骤64,读卡器根据差分时间序列,提取第二索引差分时间,生成第一差分时间;
步骤65,读卡器判断第一差分时间是否大于或等于0,如果第一差分时间大于或等于0则转至步骤66,如果第一差分时间小于0则转至步骤69;
步骤66,在当第一差分时间大于差分时间正门限时,读卡器将临时第一编码序列的第一编码索引数据项的值置为半1比特编码,将临时第一编码序列的第二编码索引数据项的值置为0比特编码,转至步骤72;
步骤67,在当第一差分时间小于或等于差分时间正门限时,且在当第二索引的值不为1时,读卡器设置临时第一编码序列的第二编码索引数据项的值具体为临时第一编码序列的第一编码索引数据项的值,转至步骤72;
步骤68,在当第一差分时间小于或等于差分时间正门限时,且在当第二索引的值为1时,读卡器根据均值信号时间、信号时间序列对临时第一编码序列的第一编码索引数据项、第二编码索引数据项进行设置,
具体包括:步骤681,在当第一差分时间小于或等于差分时间正门限时且在当第二索引的值为1时,读卡器提取信号时间序列的第1个信号时间数据项生成第三信号时间数据;
步骤682,读卡器判断第三信号时间数据的值是否大于或等于均值信号时间,如果第三信号时间数据的值大于或等于均值信号时间则读卡器将临时第一编码序列的第一编码索引数据项的值与第二编码索引数据项的值均置为0比特编码,如果第三信号时间数据的值小于均值信号时间则读卡器将临时第一编码序列的第一编码索引数据项的值与第二编码索引数据项的值均置为半1比特编码;
步骤683,转至步骤72;
步骤69,在当第一差分时间小于差分时间负门限时,读卡器将临时第一编码序列的第一编码索引数据项的值置为0比特编码,将临时第一编码序列的第二编码索引数据项的值置为半1比特编码,转至步骤72;
步骤70,在当第一差分时间大于或等于差分时间负门限时,且在当第二索引的值不为1时,读卡器设置临时第一编码序列的第二编码索引数据项的值具体为临时第一编码序列的第一编码索引数据项的值,转至步骤72;
步骤71,在当第一差分时间大于或等于差分时间负门限时,且在当第二索引的值为1时,读卡器根据均值信号时间、信号时间序列对临时第一编码序列的第一编码索引数据项、第二编码索引数据项进行设置,
具体包括:步骤711,在当第一差分时间大于或等于差分时间负门限时,且在当第二索引的值为1时,读卡器提取信号时间序列的第1个信号时间数据项生成第四信号时间数据;
步骤712,读卡器判断第四信号时间数据的值是否大于或等于均值信号时间,如果第四信号时间数据的值大于或等于均值信号时间则读卡器将临时第一编码序列的第一编码索引数据项的值与第二编码索引数据项的值均置为0比特编码,如果第四信号时间数据的值小于均值信号时间则读卡器将临时第一编码序列的第一编码索引数据项的值与第二编码索引数据项的值均置为半1比特编码;
步骤713,转至步骤72;
步骤72,读卡器将第二索引的值加1;
步骤73,读卡器判断第二索引的值是否大于第三数据项总数的值,如果第二索引的值大于第三数据项总数的值则转至步骤74,如果第二索引的值小于或等于第三数据项总数的值则转至步骤63;
步骤74,读卡器根据临时第一编码序列,生成第一编码序列。
步骤9,读卡器根据第一编码序列,对第一编码序列进行半1比特融合处理,生成第二编码序列,并将第二编码序列作为最终解码结果向上位机发送,
具体包括:步骤91,读卡器初始化第三索引的值为1,初始化临时第二编码序列为空;
步骤92,读卡器根据第一编码序列,获取第一编码序列的数据项总数生成第四数据项总数;
步骤93,读卡器根据第三索引的值加1的和,生成第四索引;
步骤94,读卡器根据第一编码序列,提取第一编码序列的第三索引数据项生成第一比特编码,提取第一编码序列的第四索引数据项生成第二比特编码;
步骤95,读卡器将第一比特编码作为数据项,向临时第二编码序列进行数据项添加操作;
步骤96,在当第一比特编码、第二比特编码的值均为半1比特编码时,读卡器将第三索引的值加2;
步骤97,在当第一比特编码、第二比特编码的值不是全为半1比特编码时,读卡器将第三索引的值加1;
步骤98,读卡器判断第三索引的值是否大于第四数据项总数,如果第三索引的值大于第四数据项总数则转至步骤99,如果第三索引的值小于或等于第四数据项总数则转至步骤93;
步骤99,读卡器根据临时第二编码序列,生成第二编码序列;
步骤100,读卡器将第二编码序列作为最终解码结果向上位机发送。
本发明实施例二,已知信号时间信号时间序列具体为(255,255,125,97,245,269),方法包括以下步骤:
步骤103,读卡器根据信号时间序列,对信号时间序列进行信号时间均值计算,生成均值信号时间,
具体包括:步骤1031,所诉读卡器根据信号时间序列,获取信号时间序列的数据项总数生成第一数据项总数;
步骤1032,所诉读卡器根据信号时间序列,对信号时间序列的所有信号时间数据项进行总和计算,生成第一总和;
步骤1033,读卡器根据第一总和除以第一数据项总数的值,生成均值信号时间。
此处,此处,第一数据项总数具体为6,第一总和具体为255+255+125+97+245+269=1246,则均值信号时间具体为1246÷6≈207。
步骤104,读卡器根据信号时间序列,对信号时间序列中相邻的信号时间进行差分计算,生成差分时间序列,其中差分时间序列包括多个差分时间,
具体包括:步骤1041,读卡器初始化第一索引的值为2,初始化上一索引的值为0,初始化临时差分时间序列为空;
步骤1042,读卡器获取信号时间序列的信号时间数据项总数,生成第二数据项总数;
步骤1043,读卡器根据第一索引的值减1的差,生成上一索引;
步骤1044,读卡器根据信号时间序列,提取上一索引信号时间生成第一信号时间,提取第一索引信号时间生成第二信号时间;
步骤1045,读卡器根据第二信号时间减去第一信号时间的差,生成第一差分时间数据;
步骤1046,读卡器将第一差分时间数据作为序列数据项向临时差分时间序列做第一数据项添加操作;
步骤1047,读卡器将第一索引的值加1;
步骤1048,读卡器判断第一索引的值是否大于第二数据项总数的值,如果第一索引的值大于第二数据项总数的值转至步骤1049,第一索引的值小于或等于第二数据项总数的值转至步骤1043;
步骤1049,读卡器根据临时差分时间序列,生成差分时间序列。
此处,最终生成的差分时间序列具体为(0,-130,-28,148,24)。
步骤105,读卡器根据差分时间序列,进行差分门限参数计算操作,生成差分时间负门限、差分时间正门限,
具体包括:步骤1051,读卡器根据差分时间序列,对差分时间序列中进行差分时间数据项最小值提取操作,生成差分时间最小值;
步骤1052,读卡器根据差分时间序列,对差分时间序列中进行差分时间数据项最大值提取操作,生成差分时间最大值;
步骤1053,读卡器根据差分时间最小值除以2的商,生成差分时间负门限;
步骤1054,读卡器根据差分时间最大值除以2的商,生成差分时间正门限。
此处,差分时间序列(0,-130,-28,148,24)的最小值是-130,最大值是148,那么生成差分时间正门限具体为148÷2=74,差分时间负门限具体为-130÷2=-65。
步骤106,读卡器根据差分时间负门限、差分时间正门限、均值信号时间、信号时间序列,利用差分时间序列进行信号解码操作,生成第一编码序列,第一编码序列包括多个第一编码,第一编码的值包括:0比特编码,半1比特编码,
具体包括:步骤1061,读卡器初始化第二索引的值为1,获取差分时间序列的差分时间数据项总数生成第三数据项总数;
此处第三数据项总数具体为差分时间序列(0,-130,-28,148,24)的数据项目总数,即为5;
步骤1062,读卡器初始化临时第一编码序列,具体的:设置临时第一编码序列的数据项总数具体为第三数据项总数的值加1的和;
此处,即是设置第一编码序列具体为(空,空,空,空,空,空),数据项目总数为6,与信号时间序列的数据项目总数应该一致;
步骤1063,读卡器根据第二索引的值生成第一编码索引,根据第一编码索引的值加1的和生成第二编码索引;
此处的第一编码索引和第二编码索引就是针对当前差分数据对应的前一个与后一个时间信号的实际编码在第一编码序列里的位置;
步骤1064,读卡器根据差分时间序列,提取第二索引差分时间,生成第一差分时间;
此处,当第二索引分别为1~5时,第一差分时间分别为:0,-130,-28,148,24;
步骤1065,读卡器判断第一差分时间是否大于或等于0,如果第一差分时间大于或等于0则转至步骤1066,如果第一差分时间小于0则转至步骤1069;
此处,当第二索引为1时,第一差分时间具体为0,转至步骤1068;当第二索引为2时,第一差分时间具体为-130,转至步骤1069;当第二索引为3时,第一差分时间具体为-28,转至步骤1069;当第二索引为4时,第一差分时间具体为148,转至步骤1066;当第二索引为5时,第一差分时间具体为24,转至步骤1066;
步骤1066,在当第一差分时间大于差分时间正门限时,读卡器将临时第一编码序列的第一编码索引数据项的值置为半1比特编码,将临时第一编码序列的第二编码索引数据项的值置为0比特编码,转至步骤1072;
步骤1067,在当第一差分时间小于或等于差分时间正门限时,且在当第二索引的值不为1时,读卡器设置临时第一编码序列的第二编码索引数据项的值具体为临时第一编码序列的第一编码索引数据项的值,转至步骤1072;
步骤1068,在当第一差分时间小于或等于差分时间正门限时,且在当第二索引的值为1时,读卡器根据均值信号时间、信号时间序列对临时第一编码序列的第一编码索引数据项、第二编码索引数据项进行设置,
具体包括:步骤10681,在当第一差分时间小于或等于差分时间正门限时且在当第二索引的值为1时,读卡器提取信号时间序列的第1个信号时间数据项生成第三信号时间数据;
步骤10682,读卡器判断第三信号时间数据的值是否大于或等于均值信号时间,如果第三信号时间数据的值大于或等于均值信号时间则读卡器将临时第一编码序列的第一编码索引数据项的值与第二编码索引数据项的值均置为0比特编码,如果第三信号时间数据的值小于均值信号时间则读卡器将临时第一编码序列的第一编码索引数据项的值与第二编码索引数据项的值均置为半1比特编码;
步骤10683,转至步骤1072;
步骤1069,在当第一差分时间小于差分时间负门限时,读卡器将临时第一编码序列的第一编码索引数据项的值置为0比特编码,将临时第一编码序列的第二编码索引数据项的值置为半1比特编码,转至步骤1072;
步骤1070,在当第一差分时间大于或等于差分时间负门限时,且在当第二索引的值不为1时,读卡器设置临时第一编码序列的第二编码索引数据项的值具体为临时第一编码序列的第一编码索引数据项的值,转至步骤1072;
步骤1071,在当第一差分时间大于或等于差分时间负门限时,且在当第二索引的值为1时,读卡器根据均值信号时间、信号时间序列对临时第一编码序列的第一编码索引数据项、第二编码索引数据项进行设置,
具体包括:步骤10711,在当第一差分时间大于或等于差分时间负门限时,且在当第二索引的值为1时,读卡器提取信号时间序列的第1个信号时间数据项生成第四信号时间数据;
步骤10712,读卡器判断第四信号时间数据的值是否大于或等于均值信号时间,如果第四信号时间数据的值大于或等于均值信号时间则读卡器将临时第一编码序列的第一编码索引数据项的值与第二编码索引数据项的值均置为0比特编码,如果第四信号时间数据的值小于均值信号时间则读卡器将临时第一编码序列的第一编码索引数据项的值与第二编码索引数据项的值均置为半1比特编码;
步骤10713,转至步骤1072;
步骤1072,读卡器将第二索引的值加1;
步骤1073,读卡器判断第二索引的值是否大于第三数据项总数的值,如果第二索引的值大于第三数据项总数的值则转至步骤1074,如果第二索引的值小于或等于第三数据项总数的值则转至步骤1063;
步骤1074,读卡器根据临时第一编码序列,生成第一编码序列。
此处,当第二索引为1时,第一差分时间具体为0,第一差分时间大于等于0且小于差分时间正门限(74),应执行步骤1068,第一编码序列的第1与第2数据项的值是一致的,但是因为第一编码序列在索引为1时没有前一个编码数据可做参考,所以此处第1与第2数据虽然可知是相同的但是不知道具体的编码,暂定为未知编码,那么第一编码序列为(未知,未知,空,空,空,空);继而,通过均值信号时间(207)与信号时间序列(255,255,125,97,245,269)中的第1个信号时间序列值(255)进行比较,第1个信号时间序列值大于均值信号时间,则说明第一编码序列的第1个编码应为0比特编码,如此,第一编码序列为(未知,未知,空,空,空,空)就确认为第一编码序列为(0,0,空,空,空,空)
当第二索引为2时,第一差分时间具体为-130,第一差分时间小于0且小于差分时间负门限(-65),应执行步骤1069,第一编码序列的第2数据项是0比特编码、第3数据项是半1比特编码,那么第一编码序列为(0,0,半1,空,空,空);
当第二索引为3时,第一差分时间具体为-28,第一差分时间小于0且大于差分时间负门限(-65),应执行步骤070,第一编码序列的第3与第4数据项的值是一致的,那么第一编码序列为(0,0,半1,半1,空,空);
当第二索引为4时,第一差分时间具体为148,第一差分时间大于等于0且大于差分时间正门限(74),应执行步骤1068,第一编码序列的第4数据项是半1比特编码、第5数据项是0比特编码,那么第一编码序列为(0,0,半1,半1,0,空);
当第二索引为5时,第一差分时间具体为24,第一差分时间大于等于0且小于差分时间正门限(74),应执行步骤1067,第一编码序列的第5与第6数据项的值是一致的,那么第一编码序列为(0,0,半1,半1,0,0)。
步骤109,读卡器根据第一编码序列,对第一编码序列进行半1比特融合处理,生成第二编码序列,并将第二编码序列作为最终解码结果向上位机发送,
此处,如图1所示,磁条卡编码格式F2F编码格式可知一个1比特信号由两个半1比特信号组成,那么要完成正确解码就需要对半1比特信号进行合并,每两个半1比特合并为一个1比特编码。
具体包括:步骤1091,读卡器初始化第三索引的值为1,初始化临时第二编码序列为空;
步骤1092,读卡器根据第一编码序列,获取第一编码序列的数据项总数生成第四数据项总数;
步骤1093,读卡器根据第三索引的值加1的和,生成第四索引;
步骤1094,读卡器根据第一编码序列,提取第一编码序列的第三索引数据项生成第一比特编码,提取第一编码序列的第四索引数据项生成第二比特编码;
步骤1095,读卡器将第一比特编码作为数据项,向临时第二编码序列进行数据项添加操作;
步骤1096,在当第一比特编码、第二比特编码的值均为半1比特编码时,读卡器将第三索引的值加2;
步骤1097,在当第一比特编码、第二比特编码的值不是全为半1比特编码时,读卡器将第三索引的值加1;
步骤1098,读卡器判断第三索引的值是否大于第四数据项总数,如果第三索引的值大于第四数据项总数则转至步骤99,如果第三索引的值小于或等于第四数据项总数则转至步骤93;
步骤1099,读卡器根据临时第二编码序列,生成第二编码序列;
步骤1100,读卡器将第二编码序列作为最终解码结果向上位机发送。
此处,最终第二编码具体为(0,0,1,0,0)。
本发明提供一种磁条卡读卡器差分解码方法,对数字电平信号进行信号时间序列提取,通过对信号时间序列做差分计算生成差分时间序列;进一步根据差分时间序列提取差分时间数据项的最小与最大值并分别对其进行半除,得到差分时间负门限、差分时间正门限;然后以差分时间负门限、差分时间正门限作为判定门限阈值对差分时间序列进行解码处理:当某个差分值大于或等于0时,对差分值与差分时间正门限做比较,如果差分值大于差分时间正门限说明信号时间发生由比特0信号时间到半比特1信号时间的转变即当前差分值对应的前一个电平信号是0比特信号、后一个电平信号是半1比特信号;如果差分值小于或等于差分时间正门限说明信号未发生变化,即当前差分值对应的前一个与后一个电平信号不是同为0比特信号就是同为半1比特信号。当某个差分值小于0时,对差分值与差分时间负门限做比较,如果差分值小于差分时间负门限说明信号时间发生由半1比特信号时间到0信号时间的转变即当前差分值对应的前一个电平信号是半1比特信号、后一个电平信号是0比特信号;如果差分值大于或等于差分时间负门限说明信号未发生变化,即当前差分值对应的前一个与后一个电平信号不是同为0比特信号就是同为半1比特信号。差分信号解码之后,生成的第一编码序列还不是最终编码序列,因为根据磁条卡编码格式F2F编码格式一个1比特信号由两个半1比特信号组成,那么就需要对第一编码序列进行半1比特融合处理,连续两个半1比特信号视为一个1比特信号,最终生成的第二编码序列才是最终解码后的编码序列。通过使用本发明方法,对接收的数字电平信号的相邻反转电平持续时间进行时间差分解码处理,避免了由标准时间周期进行解码的误判与漏判。使用本发明方法,在恶劣的磁条卡使用环境恶中,也能提高读卡器的有效解码率,不但提高了磁条卡的使用寿命,也降低了读卡器的维护成本。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种磁条卡读卡器差分解码方法,其特征在于,所述方法包括:
读卡器通过磁头与磁条的相对运动,获取磁条数据的数字电平信号;
所述读卡器根据所述数字电平信号,按时间顺序,以前后相邻两次持续电平信号反转的时间点为起始和结束时间,做电平信号持续时间提取操作,生成信号时间序列,其中所述信号时间序列包括多个信号时间;
所述读卡器根据所述信号时间序列,对所述信号时间序列进行信号时间均值计算,生成均值信号时间;
所述读卡器根据所述信号时间序列,对所述信号时间序列中相邻的信号时间进行差分计算,生成差分时间序列,其中所述差分时间序列包括多个差分时间;
所述读卡器根据所述差分时间序列,进行差分门限参数计算操作,生成差分时间负门限、差分时间正门限;
所述读卡器根据所述差分时间负门限、差分时间正门限、均值信号时间、信号时间序列,利用所述差分时间序列进行信号解码操作,生成第一编码序列,所述第一编码序列包括多个第一编码,所述第一编码的值包括:0比特编码,半1比特编码;
所述读卡器根据所述第一编码序列,对所述第一编码序列进行半1比特融合处理,生成第二编码序列,并将所述第二编码序列作为最终解码结果向上位机发送。
2.根据权利要求1所述方法,其特征在于,所述读卡器根据所述数字电平信号,按时间顺序,以前后相邻两次持续电平信号反转的时间点为起始和结束时间,做电平信号持续时间提取操作,生成信号时间序列,其中所述信号时间序列包括多个信号时间,具体包括:
所述读卡器初始化临时信号时间序列为空;
所述读卡器根据所述数字电平信号,按时间顺序获取第一处电平信号反转的时间点生成第一信号起始时间点,获取第二处电平信号反转的时间点生成第一信号结束时间点,并根据所述第一信号结束时间点减去所述第一信号起始时间点的差生成第一信号时间数据;
所述读卡器将所述第一信号时间数据作为序列数据项向所述临时信号时间序列做第一数据项添加操作;
所述读卡器根据所述第一信号结束时间点生成第二信号起始时间点,获取第三处电平信号反转的时间点生成第二信号结束时间点,并根据所述第二信号结束时间点减去所述第二信号起始时间点的差生成第二信号时间数据;
所述读卡器将所述第二信号时间数据作为序列数据项向所述临时信号时间序列做第二数据项添加操作;
所述读卡器按时间顺序提取下一处电平信号反转的时间点直至所述数字电平信号的最后一处电平信号反转的时间点;
所述读卡器根据所述临时信号时间序列,生成所述信号时间序列。
3.根据权利要求1所述方法,其特征在于,所述读卡器根据所述信号时间序列,对所述信号时间序列进行信号时间均值计算,生成均值信号时间,具体包括:
所述读卡器根据所述信号时间序列,获取所述信号时间序列的数据项总数生成第一数据项总数;
所述读卡器根据所述信号时间序列,对所述信号时间序列的所有信号时间数据项进行总和计算,生成第一总和;
所述读卡器根据所述第一总和除以所述第一数据项总数的商,生成所述均值信号时间。
4.根据权利要求1所述方法,其特征在于,所述读卡器根据所述信号时间序列,对所述信号时间序列中相邻的信号时间进行差分计算,生成差分时间序列,具体包括:
步骤41,所述读卡器初始化第一索引的值为2,初始化上一索引的值为0,初始化临时差分时间序列为空;
步骤42,所述读卡器获取所述信号时间序列的信号时间数据项总数,生成第二数据项总数;
步骤43,所述读卡器根据所述第一索引的值减1的差,生成所述上一索引;
步骤44,所述读卡器根据所述信号时间序列,提取所述上一索引信号时间生成第一信号时间,提取所述第一索引信号时间生成第二信号时间;
步骤45,所述读卡器根据所述第二信号时间减去所述第一信号时间的差,生成第一差分时间数据;
步骤46,所述读卡器将所述第一差分时间数据作为序列数据项向所述临时差分时间序列做第一数据项添加操作;
步骤47,所述读卡器将所述第一索引的值加1;
步骤48,所述读卡器判断所述第一索引的值是否大于所述第二数据项总数的值,如果所述第一索引的值大于所述第二数据项总数的值转至步骤49,所述第一索引的值小于或等于所述第二数据项总数的值转至步骤43;
步骤49,所述读卡器提取所述临时差分时间序列的所有数据,生成所述差分时间序列。
5.根据权利要求1所述方法,其特征在于,所述读卡器根据所述差分时间序列,进行差分门限参数计算操作,生成差分时间负门限、差分时间正门限,具体包括:
所述读卡器根据所述差分时间序列,对所述差分时间序列中进行差分时间数据项最小值提取操作,生成差分时间最小值;
所述读卡器根据所述差分时间序列,对所述差分时间序列中进行差分时间数据项最大值提取操作,生成差分时间最大值;
所述读卡器根据所述差分时间最小值除以2的商,生成所述差分时间负门限;
所述读卡器根据所述差分时间最大值除以2的商,生成所述差分时间正门限。
6.根据权利要求1所述方法,其特征在于,所述读卡器根据所述差分时间负门限、差分时间正门限、均值信号时间、信号时间序列,利用所述差分时间序列进行信号解码操作,生成第一编码序列,具体包括:
步骤61,所述读卡器初始化第二索引的值为1,获取所述差分时间序列的差分时间数据项总数生成第三数据项总数;
步骤62,所述读卡器初始化临时第一编码序列,具体的:设置所述临时第一编码序列的数据项总数具体为所述第三数据项总数的值加1的和;
步骤63,所述读卡器根据所述第二索引的值生成第一编码索引,根据所述第一编码索引的值加1的和生成第二编码索引;
步骤64,所述读卡器根据所述差分时间序列,提取所述第二索引差分时间,生成第一差分时间;
步骤65,所述读卡器判断所述第一差分时间是否大于或等于0,如果所述第一差分时间大于或等于0则转至步骤66,如果所述第一差分时间小于0则转至步骤69;
步骤66,在当所述第一差分时间大于所述差分时间正门限时,所述读卡器将所述临时第一编码序列的第一编码索引数据项的值置为所述半1比特编码,将所述临时第一编码序列的第二编码索引数据项的值置为所述0比特编码,转至步骤72;
步骤67,在当所述第一差分时间小于或等于所述差分时间正门限时,且在当所述第二索引的值不为1时,所述读卡器设置所述临时第一编码序列的所述第二编码索引数据项的值具体为所述临时第一编码序列的所述第一编码索引数据项的值,转至步骤72;
步骤68,在当所述第一差分时间小于或等于所述差分时间正门限时,且在当所述第二索引的值为1时,所述读卡器根据所述均值信号时间、信号时间序列对所述临时第一编码序列的所述第一编码索引数据项、所述第二编码索引数据项进行设置,转至步骤72;
步骤69,在当所述第一差分时间小于所述差分时间负门限时,所述读卡器将所述临时第一编码序列的所述第一编码索引数据项的值置为所述0比特编码,将所述临时第一编码序列的所述第二编码索引数据项的值置为所述半1比特编码,转至步骤72;
步骤70,在当所述第一差分时间大于或等于所述差分时间负门限时,且在当所述第二索引的值不为1时,所述读卡器设置所述临时第一编码序列的所述第二编码索引数据项的值具体为所述临时第一编码序列的所述第一编码索引数据项的值,转至步骤72;
步骤71,在当所述第一差分时间大于或等于所述差分时间负门限时,且在当所述第二索引的值为1时,所述读卡器根据所述均值信号时间、信号时间序列对所述临时第一编码序列的所述第一编码索引数据项、所述第二编码索引数据项进行设置,转至步骤72;
步骤72,所述读卡器将所述第二索引的值加1;
步骤73,所述读卡器判断所述第二索引的值是否大于所述第三数据项总数的值,如果所述第二索引的值大于所述第三数据项总数的值则转至步骤74,如果所述第二索引的值小于或等于所述第三数据项总数的值则转至步骤63;
步骤74,所述读卡器提取所述临时第一编码序列的所有数据,生成所述第一编码序列。
7.根据权利要求6所述方法,其特征在于,所述在当所述第一差分时间小于或等于所述差分时间正门限时,且在当所述第二索引的值为1时,所述读卡器根据所述均值信号时间、信号时间序列对所述临时第一编码序列的所述第一编码索引数据项、所述第二编码索引数据项进行设置,具体包括:
在当所述第一差分时间小于或等于所述差分时间正门限时且在当所述第二索引的值为1时,所述读卡器提取所述信号时间序列的第1个信号时间数据项生成第三信号时间数据;
所述读卡器判断所述第三信号时间数据的值是否大于或等于所述均值信号时间,如果所述第三信号时间数据的值大于或等于所述均值信号时间则所述读卡器将所述临时第一编码序列的所述第一编码索引数据项的值与所述第二编码索引数据项的值均置为所述0比特编码,如果所述第三信号时间数据的值小于所述均值信号时间则所述读卡器将所述临时第一编码序列的所述第一编码索引数据项的值与所述第二编码索引数据项的值均置为所述半1比特编码。
8.根据权利要求6所述方法,其特征在于,所述在当所述第一差分时间大于或等于所述差分时间负门限时,且在当所述第二索引的值为1时,所述读卡器根据所述均值信号时间、信号时间序列对所述临时第一编码序列的所述第一编码索引数据项、所述第二编码索引数据项进行设置,具体包括:
在当所述第一差分时间大于或等于所述差分时间负门限时,且在当所述第二索引的值为1时,所述读卡器提取所述信号时间序列的第1个信号时间数据项生成第四信号时间数据;
所述读卡器判断所述第四信号时间数据的值是否大于或等于所述均值信号时间,如果所述第四信号时间数据的值大于或等于所述均值信号时间则所述读卡器将所述临时第一编码序列的所述第一编码索引数据项的值与所述第二编码索引数据项的值均置为所述0比特编码,如果所述第四信号时间数据的值小于所述均值信号时间则所述读卡器将所述临时第一编码序列的所述第一编码索引数据项的值与所述第二编码索引数据项的值均置为所述半1比特编码。
9.根据权利要求1所述方法,其特征在于,所述读卡器根据所述第一编码序列,对所述第一编码序列进行半1比特融合处理,生成第二编码序列,具体包括:
步骤91,所述读卡器初始化第三索引的值为1,初始化临时第二编码序列为空;
步骤92,所述读卡器根据所述第一编码序列,获取所述第一编码序列的数据项总数生成第四数据项总数;
步骤93,所述读卡器根据所述第三索引的值加1的和,生成第四索引;
步骤94,所述读卡器根据所述第一编码序列,提取所述第一编码序列的第三索引数据项生成第一比特编码,提取所述第一编码序列的第四索引数据项生成第二比特编码;
步骤95,所述读卡器将所述第一比特编码作为数据项,向所述临时第二编码序列进行数据项添加操作;
步骤96,在当所述第一比特编码、第二比特编码的值均为所述半1比特编码时,所述读卡器将所述第三索引的值加2;
步骤97,在当所述第一比特编码、第二比特编码的值不是全为所述半1比特编码时,所述读卡器将所述第三索引的值加1;
步骤98,所述读卡器判断所述第三索引的值是否大于所述第四数据项总数,如果所述第三索引的值大于所述第四数据项总数则转至步骤99,如果所述第三索引的值小于或等于所述第四数据项总数则转至步骤93;
步骤99,所述读卡器根据所述临时第二编码序列,生成所述第二编码序列。
CN201910870215.1A 2019-09-12 2019-09-12 一种磁条卡读卡器差分解码方法 Active CN110688864B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910870215.1A CN110688864B (zh) 2019-09-12 2019-09-12 一种磁条卡读卡器差分解码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910870215.1A CN110688864B (zh) 2019-09-12 2019-09-12 一种磁条卡读卡器差分解码方法

Publications (2)

Publication Number Publication Date
CN110688864A CN110688864A (zh) 2020-01-14
CN110688864B true CN110688864B (zh) 2022-11-22

Family

ID=69109268

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910870215.1A Active CN110688864B (zh) 2019-09-12 2019-09-12 一种磁条卡读卡器差分解码方法

Country Status (1)

Country Link
CN (1) CN110688864B (zh)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6581831B2 (en) * 2000-12-18 2003-06-24 University Of Louisiana At Lafayette Debit card read/write controller and process
CN103617408B (zh) * 2013-11-19 2016-06-29 福建鑫诺通讯技术有限公司 一种应用于磁条卡解码电路的解码方法
CN106682553A (zh) * 2016-12-21 2017-05-17 福建升腾资讯有限公司 一种磁条卡软件解码方法

Also Published As

Publication number Publication date
CN110688864A (zh) 2020-01-14

Similar Documents

Publication Publication Date Title
CN1080425A (zh) 对时间变化双频信号译码的方法和装置
US20150110226A1 (en) Data carrier provided with at least two decoding stages
CN110635807A (zh) 一种数据编码方法及译码方法
CN110688864B (zh) 一种磁条卡读卡器差分解码方法
CN110647776B (zh) 一种磁条卡解码的方法
JP5913748B2 (ja) セキュアで損失のないデータ圧縮
CN112235218B (zh) 曼彻斯特信号解码方法及装置
Abas et al. Expanding the data capacity of QR codes using multiple compression algorithms and base64 encode/decode
CN104969294A (zh) 具有刷卡信息反馈的磁条读取器
CN108962289B (zh) 基于光盘同步帧追加隐藏的标识数据的方法及装置
CN111881950A (zh) 道岔转辙机电流时间序列的特征表示方法及装置
CN110659528B (zh) 一种磁条卡读卡器抗干扰的解码方法
CN102930238A (zh) 一种用于磁卡的解码和纠错方法
CN102932105B (zh) 基于维特比算法的fm0编码的解码方法
CN110633588B (zh) 一种磁条卡读卡器的噪声识别方法
CN112235221B (zh) Bpsk信号解码方法及装置
CN109902519B (zh) 一种磁条解码方法、系统及相关装置
CN114626338A (zh) 数据的字符编码、解码方法、系统、设备及存储介质
CN102129586A (zh) 信息编码方法、读写器到标签的信息传输方法和装置
CN108551366B (zh) 一种基于led和手机相机的可见光通信方法
CN107818279B (zh) 一种用于rfid读写器的解码方法及装置
CN113542767B (zh) 一种信息隐藏图像处理模型构建方法、装置、终端及介质
CN107705340A (zh) 一种图像解码的方法及装置
CN113438050B (zh) 一种编码方法、解码方法、编码装置和解码装置
CN110674655B (zh) 一种提高非接触读卡器兼容性的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100080, Beijing, Suzhou Street, Haidian District No. 20, building 2, on the north side of the four floor

Applicant after: Zhaoxun Hengda Technology Co.,Ltd.

Address before: 100080, Beijing, Suzhou Street, Haidian District No. 20, building 2, on the north side of the four floor

Applicant before: MEGAHUNT MICROELECTRONIC TECH. (BEIJING) Co.,Ltd.

GR01 Patent grant
GR01 Patent grant