序言

八月,在时光流转间格外美好~朋友们在征名活动中书写诗意,合宙的小伙伴们也忙碌到飞起;新系列产品、新一期直播正在紧张筹备中,敬请期待!

本期将针对常用SIM功能那些事儿,以Air724UG开发板为例进行实操演示,Demo源码可通过LuaTools或LuatIDE获取。

前期主要准备工作


硬件准备

EVB_Air724UG_A13开发板(本文操作适用于合宙Cat.1系列的开发板),以及天线、SIM卡、USB线。

图片

如上图所示:
在开发板SIM0卡座上插入一张能识别的SIM卡,USB线接到左侧USB口(注意:不要接到右边的串口USB上)。开关拨到ON位置,按开机键1s以上开机。

软件准备

Windows电脑搭建Luat开发环境,可参考下文:

https://doc.openluat.com/wiki/21?wiki_page_id=1923

API说明

https://doc.openluat.com/wiki/21?wiki_page_id=2292
 
 

SIM功能Demo实操演示


例程参考

本文演示SIM功能相关实例程序,在LuaTools/LuatIDE脚本库的demo\simId文件夹下。

最新版LuatIDE下载

https://marketplace.visualstudio.com/items?itemName=luater.luatide

图片

DEMO修改示例

1)开启一个任务设置卡座id号

1.3基线固件可以在sim卡0和sim卡1自动识别,1.2基线不行。

--sim_id :sim卡的卡座id号
local sim_id=0
sys.taskInit(function()  

       --调用sim.lua中的设置sim卡id号函数
       sim.setId(sim_id)
       sys.wait(10000)  
end)

2)获取SIM卡参数

开启一个循环定时器,调用sim.lua中函数,打印SIM卡参数即可。

sys.timerLoopStart(function ()
       --获取sim卡iccid
       ril.request("AT+ICCID")  
       log.info("sim_iccid:",sim.getIccid())    

       --获取sim卡imsi

       log.info("sim_imsi:",sim.getImsi())   

       --获取sim卡status

       log.info("sim_status:",sim.getStatus())    
       

       --获取sim卡id

       log.info("sim_id:",sim.getId())



end,1000)

3)烧录脚本到开发板

在了解并修改demo后,将demo和对应的底包下载到开发板,下载的方式这里不详细说明,请参考环境搭建中的烧录章节:

https://doc.openluat.com/wiki/21?wiki_page_id=1923

4)打印日志信息

下载完成后重启,可以看到LuaTools工具中打印的信息:

图片
 
 

SIM功能常见问题


为什么读不到SIM卡

由于原因较多,可按以下步骤排查:

  • 看模块开机没?AT指令能不能用?SIM卡放到别的机器上是不是可用?

  • 看模块与卡座之间连线有没有问题,去掉ESD器件和线路上的滤波电容,检查原理图和PCB与实物是否相符,尤其是SIM卡座规格书引脚编号和原理图、PCB是否一致。

  • 开机瞬间用示波器测试下sim_vdd管脚波形,如果波形有1.8v-3.3v-0v 变化,一般是卡座到模块引脚之间问题,要识别到卡,才会有电压输出。

  • 如果以上都排除了,重新烧录固件尝试。

为什么SIM卡供电脚没电压

  • SIM卡要识别到卡才会有电压输出;

  • 在模块开机后10s到15s左右,SIM_VDD会拉高到1.8V左右,开始找卡:如未能与SIM卡通信成功,则短时关闭再拉高到3V左右去找卡;如果还未找到,就关闭SIM_VDD,整个过程6s左右。

专网卡如何访问白名单

使用定向IP的物联网卡,需要把域名或IP加入白名单才能使用,下面列出模块会访问的域名或IP服务器。

图片
上海合宙通信模块 – 合宙Luat,让万物互联更简单

版权声明:本文为luat原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/luat/p/15175055.html