今天我们学习合宙模组典型上网业务的AT上网流程。

文末阅读原文,下载最新教程/固件。

一、简介

本文介绍了合宙4G模组的常用的AT指令和服务器交互的流程。

进一步详细的流程,参见各个模组的AT命令资料。

如果没有顺手的串口工具,推荐 [LLCOM | 能跑Lua代码的串口调试工具!]
https://llcom.papapoi.com/index.html

二、准备工作

准备一套合宙任意模组的开发板,windows电脑,串口PC工具;

打开合宙的 TCP/UDP web 测试工具。

三、查询终端状态

合宙4G模组,开机后,会自动搜网,注册网络,选择一个最优的小区,并驻留在这个小区。

这时, 按照如下次序查询,确定设备的状态:

① 查询 SIM 卡是否插好,用 AT+CPIN?;

② 查询 IMSI,IMEI,ICCID,业务备用,分别是 AT+CIMI,AT+CGSN,AT+ICCID;

③ 查询 是否网络注册成功, 用 AT+CREG?;

④ 查询终端信号强度, 用 AT+CSQ

⑤ 查询 是否上网服务已经激活,用 AT+CGATT?

AT 交互示例如图:

四、和服务器建立 socket 连接

4.1 兼容 2G 时代的3个无用指令

这么三个指令, 是在 2G 时代设计的,到了 4G 时代,已经完全无用了,但是为了兼容之前的 MCU 的代码,这里还是提一下。

如果你是新开发的项目,完全可以删掉这三个指令了。

AT+CSTT,

AT+CIICR,

AT+CIFSR, 可以查询本机获取到的 IP 地址。

4.2 打开 TCP 服务器,开始监听

这里使用合宙的 TCP/UDP web测试网站:netlab.Luatos.com, 如图:

4.3 连接服务器,建立 socket

建立和服务器的socket连接, 用如下指令:

AT+CIPSTART="TCP",112.125.89.8,45756

其中的 IP 地址和端口参数, 是把上面 web测试网站的 IP 和端口抄下来。

“TCP” 也可以更换为 “UDP”。

当模块返回 CONNECT OK 后, socket 就建立成功了。

AT 交互过程如图:

这时,web测试工具,也显示有终端连接成功:

五、和服务器数据交互

用指令  AT+CIPSEND 向服务器发送数据。

服务器端,也显示收到了数据:

从服务器端发送消息, 终端也能显示出来收到的数据:

以上的例子, 是终端每次发送固定长度的数据。

如果终端想发送不定长的数据, 或者是想透传数据,可以参考详细的AT手册。

