单片机通过WH-LTE-7S4和外网服务器进行4G通信

2023-11-16

【您想要实现什么功能?】:

                     单片机通过WH-LTE-7S4模块和外网服务器进行4G通信

【您是如何连接和设置的?】:

                      我还不太清楚如何设置
【您遇到什么问题?】:

                       1、你们网站上介绍的都是用你们公司专用的软件来设置4G模块TCP连接的外网地址和端口号,但是我需要在单片机程序中用C语言设置。我看你们的教程上用如下方法进行设置:
                           (1)、AT+WKMOD=NET 
                           (2)、AT+SOCKAEN=ON 
                           (3)、AT+SOCKA=TCP,test.usr.cn,2317 
                           (4)、AT+SOCKASL=LONG 
                           (5)、AT+Z 
                            请问:用这种方式设置完毕,如果系统断电重启(单片机断电重启+7S4模块断电重启),设置后是永久生效还是系统重新上电后还需要再次重复上述设置?
                       2、 我的外网没有域名,只有IP地址,假如外网IP地址为192.168.1.6,端口号为5000,
                             是不是单片机给7S4模块发送如下字符串  AT+SOCKA=TCP,192.168.1.6.5000 
                             就可以配置7S4模块和我的外网进行TCP连接(进入透传状态)呢?
                       3、我如何知道7S4模块已经和外网服务器TCP连接成功(进入透传状态)了呢?
                            我之前用的是移远的EC20模块,当我给EC20模块发送如下字符串   AT+QIOPEN=1,0,\"TCP\",\"10.37.19.86\",5000,0,2\r\0
                            如果移远EC20模块返回字符串\r\nCONNECT\r\n,就表示模块和外网服务器TCP连接成功(进入透传状态)
                            请问:
                                   我如何知道7S4模块什么时候和外网服务器TCP连接成功(进入透传状态)呢?判断的依据是什么呢?是不是只能依据引脚LINKA来判断TCP连接成功呢?

                      4、单片机运行一段时间后,有可能需要更换外网IP地址和端口号,我想用手机APP进行设置,请问:
                            如果当前正在TCP连接状态时(但是7S4模块当前没有处于发送报文状态),也可以通过如下方法进行设置新的IP地址吗?
                           (1)、AT+WKMOD=NET 
                           (2)、AT+SOCKAEN=ON 
                           (3)、AT+SOCKA=TCP,test.usr.cn,2317 
                           (4)、AT+SOCKASL=LONG 
                           (5)、AT+Z 
                     5、当前7S4模块正在TCP连接状态(透传状态),要想更新7S4模块的IP地址和端口号,   是不是一定要先发送+++,等到7S4返回OK后,再
     通过如下方法进行设置新的IP地址吗?
                           (1)、AT+WKMOD=NET 
                           (2)、AT+SOCKAEN=ON 
                           (3)、AT+SOCKA=TCP,test.usr.cn,2317 
                           (4)、AT+SOCKASL=LONG 
                           (5)、AT+Z 
                     6、我怎么知道发送的报文是往SOCKETA发送还是往SOCKETB发送呢?
                     7、我怎么往指定的SOCKETA发送呢?
                     8、我怎么往指定的SOCKETB发送呢?
                     9、我想同时开2个SOCKET(SOCKETA和SOCKETB),应该如何给7S4发送命令呢?如何知道SOCKETA的TCP连接成功(进入透传状态)呢?
如何知道SOCKETB的TCP连接成功(进入透传状态)呢?

 

设置软件的设置方法您可以看一下案例http://www.usr.cn/Faq/369.html

1、只要不恢复出厂参数就不会失效

2、不可以,必须是公网IP的服务器地址

3、是否建立socket连接可以用指令查询AT+SOCKALK也可以通过link引脚的电平判断,建立后输出高电平 (1.8V),未建立连接时输出低电平.

4、可以,但是需要进入配置状态才能发指令

5、是的

6、串口的数据会同时发往两个服务器

但是WH-LTE-7S4 V2 支持套接字分发协议,可以通过特定的协议将数据发往不同的 Socket,也可以将不同 Socket 接收的数据增加包头包尾进行区分

7、8  同6

9、同3 AT+SOCKALK  AT+SOCKBLK,默认都是开启的

可以看一下附件的参考demo,没有其他的C语言相关资料抱歉

附件:

