اللوحة

ESP32-S3 simulator, on an Xtensa LX7 core

يحاكي Mokxi لوحة ESP32-S3-DevKitC-1: وحدة ESP32-S3-WROOM-1 بنواة Xtensa LX7 عند 240 MHz، ومصفوفة GPIO وIO MUX وUART0 ومنفذ USB التسلسلي الخاص بالرقاقة وSYSTIMER وADC1 ووحدة تحكم LEDC PWM وRMT الذي يقود LED الـ RGB في اللوحة، عند العناوين الواردة في دليل Espressif المرجعي التقني. نواة واحدة لا اثنتان، وبلا راديو (WiFi هنا محاكى، ويقول ذلك)، ويبيّن العقد أي الأرقام تم التحقق منها وأيها مُعتقَد.

  • 9منطقة طرفية محاكاة
  • 6مشروع جاهز للتشغيل
  • زمن حقيقيعلى جهازك أنت
ESP32-S3-DevKitC-1: وميضlive0.000 s 0.00x
انقر لفتحه في المحرر
اللوحة تشغّل برنامجاً ثابتاً حقيقياً الآن. اضغط عليها لفتح الدائرة في المحرر.
النموذج

ما الذي يُحاكى

مأخوذ من وثيقة العقد الخاصة باللوحة ومكتوب بكلمات بسيطة، مع ما هو ناقص بجانبه.

مُحاكى

النواة
Xtensa LX7 بنظام النوافذ ABI: لكل ما يصدره المترجم هي مجموعة تعليمات LX6، مع مستويات مقاطعة S3 الخاصة. تعليمة واحدة في الدورة عند 240 MHz
الذاكرة
416 KB من SRAM1 تُرى عبر الناقلين، عند 0x4037_8000 للكود و0x3FC8_8000 للبيانات، بالبايتات نفسها، ثم SRAM2 بعدها
مصفوفة GPIO وIO MUX
GPIO من 0 إلى 48 بالتقسيم الحقيقي إلى سجلين، ومقاومات إعادة الضبط من الدليل على كل وسادة، وجدول الوظائف الذي يجعل 26 إلى 32 هي الفلاش
UART0 وUSB التسلسلي
UART0 بسرعة الباود المضبوطة، ومنفذ USB Serial/JTAG بحزمة 64 بايتاً في كل مرة؛ وتسمع الشاشة التسلسلية كليهما
SYSTIMER
الوحدة 0 عند 16 MHz خلف millis() وmicros()؛ وdelay() توقف النواة على CCOMPARE0 بدل أن تشغلها بالدوران
ADC1
اثنا عشر بتاً على عشر قنوات، GPIO من 1 إلى 10، مع التوهينات الأربعة
LEDC
ثماني قنوات وأربعة مؤقتات على أي طرف، مع بتات التحديث التي تحتاجها S3، خلف analogWrite وledcAttach وledcWrite
RMT وLED الـ RGB
أربع قنوات إرسال بذاكرتها ووضع الالتفاف والحامل؛ وترسل rgbLedWrite إطار WS2812 فيضيء بها LED اللوحة على GPIO48 (وGPIO38 في v1.1)
WiFi محاكى
WiFi.h وHTTPClient.h وWebServer.h على شبكة مكتوبة بالبرمجيات: بلا راديو ولا 802.11، وإنترنت حقيقي فقط عند تسجيل الدخول وتفعيله

غير مُحاكى

  • أي راديو. لا يوجد 802.11 ولا راديو Bluetooth في النموذج. WiFi وBluetooth LE يُحاكيان بدلاً من ذلك، وكل صفحة تذكرهما تقول ذلك.
  • النواة الثانية. في S3 الحقيقية نواتا LX7؛ وهذا النموذج يشغّل النواة 0، فأي شيء يبدأ مهمة على النواة 1 لن يعمل.
  • FPU وتعليمات المتجهات في S3: ملف ثنائي مبني في مكان آخر يستخدمها يفشل. الأكواد المبنية هنا برمجية الفاصلة العائمة، فتعمل حسابات float.
  • SRAM0 والذاكرة المخبئية والفلاش وPSRAM، ومساعدا RTC وULP، والنوم العميق، وADC2، وحساس اللمس، ومجموعتا المؤقت، ووحدتا تحكم I2C وSPI (Wire وSPI هنا برمجيتان على أطراف عادية، كما في كل لوحة).
  • بعض الأرقام اعتقاد هذا النموذج لا صفحة من الدليل: زائد واحد في مقسِّم ساعة UART، وتخطيط ذاكرة RMT لكل قناة، وطور الحامل، وتوقيت حزمة USB، والمدى الكامل لـ ADC. ويسمّيها القسم 6 من العقد واحداً واحداً.
