當前位置:首頁 > 物聯網 > IoT設計分享
[導讀]ESP系列WiFi模塊在基于物聯網項目的愛好者和行業(yè)中非常受歡迎。ESP32是ESP系列模塊中最受歡迎的板之一,它具有雙核32位CPU,內置Wi-Fi,藍牙和足夠數量的I/O引腳。它是一種小型且經濟有效的設備,可用于使任何項目與互聯網通信。在這個項目中,我將創(chuàng)建一個帶有ESP32的web服務器,使用Arduino IDE環(huán)境控制LED。Web服務器是我們存儲網頁、處理網頁并將其傳送給Web客戶端的地方。Web服務器可以通過本地網絡上的任何設備訪問。在之前的教程中,我們使用樹莓派構建了相同的web服務器。

ESP系列WiFi模塊在基于物聯網項目的愛好者和行業(yè)中非常受歡迎。ESP32是ESP系列模塊中最受歡迎的板之一,它具有雙核32位CPU,內置Wi-Fi,藍牙和足夠數量的I/O引腳。它是一種小型且經濟有效的設備,可用于使任何項目與互聯網通信。在這個項目中,我將創(chuàng)建一個帶有ESP32的web服務器,使用Arduino IDE環(huán)境控制LED。Web服務器是我們存儲網頁、處理網頁并將其傳送給Web客戶端的地方。Web服務器可以通過本地網絡上的任何設備訪問。在之前的教程中,我們使用樹莓派構建了相同的web服務器。

需求

?ESP32模塊

?USB電纜

?電路試驗板

?LED

?跳線

?電阻器1 k

線路圖

編程部分

完整的ESP32 web服務器代碼在本項目的末尾給出。在本節(jié)中,我將告訴您代碼的實際工作原理。

你需要做的第一件事是包括WiFi庫。

現在輸入您的網絡憑據,即您的WiFi網絡的SSID和密碼內的雙倒逗號。

接下來,聲明一個WiFi Server庫的對象,這樣我們就可以訪問它的函數了。所形成的實例的參數將是端口號,因為HTTP的默認端口號是80,所以我將使用這個值。

下面這行創(chuàng)建了一個變量來存儲HTTP請求的標頭:

現在,您必須創(chuàng)建輔助變量來存儲輸出的當前狀態(tài)。

現在,將GPIO分配到您的輸出,這里我使用GPIO2引腳作為我的輸出,您可以根據您正在使用的輸出更改它。

在void setup()函數中,我們將初始化波特率,LED輸出,并使用WiFi.begin(ssid,password)將模塊與Wi-Fi連接;函數。該功能啟動Wi-Fi連接,等待連接成功,并在串口監(jiān)視器上打印ESP IP地址。

在loop()函數中,您必須編寫當新客戶端與web服務器建立連接時發(fā)生的事情。ESP32總是使用server.available()偵聽傳入的客戶端;并將輸入的數據存儲到一個字符串變量中,并在串行監(jiān)視器上打印數據。

現在,if和else語句檢查在您的網頁中按下了哪個按鈕,并相應地控制輸出。例如,如果您按下GPIO2 ON按鈕,則ESP32接收到/2/ON URL上的請求,ESP32將LED打開。

用于ESP32 Webserver的HTML代碼

在HTML中創(chuàng)建網頁對這個項目來說是最重要的,ESP32將發(fā)送一個響應到你的瀏覽器,其中包含一些HTML代碼來構建網頁。-這里我們已經嵌入了完整的HTML代碼在Arduino代碼使用client.println。最后給出了完整的代碼。

下面一行表示我們正在發(fā)送HTML。

下面的代碼行使網頁在任何瀏覽器中都能響應。

現在我們要樣式我們的網頁,裝飾你的頁面,你可以使用CSS樣式按鈕和背景。您可以根據自己的需要更改屬性。

現在設置網頁的標題。在這里,你可以給任何名字或任何你喜歡的東西。

現在您必須編寫代碼來顯示GPIO 2的當前狀態(tài)。使用output2state變量,以便在變量更改時立即更新狀態(tài)。

現在,根據GPIO的當前狀態(tài)顯示on或off按鈕。如果當前狀態(tài)是關閉的,你必須顯示ON按鈕,反之亦然。

最后,當響應結束時,必須清除header變量,并使用client.stop()停止與客戶端的連接。

這是整個項目的編程過程;本文最后給出了該項目的完整代碼,您可以查看。

用Arduino IDE編程ESP32

現在您正處于上傳ESP32代碼的階段,我們將使用Arduino IDE通過以下步驟上傳ESP32中的代碼:

通過USB電纜將ESP32連接到PC上,并如上所述制作電路,這里我使用的是GPIO2,您可以根據您的需要使用。

打開Arduino IDE并將此代碼復制到IDE窗口,但請確保您提供了正確的網絡WiFi憑據。

現在進入Tools——> Board——> ESP32 Dev module。

現在轉到Tools—>Port,選擇ESP32連接的端口。

現在單擊upload上傳代碼。

上傳完成后,您將在輸出控制臺中發(fā)現如下消息。

現在打開你的串行監(jiān)視器,按下ESP32的重置按鈕,現在你的ESP開始連接到你的網絡,一旦連接,它會給你這個ESP的IP。

現在打開瀏覽器并輸入此IP地址,您將找到以下網頁。

從這個網頁,你可以控制你的LED,你可以看到在串行監(jiān)視器以及后臺發(fā)生了什么。

這就是你如何成功地創(chuàng)建一個web服務器,并從網頁控制LED。這樣,您也可以使用ESP32網絡服務器從世界任何地方控制家用電器。

本文編譯自iotdesignpro

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據媒體報道,騰訊和網易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數據產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數據產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯合牽頭組建的NVI技術創(chuàng)新聯盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現場 NVI技術創(chuàng)新聯...

關鍵字: VI 傳輸協議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