基于7s4AT指令设置-V1.0.rar [4.7 MB]

 

 

1、我有外网IP地址和外网端口号,但是我没有外网域名

       假如我的外网IP地址为192.168.1.6,外网端口号为5000,
       是不是单片机给7S4模块发送如下字符串  AT+SOCKA=TCP,192.168.1.6.5000 
       就可以配置7S4模块和我的外网服务器进行TCP连接(进入透传状态)呢?

 

2、我的单片机每隔10分钟断电重启1次(特殊需要,采集完1次传感器数据,发送给服务器后就断电,目是省电,10分钟后会自动重启【有重启电路支持】)

     每次单片机启动时,我希望按照以下步骤进行工作:

           (1)、先读取网络状态(希望检测网络是否有4G信号,目的是上传给服务器进行观察分析)

           (2)、然后读取信号强度(目的是上传给服务器进行观察分析)

            (3)、然后让7S4和服务器进行TCP连接

     请问:

           是否每次都要按照如下步骤初始化7S4模块呢?

             第一步:发送AT+SYSINFO

            第二步:发送AT+CSQ

           第三步:

                           (1)、AT+WKMOD=NET 
                           (2)、AT+SOCKAEN=ON 
                           (3)、AT+SOCKA=TCP,192.168.1.6,5000
                           (4)、AT+SOCKASL=LONG 
                           (5)、AT+Z    

         第四步:等待LINKA引脚变成高电平或者通过AT+SOCKALK指令查询   

         第五步:当TCP连接成功,发送数据到服务器

3、7S4模块的TCP连接断开后自动重连时间默认是多少呢?

4、是否可以在给7S4配置IP地址的时候,配置自动重连时间呢?

 

1、您这是一个局域网

公网IP是无论在哪个电脑上都可以ping通的

2、不恢复出厂就不用重新配置,但是需要发指令以前进入配置状态

3、默认是5S

4、重连时间是一条单独的指令比如:设置/查询 socketA 超时重连时间 AT+SOCKATO 范围1-100S

具体您看一下软件设计手册https://www.usr.cn/Down/WH-LTE-7S4%20V2_software_V1.0.4.pdf


 

1. 串口设备给模块发送“+++”,模块收到“+++”后,会给设备发送一个‘a’。 在发送“+++”之前的打包时间内不可发送任何数据。 

2. 当设备接收‘a’后,必须在 3 秒内给模块发送一个‘a’。 

3. 模块在接收到‘a’后,给设备发送“+OK”,并进入“临时指令模式”。 

4. 设备接收到“+OK”后,知道模块已进入“临时指令模式”,可以向其发送 AT 指令。

5.完成at指令配置后 ,串口设备给模块发送指令“AT+ENTM”退出配置状态,或者不使用AT+ENTM而直接发送“AT+Z”重启模块时参数生效。 

405tf系列socket套接字分发协议http://www.usr.cn/Faq/433.html

