日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 物聯(lián)網(wǎng) > IoT設(shè)計分享
[導讀]大家好,歡迎回到我們的Android Studio for Internet of Things系列的另一部分。在本教程中,我們將繼續(xù)我們的android應(yīng)用程序。我們已經(jīng)開發(fā)了我們的應(yīng)用程序的基礎(chǔ),通過添加一個燈泡的圖像,一個按鈕,和一些功能來建立藍牙連接。但現(xiàn)在我們要添加一個Wi-Fi功能來控制NodeMCU板的內(nèi)置LED。

大家好,歡迎回到我們的Android Studio for Internet of Things系列的另一部分。在本教程中,我們將繼續(xù)我們的android應(yīng)用程序。我們已經(jīng)開發(fā)了我們的應(yīng)用程序的基礎(chǔ),通過添加一個燈泡的圖像,一個按鈕,和一些功能來建立藍牙連接。但現(xiàn)在我們要添加一個Wi-Fi功能來控制NodeMCU板的內(nèi)置LED

我們要建造什么?

讓我們看看我們將在本教程中構(gòu)建什么。在下面的圖片中,你可以發(fā)現(xiàn)我們已經(jīng)添加了一個燈泡、一個按鈕、一個工具欄和藍牙功能的圖像。

現(xiàn)在讓我們看看下面的圖片。Wi-Fi功能在菜單列表中。用戶將通過點擊“WiFi”被重定向到Wi-Fi活動。如果WiFi已經(jīng)關(guān)閉,那么用戶會彈出一個打開WiFi的窗口,如下圖所示。

當用戶的WiFi被打開時,用戶將被重定向到WiFi活動,在那里我們將添加一些輸入部分來獲取IP地址和連接按鈕。你可以看看下面的圖片作為參考。

當用戶輸入IP地址后按下按鈕,就會被重定向到主活動頁面,并連接wifi。在下圖中,你可以看到在工具欄部分顯示了一條消息“連接到WiFi”。

到目前為止,我只給了您一個應(yīng)用程序的概述?,F(xiàn)在,讓我們構(gòu)建應(yīng)用程序。在下面的圖片中,你可以看到我們已經(jīng)在之前的教程中討論過的文件夾結(jié)構(gòu)。在本教程中,我們需要創(chuàng)建更多的類、活動和布局。我在下面的圖片中用紅色標記了這些文件。

所以我們需要創(chuàng)建一個名為“WifiActivityDevices”的活動。相應(yīng)的布局文件“activity_wifi_devices.xml”文件將使用此活動創(chuàng)建,正如我在上圖中的紅色圓圈中提到的那樣。在我們開始android應(yīng)用程序的編碼部分之前,我們需要在AndroidMenifest.xml文件中添加幾行代碼。我們需要在“構(gòu)建”中添加一個依賴項。gradle”文件。在下面的圖像中,您可以看到我已經(jīng)標記了清單文件和構(gòu)建。Gradle文件帶有紅色方塊。

下圖中突出顯示的代碼需要添加到Manifest文件中。這段代碼是為了允許Wifi到應(yīng)用程序。第二個圖像是依賴。需要將突出顯示的代碼添加到構(gòu)建中。gradle文件。在添加依賴項后,你需要點擊右上角的“sync”。

activity_wifi_devices.xml文件

activity_wifi_device.xml文件是WifiActivityDevices.java文件的布局。這里我們需要添加一個EditText來接收來自用戶的輸入。我們需要添加一個按鈕來連接到wifi并重定向到MainActivity文件。

在上面的圖像中,我們有一個EditText,它指示輸入IP地址。下面的代碼可用于在布局中添加EditText。

EditText的代碼:

以上代碼用于EditText。我通過使用“ android: ID =”@+ ID /ip_input"屬性給這個部分指定了一個ID。你可以找到一些高度和寬度屬性,我用它們來給EditText一個維度?!癮ndroid:hint”用于給用戶一個提示。它將在EditText為空時顯示。現(xiàn)在,我們需要為Button添加代碼。

按鈕代碼:

代碼的解釋:

按鈕id為“ip_button”,文本為“Connect”。我不打算討論按鈕,因為我已經(jīng)在前面的教程中討論了按鈕。

WifiActivityDevices.java文件

正如我們之前所討論的WifiActivityDevices.java文件是用于wifi特性的。我們需要在“WifiActivityDevices.java”文件中添加以下代碼。在下面的代碼中,我們有“ipAddress”通過訪問布局文件中的EditText的ID來獲取NodeMCU的IP地址,但是我們還將應(yīng)用一個額外的任務(wù)來檢查輸入文本是否與IP地址的格式匹配?!癐nputFilter”用于應(yīng)用一些模式檢查器來檢查輸入的字符串是否是IP地址?!皊etFilters”函數(shù)將對輸入IP地址的“ipAddress”應(yīng)用過濾器?!癷pButton”用于通過使用按鈕的ID從布局文件中訪問按鈕。然后我們需要添加一個“setOnClickListener”到“ipButton”。在“onClick()”方法中,你可以找到“intent2”。這用于將用戶重定向到MainActivity.java文件。

MainActivity.java文件

我們需要對MainActivity.java文件做一些修改。您需要在MainActivity.java文件的onCreate()方法之外添加以下代碼。CreateConnectThread2類用于創(chuàng)建一個“線程”?!皉un()”方法用于與我們在“WifiActivityDevices.java”文件中獲得的IP地址建立連接。

下面的“ConnectedThread2”類用于管理createconnconnected線程。我們在“ConnectedThread2”類下有一個send()方法。這個send()方法可以在用戶按下MainActivity布局文件中的按鈕時調(diào)用。在send()方法中,你可以看到我們有一個“url”,它被用作NodeMcu板的地址。我們對這個HTTP連接使用“POST”方法。每當用戶點擊按鈕時,按鈕的狀態(tài)就會改變,打開或關(guān)閉led的命令將通過“StringRequest”方法作為字符串數(shù)據(jù)發(fā)送。

我們使用“Volley”庫來創(chuàng)建HTTP連接。

NodeMCU的代碼

下面的代碼用于NodeMCU。您可以看到我們已經(jīng)包含了ESP8266WebServer、WiFiClient和ESP8266WiFI庫。在這里,我使用ESP8266作為Wifi接入點。它將創(chuàng)建一個以“ESP8266”作為SSID的WiFi網(wǎng)絡(luò)。在setup函數(shù)中,我定義了led的引腳模式(即NodeMCU內(nèi)置led的GPIO 2)。設(shè)置WiFI模式為“WIFI_AP”模式。server.on()用于啟動HTTP服務(wù)器。HTTP_handleRoot()函數(shù)是在setup()函數(shù)之外創(chuàng)建的。HTTP_handleRoot()用于通過使用“ data ”作為參數(shù)從android應(yīng)用程序獲取數(shù)據(jù)。然后使用“command”變量將數(shù)據(jù)存儲為字符串。如果數(shù)據(jù)為“1”,則內(nèi)置LED將打開,否則將關(guān)閉。

希望你喜歡這個項目,并且學到了一些有用的東西,關(guān)于用android studio創(chuàng)建一個android應(yīng)用程序,使用NodeMCU通過WiFi控制LED。

本文編譯自iotdesignpro

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

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