WIFI232模块:串口转WiFi教程与设置详解

需积分: 9 1 下载量 159 浏览量 更新于2024-07-22 收藏 1.38MB PDF 举报
本资源是一份名为"wifi232-01-USE"的文档,主要关注于微雪电子公司的WIFI232模块,这是一个专为实现串口与WiFi数据包双向透明转发设计的产品。该模块的主要功能包括串口与WiFi的连接,以及对模块进行设置、编程和网络配置。 首先,文档详细介绍了硬件连接步骤,指出由于模块的串口采用3.3V TTL电平,用户需通过底板或适配器将其连接至计算机,以便进行串口通信。WIFI232-A/B模块提供两种工作模式:串口模式和485模式,通过跳线帽的选择来切换。 在网络连接部分,文档指导用户如何将模块接入普通路由器网络,包括设置STA模式(作为无线客户端)、配置SSID和加密方式,并强调了重启模块的必要性。此外,还提到了通过RJ45网口利用模块实现电脑通过WiFi上网的方法。 模块设置方面,文档提供了三种配置方式:通过模块内置网页、串口使用AT指令以及配套软件进行设置。这些设置可以永久保存,使得用户可以根据实际需求灵活调整参数。 编程部分涉及串口编程、网络端编程以及使用模块创建虚拟串口,便于开发者根据项目需求编写相应的应用程序。应用场景示例包括无线遥控、远程连接、无线数据采集以及透明串口应用,展示了模块的广泛实用性。 最后,文档还介绍了模块恢复出厂设置的方法,以及附录中的更多测试和使用指南,确保用户能全面掌握WIFI232模块的使用和维护。 这份文档为WIFI232模块的使用者提供了全面的指南,无论是硬件连接、网络配置,还是高级编程和应用场景,都能帮助用户充分利用这一设备进行串口与WiFi的数据交互。
2023-07-08 上传

#define sensorpin 34 #define DHTPIN 2 #include <BH1750.h> BH1750 lightMeter; #include <Wire.h> #include <DHT.h> DHT dht(DHTPIN, DHT11); #include<WiFi.h> #include<PubSubClient.h> char* ssid ="17group";//此处需要改成你的wifi名称 const char*password =  "hhj20011019";  //你的wifi密码 //以下四行参数勿动 const char*mqttServer = "39.106.6.44"; const int mqttPort =1886; const char*mqttUser = "iotlab"; const char*mqttPassword = "iot20121013"; WiFiClient espClient; PubSubClient client(espClient); char msg[50]; //用于存储向外发送的消息 //回调函数,topic是主题,payload就是收到的信息 void callback(char*topic, byte* payload, unsigned int length) {   Serial.print("Messagearrived in topic: ");   Serial.println(topic);   Serial.print("Message:");   for (int i = 0; i< length; i++) {     Serial.print((char)payload[i]);   }   Serial.println();   Serial.println("-----------------------"); } void setup() {   Serial.begin(115200);   WiFi.begin(ssid,password);   while (WiFi.status()!= WL_CONNECTED) {     delay(500);     Serial.println("Connectingto WiFi..");   }   Serial.println("Connectedto the WiFi network");   client.setServer(mqttServer,mqttPort);   client.setCallback(callback);   while (!client.connected()){     Serial.println("Connectingto MQTT...");     //请将cs202112345后面的数字替换成自己的学号     if (client.connect("cs225150340",mqttUser, mqttPassword )) {       Serial.println("connected");     }else {       Serial.print("failedwith state ");       Serial.print(client.state());       delay(2000);     }   }   client.subscribe("sub225150340");//请将后面的数字替换成自己的学号   {   Serial.begin(115200);   // Initialize the I2C bus (BH1750 library doesn't do this automatically)   Wire.begin();   // On esp8266 you can select SCL and SDA pins using Wire.begin(D4, D3);   // For Wemos / Lolin D1 Mini Pro and the Ambient Light shield use   // Wire.begin(D2, D1);   lightMeter.begin();   } } void loop() {   client.loop();//此句为循环监测是否有消息过来,勿删   //以下是发送一组数据的例子,实际场景替换成读取的传感器数值   float hum = dht.readHumidity();   float temp = dht.readTemperature();   float lux = lightMeter.readLightLevel();   int soilhum  =analogRead(sensorpin); snprintf(msg,50,"%.2f,%.2f,%.1f,%d",hum,temp,lux,soildhum); Serial.println(msg); //这行只是为了调试用 client.publish("pub225150430", msg); //请将后面的数字替换成自己的学号 delay(1000); } 如何接收 #define sensorpin 34 int svalue; void setup(){ Serial.begin(9600); } void loop(){ svalue=analogRead(sensorpin); Serial.println(svalue); delay(1000); } 上的数据

2023-05-31 上传