总结:

       过了几天,亲自在STM32F407上进行了验证,单片机和LTE-7S4模块进行4G通信全过程如下

       (1)、LTE-7S4模块上电复位,等待大约10秒钟。(注:如果等待LTE-7S4时间过短,当单片机给LTE-7S4模块发送“+++"指令时,LTE-7S4模块不会应答,造成以下流程无法继续走下去)

      (2)、单片机给LTE-7S4模块发送“+++"指令,LTE-7S4会返回字符串“a”(注:如果没有收到字符串“a”,1秒钟内单片机不允许发送任何指令给LTE-7S4)

      (3)、单片机如果收到字符串“a”,然后给LTE-7S4模块发送“a"指令,LTE-7S4会返回字符串"+ok\r\n"

                   当单片机收到字符串"+ok\r\n",表示LTE-7S4模块已经进入AT模式。

      (4)、单片机如果收到字符串"+ok\r\n",然后给LTE-7S4模块发送"AT+WKMOD=NET\r\n"指令,LTE-7S4会返回字符串"\r\nOK\r\n\r\n"

      (5)、单片机如果收到字符串"\r\nOK\r\n\r\n",然后给LTE-7S4模块发送"AT+SOCKAEN=ON\r\n"指令,LTE-7S4会返回字符串"\r\nOK\r\n\r\n"

      (6)、单片机如果收到字符串"\r\nOK\r\n\r\n",然后给LTE-7S4模块发送"AT+SOCKA=TCP,218.6.144.60,5000\r\n"指令,LTE-7S4会返回字符串"AT+SOCKA=TCP,218.6.144.60,5000\r\n"       

      (7)、单片机如果收到字符串"AT+SOCKA=TCP,218.6.144.60,5000\r\n",然后给LTE-7S4模块发送"AT+SOCKASL=LONG\r\n"指令,LTE-7S4会返回字符串"\r\nOK\r\n\r\n"

      (8)、单片机如果收到字符串"\r\nOK\r\n\r\n",然后给LTE-7S4模块发送"AT+HEARTEN=OFF\r\n"指令,LTE-7S4会返回字符串"\r\nOK\r\n\r\n"

      (9)、单片机如果收到字符串"\r\nOK\r\n\r\n",然后给LTE-7S4模块发送"AT+Z\r\n"指令,LTE-7S4会返回字符串"\r\nOK\r\n\r\n"

                   当单片机收到字符串"\r\nOK\r\n\r\n",表示LTE-7S4模块已经退出AT模式返回到透传模式。

     (10)、开始检测LINKA引脚电平,如果LINKA引脚点亮,表示TCP连接成功,单片机可以给服务器发送报文啦。

                    注:WORK指示灯也必须点亮(表示LTE-7S4模块工作正常)

                            NET灯闪烁2次,表示检测到2G网络

                            NET灯闪烁3次,表示检测到3G网络

                            NET灯闪烁4次,表示检测到4G网络

还参见如下博文:

      https://blog.csdn.net/ba_wang_mao/article/details/109319593?utm_medium=distribute.pc_relevant.none-task-blog-title-1&spm=1001.2101.3001.4242

 

     

 

 

 

            

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

单片机通过WH-LTE-7S4和外网服务器进行4G通信 的相关文章

  • nas linux手机照片备份,本身着手,组建简洁好用的NAS!(存储同步篇)

    之前老张给人人带来了NAS安装 戳这里 和根基设置 戳这里 过程 那么接下来就是正戏了 此次包含了共享设置 速度测试 多盘设置 照片视频同步设置的过程 也是NAS在内网情况中的本职工作 事实要怎么做呢 一路来看看吧 原文来自 www pp0
  • Word文档标题编号调整

    现象 标题目录编号错乱 工具 Word2016 1 先选中第一个一级目录 自定义多级目录样式 包含所有的文档目录级别 1 2 3 4 5 2 将第2章标题下的2级目录标题 2 1环境说明 使用格式刷刷成1级标题中设置的样式 3 选中 第3章
  • Python小游戏————滑雪小游戏代码开源

    作者 小刘在这里 每天分享云计算网络运维课堂笔记 励志爬上IT介顶峰 努力不一定有回报 但一定会有收获加油 一起努力 共赴美好人生 夕阳下 是最美的 绽放 愿所有的美好 再疫情结束后如约而至 目录 一 主代码 二 cfg 三 README

随机推荐

  • Java实现音频播放

    import java io File import java io IOException import javax sound sampled AudioFormat import javax sound sampled AudioIn
  • Day2 Data Management I

    This article is based on R 4 1 2 1 Data import Export 1 1 Import data 1 1 1 import data by base R Example General import
  • jsp向服务器上传文件,jsp ftp 上传文件到服务器

    jsp ftp 上传文件到服务器 内容精选 换一换 安装传输工具在本地主机和Windows云服务器上分别安装数据传输工具 将文件上传到云服务器 例如QQ exe 在本地主机和Windows云服务器上分别安装数据传输工具 将文件上传到云服务器
  • 转:java实现 阿拉伯数字转换为汉字数字 算法

    转载链接 http blog csdn net zhanghao hulk article details 28594105 转载代码 public class NumberFormatUtil static String units 十
  • yum使用源安装Nginx

    Nginx 使用源安装 进入源的目录 sudo vim etc yum repos d 创建nginx源文件 touch nginx repo 添加nginx repo配置文件 https nginx org en linux packag
  • git仓库的创建以及连接远程仓库

    供自己后期复习使用 如果哪里不对希望大佬指正 1 先创建远程仓库 2 本地仓库创建以及连接远程仓库 1 配置个人信息 git config global user name 自己git的name git config global user
  • linux下使用 du查看某个文件或目录占用磁盘空间的大小

    du ah max depth 1 这个是我想要的结果 a表示显示目录下所有的文件和文件夹 不含子目录 h表示以人类能看懂的方式 max depth表示目录的深度 du命令用来查看目录或文件所占用磁盘空间的大小 常用选项组合为 du sh
  • 关于云成本管理和优化 FinOps,你需要知道的一切

    FinOps 是什么 FinOps 是一种云成本管理和优化的解决方案 并为组织 企业 团队提供了系统化的方法论 其中每个人都应该对自己的云资源成本负责 FinOps 是 Finance 和 DevOps 的合成词 强调业务团队和研发团队的沟
  • xrd计算晶面间距_origin分析XRD(6.晶格常数计算立方晶系举例)

    微信公众号试行乱序推送 为了不错过更新 请点击本页面最上方的 结构分析表征 进入公众号主页 点击右上角的三个小点点 在弹出的界面点击 设为星标 并在看完图文或视频后点击右下角的 在看 和 赞 本公众号以各类仪器的测试 分析教程 欢迎关注同名
  • Windows10 配置ftp实现局域网文件共享

    准备两台电脑能相互ping通 设置网络共享 控制面板 gt gt 网络和Internet gt gt 网络和共享中心 gt gt 高级共享设置 开启WindowsDefender 防火墙允许FTP文件共享 这里我在自己电脑上没找到FTP的选
  • iOS17适配指南-新版

    文章目录 一 iOS17适配点 二 具体代码 一 iOS17适配点 UIView与UIViewController 可以设置数据为空时的占位视图 增加SymbolAnimations 通过addSymbolEffect 与removeSym
  • Unuty3D开发ai2thor

    一 Edit 用Uinity3D打开ai2thor unity项目进行编辑 二 Build 方法一 1 修改ai2thor目录下的task py文件 注释86 89行 并添加一行Unity3D软件的路径 if os path exists
  • Qt5中通过信号槽传递多个参数

    在Qt中的信号槽机制中 信号能携带的参数最多不超过6个 那么超过6个时怎么办呢 这时 可以使用QByteArray作为参数 把需要传递的参数全部打包到这一个参数里 在槽函数里再将打包的参数逐项解析出来 信号发送 void signal ms
  • Unity学习记录——空间与运动

    Unity学习记录 空间与运动 前言 本文是中山大学软件工程学院2020级3d游戏编程与设计的作业3 编程题 1 模拟太阳系 首先向unity中Assets添加所找的贴图素材Solar Textures Solar System Scope
  • 基于verilog设计一个硬件看门狗

    文章目录 一 看门狗简介 二 看门狗分类 三 看门狗模块设计 3 1 看门狗模块设计框图 3 2 顶层 3 3 计数器 3 4 边沿检测器 3 5 信号延迟模块 一 看门狗简介 看门狗 也称看门狗定时器 是常见于系统的一种外设 看门狗似乎就
  • 嵌入式开发中常用且杂散的命令

    1 mount命令 挂载linux系统 mkdir tmp share mount t nfs 10 77 66 88 share tmp share o nolock tcp cd tmp share 挂载Windows系统 mkdir
  • 【Linux】Linux 基础开发工具(yum、vim、gcc/g++、gdb、make/makefile、git)

    文章目录 一 Linux 软件包管理器 yum 1 1 软件包 1 2 搜索 安装 卸载软件包 1 3 拓展 rz sz 工具 二 Linux 开发工具 2 1 编辑器 vim 2 1 1 vim 的基本概念 2 1 2 vim 的基本操作
  • python爬虫——爬取英雄联盟全英雄皮肤

    爬取英雄联盟全英雄皮肤 import requests import re 1 分析目标网页 确定爬取的url路径 headers参数 base url https game gtimg cn images lol act img js h
  • SQL sever FullText Search(MSSQLSERVER)为什么启动不了?

    查看一下事件日志里的错误 然后把具体的错误找出来 如果是出现 Microsoft Search 服务和下列不存在的服务存在相依的关系 NTLMSSP 的话 就重新安装 microsoft网络客户端 本地连接 属性安装microsoft网络客
  • 单片机通过WH-LTE-7S4和外网服务器进行4G通信

    您想要实现什么功能 单片机通过WH LTE 7S4模块和外网服务器进行4G通信 您是如何连接和设置的 我还不太清楚如何设置 您遇到什么问题 1 你们网站上介绍的都是用你们公司专用的软件来设置4G模块TCP连接的外网地址和端口号 但是我需要在