www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

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

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

我們要建造什么?

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

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

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

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

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

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

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

activity_wifi_devices.xml文件

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

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

EditText的代碼:

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

按鈕代碼:

代碼的解釋:

按鈕id為“ip_button”,文本為“Connect”。我不打算討論按鈕,因?yàn)槲乙呀?jīng)在前面的教程中討論了按鈕。

WifiActivityDevices.java文件

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

MainActivity.java文件

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

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

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

NodeMCU的代碼

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

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

本文編譯自iotdesignpro

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

中國 上海,2025年8月28日——全球領(lǐng)先的智能傳感和發(fā)射器解決方案供應(yīng)商艾邁斯歐司朗(SIX:AMS)今日宣布,其全新UV-C LED在輻射滅菌領(lǐng)域取得重大技術(shù)突破,并獲得評估認(rèn)可。

關(guān)鍵字: LED 發(fā)射器 光電半導(dǎo)體

M5Stack為各種應(yīng)用提供廣泛的控制器-從超緊湊的Stamp和Atom到更強(qiáng)大的Core系列,具有可堆疊模塊。然而,直到最近,還沒有專門為工業(yè)環(huán)境等要求更高的環(huán)境設(shè)計(jì)的設(shè)備。這就是StamPLC的用之之道:一個(gè)配備繼電...

關(guān)鍵字: PLC Wi-Fi 繼電器

在LED照明技術(shù)向高能效、低電磁干擾(EMI)方向演進(jìn)的過程中,電流模式控制與動(dòng)態(tài)負(fù)載調(diào)整算法的協(xié)同優(yōu)化成為突破技術(shù)瓶頸的核心路徑。本文將從控制架構(gòu)創(chuàng)新、動(dòng)態(tài)負(fù)載補(bǔ)償機(jī)制及EMI抑制策略三個(gè)維度,揭示新一代LED驅(qū)動(dòng)器的...

關(guān)鍵字: LED 動(dòng)態(tài)負(fù)載調(diào)整算法 EMI

在全球倡導(dǎo)節(jié)能減排的大背景下,家電產(chǎn)品的能耗問題日益受到關(guān)注。電視機(jī)作為家庭中使用頻率較高的電器之一,其能耗的降低對于節(jié)約能源和減少碳排放具有重要意義。LED 驅(qū)動(dòng)技術(shù)作為影響電視機(jī)能耗的關(guān)鍵因素,正不斷發(fā)展和創(chuàng)新,為實(shí)...

關(guān)鍵字: 驅(qū)動(dòng)技術(shù) 能耗 LED

LED是一種能發(fā)光的半導(dǎo)體電子元件,這種電子元件早期只能發(fā)出低光度的紅光,隨著技術(shù)的不斷進(jìn)步,現(xiàn)在已發(fā)展到能發(fā)出可見光、紅外線及紫外線的程度,光度也有了很大的提高。

關(guān)鍵字: LED

PCB設(shè)計(jì)在EMI抑制中起著關(guān)鍵作用。合理的布局布線能夠有效減少信號(hào)的電磁輻射和相互干擾。首先,應(yīng)將功率電路和控制電路進(jìn)行物理隔離,避免功率電路中的大電流、高電壓信號(hào)對控制電路造成干擾。功率器件和電感等高頻器件應(yīng)盡量靠近...

關(guān)鍵字: LED 開關(guān)電源

為確保太陽能路燈的穩(wěn)定工作,建議使用硅酮密封將太陽能路燈組件的接線固定在支架上。在連接路燈部件的線路時(shí),必須遵循正確的順序,以防止正負(fù)連接顛倒導(dǎo)致的短路問題。此外,太陽能路燈燈桿底部的接線應(yīng)采用適當(dāng)?shù)拿芊庋b置或硅膠進(jìn)行密...

關(guān)鍵字: LED 路燈

在我們家,WTW已經(jīng)運(yùn)行了14年了。它是一種非連接(不在線)的通風(fēng)機(jī),從房子外面吸收新鮮空氣,經(jīng)過過濾后空運(yùn)到房子里。新鮮的環(huán)境空氣是用從房子里大多數(shù)房間取出的空氣預(yù)熱的。再加熱的能量是通過熱交換器從流出的“臟”空氣中獲...

關(guān)鍵字: Zigbee LED 傳感器

作為低功耗無線連接領(lǐng)域的創(chuàng)新性領(lǐng)導(dǎo)廠商,Silicon Labs(亦稱“芯科科技”)將于8月27至29日攜其最前沿的人工智能(AI)和物聯(lián)網(wǎng)(IoT)解決方案在深圳舉辦的IOTE 2025國際物聯(lián)網(wǎng)展中盛大展出。這場亞洲...

關(guān)鍵字: 人工智能 物聯(lián)網(wǎng) Wi-Fi

中國 上海,2025年8月12日——全球領(lǐng)先的智能傳感和發(fā)射器解決方案供應(yīng)商艾邁斯歐司朗(SIX:AMS)今日宣布,使用新一代OSTAR? Projection Power LED為緊湊型投影系統(tǒng)乃至未來的抬頭顯示器(H...

關(guān)鍵字: 顯示器 LED 座艙
關(guān)閉