tcp/tcp_server/tcp_server.ino

73 lines
2.1 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

#include <WiFi.h>
#include <WiFiClient.h>
#include <WiFiAP.h>
#define PORT 9100 //端口号
void SerialRe(void);
uint8_t buffer[512]; //串口读取缓冲
const char* ssid = "101_lei";
const char* password = "leiyun1314";
WiFiServer server(PORT);
WiFiClient client;
IPAddress myIP;
void taskUartRe(void *parm);
void setup() {
Serial.println();
Serial.begin(921600);
Serial.setRxBufferSize(512); //设置接收缓冲
/**WIFI热点AP模式**/
// Serial.println("Configuring access point...");
// You can remove the password parameter if you want the AP to be open.
// WiFi.softAP(ssid, password); //WIFI AP模式的开启
// myIP = WiFi.softAPIP(); //获取本地ip地址
// Serial.println("AP IP address: ");
// Serial.println(myIP);
/**WIFI热点AP模式**/
WiFi.begin(ssid, password); //WIFI STA模式的连接
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
/***查询ipsta模式**/
Serial.println("");
Serial.println("WiFi connected");
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
/***查询ipsta模式**/
/**查询ipap模式**/
// myIP = WiFi.softAPIP();
// Serial.println("AP IP address: ");
// Serial.println(myIP);
/**查询ipap模式**/
server.begin(); //开启TCP服务端并且监听
xTaskCreate(taskUartRe,"taskUartRe",4096,NULL,1,NULL);
}
void loop() {
if(!client.connected()){ //查询对象client是否处于连接状态
// myIP = WiFi.softAPIP();
// Serial.println("AP IP address: ");
// Serial.println(myIP);
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
client = server.available();
}
delay(1000);
}
///////////////////////////////////////////////
void taskUartRe(void *parm){
Serial.println("taskUartRe create...");
for(;;){
while(Serial.available()>0){
int cnt=Serial.available();
if(cnt<=512){
Serial.readBytes(buffer,cnt);
if(client) client.write(buffer,cnt);
}else {
Serial.readBytes(buffer,512);
if(client) client.write(buffer,512);
}
}
}
}