Arduino 显示 Ethernet.localIP()

Pet*_*ete 5 ethernet arduino

我正在尝试将设备的 IP 地址分配给一个字符串变量。当我 Serial.println(Ethernet.localIP())用来测试时,它以八位字节显示 IP 地址。如果我使用,String(Ethernet.localIP());那么它会将其显示为小数。

有没有办法将八位字节格式分配给变量?

 String MyIpAddress;

 void StartNetwork()
 {
     Print("Initializing Network");
     if (Ethernet.begin(mac) == 0) {
     while (1) {
       Print("Failed to configure Ethernet using DHCP");
       delay(10000);
     }
   }
   Serial.println(Ethernet.localIP());        //displays: 192.168.80.134
   MyIpAddress = String(Ethernet.localIP());
   Serial.println(MyIpAddress);               //displays: 2253433024
 }
Run Code Online (Sandbox Code Playgroud)

Pet*_*ete 5

结果证明 IPAddress 属性是一个数组。显示 IP 地址的一种简单方法如下:

String DisplayAddress(IPAddress address)
{
 return String(address[0]) + "." + 
        String(address[1]) + "." + 
        String(address[2]) + "." + 
        String(address[3]);
}
Run Code Online (Sandbox Code Playgroud)