news 2026/2/8 4:59:37

智能双卡设计:SIM卡硬件架构与软件配置核心解析!

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
智能双卡设计:SIM卡硬件架构与软件配置核心解析!

智能双卡设计的核心在于硬件架构的合理性与软件配置的适配性。本文首先剖析硬件层面的双卡卡槽布局、电源域划分及信号隔离设计要点,再深入解析软件配置中的驱动适配、卡状态机管理与运营商优先级设置逻辑,通过软硬件协同视角,为开发者提供智能双卡设计的核心技术支撑。

今天我们以Air780EPM系列低功耗模组为例,分享双SIM卡硬件设计与软件配置要点,带你了解如何构建稳定可靠、功耗优化的物联网设备。

01. 模组相关管脚

Air780EPM系列模组与SIM相关的管脚,包括:

SIM1:VDD_SIM1,PIN14;SIM1_DAT,PIN11;SIM1_RST,PIN12; SIM1_CLK,PIN13;

SIM2:VDD_SIM2,PIN65;SIM2_DAT,PIN64;SIM2_RST,PIN63;SIM2_CLK,PIN62;

Air780EPM管脚图如下所示:


02. 主要功能说明

Air780EPM系列模组支持双卡,但只能单待;模组SIM1为原生SIM卡接口,SIM2的数字信号为GPIO模拟,电源共用SIM1。

1)GPIO复用

复用为SIM2的GPIO,在硬件上同时被引到了不同的模组管脚上,比如:

USIM2_RST:与CAM_BCLK(GPIO4)复用,二者不可同时使用;

USIM2_CLK:与CAM_CS(GPIO5)复用,二者不可同时使用;

USIM2_DAT:与CAM_RX0(GPIO6)复用,二者不可同时使用。

这里的不可同时使用:

是指在同一个硬件上,使用SIM2时就不能再使用GPIO4/5/6,包括这三个GPIO可以复用的其它功能,比如Camera、I2C、UART等。

具体见GPIO复用表:https://docs.openluat.com/air780ehnehu/product/shouce/


2)IO电平

SIM1支持1.8V/2.8V两种IO电平的SIM卡,SIM2由于是GPIO4/5/6复用,所以可以支持的SIM卡的电平与模组IO的电平保持一致。

模组IO电平设置为1.8V时:SIM2则只支持1.8V电平的SIM卡;

模组IO电平设置为2.8V/3.3V时:SIM2则只支持2.8V/3.3V电平的SIM卡(就IO电平而言,2.8V和3.3V可认为电平一致)。

当前运营商提供的SIM卡基本默认兼容1.8V/2.8V电平,所以大家在实际应用中很少遇到因为IO电平不一致而导致不识卡的情况。

3)模拟开关

也可以使用“SIM1+模拟开关”的方式实现双卡单待,我们验证调试过的SIM卡模拟开关为:BCT4567

相关手册详见:https://docs.openluat.com/air780epm/product/air780exxpins/#sim1sim2

03. 硬件参考设计

双卡设计时,推荐SIM1带插入检测功能,且配合SIM卡座的规格,保证在SIM卡插入后USIM_DET信号悬空而不是接地,可以进一步降低功耗。

双卡设计且其中之一为贴片SIM卡时:推荐使用SIM2接贴片SIM卡,SIM1接SIM卡座。

接下来,我们一起看看硬件设计及相关注意事项:

▼ SIM1参考设计 ▼


相关注意事项如下:

1)USIM_DET为SIM卡插入检测管脚,不需要时可以不接;

2)USIM_DET推荐默认使用WAKEUP2,当然使用其它WAKEUP或GPIO中断也可以;

3)WAKEUP2被命名为USIM_DET,目的是为了引导大家默认使用WAKEUP2用作USIM_DET,当设计中不需要USIM_DET时,该管脚WAKEUP2与其它WAKEUP信号没有区别,也可以用作它用;

4)USIM_DET代码示例;


5)USIM_DET需上拉至某一AGPIO:

比如AGPIO3(GPIO23,软件可以控制一直高电平输出,此管脚在某些文档中也常被称为Vref),不能使用VDD_EXT(低功耗模式pm.WORK_MODE,1和PSM+模式pm.WORK_MODE,3下不能一直输出,后续的章节中会详细介绍)。

▼ SIM2参考设计 ▼


相关注意事项如下:

1)请严格按照SIM2参考设计电路进行设计,SIM2可以接SIM卡座,也可以接贴片SIM卡;

2)特别注意USIM2,无论电源还是信号(CLK/DATA/RST),均为复用模组的其它管脚。

USIM2_VDD:与USIM1_VDD使用同一个电源LDOSIM;

USIM2_RST:与CAM_BCLK(GPIO4)复用,二者不可同时使用;

USIM2_CLK:与CAM_CS(GPIO5)复用,二者不可同时使用;

USIM2_DAT:与CAM_RX0(GPIO6)复用,二者不可同时使用;

