买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种磁条卡刷卡终端解码方法_艾体威尔电子技术(北京)有限公司_201911070639.6 

申请/专利权人:艾体威尔电子技术(北京)有限公司

申请日:2019-11-05

公开(公告)日:2021-04-13

公开(公告)号:CN110838204B

主分类号:G07F7/08(20060101)

分类号:G07F7/08(20060101);G06K7/08(20060101)

优先权:

专利状态码:有效-授权

法律状态:2021.04.13#授权;2020.03.20#实质审查的生效;2020.02.25#公开

摘要:本发明公开了一种磁条卡刷卡终端解码方法,所述磁条卡中设置有磁卡芯片,所述刷卡终端内设置有处理器;所述解码方法包括,S1、刷卡时,所述磁卡芯片与所述处理器相连,判断处理器监测是否发生中断;若是,则处理器关闭中断,开启超时计时并执行步骤S2;若否,则退出中断;S2、更新计时计数;S3、所述处理器读取其外部三个IO的电平状态,判断是否有IO发生电平跳变,若是,则将发生电平跳变的IO与该IO上次跳变的时间间隔记录到该IO对应的数组中,各所述IO分别对应一个磁道,各磁道分别对应一个T数组,并执行S4;若否,则直接执行S4;等步骤。优点是:增加了解码的成功率,降低了上报误码概率,降低了设计成本,改善了用户使用体验。

主权项:1.一种磁条卡刷卡终端解码方法,所述磁条卡中设置有磁卡芯片,所述刷卡终端内设置有处理器;其特征在于:所述解码方法包括,S1、刷卡时,所述磁卡芯片与所述处理器相连,判断处理器监测是否发生中断;若是,则处理器关闭中断,开启超时计时并执行步骤S2;若否,则退出中断;S2、更新计时计数;S3、所述处理器读取其外部三个IO的电平状态,判断是否有IO发生电平跳变,若是,则将发生电平跳变的IO与该IO上次跳变的时间间隔记录到该IO对应的数组中,各所述IO分别对应一个磁道,各磁道分别对应一个T数组,并执行S4;若否,则直接执行S4;S4、所述处理器判断超时计时是否超过预设时长,若是,则执行步骤S5;若否,则返回步骤S2;S5、所述处理器拷贝一个磁道的T数组内容到p数组中;S6、所述处理器将所述p数组中的时间间隔数据解码为二进制数据,并所述二进制数据存储在m数组中;S7、所述处理器将所述二进制数据按编码格式进行解码,以获取解码数据,并将解码数据存储在m_bit数组中,将所述解码数据按照查表方式找到与其对应的ASCII码,以获取对应数据,并将对应数据存储在out数组中;S8、所述处理器对解码数据和对应数据进行校验处理,若校验通过,则执行步骤S9;若校验失败,则执行步骤S10;S9、所述处理器将所述对应数据转存到全局数据中,所述处理器置位该磁道刷卡成功标志,并执行步骤S11;S10、所述处理器置位该磁道刷卡失败标志,并执行步骤S11;S11、重复步骤S5至S10;并判断三个磁道对应的T数组是否全部解析完成,若是,则退出中断;若否,则返回步骤S5;步骤S6中所述处理器将所述p数组中的时间间隔数据解码为二进制数据,具体为,A1、获取所述p数组的数组指针p,设置待解码时间间隔数据长度为len,初始基准值为bitlen;A2、定义计数值为i,j,并给i和j均赋予初值为0;定义标志位第一skip,第二skip,并给第一skip和第二skip均赋予初值为0;A3、判断i是否小于len-1,若是,则执行步骤A4;若否,则执行步骤A13;A4、判断第一skip是否等于0,若是,则执行A7,若否,则执行A5;A5、将第一skip赋值为0;A6、i值加1,返回A3;A7、判断p[i]bitlen*0.7,即判断p的第i位是否小于基准值bitlen的0.7倍;若是,则执行A8;若否,则执行A11;A8、判断p[i+1]bitlen*0.7,即判断p的第i+1位是否小于基准值bitlen的0.7倍;若是,则执行A9;若否,则执行A11;A9、判断p[i]+p[i+1]1.4*bitlen,即判断p的第i位和i+1位的数据和是否小于基准值的1.4倍;若是,则执行A10;若否则执行A11;A10、更新bitlen,计算bitlen=bitlen*0.8+p[i]+p[i+1]*0.2;即取原基准值80%权重加上p的第i位与第i+1位和的20%权重作为新的基准值;执行m[j++]=1,第二skip=1,即解码结果为1,将该数据记录在所述m数组的j位置,同时j的值加1,第二skip置位为1;并跳转A6;A11、判断p[i]bitlen*0.8,即判断p的第i位数据是否小于基准值bitlen的0.8倍;若是,则执行A12;若否,则执行A13;A12、执行p[i+1]=p[i+1]-Bitlen-p[i]*0.8,即将p的第i+1位的数据更新为p的第i+1位数据减去基准值与p的i位数据差值的80%权重;A13、执行BItlen=BItlen*0.8+p[i]*0.2m[j++]=0,即解码结果为0,记录到m数组的j位,计数值j增加1;跳转执行A6;其中,p表示p数组的数组指针;m表示m数组;len为待解码时间间隔数据长度;bitlen为初始基准值;I为p数组的计数值;j为m数组的计数值;第一skip为p数组的标志位,第二skip为m数组的标志位;skip表示是否跳过当前标志位。

全文数据:

权利要求:

百度查询: 艾体威尔电子技术(北京)有限公司 一种磁条卡刷卡终端解码方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。