谁能告诉我如何从esp32中动态获取mac地址并在以太网库中使用。到目前为止,我已经从wifi库获得了mac地址,如下所示:
#include <WiFi.h>
#include <Ethernet.h>
byte mac[6] = {};
void setup(){
Serial.begin(115200);
delay(500);
WiFi.macAddress(mac);
if (Ethernet.begin(mac) == 0) {
Serial.println(F("Failed DHCP"));
}
}即使我的esp32连接了互联网,我也总是得到“失败的动态主机配置协议”。当我在单独的数组中存储mac地址时,我面临的另一个问题是十六进制数字"A“没有存储为"0A”。请帮帮我。
发布于 2021-02-11 01:39:24
尝试使用以下命令获取mac地址,
String macAddr = WiFi.macAddress();或者使用这个,
#include <WiFi.h>
String getMacAddress()
{
uint8_t baseMac[6];
// Get MAC address for WiFi station
esp_read_mac(baseMac, ESP_MAC_WIFI_STA);
char baseMacChr[18] = {0};
sprintf(baseMacChr, "%02X:%02X:%02X:%02X:%02X:%02X", baseMac[0], baseMac[1], baseMac[2], baseMac[3], baseMac[4], baseMac[5]);
String macAddress = String(baseMacChr);
Serial.print("MAC Address :: ");
Serial.println(macAddress);
return String(baseMacChr);
}我将其用于ESP32-S CAM,效果很好。
https://stackoverflow.com/questions/62505321
复制相似问题