发明名称 一种使读写器支持任意卡时钟频率下波特率的系统与方法
摘要 本发明公开了IC卡读写器的CPU波特率设置技术领域中的一种使读写器支持任意卡时钟频率下波特率的系统与方法。技术方案是,该系统包括初始化模块、控制模块、卡时间源计数器模块、基准时间源计数器模块、判断模块、存取模块、计算模块和设置模块;该方法是,记录卡时间源计数器步进步长为B1时的基准时间源计数器的值T1,B1为372的倍数;然后计算初始波特率并设置CPU波特率发生器的初值;之后记录卡时间源计数器步进步长B2或步长B3时,基准时间源计数器的值T2或T3,B2为186的倍数,B3为256的倍数;最后,根据TAR的TAl,计算当前波特率并设置CPU波特率发生器的初值。本发明可以随意的更换卡时钟频率来提高读写器的性能,而不需要修改固件。
申请公布号 CN101382990B 申请公布日期 2011.07.20
申请号 CN200810225481.0 申请日期 2008.10.31
申请人 北京飞天诚信科技有限公司 发明人 陆舟;于华章
分类号 G06K7/00(2006.01)I 主分类号 G06K7/00(2006.01)I
代理机构 北京众合诚成知识产权代理有限公司 11246 代理人 童晓琳
主权项 一种使读写器支持任意卡时钟频率下波特率的方法,其特征是所述方法包括第一种实现步骤或第二种实现步骤或第三种实现步骤,第一种实现步骤为,步骤11:读写器上电,硬件初始化,读写器固件启动卡时间源计数器;步骤12:所述读写器固件启动基准时间源计数器,保存当所述卡时间源计数器步进第一预先设定步长B1时所述基准时间源计数器的值T1;所述第一预先设定的步长B1是372的整数倍;步骤13:根据T1和B1计算初始波特率,再根据所述初始波特率设置CPU波特率发生器的初值;步骤14:所述读写器固件复位并重新启动所述基准时间源计数器,保存当所述卡时间源计数器步进第二预先设定步长B2时所述基准时间源计数器的值T2;所述第二预先设定步长B2的值是186的整数倍;步骤15:所述读写器固件复位并重新启动所述基准时间源计数器,保存当所述卡时间源计数器步进第三预先设定步长B3时所述基准时间源计数器的值T3;所述第三预先设定步长B3的值是256的整数倍;步骤16:执行正常的IC卡操作,在复位应答期间用初始波特率和IC卡进行通讯;得到协议和参数选择PPS应答后,判断复位应答中TA1的高四位为1、2、3、4、5、6还是为9、a、b、c、d,当所述复位应答中TA1的高四位为1、2、3、4、5、6时,则执行步骤17,当所述复位应答中TA1的高四位为9、a、b、c、d时,则执行步骤18;步骤17:根据T2和B2计算当前波特率,跳到步骤19;步骤18:根据T3和B3计算当前波特率; 步骤19:根据所述当前波特率设置CPU波特率发生器的初值;第二种实现步骤为,步骤21:读写器上电,硬件初始化,读写器固件启动卡时间源计数器;步骤22:所述读写器固件启动基准时间源计数器,保存当所述卡时间源计数器步进第一预先设定步长B1时所述基准时间源计数器的值T1;所述第一预先设定的步长B1是372的整数倍;步骤23:根据T1和B1计算初始波特率,再根据所述初始波特率设置CPU波特率发生器的初值;步骤24:执行正常的IC卡操作,在复位应答期间用初始波特率和IC卡进行通讯;得到协议和参数选择PPS应答后,判断复位应答中TA1的高四位为1、2、3、4、5、6还是为9、a、b、c、d,当所述复位应答中TA1的高四位为1、2、3、4、5、6时,则执行步骤25,当所述复位应答中TA1的高四位为9、a、b、c、d时,则执行步骤27;步骤25:所述读写器固件复位并重新启动所述卡时间源计数器和所述基准时间源计数器,保存当所述卡时间源计数器步进第二预先设定步长B2时所述基准时间源计数器的值T2;所述第二预先设定步长B2的值是186的整数倍;步骤26:根据T2和B2计算当前波特率,跳到步骤29;步骤27:所述读写器固件复位并重新启动所述卡时间源计数器和所述基准时间源计数器,保存当所述卡时间源计数器步进第三预先设定步长B3时所述基准时间源计数器的值T3;所述第三预先设定步长B3的值是256的整数倍;步骤28:根据T3和B3计算当前波特率;步骤29:根据所述当前波特率设置CPU波特率发生器的初值;第三种实现步骤为,步骤31:读写器上电,硬件初始化,读写器固件启动卡时间源计数器;步骤32:所述读写器固件启动基准时间源计数器,保存当所述卡时间源计数 器步进第一预先设定步长B1时所述基准时间源计数器的值T1;所述第一预先设定的步长B1是186与256的公倍数;步骤33:根据T1和B1计算初始波特率,再根据所述初始波特率设置CPU波特率发生器的初值;步骤34:执行正常的IC卡操作,在复位应答期间用初始波特率和IC卡进行通讯;得到协议和参数选择PPS应答后,根据复位应答数据、T1和B1计算当前波特率;步骤35:根据所述当前波特率设置CPU波特率发生器的初值。
地址 100083 北京市海淀区学院路40号研7楼5层