Мазмуну:
- 1 -кадам: Einstellen / Einrichten Der ARDUINO GUI
- 2 -кадам: I2C Schnittstelle Scannen
- 3-кадам: Demo-Sketch Anpassen Und Auf Den ESP Hochladen
- 4 -кадам: Куралдар, Шилтемелер Und Herkunft/Literaturhinweis
Video: HowTo - Esp -12F Mini WiFi Modul ESP8266 18650 Nodemcu Batterie 0.96”OLED DEMO аркылуу Arduino GUI: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:40
Салам, Бул жерде сиз эмне кылсаңыз болот? Ачык айтканда, ARDUINO GUI программасынын коддору жана программалык камсыздоонун программалык камсыздоосу өчүрүлөт.
1 -кадам: Einstellen / Einrichten Der ARDUINO GUI
Als erstes muss das ESP8266 Board in der ARDUINO GUI verfügbar gemacht werden.
Gin интерфейсинде (Einstellungen / Билд 1) өчүрүү
"Zusätzliche Boardverwalter-URL'дер:"
ein (Bild 2). Boardtayber'дин каттоосунан баш тарткан жокпуз.
Jetzt können wir den Passenden Boardtreiber installieren
(Werkzeuge Board: Boardverwaltung / Bild 3)
- Dort im Suchfeld "esp8266" eintragen
- "ESP8266 Коомчулуктун" esp8266 "версиясы орнотулган эмес (Bild 4)
- ARDUINO GUI өчпө
- Башкаруу кеңеши (z. B.: WeMos D1 R2 & mini)
2 -кадам: I2C Schnittstelle Scannen
PIN коддору OLED-дисплейде, сканерленгенде I2C-Schnittstelle орнотулган. Ошентип, I2C-Бөлүктөрү жок кылынган жок.
Ден эскиз (Билд 1), ESP Hochladen, "Seriellen-Monitor" программалары, Ausgabe warten. Dort könnt Ihr dann sehen, welches Device wo gefunden wurde. (Bild 2 - DigitalPIN сканери)
Das Ergebnis merken.
Күзүндө: SDA = D1: SCL = D2 bei Adresse 0x3c
3-кадам: Demo-Sketch Anpassen Und Auf Den ESP Hochladen
OLED-Display DEMO үчүн Das ist der Code
Im 5. Abschnitt табуу Ihr die Stelle an der der Code ggf. mifden muss.
I2C-Schnittstelle конфигурациясы да өлөт.
Түзмөктүн коду жок кылынгандыктан, маалымат OLED'лердин эсебинен өчүрүлөт.
/** * The MIT License (MIT) * * Copyright (c) 2016 by Daniel Eichhorn * * Уруксат бул жерде жана бул программалык камсыздоонун жана тиешелүү документтердин файлдарынын ("Программалык камсыздоонун" көчүрмөсүн * алгандардын баарына бекер берилет).), Программаны чектөөсүз иштетүү *, анын ичинде чектөөлөрсүз эле Программаны колдонуу, көчүрүү, өзгөртүү, бириктирүү, басып чыгаруу, жайылтуу, сублицензиялоо жана/же сатуу * жана Программалык камсыздоо болгон адамдарга уруксат берүү. төмөнкү шарттарды сактоо менен * жабдылган: * * Жогорудагы автордук укук эскертүүсү жана бул уруксат эскертүүсү Программанын бардык * көчүрмөлөрүнө же олуттуу бөлүктөрүнө киргизилет. * * ПРОГРАММА "БОЛГОНДО" БЕРИЛЕТ, ЭЧ КАНДАЙ КЕПИЛДИКСИЗ, ЭКСПРЕСС ЖАНА * КОЛДОНУУСУЗ, КИРГИЗИЛГЕНДЕ, САТЫЛУУЛУК КЕПИЛДИКТЕРИ МЕНЕН ЧЕКТЕЛБЕЙТ. ЭЧ КАНДАЙ БОЛСО, * АВТОРЛОРДУН ЖАНА АВТОРДУК ЭЭЛЕРДИН ЭЧ КАНДАЙ ДОО, ЗЫЯН ЖАНА БАШКА * ЖООПКЕРЧИЛИГИ ҮЧҮН ЖООПКЕРЧИЛИК БОЛБОЙТ, КЕЛИШИМДИ, КЫЙНАЛДЫКТЫ ЖАНА БАШКА ТАРТИПТЕН, * СОФТОН ЖАНА БАШКА ЖАБДЫКТА. * ПРОГРАММАСЫНДАГЫ КЕЛИШИМДЕР. * *
/ Туура дисплей китепканасын кошуу
// Wire аркылуу I2C аркылуу туташуу үчүн #include // камтыйт I2C Wire #include "SSD1306.h" // "#include" SSD1306Wire.h "үчүн ылакап ат"
// Ыңгайлаштырылган сүрөттөрдү кошуу
#"images.h" кошуу
// OLED дисплейин brzo_i2c аркылуу баштаңыз
// D3 -> SDA // D5 -> SCL // SSD1306 дисплейи (0x3c, D1, D2); же SSD1306 дисплейи (0x3c, 5, 4); же SSD1306 дисплейи (0x3c, GPIO5, GPIO4);
**************************************************************************************************
Stelle I2C Schnittstelle конфигурациясынан кийин PIN -коддорду өчүрөт
// Wire китепканасын колдонуу менен OLED дисплейин баштоо
SSD1306 дисплейи (0x3c, D1, D2);
***************************************************************************************************
#аныктоо DEMO_DURATION 3000
typedef void (*Demo) (жараксыз);
int demoMode = 0;
int counter = 1;
жараксыз орнотуу () {
Serial.begin (9600); Serial.println ("OLED_DEMO"); Serial.println ("DEMO баштоо");
// UIди баштоо дисплейди да баштайт.
display.init ();
display.flipScreenVertically ();
display.setFont (ArialMT_Plain_10);
}
жараксыз DrawFontFaceDemo () {
// Font Demo1 Serial.println ("Font DEMO 1"); // https://oleddisplay.squix.ch/ display.setTextAlignment (TEXT_ALIGN_LEFT) боюнча көбүрөөк шрифттерди түзүү; display.setFont (ArialMT_Plain_10); display.drawString (0, 0, "ProMoScout"); display.setFont (ArialMT_Plain_16); display.drawString (0, 10, "ProMoScout"); display.setFont (ArialMT_Plain_24); display.drawString (0, 26, "ProMoScout"); }
жараксыз drawTextFlowDemo () {
Serial.println ("drawTextFlowDemo"); display.setFont (ArialMT_Plain_10); display.setTextAlignment (TEXT_ALIGN_LEFT); display.drawStringMaxWidth (0, 0, 128, "Роботтор / n Келечек жана Келечек азыр, бирок. Жаратылышты унутпаңыз"); }
жараксыз DrawTextAlignmentDemo () {
Serial.println ("drawTextAlignmentDemo"); // Текстти тегиздөө демо display.setFont (ArialMT_Plain_10); // Schriftart und -größe einstellen
// Координаттар тексттин сол баштапкы чекитин аныктайт
display.setTextAlignment (TEXT_ALIGN_LEFT); // Text_Ausrichtung einstellen display.drawString (0, 10, "Солго тегизделген (0, 10)"));
// Координаттар тексттин борборун аныктайт
display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 22, "Ортого тегизделген (64, 22)");
// Координаттар тексттин оң жагын аныктайт
display.setTextAlignment (TEXT_ALIGN_RIGHT); display.drawString (128, 33, "Оңго тегизделген (128, 33)"); }
жараксыз drawRectDemo () {
Serial.println ("drawRectDemo"); // (int i = 0; i <10; i ++) {display.setPixel (i, i); display.setPixel (10 - i, i); } display.drawRect (12, 12, 20, 20);
// Тик бурчтукту толтуруңуз
display.fillRect (14, 14, 17, 17);
// Горизонталдуу сызык чийиңиз
display.drawHorizontalLine (0, 40, 20);
// Горизонталдуу сызык чийиңиз
display.drawVerticalLine (40, 0, 20); }
жараксыз DrawCircleDemo () {
Serial.println ("drawCircleDemo"); үчүн (int i = 1; i <8; i ++) {display.setColor (АК); display.drawCircle (32, 32, i*3); if (i % 2 == 0) {display.setColor (BLACK); } display.fillCircle (96, 32, 32 - i* 3); }}
жараксыз DrawProgressBarDemo () {
Serial.println ("drawProgressBarDemo"); int progress = (counter / 5) % 100; // прогресс тилкесин чагылдыруу display.drawProgressBar (0, 32, 120, 10, прогресс);
// пайызды String катары тартыңыз
display.setTextAlignment (TEXT_ALIGN_CENTER); display.drawString (64, 15, String (прогресс) + "%"); }
Төмөнкү шилтеме аркылуу Комментарийлерди жазгыла же жазгыла, ошондо логотипти колдонууга болот, демек, дисплейиңизди ачыңыз …
жараксыз DrawImageDemo () {
Serial.println ("drawImageDemo"); // кара https://blog.squix.org/2015/05/esp8266-nodemcu-how… // xbm файлдарын түзүү боюнча display.drawXbm (34, 0, Logo_width, Logo_height, Logo_bits); }
Демо демо = {drawFontFaceDemo, drawTextFlowDemo, drawTextAlignmentDemo, drawRectDemo, drawCircleDemo, drawProgressBarDemo, drawImageDemo};
int demoLength = (sizeof (demos) / sizeof (Demo)); long timeSinceLastModeSwitch = 0;
void loop () {
// дисплей дисплейин тазалоо.clear (); // учурдагы демо ыкмасынын демосун тартуу [demoMode] ();
display.setTextAlignment (TEXT_ALIGN_RIGHT);
display.drawString (10, 128, Стринг (миллис ())); // дисплей дисплейине буферди жазуу.display ();
if (millis () - timeSinceLastModeSwitch> DEMO_DURATION) {
demoMode = (demoMode + 1) % demoLength; timeSinceLastModeSwitch = millis (); } counter ++; кечигүү (10); }
4 -кадам: Куралдар, Шилтемелер Und Herkunft/Literaturhinweis
Ички Мич Бэй Аллен Беданкен өлөт, демек коддору коду жок кылынат.
Die Grundlagen für diese Aneitung habe ich gefunden unter:
www.instructables.com/id/ESP8266-I2C-PORT-…
github.com/ThingPulse/esp8266-oled-ssd1306…
Viele Grüße
McUtty
Сунушталууда:
Интернет аркылуу Nodemcu аркылуу Blynk колдонмосун жетектөө: 5 кадам
Интернетте Nodemcu аркылуу Blynk колдонмосу аркылуу жетектөө: Саламатсыздарбы, бүгүн биз сизге интернетте смартфонду колдонуп LEDди кантип башкарса болорун көрсөтөбүз
Өз алдынча Arduino 3.3V W / Тышкы 8 МГц сааты Arduino Uno аркылуу ICSP / ISP аркылуу программаланат (Сериялык мониторинг менен!): 4 кадам
Автономдуу Arduino 3.3V W / External 8 MHz Clock Arduino Uno программасынан ICSP / ISP аркылуу программаланат (Сериялык мониторинг менен!): Максаттары: 8 МГц тышкы сааттан өчүрүүчү 3.3Вда иштеген автономдуу Arduino куруу. Аны ISP аркылуу программалоо (ошондой эле ICSP катары белгилүү), Arduino Uno (5V менен иштеген) жүктөөчү файлды түзөтүү жана күйгүзүү үчүн
Бир нече BMP280 сенсорлору Arduino Uno аркылуу SPI аркылуу: 6 кадам
Бир нече BMP280 сенсорлору Arduino Uno аркылуу SPI аркылуу: Бул үйрөткүчтө биз үч BMP280ди Arduino Unoго SPI аркылуу туташтырабыз, бирок сен Uno боюнча D3 to D10 санарип портторун колдонуу менен ар бир сенсор үчүн nSS (Slave Select) менен сегиз BMP280ге чейин туташа аласың. В ченегенде атмосфералык басымдын үлгүлөрүнүн
ESP8266 RGB LED STRIP WIFI Control - NODEMCU Wifi аркылуу башкарылган LED тилкеси үчүн IR алыстан башкаруу пулу катары - RGB LED STRIP Smartphone Control: 4 кадам
ESP8266 RGB LED STRIP WIFI Control | NODEMCU Wifi аркылуу башкарылган LED тилкеси үчүн IR алыстан башкаруу пулу катары | RGB LED STRIP смартфонду көзөмөлдөө: Салам балдар бул окуу куралында биз nodemcu же esp8266ды IR пульту катары RGB LED тилкесин башкаруу үчүн колдонууну үйрөнөбүз жана Nodemcu смартфону WiFi аркылуу башкарылат. Ошентип, негизинен сиз RGB LED STRIPти смартфонуңуз менен башкара аласыз
HRV температурасы OpenHAB аркылуу ESP8266 аркылуу (Сериялык коддун мисалы!): 3 кадам
HRV температурасы OpenHAB аркылуу ESP8266 аркылуу (Сериялык коддун мисалы!): HRV - OpenHABга зымсыз Бул көрсөтмө атайын HRV (жылытуу рециркуляциялык желдетүү) тутумуна ээ болгондор үчүн - чынжырдын бөлүктөрү, openhab конфигурациясы же Arduino коду (мисалы, окуу сыяктуу) TTL сериялык маалыматы) h болушу мүмкүн