資料介紹
描述
大家好,今天我將討論 Esp 物聯(lián)網(wǎng)模塊的功能并使用 Arduino IDE 對該模塊進行編程。通常,USB 轉 TTL 程序員可以完美地完成這項工作,但為了簡單起見,我們使用 NodeMcu。
Esp8266-12E是一款基于 Wi-fi 的微控制器。這是我第一個使用這種類型的微控制器的項目,剛剛開始。
以下是一些規(guī)格:
1) 32位單片機
2)10位ADC(模數(shù)轉換器)
3) 7- GPIO (輸入/輸出)
5)工作電壓:3v至3.7v
6) 工作電流:80mA
7) 支持深度睡眠和待機功能
8) 網(wǎng)絡協(xié)議:IPv4/HTTP/FTP
所以,這個微控制器比 Arduino 的 Atmega328p 好得多,但是 Arduino 很簡單,并且有更多的 I/O 引腳。此外,Arduino 可以通過其開源 IDE 輕松編程。
對 ESP8266 進行編程:
首先,我們要將此模塊與其他MCU連接(支持USB轉TTL功能),這里我們使用Nodemcu。我們的 Nodemcu 有 ch340g USB 轉 TTL 編程器。使用下面給出的示意圖進行所有連接。
電路原理圖:
電路說明:
1) 使用 10k 電阻使 EN(使能)引腳高連接使能引腳到 VCC。
2) 將 GPIO-15 引腳設為低電平(使用 10k 電阻將其連接到 GND。
3) 將 TX 連接到 TX,將 RX 連接到 RX。
4)將Reset引腳連接到Nodemcu的Reset
5)使Nodemcu啟用引腳低-直接將其連接到GND。
6) 將兩者的 GPIO0/D3 相互連接。
7) 在兩個模塊中連接 GND 和 VCC。
ESP屏蔽:
Esp8266 模塊不是面包板友好的,所以我設計了一個屏蔽來編程和操??作這個微控制器。該屏蔽具有板載 3.3 伏穩(wěn)壓器和 10k 上拉/下拉電阻器。只需使用這個新原理圖連接并直接上傳代碼。
在 ESP 中上傳代碼:
第 1 步:轉到文件菜單下的首選項部分并粘貼此鏈接。
https://arduino.esp8266.com/stable/package_esp8266com_index.json
Step2:在工具部分選擇板管理器和下載ESP板文件。
。
Step4:編譯并上傳代碼。
Step5: 移除所有連接,您的 Esp8266 就可以使用了。
在這里,我將這個盾牌與 RGB neopixel 7 段 RGB 面板一起使用。這與此工作得很好。
請參閱如何使用 ESP8266 制作 RGB 7 段時鐘。
PCB和設計:
JLCPCB是最受歡迎的PCB制造商之一。2、4 和 6 層 PCB 的價格僅為 2 美元。他們剛剛以非常低的成本推出了新的紫色阻焊層、鋁板和 3d 打印服務。Pcb 質(zhì)量不惜任何代價。立即從此處查看它們。 https://jlcpcb.com/IAT
JLCPCB還提供SMT組裝和SMT模板服務,不要忘記嘗試這些服務。只需 7 美元即可試用PCB 組裝。
測試代碼:
1)閃爍:
void setup() {
pinMode(LED_BUILTIN, OUTPUT); // Initialize the LED_BUILTIN pin as an output
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, LOW); // Turn the LED on (Note that LOW is the voltage level
// but actually the LED is on; this is because
// it is active low on the ESP-01)
delay(1000); // Wait for a second
digitalWrite(LED_BUILTIN, HIGH); // Turn the LED off by making the voltage HIGH
delay(2000); // Wait for two seconds (to demonstrate the active low LED)
}
2)超時:
#include
void ledOn() {
digitalWrite(LED_BUILTIN, LOW); // Turn the LED on (Note that LOW is the voltage level
}
void ledOff() {
digitalWrite(LED_BUILTIN, HIGH); // Turn the LED off by making the voltage HIGH
}
void ledToggle() {
digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN)); // Change the state of the LED
}
esp8266::polledTimeout::periodicFastUs halfPeriod(500000); //use fully qualified type and avoid importing all ::esp8266 namespace to the global namespace
// the setup function runs only once at start
void setup() {
Serial.begin(115200);
Serial.println();
Serial.printf("periodic/oneShotMs::timeMax() = %u ms\n", (uint32_t)esp8266::polledTimeout::periodicMs::timeMax());
Serial.printf("periodic/oneShotFastMs::timeMax() = %u ms\n", (uint32_t)esp8266::polledTimeout::periodicFastMs::timeMax());
Serial.printf("periodic/oneShotFastUs::timeMax() = %u us\n", (uint32_t)esp8266::polledTimeout::periodicFastUs::timeMax());
Serial.printf("periodic/oneShotFastNs::timeMax() = %u ns\n", (uint32_t)esp8266::polledTimeout::periodicFastNs::timeMax());
#if 0 // 1 for debugging polledTimeout
Serial.printf("periodic/oneShotMs::rangeCompensate = %u\n", (uint32_t)esp8266::polledTimeout::periodicMs::rangeCompensate);
Serial.printf("periodic/oneShotFastMs::rangeCompensate = %u\n", (uint32_t)esp8266::polledTimeout::periodicFastMs::rangeCompensate);
Serial.printf("periodic/oneShotFastUs::rangeCompensate = %u\n", (uint32_t)esp8266::polledTimeout::periodicFastUs::rangeCompensate);
Serial.printf("periodic/oneShotFastNs::rangeCompensate = %u\n", (uint32_t)esp8266::polledTimeout::periodicFastNs::rangeCompensate);
#endif
pinMode(LED_BUILTIN, OUTPUT); // Initialize the LED_BUILTIN pin as an output
using esp8266::polledTimeout::oneShotMs; //import the type to the local namespace
//STEP1; turn the led ON
ledOn();
//STEP2: wait for ON timeout
oneShotMs timeoutOn(2000);
while (!timeoutOn) {
yield();
}
//STEP3: turn the led OFF
ledOff();
//STEP4: wait for OFF timeout to assure the led is kept off for this time before exiting setup
oneShotMs timeoutOff(2000);
while (!timeoutOff) {
yield();
}
//Done with STEPs, do other stuff
halfPeriod.reset(); //halfPeriod is global, so it gets inited on sketch start. Clear it here to make it ready for loop, where it's actually used.
}
// the loop function runs over and over again forever
void loop() {
if (halfPeriod) {
ledToggle();
}
}
3)無延遲閃爍:
int ledState = LOW;
unsigned long previousMillis = 0;
const long interval = 1000;
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
unsigned long currentMillis = millis();
if (currentMillis - previousMillis >= interval) {
previousMillis = currentMillis;
if (ledState == LOW) {
ledState = HIGH; // Note that this switches the LED *off*
} else {
ledState = LOW; // Note that this switches the LED *on*
}
digitalWrite(LED_BUILTIN, ledState);
}
}
在此板的示例部分中查找更多程序。
更多項目:
2)使用 JLCPCB SMT 組裝服務的 8x8 Neopixel RGB 矩陣。
認為您喜歡我的工作,請繼續(xù)關注。在 Instagram (sagar_saini_7294) 和 hackaday 上關注我們。
- 使用FTDI電纜使用Arduino對ESP8266 ESP-12E進行編程
- 使用Arduino編程ESP8266 ESP 01
- 使用Arduino IDE創(chuàng)建ESP8266網(wǎng)絡服務器
- 如何使用Arduino UNO對ESP8266進行編程
- LittleFS使用ESP8266和Arduino IDE
- 解決 用arduino ide 開發(fā)nodemcu 加載ESP8266庫的問題
- 配置esp8266開發(fā)板的Arduino開發(fā)環(huán)境
- esp8266 nodeMCU arduino開發(fā)環(huán)境
- esp筆記(2)使用Arduino IDE 開發(fā) esp8266
- Arduino 編程 ESP8266 12F NodeMCU 實現(xiàn) PWM 控制呼吸燈
- 利用天貓精靈控制ESP8266(NodeMCU開發(fā)板)arduino ide開發(fā)
- ESP8266 nodemcu使用arduino編程點亮OLED測試
- 如何建立一個帶Arduino IDE的ESP8266 Web服務器 2次下載
- 如何使用Arduino ESP8266開發(fā)板配置標準的Arduino開發(fā)環(huán)境 48次下載
- Ardnino的ESP8266編程源碼 9次下載
- ESP8266紅外信號收發(fā)實驗 1678次閱讀
- ESP8266硬件 4144次閱讀
- ESP8266/ESP32自動下載原理 4249次閱讀
- 如何使用ESP8266制作可配置的Web服務器 1.2w次閱讀
- 如何利用ESP8266制作一個簡單的四軸飛行器 4532次閱讀
- ESP8266上運行代碼如何實現(xiàn) 2768次閱讀
- 如何利用ESP8266實現(xiàn)智能手表的設計 3000次閱讀
- 如何對ESP8266單片機進行編程? 6789次閱讀
- STM32系列設計,ESP8266聯(lián)網(wǎng)授時時鐘 7825次閱讀
- esp8266中文資料匯總(esp8266引腳圖_與單片機連接_串口wifi實例) 22.4w次閱讀
- esp8266固件如何升級_ESP8266WIFI模塊固件升級 4.2w次閱讀
- ESP8266 Wi-Fi到底傳多遠_esp8266 wifi信號強度測距 5.1w次閱讀
- 遠程控制通訊--基于Arduino + ESP8266控制LED燈 3.9w次閱讀
- esp8266 at指令集詳解 14.1w次閱讀
- esp8266串口wifi實例 1.8w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多