ESP32-S3 simulator, on an Xtensa LX7 core
Mokxi mô phỏng ESP32-S3-DevKitC-1: một ESP32-S3-WROOM-1 với lõi Xtensa LX7 ở 240 MHz, ma trận GPIO, IO MUX, UART0, cổng serial USB riêng của chip, SYSTIMER, ADC1, bộ điều khiển PWM LEDC và RMT điều khiển LED RGB của bo mạch, ở đúng các địa chỉ trong sổ tay tham chiếu kỹ thuật của Espressif. Một lõi chứ không phải hai, và không có sóng vô tuyến (WiFi ở đây là mô phỏng, và nói rõ như vậy), còn bản cam kết nói con số nào đã được kiểm tra và con số nào chỉ là suy đoán.
- 9khu vực ngoại vi được mô phỏng
- 6dự án sẵn sàng để chạy
- Thời gian thựctrên máy của chính bạn
Những gì được mô phỏng
Lấy từ tài liệu cam kết của chính bo mạch và diễn đạt bằng lời đơn giản, kèm những gì còn thiếu ngay bên cạnh.
Được mô phỏng
- Lõi
- Xtensa LX7 với windowed ABI: với mọi thứ trình biên dịch sinh ra thì đó là tập lệnh của LX6, cùng các mức ngắt riêng của S3. Một lệnh mỗi chu kỳ ở 240 MHz
- Bộ nhớ
- 416 KB SRAM1 nhìn qua cả hai bus, ở 0x4037_8000 cho code và 0x3FC8_8000 cho dữ liệu, cùng những byte đó, và SRAM2 nằm sau
- Ma trận GPIO và IO MUX
- GPIO 0 đến 48 với cách chia hai thanh ghi như thật, điện trở kéo khi reset theo sổ tay trên mọi pad, và bảng chức năng khiến 26 đến 32 là flash
- UART0 và serial USB
- UART0 chạy theo tốc độ baud đã cấu hình, và cổng USB Serial/JTAG theo từng gói 64 byte; Serial Monitor nghe được cả hai
- SYSTIMER
- Đơn vị 0 ở 16 MHz phía sau millis() và micros(); delay() cho lõi nghỉ trên CCOMPARE0 chứ không quay vòng chờ
- ADC1
- Mười hai bit trên mười kênh, GPIO 1 đến 10, với bốn mức suy hao
- LEDC
- Tám kênh và bốn timer trên mọi chân, với các bit cập nhật mà S3 cần, đứng sau analogWrite, ledcAttach và ledcWrite
- RMT và LED RGB
- Bốn kênh phát cùng RAM, chế độ wrap và sóng mang; rgbLedWrite gửi một khung WS2812 và LED của bo mạch ở GPIO48 (GPIO38 ở bản v1.1) sáng theo nó
- WiFi, mô phỏng
- WiFi.h, HTTPClient.h và WebServer.h trên một mạng viết bằng phần mềm: không có sóng vô tuyến, không có 802.11, và chỉ có internet thật khi bạn đăng nhập và bật nó lên
Không được mô phỏng
- Sóng vô tuyến dưới mọi hình thức. Mô hình không có 802.11 và không có sóng Bluetooth. WiFi và Bluetooth LE được mô phỏng thay thế, và mọi trang nhắc tới chúng đều nói rõ như vậy.
- Lõi thứ hai. S3 thật có hai lõi LX7; mô hình này chạy lõi 0, nên bất cứ thứ gì khởi chạy một task trên lõi 1 sẽ không chạy.
- FPU và các lệnh vector của S3: một file nhị phân build ở nơi khác mà dùng chúng sẽ báo lỗi. Sketch build ở đây dùng soft float, nên tính toán số thực vẫn chạy.
- SRAM0, cache, flash và PSRAM, bộ đồng xử lý RTC và ULP, deep sleep, ADC2, cảm biến chạm, các nhóm timer, và bộ điều khiển I2C và SPI (Wire và SPI ở đây chạy bằng phần mềm trên các chân thường, như trên mọi bo mạch).
- Một vài con số là suy đoán của mô hình này chứ không phải một trang trong sổ tay: số cộng một của bộ chia xung UART, bố cục RAM của RMT cho mỗi kênh, pha của sóng mang, thời gian gói USB và thang đo đầy đủ của ADC. Mục 6 của bản cam kết nêu từng cái một.
Mở một mạch và nhấn Chạy
Mỗi ví dụ này mở ra trong trình soạn thảo đúng như hình vẽ ở đây.
Mọi dự án có sẵn trên ESP32-S3-DevKitC-1
Mỗi dự án có trang riêng với mạch đang chạy, code và danh sách linh kiện.
Các linh kiện nối với ESP32-S3-DevKitC-1, từng bước
Mỗi trang có sơ đồ nối dây với tên chân riêng của ESP32-S3-DevKitC-1, code, các lỗi thường gặp và mạch đang chạy.
- ESP32-S3 DHT22
- ESP32-S3 SSD1306 OLED
- ESP32-S3 I2C LCD
- Servo với ESP32-S3
- ESP32-S3 HC-SR04
- NeoPixel với ESP32-S3
- ESP32-S3 MPU6050
- ESP32-S3 BMP280
- Biến trở với ESP32-S3
- Buzzer với ESP32-S3
- ESP32-S3 DS18B20
- Bàn phím với ESP32-S3
- Động cơ bước 28BYJ-48 với ESP32-S3
- Cảm biến PIR với ESP32-S3
- ESP32-S3 RC522 RFID
- Đầu thu hồng ngoại với ESP32-S3
Các bài hướng dẫn dùng bo mạch này
Bài nào cũng kết thúc bằng một mạch đang chạy, trên chính bo mạch này.
Câu hỏi
Có miễn phí không?
Có. Mọi bo mạch và mọi linh kiện đều nằm trong gói miễn phí, không cần tài khoản.
Tôi có biên dịch được sketch của riêng mình cho nó không?
Được. Sửa sketch rồi nhấn Chạy: nó biên dịch ngay trong tab bằng clang cho Xtensa, và bảng biên dịch hiện từng bước. Không có gì được tải lên. Tính toán số thực chạy được: trình duyệt build bằng soft float, như mọi bo mạch khác ở đây.
Đây là bản nào, v1.0 hay v1.1?
Bản nào cũng được: thuộc tính revision của bo mạch quyết định. Khác biệt duy nhất mà Espressif liệt kê là LED RGB, ở GPIO48 trên các bo mạch đầu và ở GPIO38 trên v1.1. Các ví dụ được dựng cho GPIO48, như định nghĩa bo mạch của lõi Arduino, nên trên v1.1 LED vẫn tối, như trên bàn thực hành.
Serial nằm trên cổng nào?
UART0, ổ cắm "UART" có mạch cầu USB sang UART, đó chính là Serial trong lõi Arduino khi USB CDC On Boot tắt. USBSerial là cổng USB riêng của chip. Serial Monitor ở đây nghe được cả hai.
Nó có mô phỏng WiFi hay Bluetooth không?
Cả hai, ở dạng mô phỏng, và nói rõ rằng chúng là mô phỏng. Bluetooth là một chiếc điện thoại trong ngăn Bluetooth của trình soạn thảo, không phải sóng vô tuyến. Sketch của bạn dùng các lệnh Arduino thật, và bên dưới không có sóng vô tuyến và không có 802.11. Khi đã đăng nhập, bạn có thể bật Internet thật trong bảng Cloud, và các yêu cầu HTTP và HTTPS tới máy chủ thật đi ra qua cổng gateway của Mokxi.
Vì sao biến trở của tôi đọc 4095 trước khi xoay hết hành trình?
Vì dải theo datasheet ở mức suy hao mặc định 12 dB kết thúc ở 2,9 V còn đường nguồn của bạn là 3,3 V. Mô hình này đọc 4095 từ 2,9 V trở lên, và nói trong bản cam kết rằng linh kiện thật còn dư thêm một chút khoảng trống.
Nó có chạy cả hai lõi không?
Một. Lõi 0 chạy; không có lõi thứ hai và không có FreeRTOS để chia việc giữa chúng, nên sketch dạng setup()/loop() thì ổn còn xTaskCreatePinnedToCore thì không.
Các bo mạch khác
Cái nào trong số này cũng chạy được ngay hôm nay, và cái nào cũng miễn phí.
Bạn muốn phần giới thiệu ngắn hơn? Xem trang trình mô phỏng ESP32-S3.
Một chip RISC-V 160 MHz, trên đúng bản đồ bộ nhớ thật.
Arduino cổ điển, với ATmega328P chạy 16 MHz.
Chip của Uno trên một bo mạch nhỏ cắm vừa breadboard.
Arduino cỡ lớn, có 54 chân digital và bốn cổng serial.
Một bo mạch hình dáng Uno mà chip của nó tự lo USB serial.
Một bo mạch RISC-V thứ hai, có 31 chân và WiFi mô phỏng.
ESP32 cổ điển 240 MHz, có WiFi mô phỏng.
ESP8266 80 MHz của NodeMCU, có WiFi mô phỏng.
Thử trên firmware của riêng bạn
Những gì bạn dựng ở đây chạy nguyên vẹn trên bo mạch trên bàn của bạn. Không cần cài đặt và không cần tài khoản.