[发明专利]一种STM32降频实现高速率读卡器的方法有效
申请号: | 201510359564.9 | 申请日: | 2015-06-25 |
公开(公告)号: | CN105046178B | 公开(公告)日: | 2017-10-10 |
发明(设计)人: | 张亚军;梁杰 | 申请(专利权)人: | 广东华大互联网股份有限公司 |
主分类号: | G06K7/00 | 分类号: | G06K7/00 |
代理公司: | 深圳市精英专利事务所44242 | 代理人: | 冯筠 |
地址: | 518000 广东省深圳市龙岗*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 stm32 实现 速率 读卡器 方法 | ||
技术领域
本发明涉及通信领域,尤其涉及一种STM32降频实现高速率读卡器的方法。
背景技术
目前的读卡器主要采用STM32微型控制平台。读卡器的ISO7816是由USART(Universal Synchronous/Asynchronous Receiver/Transmitter通用同步异步收发器)接口的智能卡模式实现。ISO7816接口通信速率取决于ETU(Elementary TimeU nit基本时间单元),ISO7816接口传输1个字节时需要10个ETU。ETU的值由时钟频率决定,ETU与时钟频率呈现关系为:ETU=(F/D)×(1/f),其中,F/D为波特率转换因子,取决于智能卡,f是ISO7816/智能卡的CLK的频率,取决于读卡器。由于ETU的值取决于F/D和f,因此F/D的值越小,f的值越大,ETU的值越小,读卡器通信速率越快。当前的读卡技术将基于STM32F103平台的系统时钟设置为72Mhz,CLK取最大值为4.5Mhz,F/D取最小值11.625,得出ETU的值为2.58us,使得目前的最大通信速率只能达到387096bps。因此当智能IC卡接触到读卡器,读卡器读取智能IC卡的最高通信速率只能达到387096bps。然而随着读卡器的广泛应用,人们对读卡器的阅读效率要求越来越高,387096bps的通信速率已经满足不了现代人对读卡器高速率的通信需求。
发明内容
本发明的目的在于提供一种STM32降频实现高速率读卡器的方法,该方法基于STM32F103平台的ISO7816最高通信速率应用,能够提高读卡器的通信速率,实现读卡器高速阅读的目的。
为解决上述技术问题,本发明采用如下所述的技术方案。一种STM32降频实现高速率读卡器的方法,包括以下步骤:初始化STM32微控制器的系统时钟为48Mhz;初始化GPIO;初始化STM32微控制器的USART接口为7816模式,系统时钟设置为5分频,CLK设置为4.8Mhz;根据ETU=(F/D)×(1/f),得到ETU的最小值,其中F/D为波特率转换因子,f是ISO7816/智能卡的CLK频率。
优选地,初始化STM32微控制器系统时钟,设置系统时钟来源为PLL,将PLL系统时钟倍频到48Mhz。
优选地,初始化STM32微控制器USART接口为智能卡模式,即STM32微控制器的7816模式由USART接口的智能卡模式实现。
优选地,USART产生CLK频率的算法如下:
系统时钟的分频因子为:USART_GTPR[4:0]×2,依此将系统时钟设置为5分频,根据预设算法CLK频率=系统时钟/(USART_GTPR[4:0]×2),得到CLK频率为4.8Mhz。
优选地,根据ETU=(F/D)×(1/f),可知F/D的值越小,f的值越大,ETU的值越小,通信速率越快。
优选地,根据ISO7816规范将F/D设置为最小值,即11.625。
优选地,STM32微控制器选为STM32F103系列。
本发明的有益技术效果在于:本发明采用STM32F103微型控制器,将系统时钟设置为48Mhz,系统时钟5分频得到CLK最大值为4.8Mhz,依此ETU的最小值为2.42us,根据ETU=(F/D)*(1/f),使最大通信速率达到412903bps,比原来主频率为72Mhz时达到的通信速率高出25807bps。本发明具有使读卡器通信速率提高,读卡器的阅读速度加快,使用者的满意度提升的优点。
附图说明
图1是本发明实施例的流程图。
具体实施方式
为使本领域的普通技术人员更加清楚地理解本发明的目的、技术方案和优点,以下结合附图和实施例对本发明做进一步的阐述。
参考图1所示,在本实施例中,该STM32降频实现高速率读卡器的方法包括以下步骤:
步骤S1:初始化堆栈;
步骤S2:初始化STM32微控制器的系统时钟为48Mhz;
步骤S3:初始化GPIO(General Purpose Input Output通用输入输出);
步骤S4:初始化STM32微控制器的USART接口为7816模式,系统时钟设置为5分频,CLK设置为4.8Mhz;
步骤S5:根据ETU=(F/D)×(1/f),得到ETU的最小值,其中F/D为波特率转换因子,f是ISO7816/智能卡的CLK频率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东华大互联网股份有限公司,未经广东华大互联网股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510359564.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种二维码的识别方法及装置
- 下一篇:一种主机管理方法和系统