局域网内使用UDP广播方式搜索wifi模块的使用说明
局域网内搜索接入路由器的WIFI模块的IP地址和MAC地址。 搜索模块发送UDP数据包返回模块ip和mac地址。 局域网内搜索,确定模块接入无线路由器后的IP。

如上图所示,模块作为STA链接如下路由器,电脑和手机也接入路由器;因为模块的IP地址是由路由器分配的,不是确定IP地址,所以PC或者手机无法与模块建立连接,故需要采用广播搜索,获取到模块在STA模式的IP地址。另外,该搜索方法还可以实现网络AT指令功能,具体操作如下:
1.通过UDP广播(广播地址: xx.xx.xx.255,端口: 4196)发送一个口令,默认口令为: "HF-A11ASSISTHREAD",该口令可用AT+ASWD命令设置,最长20字节。
2.模块收到口令后,如果口令正确,向该地址(单播,端口: 48899)发送本地IP地址和MAC地址和模块名称。(IP, MAC, MID如 10.10. 100. 254,D8BOCFFF1234, USR-WIFI232-T)。
3.搜索工具收到模块返回的IP地址及MAC地址后,再回送一个"+ok",模块收到后进入连接状态。
4.进入连接状态后,模块可以正常接收网络AT指令,另外工具需要在1分钟内发送一个指令,如用户没有指令输入,则发送AT+W以保持连接状态。
5.用AT+Q命令退出连接状态。备注:如果不需要网络AT命令,只是获取模块IP,则不需要进行第3、4、5步操作。
使用网络助手测试搜索模块IP和MAC地址 下图为测试步骤:

配置相关数据

测试UDP收发情况

测试串口收发情况
完成
原文地址:http://www.zlmcu.com/document/UDP_Search_wifi.html
局域网内使用UDP广播方式搜索wifi模块的使用说明的更多相关文章
- 局域网内通过UDP协议进行传输接受数据——AsyncUdpSocket
在相同的局域网内,可以通过Udp协议进行数据的传输和接收,Udp协议与Http协议不同,Udp更加方便快捷,省去了很多步骤,但是也有很多传输问题,在局域网内小范围传输数据时Udp还是非常能够胜任的. ...
- Android开发—智能家居系列】(二):用手机对WIFI模块进行配置
在实际开发中,我开发的这款APP是用来连接温控器,并对温控器进行控制的.有图为证,哈哈. 上一篇文章[Android开发—智能家居系列](一):智能家居原理的文末总结中写到: 手机APP控制智能温控器 ...
- 通过UDP广播实现Android局域网Peer Discovering
本文是对个人笔记中内容的整理,部分代码及图片来自互联网,由于不好找到原始出处,所以未加注明. 如有痛感,联系删除. 本文将介绍以下知识点: TCP与UDP的区别: 单播.多播.广播: Java中实现U ...
- WIFI模块ESP8266的使用指南【转】
本文转载自:http://www.itdadao.com/articles/c15a814052p0.html 本文主要对讲述ESP8266模块硬件连接工作,以及作为服务器和客户端情况下的配置实现的详 ...
- Android 通过局域网udp广播自动建立socket连接
Android开发中经常会用到socket通讯.由于项目需要,最近研究了一下这方面的知识. 需求是想通过wifi实现android移动设备和android平台的电视之间的文件传输与控制. 毫无疑问这中 ...
- Python实现局域网内屏幕广播的技术要点分析(转载)
转载:https://mp.weixin.qq.com/s?timestamp=1498531736&src=3&ver=1&signature=Eq6DPvkuGJi*G5s ...
- ICMP协议 广播以查询局域网内的所有主机
看到了很多局域网内的主机扫描工具,在想怎么去实现这样一个工具.前几天看了Ping源码--ICMP协议的实例,ICMP可以用来探测网联网内的任一主机,ICMP和广播地址结合来扫描局域网内的所有主机不是很 ...
- wifi智能插座 一键扫描局域网内插座Ip及其它信息 Python源代码API
转载请保留原地址. http://www.cnblogs.com/lsqandzy 最近买了几个智能插座玩,插座安装在家里,连接好wifi,不管你人在哪里,通过手机,一键开启或关闭插座电源,想象一下, ...
- 可以搜索局域网内的所有IP地址的软件
几乎都用现有的工具,直接扫描,这里我已python为例,搜索一下局域网内所有活动IP,基本原理就是ping,对返回的结果进行分析,从而判断对应ip是否活动,代码很简单,实验环境win10+python ...
- 【原创】基于UDP广播的局域网Web Window Service日志跟踪小工具
一直感觉Web开发或者windows服务的日志跟踪调试不是很方便 特别是在生产环境服务器上面 目前一般的解决方案是通过各种日志工具把错误信息和调试信息 ...
随机推荐
- 学习unigui【21】unistringGrid的标题栏动态增加
var Column: TUniGridColumn; begin Column := TUniGridColumn(unstrngrd_summary.Columns.Add); Column.Ti ...
- Jenkins pipeline jenkinsfile的两种写作方式声明式和脚本式
Jenkins pipeline jenkinsfile的两种写作方式,声明式和脚本式. 为什么需要pipeline? 在多年前Jenkins成为最流行的持续集成服务器的Jenkins 1.x时代,所 ...
- python之“if __name__=="__main__"”的代表的意思和用法
创建下方脚本A def print_sum(a): print(a) print_sum(20) if __name__=="__main__": print("test ...
- 常用的 JVM 配置参数有哪些?
常用的 JVM 配置参数 JVM 配置参数可以用来控制 Java 程序的内存分配.垃圾回收.性能优化等.以下是一些常用的 JVM 配置参数: 1. 堆内存相关参数 -Xms:设置 JVM 初始堆内存大 ...
- DPDI(Dispatch PDI)kettle调度管理平台之实操演练第001讲--手工调度本地PDI任务生成日期维度数据
DPDI实操演练第一讲 1.DPDI简介 DPDI Online 您的智能ETL任务调度专家 DPDI Online 是一款基于Kettle的强大在线任务调度平台,凭借其高效与灵活性,专为调度和监控K ...
- Git错误,Updates were rejected because the tip of your current branch is behind
问题:Updates were rejected because the tip of your current branch is behind 在push代码时,遇到这种问题Updates wer ...
- <HarmonyOS第一课01>HarmonyOS介绍
视频链接: https://developer.huawei.com/consumer/cn/training/course/slightMooc/C101717496599725471?ha_sou ...
- AD 侦查-MSRPC Over SMB
本文通过 Google 翻译 AD Recon – MSRPC Over SMB (135/139/445) 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行了校正及个别注释补充. 导航 0 ...
- Spring Boot 不能加载 tcnative-2.dll 库(Can't load library: tcnative-2.dll)
Spring Boot 不能加载 tcnative-2.dll 库 本文将介绍怎样解决 Spring Boot 在启动时抛出 "org.apache.tomcat.jni.LibraryNo ...
- Java 在循环里发生异常会跳出循环
不知道他验证了没... package com.zjw; /** * @author 朱俊伟 * @date 2020/11/12 22:09 */ public class TestError { ...