- מהי תכנות OTA?
- ESP8266 NodeMCU
- רכיבים נדרשים
- מכין את NodeMCU לקבלת עדכון OTA באופן אלחוטי
- ESP8266 תוכנית LED מהבהבת להעברת OTA
- מהבהב את ה- LED ב- ESP8266 דרך עדכון OTA
מהי תכנות OTA?
תכנות OTA (דרך האוויר) הוא תהליך המאפשר למכשירים לשדרג את הקושחה או התוכנה שלהם באופן אלחוטי ללא גישה פיזית. הוא משתמש בטכנולוגיה אלחוטית כמו Wi-Fi, Bluetooth, GPRS או 4G / 3G ולא בתקשורת טורית קווית. OTA משמש לתכנות מחדש של המכשירים כמו מיקרו-בקרים, טלפונים סלולריים, מחשבים, ממיר וכו '. עדכוני OTA נשלחים בדרך כלל לצורך עדכון התוכנה, פתרון באגים, הוספת כמה תכונות וכו'. עם השימוש הגובר במכשירי IoT מועברת OTA רצועות תדרים עם קצב העברת נתונים נמוך (868 מגה הרץ, 900 מגה הרץ, 2400 מגה הרץ).
כאן במדריך זה, אנו נשלח עדכון OTA ל- ESP8266 NodeMCU כדי להבהב נורית.
ESP8266 NodeMCU
NodeMCU היא פלטפורמת IoT עם קוד פתוח. הוא כולל קושחה הפועלת במחיר נמוך עם Wi-Fi מופעל על ידי ESP8266 Wi-Fi SoC מבית Espressif Systems, וחומרה המבוססת על מודול ESP-12. יש לו סיכות GPIO, SPI, I2C, ADC, PWM ו- UART. ניתן לתכנת אותו באמצעות Arduino IDE. על סיפונה של NodeMCU יש CP2102 IC המספק פונקציונליות USB ל- TTL. למידע נוסף על ESP8266, בדוק פרויקטים אחרים מבוססי ESP8266.
רכיבים נדרשים
- NodeMCU ESP8266
- כבל מיקרו USB
- ארדואינו IDE
מכין את NodeMCU לקבלת עדכון OTA באופן אלחוטי
ראשית חבר את NodeMCU ESP8266 למחשב באמצעות כבל מיקרו USB. לאחר מכן, כדי להעלות את הקושחה באמצעות OTA, עלינו להעלות את הסקיצה באופן סדרתי באמצעות מיקרו USB כדי ליצור את כתובת ה- IP של ESP. זהו השלב ההכרחי להעלאת הקושחה באופן אלחוטי בפעם הבאה. בחר ביציאה הסדרתית אליה מחובר כבל מתוך כלים -> יציאה .
ESP8266 מגיע עם ספריות ודוגמאות שניתן לגשת אליהם ישירות מ- Arduino IDE. פתח את Arduino IDE ואז פתח את דוגמת BasicOTA.
ערוך את הסקיצה על ידי החלפת "your-ssid" ו- "your-password" שלך ב- SSID והסיסמה של ה- Wi-Fi שלך ואז העלה את הסקיצה
פתח צג סדרתי לאחר העלאת התוכנית בהצלחה. הגדר את קצב השידור של 115200 בצג הסידורי ולחץ על כפתור איפוס ב- NodeMCU ESP8266. חיבור NodeMCU ESP8266 עם Wi-Fi לוקח קצת זמן כשהוא בודק את אישורי ה- Wi-Fi. אם ה- SSID והסיסמה נכונים אז NodeMCU ESP8266 יתחבר ל- Wi-Fi וכתובת ה- IP של ה- ESP תוצג על הצג הטורי.
ESP8266 תוכנית LED מהבהבת להעברת OTA
הקוד השלם להעברת תוכנית ה- LED המהבהבת דרך OTA ניתן בסוף, כאן אנו מסבירים חלק חשוב בקוד.
ייבוא הספריות הנדרשות הוא השלב הראשון בכתיבת הקוד. ספריית ESP8266WiFi.h מספקת שגרות Wi-Fi ספציפיות ל- ESP8266 הדרושות להתחברות לרשת. כמו כן הוא מספק שיטות ומאפיינים להפעלת ESP8266 במצב תחנה או במצב נקודת גישה רכה. ESP8266mDNS.h מאפשר לשרטט להגיב לשאילתות DNS מרובות שידורים.
#לִכלוֹל
הגדר משתנים עבור SSID וסיסמה של רשת ה- Wi-Fi שאליה יש לחבר ESP. עלינו לחבר את המחשב האישי וה- ESP לאותה רשת Wi-Fi.
#ifndef STASSID #define STASSID "your-ssid" #define STAPSK "your-password" #endif const char * ssid = STASSID; const char * סיסמה = STAPSK;
ESP8266 מוגדר כמצב תחנה וחיבור ה- Wi-Fi נוצר על ידי מתן אישורים. לוקח ESP זמן מה להתחבר למודול ה- Wi-Fi. אם SSID והסיסמה נכונים, הוא מתחבר ל- Wi-Fi ואם SSID והסיסמה אינם נכונים, הוא יופעל מחדש בכל שנייה אחת.
Serial.begin (115200); // הגדר קצב שידור ל- 115200 Serial.println ("אתחול"); // שלב לחיבור ESP ל- Wi-Fi WiFi.mode (WIFI_STA); // הגדר ESP כמצב תחנה WiFi.begin (ssid, סיסמה); // אישורי Wi-Fi בזמן (WiFi.waitForConnectResult ()! = WL_CONNECTED) // חיבור ESP ל- Wi-Fi לוקח קצת זמן, אז המתן עד שהוא מתחבר { Serial.println ("החיבור נכשל! אתחול מחדש…"); עיכוב (1000); ESP.restart (); }
כתובת ה- IP של ה- ESP מודפסת על גבי המסך הטורי כחיבור למודול ה- Wi-Fi. WiFi.localIP () נותן את כתובת ה- IP של ESP.
לאחר העלאת הקוד פתח בהצלחה את המסך הטורי ב 115200 Baud Rate. לחץ על כפתור האיפוס ולאחר מספר שניות תוכל לראות את כתובת ה- IP של ה- ESP בצג הסידורי. כעת תוכל להעלות את הקושחה באופן אלחוטי.
מהבהב את ה- LED ב- ESP8266 דרך עדכון OTA
לפני העלאת הסקיצה הבאה עבור אל כלים ושנה PORT לכתובת IP ESP להעלאת הקושחה באופן אלחוטי ל- NodeMCU.
כעת העלה את השרטוט הבא של נורית ה- LED המהבהבת ב- NodeMCU באופן אלחוטי באמצעות Arduino IDE וודא שהמחשב וה- ESP מחוברים לאותה רשת Wi-Fi ו- ESP מופעל על ידי מקור כוח כלשהו.
לאחר העלאת הקוד בהצלחה, נורית LED ב- NodeMCU ESP8266 תתחיל להבהב כל שנייה. אתה יכול גם להגדיר את שם המארח והסיסמה בסקיצה לאבטחה בעת העלאת קושחה ל- ESP.