В этой статье мы рассмотрим, как получить информацию о плате ESP32 и вывести ее в монитор порта Arduino IDE, а также проведем сканирование доступных Wi-Fi сетей. Этот пример будет полезен для начинающих разработчиков, работающих с микроконтроллерами ESP32.
Код для загрузки на ESP32 в среде Arduino IDE:
#include <WiFi.h> // Подключаем библиотеку WiFi
void setup() {
Serial.begin(115200);
delay(1000);
// Получение и вывод информации о чипе ESP32
Serial.println();
Serial.printf("ESP32 Chip model: %s Rev %d\n", ESP.getChipModel(), ESP.getChipRevision());
Serial.printf("This chip has %d cores\n", ESP.getChipCores());
Serial.printf("Chip ID: %08X\n", ESP.getEfuseMac());
Serial.printf("%dMB %s flash\n", ESP.getFlashChipSize() / (1024 * 1024),
(ESP.getFlashChipMode() == FM_QIO) ? "QIO" :
(ESP.getFlashChipMode() == FM_QOUT) ? "QOUT" :
(ESP.getFlashChipMode() == FM_DIO) ? "DIO" :
(ESP.getFlashChipMode() == FM_DOUT) ? "DOUT" : "unknown");
// Сканирование сетей Wi-Fi
Serial.println("Scanning for WiFi networks...");
int n = WiFi.scanNetworks();
if (n == 0) {
Serial.println("No networks found");
} else {
Serial.println("Networks found:");
for (int i = 0; i < n; ++i) {
Serial.printf("%d: %s (%d) %s\n", i + 1, WiFi.SSID(i).c_str(), WiFi.RSSI(i), (WiFi.encryptionType(i) == WIFI_AUTH_OPEN) ? " " : "*");
}
}
}
void loop() {
// Ничего не делаем в loop
}
Пример вывода в монитор порта:
ESP32 Chip model: ESP32-D0WD-V3 Rev 301
This chip has 2 cores
Chip ID: ACC3DC24
4MB QIO flash
Scanning for WiFi networks...
Networks found:
1: ITALY (-87) *
2: TP-Link_8ACD (-88) *
3: :) (-91) *
4: AB AB (-91) *
5: TP-Link_E777 (-92) *