c++ - 从显示的函数中打印库值
问题描述
我正在尝试从库ESP8266WiFi在我的显示器上打印返回值(WiFi.localIP) 。但我遇到了一个错误。对于显示器,我使用的是SSD1306库。
这样做的目的是在显示屏上打印 ESP8266 的 IP 地址。
错误:
Arduino: 1.8.16 (Windows 10), Board: "LOLIN(WEMOS) D1 R2 & mini, 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, 4MB (FS:2MB OTA:~1019KB), v2 Lower Memory, Disabled, None, Only Sketch, 115200"
C:\Users\lauwy\Documents\Arduino\Testsketch\Project\Code\WEB\V4.2\V4.2.ino: In function 'void connectToWifi()':
V4.2:38:32: error: taking address of rvalue [-fpermissive]
38 | String ipstat = &WiFi.localIP();
| ~~~~~~~~~~~~^~
V4.2:38:19: error: conversion from 'IPAddress*' to non-scalar type 'String' requested
38 | String ipstat = &WiFi.localIP();
| ^~~~~~~~~~~~~~~
exit status 1
taking address of rvalue [-fpermissive]
代码:
#include <Wire.h>
#include "SSD1306.h"
SSD1306 display(0x3C, D2, D5);
#include <ESP8266WiFi.h>
const char* ssid = "*****************"; //Enter network SSID
const char* password = "*****************"; //Enter network PASSWORD
WiFiServer server(80);
void connectToWifi(){
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected.");
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
server.begin();
String ipstat = &WiFi.localIP();
display.init();
display.flipScreenVertically();
display.drawString(0, 0, ipstat);
display.display();
}
解决方案
使用toString()
来自ESP8266WiFi 库(第 162-173 行)的方法。
String ipstat = WiFi.localIP().toString();
推荐阅读
- c# - how to delete a cloned prefab class in unity?
- javascript - 如何在javascript中使用第n个孩子将图像放置在放置区域
- python - 如何访问标题标签下方的标签(即
- ios - 尽管有限制,为什么导航栏顶部和安全区域顶部之间有空间?
- python - 更快地在新列 pandas 中添加未来间隔
- javascript - ReactJS:如何在父组件中显示子组件错误
- java - 在 Spring Boot 应用程序中查看渲染
- angular2-services - Angular 2 - 共享服务和普通服务组件的区别
- django - Django 注释在两种情况下给出了两种不同的结果
- docker - 自托管 gitlab CI/CD 推送注册表到 ECS 服务