chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

怎樣用ESP32創(chuàng)建一個(gè)Web服務(wù)器 并將其連接到Wi-Fi獲取IP地址

454398 ? 來源:工程師吳畏 ? 2019-07-26 09:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

入門

客戶端與客戶端之間的連接webserver是使用HTTP協(xié)議建立的。 HTTP協(xié)議如下所示:HTTP/1.1 200 OK r nContent-Type:text/html r n r n“。

”HTTP/1.1 200 OK“表示服務(wù)器已接受請求并已回復(fù)“200 OK”,這是狀態(tài)代碼,后跟“ r n”,這是HTTP協(xié)議的約束。

“Content-Type:text/html r n“表示響應(yīng)內(nèi)容類型為HTML格式,后跟” r n“

在HTTP協(xié)議結(jié)束時(shí),網(wǎng)絡(luò)服務(wù)器將返回顯示”Hello world“的網(wǎng)頁。

代碼

#include

const char* wifi_name = “Tenda_31BC98”; //Your Wifi name

const char* wifi_pass = “barcelona”; //Your Wifi password

WiFiServer server(80); //Port 80

void setup()

{

Serial.begin(115200);

// Let‘s connect to wifi network

Serial.print(“Connecting to ”);

Serial.print(wifi_name);

WiFi.begin(wifi_name, wifi_pass); //Connecting to wifi network

while (WiFi.status() != WL_CONNECTED) { //Waiting for the responce of wifi network

delay(500);

Serial.print(“?!保?

}

Serial.println(“”);

Serial.println(“Connection Successful”);

Serial.print(“IP address: ”);

Serial.println(WiFi.localIP()); //Getting the IP address at which our webserver will be created

Serial.println(“Put the above IP address into a browser search bar”);

server.begin(); //Starting the server

}

void loop()

{

WiFiClient client = server.available(); //Checking for incoming clients

if (client)

{

Serial.println(“new client”);

String currentLine = “”; //Storing the incoming data in the string

while (client.connected())

{

if (client.available()) //if there is some client data available

{

char c = client.read(); //read a byte

Serial.print(c);

if (c == ’ ‘) //check for newline character,

{

if (currentLine.length() == 0) //if line is blank it means its the end of the client HTTP request

{

client.print(“”);

client.print(“

Hello World

”);

break; //Going out of the while loop

}

else

{

currentLine = “”; //if you got a newline, then clear currentLine

}

}

else if (c != ’ ‘)

{

currentLine += c; //if you got anything else but a carriage return character,

}

}

}

}

delay(2000);

}

代碼說明

首先,我們加入了Wi-Fi庫,它將幫助我們創(chuàng)建網(wǎng)絡(luò)服務(wù)器。然后我們存儲(chǔ)了Wi-Fi名稱和密碼,以便我們可以連接到這個(gè)Wi-Fi網(wǎng)絡(luò)。之后,我們定義了我們要將數(shù)據(jù)發(fā)送到的端口。

const char* wifi_name = “Tenda_31BC98”; //Your Wifi name

const char* wifi_pass = “barcelona”; //Your Wifi password

WiFiServer server(80); //Port 80

在setu中p功能,我們使用上面提供的Wi-Fi信息將ESP32連接到我們的Wi-Fi網(wǎng)絡(luò)。如果與Wi-Fi網(wǎng)絡(luò)的連接成功,則“連接成功”將顯示在串行監(jiān)視器上。否則,它將繼續(xù)嘗試,直到它將連接到Wi-Fi網(wǎng)絡(luò)。

Serial.print(“Connecting to ”);

Serial.print(wifi_name);

WiFi.begin(wifi_name, wifi_pass); //Connecting to wifi network

while (WiFi.status() != WL_CONNECTED) { //Waiting for the responce of wifi network

delay(500);

Serial.print(“。”);

}

Serial.println(“”);

Serial.println(“Connection Successful”);

以下命令將獲取IP地址,我們將在串行監(jiān)視器上顯示它。

Serial.println(WiFi.localIP());

然后我們啟動(dòng)了服務(wù)器,以便我們可以獲取數(shù)據(jù)并將數(shù)據(jù)發(fā)送到瀏覽器。

server.begin( );

在循環(huán)函數(shù)中,我們檢查了是否有客戶端發(fā)送了http請求。如果有任何客戶端請求可用,它將存儲(chǔ)在字符中并顯示在串行監(jiān)視器上。在請求結(jié)束時(shí),我們將發(fā)送HTML命令,它將在網(wǎng)頁上打印“Hello world”。

WiFiClient client = server.available(); //Checking for incoming clients

if (client)

{

Serial.println(“new client”);

String currentLine = “”; //Storing the incoming data in the string

while (client.connected())

{

if (client.available()) //if there is some client data available

{

char c = client.read(); //read a byte

Serial.print(c);

if (c == ’ ‘) //check for newline character,

{

if (currentLine.length() == 0) //if line is blank it means it’s the end of the client HTTP request

{

client.print(“

”);

client.print(“

Hello World

”);

break; //Going out of the while loop

}

如何運(yùn)行代碼

使用您的Wi-Fi名稱和密碼更改代碼中的Wi-Fi名稱和密碼。然后上傳代碼并打開串行監(jiān)視器。串行監(jiān)視器將顯示IP地址,如下圖所示。在瀏覽器中輸入此IP地址。

輸入IP地址后,網(wǎng)頁將如下所示。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Web服務(wù)器
    +關(guān)注

    關(guān)注

    0

    文章

    139

    瀏覽量

    25269
  • ESP32
    +關(guān)注

    關(guān)注

    26

    文章

    1193

    瀏覽量

    21646
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    ESP32-S2-MINI-2:高性能、高集成度的物聯(lián)網(wǎng)Wi-Fi模組解析

    ESP32-S2-MINI-2是款緊湊的2.4 GHz Wi-Fi(802.11 b/g/n)模塊,內(nèi)置ESP32-S2 系列芯片(版本v1.0),搭載Xtensa單核32位LX7微
    的頭像 發(fā)表于 02-04 17:43 ?1030次閱讀
    <b class='flag-5'>ESP32</b>-S2-MINI-2:高性能、高集成度的物聯(lián)網(wǎng)<b class='flag-5'>Wi-Fi</b>模組解析

    ESP32開發(fā)板創(chuàng)建同步WebServer網(wǎng)頁服務(wù)器

    ESP32 內(nèi)置了 Wi-Fi 功能,能夠作為網(wǎng)頁服務(wù)器Web Server)向網(wǎng)絡(luò)中的其他設(shè)備提供服務(wù)。通過在
    的頭像 發(fā)表于 01-30 11:36 ?211次閱讀
    <b class='flag-5'>ESP32</b>開發(fā)板<b class='flag-5'>創(chuàng)建</b>同步WebServer網(wǎng)頁<b class='flag-5'>服務(wù)器</b>

    樂鑫科技ESP32-E22發(fā)布 樂鑫首款三頻Wi-Fi 6E 高性能協(xié)處理

    款 無線連接協(xié)處理 ?(Radio Co-Processor, RCP),ESP32-E22 在單子系統(tǒng)中集成了三頻
    的頭像 發(fā)表于 01-19 09:14 ?6.5w次閱讀
    樂鑫科技<b class='flag-5'>ESP32</b>-E22發(fā)布 樂鑫首款三頻<b class='flag-5'>Wi-Fi</b> 6E 高性能協(xié)處理<b class='flag-5'>器</b>

    ESP32 Wi-Fi 控制 LED 燈的原理

    控制LED燈的——從底層硬件連接,到網(wǎng)絡(luò)通信邏輯,步步拆解整個(gè)過程。、系統(tǒng)概覽ESP32顆集成度極高的芯片,內(nèi)置
    的頭像 發(fā)表于 01-09 19:04 ?282次閱讀
    <b class='flag-5'>ESP32</b> <b class='flag-5'>Wi-Fi</b> 控制 LED 燈的原理

    ESP32-C5來襲,雙頻Wi-Fi 6 + BLE 5.0 + Zigbee三線合

    ESP32-C5是行業(yè)首款支持2.4&5GHz雙頻 Wi-Fi 6、Bluetooth 5 (LE)和IEEE 802.15.4(Zigbee,Thread)連接性能的RISC-V
    發(fā)表于 11-08 23:04

    ESP32-C5-雙頻Wi-Fi 6 + BLE 5.0 + Zigbee三線合

    ESP32-C5是行業(yè)首款支持2.4&amp;5GHz雙頻 Wi-Fi 6、Bluetooth 5 (LE)和IEEE 802.15.4(Zigbee,Thread)連接性能
    發(fā)表于 10-11 15:33

    淺談Wi-Fi 6E與Wi-Fi 7的關(guān)鍵器件——BAW濾波新技術(shù)

    作者: Qorvo 亞太區(qū)無線連接事業(yè)部高級(jí)行銷經(jīng)理林健富 ? 2020年1月,Wi-Fi聯(lián)盟正式宣布開放6GHz頻段(5925MHz-7125MHz),并將其命名為Wi-Fi 6E。
    發(fā)表于 09-19 18:29 ?2106次閱讀
    淺談<b class='flag-5'>Wi-Fi</b> 6E與<b class='flag-5'>Wi-Fi</b> 7的關(guān)鍵器件——BAW濾波<b class='flag-5'>器</b>新技術(shù)

    基于 SSID 的 Wi-Fi 定位:與其他定位服務(wù)的性能比較

    種著名的無線網(wǎng)絡(luò)技術(shù),用于設(shè)備的局域網(wǎng)和互聯(lián)網(wǎng)接入。Wi-Fi 通過 Wi-Fi 網(wǎng)絡(luò)為家庭、辦公室和學(xué)校等環(huán)境提供便捷的無線互聯(lián)網(wǎng)接入服務(wù)。
    發(fā)表于 08-31 21:01

    ESP32-運(yùn)行網(wǎng)頁服務(wù)器(Web Server)-實(shí)用篇

    在前篇文章《ESP32-運(yùn)行網(wǎng)頁服務(wù)器(WebServer)-入門篇》,我們介紹了ESP32運(yùn)行網(wǎng)頁服務(wù)器(WebServer)的原理,然
    的頭像 發(fā)表于 07-28 18:05 ?3642次閱讀
    <b class='flag-5'>ESP32</b>-運(yùn)行網(wǎng)頁<b class='flag-5'>服務(wù)器</b>(<b class='flag-5'>Web</b> Server)-實(shí)用篇

    CY8CPROTO-062S2-43439無法連接到ThingSpeak服務(wù)器怎么解決?

    的 開發(fā)板上將數(shù)據(jù)發(fā)送到CY8CPROTO-062S2-43439 ThingSpeak 。我的主板成功連接到 Wi-Fi ,但無法連接到 ThingSpeak 服務(wù)器,并出現(xiàn)以下錯(cuò)誤
    發(fā)表于 06-05 08:26

    連接到 WPA3_WPA2_PSK 或 WPA3_SAE Wi-Fi 網(wǎng)絡(luò)時(shí)系統(tǒng)掛起,為什么?

    問題:連接到 WPA3_WPA2_PSK 或 WPA3_SAE Wi-Fi 網(wǎng)絡(luò)時(shí)系統(tǒng)掛起 我遇到個(gè)問題,當(dāng)我嘗試連接啟用了CY_WCM_
    發(fā)表于 06-05 07:23

    基于 Wi-Fi 的定位服務(wù)

    GNSS 的低精度模式也會(huì)比 Wi-Fi 和蜂窩定位服務(wù)提供更好的定位精度,因此在測量中使用了低精度模式,我們可以看到 GNSS 與其他定位服務(wù) “最接近 ”的功耗差異。結(jié)果確實(shí)證明了這
    發(fā)表于 04-17 15:16

    nRF Cloud Wi-Fi 定位服務(wù)

    、Predictive-GPS、Single-Cell、Multi-Cell 和 Wi-Fi 定位。通過利用 nRF Cloud 的優(yōu)化定位算法,基于 Nordic SoC 和 模組的產(chǎn)品可在定位
    發(fā)表于 04-17 15:07

    Wi-Fi 定位服務(wù)

    Wi-Fi種著名的無線網(wǎng)絡(luò)技術(shù),用于設(shè)備的局域網(wǎng)和互聯(lián)網(wǎng)接入。Wi-Fi 通過 Wi-Fi 網(wǎng)絡(luò)為家庭、辦公室和學(xué)校等環(huán)境提供便捷的無線互聯(lián)網(wǎng)接入
    發(fā)表于 04-17 15:01

    ESP32運(yùn)行網(wǎng)頁服務(wù)器 (Web-Server)-入門篇

    什么是ESP32WebServer?ESP32WebServer是在ESP32微控制上運(yùn)行的個(gè)
    的頭像 發(fā)表于 03-09 14:24 ?7540次閱讀
    <b class='flag-5'>ESP32</b>運(yùn)行網(wǎng)頁<b class='flag-5'>服務(wù)器</b> (<b class='flag-5'>Web</b>-Server)-入門篇