UART与SIM卡通信电路设计

Posted 秋水寒林

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UART与SIM卡通信电路设计相关的知识,希望对你有一定的参考价值。

  本文介绍在没有专用的SIM卡接口的情况下,使用UART与SIM卡进行通信的电路设计。

参考连接一:https://blog.csdn.net/weixin_42151788/article/details/108389068

参考连接二:https://www.cnblogs.com/utank/p/5463269.html

 

电路如下

SIM卡座引脚,一般有如下信号

1. C1---VCC电源

2. C2---RST复位信号

3. C3---CLK时钟信号

4. C4---SW SIM卡在位探测信号

5. C5---GND

6. C6---VPP可编程电压

7. C7---I/O双向通信数据信号

 

设计分析如下

1. SIM卡虽小,但是里面也是五脏俱全的电路,该有的都有,所以需要提供电源VCC和时钟CLK。其CLK频率跟传输速率有关,所以这里需要跟UART的波特率对应起来。

2. 因为时序的需要,需要控制VCC,RST,CLK,I/O;VPP悬空不用处理,SW卡在位信号根据实际情况是否需要检测,不用悬空即可。

3. 因为UART有TX,RX两个信号线,常见用法是两个都用,但是SIM卡只有一个双向的数据信号,所以这里需要UART的one-wire总线模式,具体电路可参考:https://www.cnblogs.com/QSHL/p/13532253.html

4. SIM卡通信协议有个很关键的等式etu =(F/D) * (1/f),简单的理解就是,传输1bit数据需要多少个时钟周期,等式符号说明如下

etu---1bit位宽时间

 F---时钟速率转换因子

 D---位速率调节因子

 f---时钟频率

其中F,D有默认值,F=372,D=1,这里按照默认值设计,这样便于软硬件设计,通信简单。

 

例子:

假如使用UART使用9600bps进行通信,则1/9600 = (372/1)*(1/f),f=372*9600=3.5712MHz,所以这里需要给SIM卡提供3.5712MHz的时钟信号,此信号可由GPIO或者单独的晶振提供。

 

总结:

1. UART与SIM卡之间的通信速率可自定义,但是最好计算出来的时钟频率能在市场上买的到对应的晶振,或者GPIO容易产生

2. 需要注意UART与SIM I/O数据通信的电平,如果不一致,需要电平转换电路,用三极管搭建即可;复位信号RST同样道理

3. SIM卡的电源也会分好几种电源,从了解的信息来看3.3V/1.8V居多,所以这里的VCC需要根据实际情况供电

4. VCC,RST,CLK,I/O需要状态可控

 

以上是关于UART与SIM卡通信电路设计的主要内容,如果未能解决你的问题,请参考以下文章

NBIOT模块连接巴法云实践(SIM7020)

NBIOT模块连接巴法云实践(SIM7020)

NBIOT模块连接巴法云实践(SIM7020)

硬件设计基础----通信协议UART

硬件设计基础----通信协议UART

模组使用之SIM卡读取失败的原因和排查流程