ESP32

מתוך המכלול, האנציקלופדיה היהודית
קפיצה לניווט קפיצה לחיפוש
ESP32
מידע כללי
השקה 6 בספטמבר 2016

ESP32 הוא שבב מיקרו-בקר מבית Espressif Systems שמיועד לתקשורת אלחוטית, המיקרו בקר מאופיין בחסכוניות בחשמל ובעלות נמוכה. השבב כולל מעבד ליבה כפולה או יחידה במהירות של עד 240 מגה-הרץ ומעבד נוסף לחיסכון באנרגיה. הוא תומך ב-Wi-Fi וב-Bluetooth, מה שמאפשר חיבור למגוון מכשירים אלחוטיים.

בנוסף, ה-ESP32 מכיל מתגי אנטנה מובנים, מגבר מתח, מגבר קליטה ברעש נמוך, מסננים ומודולים לניהול צריכת החשמל. הוא משולב לרוב ב-מעגל מודפס (PCB) ייעודי או בלוחות פיתוח עם חיבורי GPIO ופינים שונים, בהתאם לדגם וליצרן. השבב כולל גם ממשקים כגון UART, SPI, ו-I²C לתמיכה בחיישנים ויכולות אבטחה מתקדמות כמו אתחול מאובטח והצפנה בחומרה.

ה-ESP32 נוצר ופותח על ידי חברת Espressif Systems, חברה סינית שבסיסה בשנגחאי, והוא מיוצר על ידי TSMC. השבב הוא דור ההמשך למיקרו-בקר ESP8266.

תכונות

תרשים בלוקים של פונקציות ESP32.
צילום פנימי של ה-ESP32, שבו רוב שטח השבב מוקדש לרשת הפצת חשמל.

התכונות של ה-ESP32 כוללות את הדברים הבאים:[1]

  • מעבדים:
    • מעבד ראשי: מעבד מיקרו 32-ביט Xtensa בעל ליבה כפולה (או ליבה אחת), מסדרת LX6, פועל במהירות של 160 או 240 מגה-הרץ ומגיע עד ל-600 DMIPS
    • מעבד משני לחיסכון קיצוני בחשמל (ULP)
  • זיכרון: 520 קילו-בייט זיכרון RAM, 448 קילו-בייט זיכרון ROM
  • קישוריות אלחוטית:
    • Wi-Fi בתקן 802.11 b/g/n
    • Bluetooth גרסה 4.2 BR/EDR ו-BLE (משתף את האנטנה עם ה-Wi-Fi)
  • ממשקים היקפיים:
    • 34 GPIOs לתכנות
    • ADC מסוג SAR, ברזולוציה של 12 ביט ועד 18 ערוצים
    • שני DACs ברזולוציה של 8 ביט
    • 10 חיישני מגע (קיבוליים)
    • 4 חיבורי SPI
    • 2 חיבורי I²S
    • 2 חיבורי I²C
    • 3 חיבורי UART
    • בקר מארח SD/SDIO/CE-ATA/MMC/eMMC
    • בקר משועבד SDIO/SPI
    • ממשק Ethernet MAC עם DMA ייעודי ותמיכה מתוכננת ב-IEEE 1588
    • BUS CAN בתקן 2.0
    • בקר אינפרה-אדום (עד 8 ערוצים)
    • מונה פולסים (כולל קידוד מרובע מלא)
    • PWM למנועים
    • PWM לנורות LED (עד 16 ערוצים)
    • מגבר אנלוגי לחיסכון קיצוני בחשמל
  • אבטחה:
    • תמיכה בתכונות אבטחת Wi-Fi לפי תקן IEEE 802.11, כולל WPA, WPA2, WPA3 (בהתאם לגרסה) ו-WAPI
    • אתחול מאובטח
    • הצפנת זיכרון Flash
    • זיכרון OTP של 1024 ביט, עד 768 ביט ללקוחות
    • האצת חומרה לקריפטוגרפיה: AES, SHA-2, RSA, קריפטוגרפיה בעקומים אליפטיים (ECC), יוצר מספרים אקראיים (RNG)
  • ניהול צריכת חשמל:
    • מייצב מתח פנימי מסוג LDO
    • מתח עצמאי עבור RTC
    • צריכת זרם במצב שינה עמוק של 5 מיקרו-אמפר
    • התעוררות מאינטרפט GPIO, שעון זמן, מדידת ADC או חיישן מגע קיבולי

משפחת ESP32-xx

