与Openwrt(WiFi模块)的通信

您所在的位置:网站首页 openwrt无线没有扫描 与Openwrt(WiFi模块)的通信

与Openwrt(WiFi模块)的通信

2023-09-04 09:36| 来源: 网络整理| 查看: 265

一、WiFi模块单独使用(不连外网)

电脑连接WiFi模块发出的WiFi,或者直接用网线直接连接电脑和WiFi模块,就可以给WiFi模块发数据了。 一:WiFi模块上电后长按Reset键初始化 在这里插入图片描述

二:断开电脑与其它的网络连接,用网线连接上WiFi模块和电脑 在这里插入图片描述

三:打开浏览器,输入192.168.1.1进入WiFi配置页面,密码:123456登录。然后刷入固件:16M-V2-升级固件(初始是英文页面,没有中文包,刷固件后就有了,我的已经刷过了是中文) 在这里插入图片描述 在这里插入图片描述在这里插入图片描述在这里插入图片描述 点击浏览,找到固件 在这里插入图片描述 在这里插入图片描述

然后点击刷写固件

在这里插入图片描述

进入后点击执行,等待一段时间后刷好了自动跳回登录界面。重新登录 然后拔掉网线,连接WiFi模块的WiFi-robot,(直接不拔网线用网线连接也可以) 在这里插入图片描述

打开串口调试软件,修改两边对应的参数(串口在电脑上查看,波特率115200,打开电脑串口,然后修改右边网络协议类型,开始监听就可以测试了)(电脑一定要连WiFi模块发出的网络) 在这里插入图片描述

验证:(串口线别接错)然后就可以通过WiFi模块控制单片机了 在这里插入图片描述 单片机控制的话直接写单片机串口程序就好了,设置波特率,串口接收发送。我写的是ardino程序控制小灯泡验证。

#include int led = 2; char kk; void setup() { // put your setup code here, to run once: pinMode(led,OUTPUT); Serial.begin(115200); } void loop() { // put your main code here, to run repeatedly: while(Serial.available()>1){Serial.read();} kk = Serial.read(); if(kk=='a'){ digitalWrite(led,HIGH); } if(kk=='b'){ digitalWrite(led,LOW); } }

还有可以用java程序给WiFi模块发数据。(还是需要电脑连模块WiFi) 打开串口显示WiFI模块接收的数据,右边的连接关掉,不然端口占用接收不到。 在这里插入图片描述运行java程序,分别发送三个数据,上面有显示接收。

在这里插入图片描述 java代码如下

package CLP; import java.io.IOException; import java.io.OutputStream; import java.net.Socket; import java.util.Scanner; public class CUP { public static void main(String[] args) throws IOException { Socket socket = new Socket("192.168.1.1",2001); OutputStream os = socket.getOutputStream(); Scanner sc = new Scanner(System.in); while(true){ String name = sc.nextLine(); os.write(name.getBytes()); } } }

老板让写个手机app控制,没学过,搞了两天没搞出来,暂时先放弃了,后面搞出来了再加。。。。。。。 二、WiFi模块桥接路由器 WiFi模块发出的WIFi距离比较短,如果想扩大距离,可以桥接路由器和WiFi模块,然后电脑或手机连接同一局域网下也可以给WiFi模块发数据。

电脑连接路由器A的无线网络,打开网页输入tplogin.cn。进入路由器配置页面,在lan口设置里先把IP地址手动设置为192.168.3.1。然后找到WAN口设置(有些路由器叫上网设置),把DNS地址复制下来。

在这里插入图片描述在这里插入图片描述我的DNS:192.168.1.2

断开电脑与其它的网络连接,用网线连接上WiFi模块和电脑 在这里插入图片描述 打开网页,输入192.168.1.1.。进入wifi模块配置页面。。如果已经有无线网络存在 ,先把无线网络删除。 在这里插入图片描述

在这里插入图片描述 在这里插入图片描述 然后点击“网络”中的“接口”,找到WWAN,点击修改。基本设置中把协议选为静态地址,切换协议。在IPV4地址里输入192.168.3.66。子网掩码输入255.255.255.0。IPV4网关输入192.168.3.1。然后在DNS服务器一栏中把之前复制路由器的DNS地址粘贴上去。最后点击保存应用。 在这里插入图片描述然后点击网络,点击防火墙。点击Port forwards。添加两个端口分别为8081和2001的新Port forwards。具体设置如图所示。 在这里插入图片描述在这里插入图片描述添加完之后如下 在这里插入图片描述 然后保存应用

然后在防火墙的基本设置中,把各个选项设置成下图所示,修改里面都弄成accept就好了,然后点击保存应用。

在这里插入图片描述接下来断开wifi模块与电脑的连接。用电脑连接路由器的wifi信号,输入tplogin.cn进入路由器配置页面。在应用管理里找到虚拟服务器,添加如下图所示的配置的两个虚拟服务器。 在这里插入图片描述 到此wifi模块已经与路由器桥接成功了,可以通过电脑或手机连接路由器,然后与wifi模块通信。(此时已经搜不到之前那个WiFi-root了,因为刚才把它删了)

测试,用电脑连接路由器,打开串口网络调试助手,在网络设置一栏里,把协议类型选为TCP Client,服务器IP地址改为192.168.3.66.服务器端口号为2001。然后用USB转TTL串口线连接wifi模块与电脑USB口(需要安装串口转USB驱动)。选择对应的COM口,波特率设置为115200。设置如下图所示: 在这里插入图片描述(服务器IP地址要改,要改,要改。。。) 写app的话也要改呢 这一个设置只能在同一局域网内使用!!!!!

三、用外网连接

(之前测试过可以,现在不知道为啥一直ping不通) 在路由器管理页面应用管理里找到DDNS 在这里插入图片描述 进入后注册一个花生壳域名,有免费的,然后回来登录,(可能是白嫖的不香,经常ping不通,不知道为啥)

在这里插入图片描述 然后在电脑的控制端 ping 域名:将得到一个IP地址 在这里插入图片描述 在这里插入图片描述 然后打开调试助手,填入信息: 在这里插入图片描述 我直接连接校园网(不是路由器发出的网络),能相互通信(之前的不行),我换成手机热点,具体可以还是不可以忘了,这次测试一直没ping通,也测试不了。。。。

后面看看有没有时间来搞一下,搞个app

串口调试软件和固件: 链接:https://pan.baidu.com/s/1YHartBUeJpV4U811mkMLPA 提取码:plr2



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3