11-51单片机ESP8266学习-AT指令(ESP8266作为TCP客户端,连接TCP服务器,用串口调试助手和手机TCP调试助手测试)
写完题目刚想起来一件事情,如果手机作为客户端(不连接路由器的情况下),手机连接模块的无线会分配一个IP地址,,,这个IP地址事先我也不知道....我先看看AT指令里面有没有一个指令可以打印一下连接自己wifi信号后的设备的IP地址的指令.
没找到.......................
算啦,我直接用手机连接,看一下手机分配的IP地址,然后再设置模块
咱们还是设置模块的工作模式为模式3
AT+CWMODE_DEF=3
发送AT+CIPMUX=0 启动单连接,先弄单连接
AT指令单连接可以做到透传
AT+CIPMUX=0
然后让模块连接服务器
AT+CIPSTART="TCP","192.168.4.2",8080
现在用手机发数据
现在让模块发给手机
单路连接时发送指令为AT+CIPSEND=x , x为发送的字节数
现在发个指令让模块透传,发数据之前不再发指令,让模块自动的转发
虽然设置了但是好像不可以..........
但是好像是换了指令了
AT+SAVETRANSLINK=1,"192.168.4.2",8080,"TCP"
看来应该是修改了,而且做成了保存的模式了,断电也会保存着设置,
新版的AT指令做的好像是专门做的保存在模块内部的设置,设置一次下次上电自动工作,不用二次配置了...
还有一点,这个指令可以直接发,不用配置单连接还是多连接,无论怎么配置但连接或者多连接对这个指令没有影响
所以建立TCP透可以直接一句话就可以
AT+SAVETRANSLINK=1,"192.168.4.2",8080,"TCP"
退出透传是发送 "+++"
但是那条指令还保存在模块内部,模块一断电上电还是会自动连接和透传的
要想清除这条指令,先发送 "+++"
然后 AT+RESTORE 恢复出厂设置
新版的指令做的挺好的,比以前的方便多了,太晚了睡觉,,,,
改天再写多连接模式
下一节
https://www.cnblogs.com/yangfengwu/p/9097803.html