当前位置: 首页 > news >正文

郑州餐饮网站建设公司排名云虚拟主机和网站建设

郑州餐饮网站建设公司排名,云虚拟主机和网站建设,东莞市建设信息网官网,seo公司 彼亿营销将ESP32设置为TCP服务器 介绍 TCP#xff08;Transmission Control Protocol#xff09;传输控制协议#xff0c;是一种面向连接的#xff08;一个客户端对应一个服务端#xff09;、可靠的传输层协议。在TCP的工作原理中#xff0c;它会将消息或文件分解为更小的片段Transmission Control Protocol传输控制协议是一种面向连接的一个客户端对应一个服务端、可靠的传输层协议。在TCP的工作原理中它会将消息或文件分解为更小的片段称为数据包然后通过Internet发送。这些数据包被TCP层接收后重新组合成完整的文件或消息。此外为了确保数据的传递成功TCP还会对数据流进行错误检查。如果发现错误TCP会请求重新传输丢失或损坏的数据包。 基本方法 ESP32设置为TCP服务器的流程 包含必要的库 在Arduino项目中首先需要包含与ESP32和网络通信相关的必要库 #include Arduino.h #include WiFi.h配置网络参数 设置用于ESP32访问点Access PointAP的网络参数如SSIDWi-Fi名称和密码。 const char *ssid esp32_tcp; const char *password 987654321;创建TCP服务器对象 使用WiFiServer类创建一个TCP服务器对象并指定服务器监听的端口。 WiFiServer server(1133);这里的1133是服务器监听的端口号你可以根据需要选择一个未被占用的端口。 设置服务器 在setup()函数中进行服务器的初始化和启动。 void setup() {Serial.begin(115200);WiFi.softAP(ssid, password);server.begin();Serial.print(IP:);// 串口打印AP_IPSerial.println(WiFi.softAPIP()); }这里WiFi.softAP(ssid, password)将ESP32配置为访问点server.begin()启动TCP服务器并使用Serial.println(WiFi.softAPIP())打印ESP32的IP地址。 处理客户端连接和通信 在loop()函数中通过server.available()检查是否有新的客户端连接。如果有新连接通过WiFiClient对象处理通信。 void loop() { // 循环检测有无客户端 有请求-能连接-有数据WiFiClient client server.available();// client指向发出请求的客户端对象if (client) {// 处理新客户端连接while (client.connected()) {if (client.available()) {//检测有无数据可读// 处理客户端发送的数据char val client.read();// 读取一个字节数据Serial.println(val);client.print(val); // 回发数据给客户端}}} else {client.stop();delay(2000);} }server.available(); 此函数用于检查是否有客户端试图连接到服务器。如果有客户端可用它将返回一个WiFiClient对象表示新的客户端连接。如果没有客户端试图连接则返回一个WiFiClient对象其值为false。 在循环检测新的客户端连接如果有新连接就在连接建立的状态下处理客户端发送的数据。 常用API ESP32的Arduino核心库Arduino core for ESP32提供了一组用于TCP通信的API。以下是关于ESP32 Arduino库中与TCP相关的一些重要函数和类的总结 WiFiServer 类: 构造函数 WiFiServer(uint16_t port)成员函数 begin(): 启动服务器开始监听指定端口。available(): 检查是否有客户端请求连接返回一个 WiFiClient 对象表示新的连接。status(): 返回服务器状态。stop(): 关闭服务器。 WiFiClient 类: 构造函数 WiFiClient()成员函数 connect(IPAddress ip, uint16_t port): 连接到指定IP地址和端口的服务器。connect(const char *host, uint16_t port): 连接到指定主机名和端口的服务器。connected(): 检查是否与服务器建立了连接。available(): 检查是否有数据可用于读取。read(): 读取一个字节的数据。readBytes(char *buffer, size_t length): 读取指定长度的数据。print() / println(): 向服务器发送数据。stop(): 关闭连接。 WiFi 操作相关: WiFi.softAP(ssid, password): 将ESP32配置为Access Point热点。WiFi.softAPIP(): 获取ESP32 Access Point的IP地址。WiFi.localIP(): 获取ESP32的本地IP地址。 这些是ESP32 Arduino核心库中与TCP通信相关的一些重要函数和类。详细的文档可以查看ESP32 Arduino文档。 完整程序和测试效果 #include Arduino.h #include WiFi.h // ESP32作为tcp服务端手机或者电脑的调试助手 // 作为客户端进行通信const char *ssid esp32_tcp; const char *password 987654321; // tcp服务端对象 WiFiServer server(1133);void setup() {Serial.begin(115200);WiFi.softAP(ssid, password);server.begin();// 串口打印AP_IPSerial.print(IP:);Serial.println(WiFi.softAPIP()); }void loop() {// 循环检测有无客户端 有请求-能连接-有数据WiFiClient client server.available(); // client指向发出请求的客户端对象if (client){Serial.println(新客户端.);Serial.println(client.localIP());while (client.connected()){// 连接成功进入循环if (client.available())//检测有无数据可读{char val client.read(); // 读取一个字节数据Serial.println(val);client.print(val); // 回发数据给客户端}}}else{client.stop();delay(2000);} }串口发送且得到返回
http://www.pierceye.com/news/361495/

相关文章:

  • 建电子商务网站需要多少钱做网站的简称
  • 制定网站推广方案网络营销网站分析
  • 商城网站系网站 png逐行交错
  • 陕西网站建设陕icp备免费虚拟机安卓
  • 优化教程网站推广排名东莞网站建设推广有哪些
  • 金阳建设集团网站电子商务系统 网站建设
  • 网站建设规模哪里有做app软件开发
  • 建站工具上市手机视频网站设计
  • 代做道具网站做地方门户网站不备案可以吗
  • 电子商务 网站前台功能想做微商怎么找厂家
  • 网站建设电子书做网站引入字体
  • 顺德建设网站公司分发平台
  • 个人门户网站模板下载婚纱摄影网站定制
  • 提高网站流量的软文案例手机腾讯网
  • 网站只做内容 不做外链深圳宝安区天气
  • 生物网站 template淘宝的网站建设怎么建
  • 苏州哪家做网站好些推广之家app
  • 网站开发计入管理费用哪个明细对网站建设的调研报告
  • 南头专业的网站建设公司wordpress数据量大网站访问
  • 龙华民治网站建设公司wordpress设置vip
  • 网站建设天猫店免费主机空间
  • 帮网贷做网站会判刑吗学it要多久多少学费
  • 陕西网站建设维护erp软件怎么安装
  • 沈阳网站建设简维软件工程在网站建设
  • 万维网网站续费云南建设厅网站执业注册
  • 判断网站首页民宿设计网站大全
  • .net如何建设网站做影视会员网站
  • 织梦网站安全免费咨询医生皮肤科专家
  • dw做网站背景图片设置网站建设设计作品怎么写
  • 网站建设推广专员岗位职责济南做企业网站公司