一篇讲透:模组典型上网业务的AT上网流程的更多相关文章

  1. openwrt编译加载龙尚U9300模组上网

    硬件平台:MT7628A openwrt版本:MTK_SDK 1.添加模组信息 /build_dir/target-mipsel_24kc_musl/linux-ramips_mt76x8/linux ...

  2. 摄像头模组 PDAF对焦(Phase Detection Auto Focus)

    本文主要是最近看的两个文档的总结,相对零散的笔记,包括<imx298 software reference PDAF>与<PDAF Truly>. 1.PDAF功能的实现需要使 ...

  3. 【转】android camera(一):camera模组CMM介绍

    关键词:android  camera CMM 模组 camera参数平台信息:内核:linux系统:android 平台:S5PV310(samsung exynos 4210)  作者:xubin ...

  4. android camera(一):camera模组CMM介绍【转】

    转自:https://blog.csdn.net/kevinx_xu/article/details/8821818 androidcmm图像处理工作手机三星 关键词:android  camera ...

  5. iPhone X 的原深感模组

    物理与数字世界正走向融合,我们每天醒来的时间.睡眠时长.心率和步数等数据都会被分享.上传并转化为分析数据.无处不自的 AI.互联互通和软件平台将改变用户对现实的感知. 2018 年的 CES 展(国际 ...

  6. opencv实现camera模组的暗电流和lenshading补偿 .

    目录(?)[-] 简介 基本原理 产生原因 校正补偿原理 具体实现 框架搭建 功能实现 暗电流 lenshading补偿 效果演示 图片处理 效果演示 简介 在接触过的qcom和mtk平台中,came ...

  7. 终于有人把Elasticsearch原理讲透了!

    终于有人把Elasticsearch原理讲透了! http://developer.51cto.com/art/201904/594615.htm 小史是一个非科班的程序员,虽然学的是电子专业,但是通 ...

  8. (转)终于有人把Elasticsearch原理讲透了!

    终于有人把Elasticsearch原理讲透了! 小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了. 来源:互联网侦察 | 2019-04-08 ...

  9. 手把手教你基于luatos的4G(LTE Cat.1)模组接入华为云物联网平台

    摘要:本期文章采用了4G LTE Cat.1模块,编程语言用的是lua,实现对华为云物联网平台的设备通信与控制 本文分享自华为云社区<基于luatos的4G(LTE Cat.1)模组接入华为云物 ...

  10. MTK 平台上查询当前使用的摄像头模组及所支持预览分辨率

    1,MTK 平台如何查询当前使用的是哪颗摄像头及相关的模组信息? 在该目录下可以查到当前平台及相关项目的配置文件 ProjectConfig.mk \ALPS.JB.MP.V1_W_20120919\ ...

随机推荐

  1. WIN32下的模拟时钟

    #include <Windows.h> #include <math.h> #include <tchar.h> #include "resource. ...

  2. Docker的数据卷与数据卷容器操作

    一.数据卷 数据卷(Data Volumes)是一个可供容器使用的特殊目录,它将主机操作系统目录直接映射进容器,类似于Linux中的mount动作. 数据卷可以提供很多有用的特性: 数据卷可以在容器之 ...

  3. 5个必知的高级SQL函数

    5个必知的高级SQL函数 SQL是关系数据库管理的标准语言,用于与数据库通信.它广泛用于存储.检索和操作数据库中存储的数据.SQL不区分大小写.用户可以访问存储在关系数据库管理系统中的数据.SQL允许 ...

  4. Ubuntu开机直接进入grub终极解决方法

    https://zhuanlan.zhihu.com/p/59062434 我遇到的问题是,每一步都操作没问题,但是开机还是会进入grub.最后只能进bios解决了. 我的服务器是supermicro ...

  5. CSS & JS Effect – FAQ Accordion & Slide Down

    效果 参考: Youtube – Responsive FAQ accordion dropdown | HTML and CSS Tutorial 几个难点 1. 如何 align left for ...

  6. 提升软件测试效率与灵活性:探索Mock测试的重要性

    Mock测试是测试过程中的一种方法,用于替代那些难以构造或获取的对象,通过创建虚拟对象来进行测试.所谓难以构造的对象如何理解呢? 举例来说,像HttpServletRequest这样的对象需要在具有s ...

  7. Rust字符串类型全解析

    字符串是每种编程语言都绕不开的类型, 不过,在Rust中,你会看到远比其他语言更加丰富多样的字符串类型. 如下图: 为什么Rust中需要这么多种表示字符串的类型呢? 初学Rust时,可能无法理解为什么 ...

  8. SuperMap iServer数据动态更新刷新地图与数据服务

    更新:2022年6月27日 SuperMap iServer 11i 底层修改逻辑,增加智能指针.11i版本不需要以下操作即可实现 一.使用背景 有这么一个需求,后端也就通过SuperMap iDes ...

  9. LeetCode 218. 天际线问题 (扫描线+优先队列)

    扫描线+优先队列 https://leetcode-cn.com/problems/the-skyline-problem/solution/tian-ji-xian-wen-ti-by-leetco ...

  10. placement new --特殊的内存分配

    placement new 是 C++ 中的一种特殊的内存分配技术,用来在指定的内存地址上直接构造对象.与普通的 new 运算符不同,placement new 并不分配新的内存,而是在已经分配好的内 ...