מאז השקת ה-ESP32 המקורי, הוצגו והוכרזו מספר גרסאות נוספות המהוות את משפחת מיקרו-הבקרים ESP32. שבבים אלה כוללים מעבדים ויכולות שונות, אך כולם תואמים לאותו SDK ולרוב תואמים ברמת הקוד. בנוסף, ה-ESP32 המקורי עבר מספר שיפורים, כמו ESP32 ECO V3, ששיפר את הביצועים והיציבות של השבב המקורי.

תכנות וסביבות פיתוח

ה-ESP32 נכב בעיקר בשפת C++, אך תומך גם במגוון שפות תכנות ומסגרות עבודה, המתאימים לצרכים שונים של פרויקטים. להלן השפות ומסגרות העבודה העיקריות הזמינות לפיתוח על ESP32:

  • C++ – השפה העיקרית לפיתוח ישיר על ה-ESP32.
  • ESP-IDF – מסגרת העבודה הרשמית של Espressif לפיתוח IoT, המותאמת למשפחת ESP32 ומספקת כלים ויכולות אינטגרציה מתקדמות.
  • Arduino-ESP32 – ליבה של Arduino עבור הדגמים השונים, מאפשרת פיתוח ב-Arduino IDE.
  • C – גם אפשרי ב-ESP-IDF, מספקת שליטה ישירה במעבד.
  • Python – ניתן לפיתוח דרך MicroPython ו-CircuitPython, גרסאות Python קלות עבור מיקרו-בקרים.
  • JavaScript – נתמך דרך Espruino, המדמה את סביבת Node.js.
  • Mongoose OS – מערכת הפעלה המיועדת למוצרים מחוברים, מאפשרת תכנות ב-JavaScript או C ומומלצת על ידי Espressif, AWS IoT ו-Google Cloud IoT.
  • Lua – נתמך באמצעות NodeMCU, פלטפורמת פיתוח מבוססת Lua.
  • C# – עם .NET nanoFramework, מציעה פיתוח באמצעות Visual Studio עם תמיכה ב-ESP32.
  • PlatformIO – סביבה לפיתוח מולטי-פלטפורמית שמתאימה גם ל-ESP32.
  • Rust – מאפשר פיתוח מודרני עם דגש על בטיחות זיכרון.
  • Swift – מתאים לפיתוח במיקרו-בקרים וב-IoT.
  • Visual Studio Code – עם הרחבה ייעודית ל-ESP-IDF, מספקת סביבה נוחה ומתקדמת לפיתוח.
  • Zerynth – Python ל-IoT ותמיכה במיקרו-בקרים, כולל ESP32.
  • Matlab ו-Simulink – מאפשרים פיתוח מודלים מתמטיים וסימולציות למיקרו-בקרים.

השילוב הרחב של שפות תכנות, כלים ומסגרות עבודה מאפשר התאמה מדויקת ויעילה של ESP32 למגוון פרויקטים ופיתוחים.

שימושים

  • שימושים מסחריים: לדוגמה, הצמיד של קבוצת עליבאבא באירוע השנתי ב-2017, שמשתמש ב-ESP32 לשליטה בתאורת LED בצורה מסונכרנת, מכשיר Pium למפיצי ריח חכם, ונורות ה-LED LIFX Mini.
  • שימושים תעשייתיים: מודול Moduino X של חברת TECHBASE ומכשירי NORVI IIOT משתמשים ב-ESP32 למטרות אוטומציה תעשייתית ובקרת מכשור, עם תמיכה בממשקי תקשורת כמו LoRa ו-Nb-IoT.
  • שימושים אקדמיים: ה-ESP32 משמש בהוראה ובפרויקטי מחקר, למשל, בפיתוח מערכות חכמות לניהול בית, כולל בקרה על טעינת רכבים חשמליים בהתאם לצריכת האנרגיה בבית.

ה-ESP32 מהווה כלי גמיש ונוח לפיתוח מהיר במגוון סביבות ותעשיות, בזכות התמיכה הרחבה בשפות תכנות וכלים מתקדמים.

ראו גם

קישורים חיצוניים

ויקישיתוף מדיה וקבצים בנושא ESP32 בוויקישיתוף

הערות שוליים

  1. "ESP32 Datasheet" (PDF). Espressif Systems. 2017-03-06. נבדק ב-2017-03-14.
הערך באדיבות ויקיפדיה העברית, קרדיט,
רשימת התורמים
רישיון cc-by-sa 3.0

ESP3239879678Q27921668