RT-Thread Studio使用笔记(六):4G模块SIM7600的使用

写在最前

现在做产品开发,以太网,WiFi,4G等网络通讯方式,已经成了产品必备要素,作为单片机开发,常用的网络模块主要通讯方式为AT指令串口通讯,比如WiFi模块ESP8266,ESP32,4G模块SIM7600,EC20等。
咱们使用的RT-Thread操作系统,有at_device组件,可以直接驱动AT模块,今天咱们用SIM7600模块,是一款常用的4G物联网模块,下面我带大家一起使用学会SIM7600模块,并通过远程升级示例证明模块是可用的。

参考文件: https://blog.csdn.net/tigerots/article/details/107961967

电路设计注意事项

  1. 电源设计

当电源能够提供2A的峰值电流时,外部供电电容总容值,建议不小于300uF;若不能提供2A的峰值电流,则建议外部电容总容值不小于1000uF,以保证任何时候VBAT引脚上电压跌落不超过300mV。
建议靠近VBAT放置2个0.1/1μF陶瓷电容。以改善射频性能及系统稳定性。与此同时,建议PCB上供电电源到模块间的VBAT走线宽度至少2mm。参考设计推荐如下:如果VBAT输入含有高频干扰,建议增加磁珠进行滤波,磁珠推荐型号为BLM21PG300SN1D或MPZ2012S221A。

  1. 断电重启控制

根据多年使用经验,(我2012年以前做通讯的,常年接触各类modem,虽然近8年没碰过了)。电路除需要设计复位电路外,还应该对模块电源进线控制,可以在某天通过复位无法是模块正常工作的情况下对模块断电重启,官方文档也有相关推荐

在这里插入图片描述

使用at_device软件包

  1. at_device软件包使用非常简单,只需要导入软件包即可使用,如下图所示:
    在这里插入图片描述

  2. at_device详细配置,在示例中电源引脚和状态引脚根据实际情况配置,接收一行缓存最大长度不要设置太小,为后面远程升级留足够的空间,我设置的事2048,最主要的是AT客户端名称一定不要设错,我使用的是串口2,保存后编译

在这里插入图片描述

  1. 编译过程会有错误提示,是因为RT-thread中,所有的xxprintf都需要增加前缀rt_,比如rt_snprintf,通过错误提示,找到对应的位置,修改后即可编译通过。
  2. 下载后运行,通过shell查看输出情况(此时最好插入SIM卡,否则会一直提示SIM卡不存在,程序无法继续),当有如下两行提示,则说明模块初始化成功,可以同ifconfig指令查看网络状态
    在这里插入图片描述在这里插入图片描述

测试基于SIM7600的远程升级示例

  1. 根据我之前的博客 https://blog.csdn.net/tigerots/article/details/107961967 制作BootLoader和和固件,不同的是在程序配置中,选择使能http ota, 并配置默认的服务器地址,可以是可访问的内网地址,有条件的也可以是外网地址
    在这里插入图片描述

  2. 需要注意的是串口缓存不能太小, 默认64字节太小, 会导致升级失败
    在这里插入图片描述

  3. 保存,编译,下载程序,升级测试

在这里插入图片描述

总结

  1. 其实使用4G模块很简单,分析初始化过程,只需要几条AT指令, 这些如果想深入了解,需要多看官方手册
  2. 示例程序仅仅能作为严重能否使用,不能用于实际项目中, 在实际项目中, 要实时扫描网络状态, 如果出现任何异常, 需要重新联网或对模块复位, 保证设备工作正常稳定
  3. 初始化函数
    在这里插入图片描述
//握手
AT
关回显
//ATE0
//版本
ATI
//卡是否插入
AT+CPIN?
//信号质量
AT+CSQ
//接收数据时不显示提示
//设置从何处接收的数据
AT+CIPSRIP=0
//查询网络注册状态
AT+CREG?
//查询GPRS网络注册状态
AT+CGREG?
//AT+CGATT = 0 可以分离GPRS 但保留GSM
//AT+CGATT = 1 一般注册上运营商,附着GPRS都是自动进行的,CGATT可以手动去附着网络
AT+CGATT?
//设置网络连接 APN
AT+CGDCONT=1,\"IP\",\"CMNET\"
//网络连接状态
AT+NETOPEN?
//激活网络连接
AT+NETOPEN
//将1号报文设置为活动报文
AT+CSOCKSETPN=1
  • 4
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值