電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>Arduino MKR1000通用Remonster

Arduino MKR1000通用Remonster

2022-12-09 | zip | 0.09 MB | 次下載 | 免費(fèi)

資料介紹

描述

我一直在考慮構(gòu)建一個(gè)連接 WiFi 的紅外發(fā)射器,它可以通過我手機(jī)上運(yùn)行的網(wǎng)絡(luò)應(yīng)用程序控制房間內(nèi)的一切(手機(jī)沒有內(nèi)置紅外發(fā)射器)。 ?

當(dāng)我在 hackster.io 上看到世界上最大的 Arduino Maker Challenge?宣布時(shí),我看了一下Arduino MKR1000?規(guī)格,意識(shí)到它非常適合:

  • 低功耗 802.11 b/g/n Wi-Fi
  • 板載Li-Po充電電路
  • 熟悉的 Arduino IDE
  • 像您對(duì)任何 Arduino 期望的那樣大量的 I/O
?
?
?
poYBAGOSnDeAZX7jAASWIyer97Q710.png
?
1 / 2 ? MKR1000
?

因?yàn)槲抑辽僖粋€(gè)月才能拿到我的 MKR1000,所以我想我應(yīng)該開始編寫代碼了。我需要完成三件事:

  • 連接到我家的 WiFi
  • 接受 HTTP 請(qǐng)求的輕量級(jí) Web 服務(wù)器
  • 解析虛擬按鈕按下的 GET URL

MKR1000 應(yīng)該能夠自己完成所有這些,但我的原型將需要更多的組件。

原型制作

?
?
?
pYYBAGN287-AcnRHAAg--CmArGU166.jpg
?
1 / 2 ?穩(wěn)壓、平滑電容器和電壓電平轉(zhuǎn)換器
?

這里我有一個(gè) ESP8266 運(yùn)行 WiFi 客戶端并通過串行將所有內(nèi)容中繼到 Arduino Nano。Nano 本身運(yùn)行網(wǎng)絡(luò)服務(wù)器,負(fù)責(zé)處理 HTTP 連接和解析 URL。它獲取 URL,將其解釋為特定的按鈕按下,并發(fā)送相應(yīng)的 IR 代碼。

需要一些 hackery 才能使它正常工作。首先,我使用 AT 命令通過 ESP8266 管理 WiFi 連接。為了讓所有通信都通過軟件串行進(jìn)行,我必須對(duì)電壓進(jìn)行電平轉(zhuǎn)換,因?yàn)?ESP8266 是 3.3v 而 Nano 是 5v。ESP8266 在連接 WiFi 時(shí)也會(huì)消耗大量電量,因此它需要自己的電源調(diào)節(jié)器和平滑帽。

幸運(yùn)的是,MKR1000 可以在一塊比 nano 稍大的板上完成所有這些以及更多工作(在面包板上長(zhǎng) 4 個(gè)引腳,寬 3 個(gè)引腳)。?

由于 MKR1000 是 3.3v 板,I/O 引腳的輸出會(huì)導(dǎo)致 IR LED 非常暗。我還計(jì)劃讓多個(gè) LED 指向不同的方向,因此我需要使用 I/O 引腳來驅(qū)動(dòng)一個(gè) NPN 晶體管,該晶體管又為每個(gè)并聯(lián)的 LED 切換一個(gè) PNP 晶體管。這些 PNP 晶體管的集電極/發(fā)射極直接連接到 5v 電源電壓。走這條路,我可以擁有任意數(shù)量的 IR LED,并且可以制作一個(gè)全向陣列。

設(shè)置后端

包含 UI 的網(wǎng)頁(yè)正在一臺(tái)未充分利用的 CHIP 9 美元計(jì)算機(jī)上運(yùn)行,??該計(jì)算機(jī)已經(jīng)安裝在我的家庭網(wǎng)絡(luò)中。在做了一些研究之后,我找到了一個(gè)很棒的教程,用于?為 Arduino 實(shí)現(xiàn) REST API 以控制 adafruit 上的 LED 我使用他們的 JavaScript 和 PHP 文件提交 cURL 請(qǐng)求并將其加載到已經(jīng)運(yùn)行 apache 的 CHIP 上。在為遙控器創(chuàng)建一個(gè)基本的 HTML 頁(yè)面后,我添加了 manifest.json 和圖標(biāo)文件,以便它可以作為 Android 手機(jī)上的本機(jī) Web 應(yīng)用程序運(yùn)行。

?
?
?
poYBAGN288uAbPb_AAGPlnz8pvM578.png
?
1 / 4 ?打開 WiFi Remote 以啟動(dòng) WebApp
?

編寫代碼

在 MKR1000 方面,我只需要用 WiFi101.h 庫(kù)切換 ESP8266WiFi.h。然后我精簡(jiǎn)了網(wǎng)絡(luò)服務(wù)器,只接受 GET 請(qǐng)求,解析 URL,發(fā)送 200 OK,然后斷開連接。 ?

void loop() {
 // listen for incoming clients
 WiFiClient client = server.available();
 if (!client) {
   return;
 }
   Serial.println("new client");  // can be removed after debugging
   // Wait until the client sends some data
   while(!client.available()){
     delay(1);
   }
 // Read the first line of the request (the GET string)
 String req = client.readStringUntil('\r');
 Serial.println(req);  // can be removed after debugging
 // Send request over to Arduino Nano
 Serial1.println(req);   
 client.flush();
   // give the client time to receive the data
   delay(1);
   // close the connection
   client.stop();
   client.flush();
   Serial.println("client disconnected");  // can be removed after debugging
}

基于 URL,Arduino 將發(fā)送映射到按下的按鈕的 IR 代碼。我說“會(huì)”是因?yàn)槲覄倓偘l(fā)現(xiàn)我過去使用的 IRremote 庫(kù)不適用于基于 SAMD ARM 的 Arduinos(MKR1000 是)。 ?

我不會(huì)重寫庫(kù),而是將命令從 MKR1000 通過串行輸出到 Arduino Nano 并讓它驅(qū)動(dòng) LED。 ?

poYBAGOSnG2ALFZbAAeEJtVGnDo980.jpg
這很丑陋,但它有效。
?

期待?

一旦庫(kù)被 Arduino 社區(qū)移植過來,我將能夠完全刪除該部分并在單個(gè) MKR1000 板上完成所有操作。 ?

我僅使用NodeMCU ESP8266 開發(fā)板構(gòu)建了另一個(gè)這樣的?設(shè)備,因此與此同時(shí)我仍然能夠控制我的設(shè)備。

?
?
?
poYBAGOSnHmAW7YeAARGZ8g8Vjw078.jpg
?
1 / 2
?

我已經(jīng)使用它大約一個(gè)月了,效果非常好。 ?


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)