Dette kortet er for de avanserte. Det har prossesorkjerner, en low power prosessor, WiFi og Bluetooth BLE. Den betjener de fleste serieprotokoller, har mange digitale og analoge inn- og utganger. Det er funksjonene som velges hvilke utganger som brukes. ;Man må unngå å velge funksjoner som bruker de samme utgangene.
Kort: ESP32 Dev Module (ESP32 Arduino)
Installasjon: Last ned driver, lagres på Dokumentmappen for Ardruino i en egen ha Hardware- mappe der. I tillegg må programme get.exe kjøres i mappen Arduino/hardware/espressif/esp32/tools-mappen som administrator. I tillegg må Python 2.7.14 installeres.
OTA-funksjonen virker ikke fullt ut for ESP32.. Se også her
Vær oppmerksom at analogWrite() brukes ikke for ESP32. I stedet brukes ledcWrite(channel,duty). Den må initialiseres med ledcSetup og ledcAttachPin. Se mer info under.
Programming guide Hjemmeside Espressif Systems Kolban technical tutorials PCBReflux's ESP32 Videos Flashdownloader
ESP32 ESP-32S NodeMCU Development Board 2.4GHz WiFi+Bluetooth Dual Mode
Funksjoner
Support Arduino IDE (providing video tutorials)
analogWrite() brukes ikke i ESP32. I stedet bryes ledcWrite/channel,duty).
Før de kan brukes, må de initialiseres med
ledcSetup(LEDC_CHANNEL,LEDC_BASE_FREQ, LEDC_TIMER_BIT) og
ledcAttachbPin(LED_PIN,LEDC_CHANNEL)
hvor
LEDC_CHANNEL : en av de 16 tilgjengelige timers.
LEDC_BASE_FREQ: Oppløsning
LEDC_TIMER_BIT: timer bit oppløsning, må være minst 12 bits
LED_PIN: pin som tilkobles
Eksempel på kode:
// use first channel of 16 channels (started from zero)
#define LEDC_CHANNEL_0 0
// use 13 bit precission for LEDC timer
#define LEDC_TIMER_13_BIT 13
// use 5000 Hz as a LEDC base frequency
#define LEDC_BASE_FREQ 5000
// fade LED PIN (replace with LED_BUILTIN constant for built-in LED)
#define LED_PIN 5
void ledcAnalogWrite(uint8_t channel, uint32_t value, uint32_t valueMax = 255) {
// calculate duty, 8191 from 2 ^ 13 - 1
uint32_t duty = (8191 / valueMax) * min(value, valueMax);
// write duty to LEDC
ledcWrite(channel, duty);
}
void setup() {
// Setup timer and attach timer to a led pin
ledcSetup(LEDC_CHANNEL_0, LEDC_BASE_FREQ, LEDC_TIMER_13_BIT);
ledcAttachPin(LED_PIN, LEDC_CHANNEL_0);
}
void loop() {
// set the brightness on LEDC channel 0
ledcAnalogWrite(LEDC_CHANNEL_0, brightness);
......