3)使用SIM2时,必须使用API函数mobile.simid(1)进行切换,否则模组不会自动初始化SIM2。

API函数详细说明参见:https://docs.openluat.com/osapi/core/mobile/#mobilesimidid-priority

4)TVS保护:SIM卡插拔时极易产生静电,电路上需要添加TVS保护。

推荐TVS型号为:芯禾微XESD100N-3V3

04. 与SIM相关的LuatOS API

以下是两个常见的API,详见资料中心:https://docs.openluat.com/osapi/core/mobile/

mobile.imsi(index)用于获取IMSI(国际移动用户识别码)

示例代码:


mobile.iccid(id)

获取或设置ICCID(集成电路卡识别码)

示例代码:


05. 常见问题解答

问题:SIM卡不识卡,使用万用表测量SIM卡电源VDD_SIM没有电压,怎么办???

解答如下:

首先,需要明确的是,是因为模组没有识别到卡,所以 VDD_SIM没有电压,并不是因为VDD_SIM没有电压所以识别不到SIM 卡,因果关系不要反了,这几乎是所有新用户都会遇到的常识性的认知错误。

真实原因是:SIM卡在初始化时,系统会尝试4次与SIM卡交互,此时 VDD_SIM也会打开4次,分别在1.8V和3.3V交替检测。若检测不到SIM卡,VDD_SIM卡就会关闭。因此在检测不到SIM卡的情况下你用万用表测量USIM_VDD总是低电平。

下图是使用示波器测量出来的,对应SIM卡未被识别到时的波形:


一般来说,不识别卡的主要原因大概有如下几个:

SIM卡封装做错;

SIM卡接触不良;

SIM卡信号线连错;

SIM卡信号使用的TVS容值太大,导致SIM卡信号变形严重;

SIM卡本身不良,一般做法是先使用个人手机SIM卡对比测试;

SIM2不识别时,大概率是没有设置 mobile.simid(1) 导致的;SIM2由GPIO复用而来,所以模组底层软件并不会主动轮询识别SIM1和SIM2,只会默认初始化识别SIM1。

再次强调:初始化SIM2需要主动设置mobile.simid(1) 。

详见资料中心:https://docs.openluat.com/osapi/core/mobile/#mobilesimidid-priority

今天的内容就分享到这里了~

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/7 2:14:07

飞腾D3000安装debian12后无法加载RTL8852BE驱动的问题处理

这个 RTL8852BE 在UOS V20 4.19内核或者debian13 6.12内核下面都可以正常驱动但是这个debian12的6.1内核就驱动不了我也找了很多方案,找代码进行编译,最终它应该是合并到了rtl89,但是我编译安装了以后依然无法使用,能看到模块加载了&#xff…

作者头像 李华
网站建设 2026/2/7 9:35:15

LobeChat能否实现语音指令控制?免动手操作场景探索

LobeChat能否实现语音指令控制?免动手操作场景探索 在驾驶途中想查询天气,双手却握着方向盘;在厨房忙着切菜,却记不清菜谱步骤;或是家中长辈不擅长打字,只能对着智能设备干瞪眼——这些日常困境背后&#x…

作者头像 李华
网站建设 2026/2/7 13:06:14

LobeChat能否推荐电影?个性化娱乐顾问

LobeChat能否推荐电影?个性化娱乐顾问 在流媒体平台内容爆炸的今天,用户面对成千上万部影片时常常陷入“选择困难”——不是没有好片,而是不知道哪一部真正适合自己当下的心情和场景。传统的推荐系统依赖算法标签匹配,往往给出千篇…

作者头像 李华
网站建设 2026/2/5 19:49:57

docker 搭建 grafana+prometheus 监控主机资源之node_exporter

服务基本信息 服务 作用 端口(默认) Prometheus 普罗米修斯的主服务器 9090 Node_Exporter 负责收集Host硬件信息和操作系统信息 9100 MySqld_Exporter 负责收集mysql数据信息收集 9104 Cadvisor 负责收集Host上运行的docker…

作者头像 李华
网站建设 2026/2/5 15:29:21

设计模式学习(3) 设计模式原则

0.个人感悟 设计原则类似修真世界里的至高法则,万法的源头。遵守法则造出的术法具有能耗低、恢复快、自洽性高等优点,类似遵守设计原则设计的出的程序,具有很多优点设计原则从不同的角度对软件设计提供了约束和指导。其中开闭原则、依赖倒置让…

作者头像 李华
网站建设 2026/2/6 20:20:41

入门篇--1-为什么开发中总要和多个 Python 版本“打交道”?

大家好,我是你们的老朋友Weisian,一个在代码世界里摸爬滚打多年的开发者。今天和大家聊聊一个看似基础、却常常让人头疼的问题:为什么我们在开发过程中,总是需要同时管理好几个版本Python? 刚入门python时,…

作者头像 李华