ابدأ من هنا

افتح واحدة واضغط «تشغيل»

كل واحد منها يفتح في المحرر تماماً كما هو مرسوم هنا.

المشاريع

كل المشاريع المدمجة على ESP32-S3-DevKitC-1

لكل منها صفحة خاصة بالدائرة العاملة والكود وقائمة القطع.

القطع

قطع موصَّلة بـ ESP32-S3-DevKitC-1 خطوة بخطوة

في كل صفحة التوصيل بأسماء أطراف ESP32-S3-DevKitC-1 نفسها، والكود، والأخطاء الشائعة، والدائرة العاملة.

تعلّم

دروس تستخدم هذه اللوحة

كل درس ينتهي بدائرة تعمل، على هذه اللوحة نفسها.

الأسئلة

هل هو مجاني؟

نعم. كل لوحة وكل قطعة في الباقة المجانية، بلا حاجة إلى حساب.

هل أستطيع ترجمة كودي الخاص لها؟

نعم. عدّل الكود واضغط «تشغيل»: يُترجم في التبويب بـ clang لـ Xtensa، وتعرض لوحة البناء كل خطوة. لا يُرفع شيء. وحسابات الفاصلة العائمة تعمل: يبنيها المتصفح برمجياً، كما في كل لوحة أخرى هنا.

أي إصدار هو، v1.0 أم v1.1؟

أيٌّ منهما: تحدده خاصية الإصدار في اللوحة. الفرق الوحيد الذي تذكره Espressif هو LED الـ RGB، على GPIO48 في اللوحات الأولى وعلى GPIO38 في v1.1. الأمثلة مبنية لـ GPIO48، كما يعرّف تعريف لوحة نواة Arduino، فيبقى LED مظلماً في v1.1، كما سيحدث على المنضدة.

أي منفذ هو Serial؟

UART0، مقبس "UART" الذي فيه جسر USB-إلى-UART، وهذا ما يعنيه Serial في نواة Arduino حين يكون USB CDC On Boot معطلاً. وUSBSerial هو منفذ USB الخاص بالرقاقة. وتسمع الشاشة التسلسلية هنا كليهما.

هل يحاكي WiFi أو Bluetooth؟

كليهما، محاكيين، ويقول بوضوح إنهما كذلك. Bluetooth هاتف في لوحة Bluetooth بالمحرر لا راديو. يستخدم كودك نداءات Arduino الحقيقية، وتحت ذلك لا راديو ولا 802.11. وعند تسجيل الدخول تستطيع تفعيل «الإنترنت الحقيقي» في لوحة السحابة، فتخرج طلبات HTTP وHTTPS إلى مضيفين حقيقيين عبر بوابة Mokxi.

لماذا تقرأ مقاومتي المتغيرة 4095 قبل نهاية مجراها؟

لأن مدى ورقة البيانات عند التوهين الافتراضي 12 dB ينتهي عند 2.9 V وسكتك 3.3 V. يقرأ هذا النموذج 4095 من 2.9 V فما فوق، ويقول في عقده إن القطعة الحقيقية تحتفظ بهامش أكبر قليلاً.

هل يشغّل النواتين؟

واحدة. تعمل النواة 0؛ ولا توجد نواة ثانية ولا FreeRTOS للجدولة بينهما، فكود setup()/loop() لا بأس به لكن xTaskCreatePinnedToCore لا.

جرّبه على برنامجك الثابت

ما تبنيه هنا يعمل على اللوحة التي على مكتبك دون تغيير. بلا تثبيت ولا حاجة إلى حساب.