SKU: OT3345 Numer artykułu: OT3345 EAN: 8721244302812
Ta płytka deweloperska ESP32-C3 łączy łączność bezprzewodową z kompaktowym wyświetlaczem OLED 0.42 cala. Płytka oparta jest na niezawodnym układzie ESP32C3FN4/FH4 i ma wbudowaną ceramiczną antenę do WiFi i Bluetooth. Dzięki 4MB pamięci flash oraz programowaniu przez USB idealnie nadaje się do różnych projektów IoT.
Dzięki niskiemu zużyciu energii i wszechstronnej łączności ta płytka nadaje się do:
Ta kompaktowa płytka IoT oparta jest na układzie ESP32-C3 (RISC-V) i ma zintegrowany ekran OLED 0.42 cala. Ponieważ pinout i sterowanie ekranem różnią się od standardowych modułów ESP32, poniżej znajdziesz szczegółowe instrukcje, jak prawidłowo używać tej płytki.
Dokumentacja online często bywa myląca. Użyj poniższych przypisań pinów dla tej konkretnej płytki (w stylu ABRobot):
LOW = włączone, HIGH = wyłączone).Aby zaprogramować tę płytkę, wybierz następujące ustawienia w Arduino IDE:
ESP32C3 Dev ModuleEnabled (Niezbędne, aby widzieć Serial.print).DIO (standard).Ekran używa kontrolera SSD1306, ale ma fizyczną rozdzielczość tylko 72x40 pikseli. Wewnętrzny bufor ma jednak 128x64. Musisz zastosować "offset" (przesunięcie), aby tekst był widoczny.
Wymagana biblioteka: Zainstaluj bibliotekę U8g2 (od olikraus) przez Arduino Library Manager.
Przykładowy kod:
#include
#include
// Inicjalizacja dla ESP32-C3 z I2C na pinach 5 (SDA) i 6 (SCL)
// Używamy standardowego sterownika 128x64, ale tylko części ekranu.
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, U8X8_PIN_NONE, 6, 5);
// Ustawienia dla ekraniku 0.42 cala
int width = 72;
int height = 40;
// Offsety są potrzebne, aby wyśrodkować wyjście w buforze 128x64
int xOffset = 30; // 30 działa najlepiej w praktyce
int yOffset = 12; // (64 - 40) / 2 = 12
void setup(void) {
delay(1000); // Krótka pauza dla stabilności
u8g2.begin();
u8g2.setContrast(255); // Maksymalna jasność
u8g2.setBusClock(400000); // 400kHz prędkość I2C
u8g2.setFont(u8g2_font_ncenB10_tr); // Wybierz czytelny font
}
void loop(void) {
u8g2.clearBuffer(); // Wyczyść wewnętrzny bufor
// Narysuj ramkę wokół widocznego obszaru do testu
u8g2.drawFrame(xOffset, yOffset, width, height);
// Narysuj tekst (uwzględnij xOffset i yOffset!)
u8g2.setCursor(xOffset + 5, yOffset + 25);
u8g2.print("ESP32-C3");
u8g2.sendBuffer(); // Wyślij dane do ekranu
delay(1000);
}
Chcesz przetestować pozostałe piny? Użyj tego prostego loop. Uwaga: pin 8 steruje również wbudowaną diodą LED.
// GPIO 8 to wbudowana dioda LED (LOW = WŁ)
#define LED_PIN 8
void setup() {
pinMode(LED_PIN, OUTPUT);
}
void loop() {
digitalWrite(LED_PIN, LOW); // LED Włączona
delay(500);
digitalWrite(LED_PIN, HIGH); // LED Wyłączona
delay(500);
}