|
发表于 2024-1-10 18:19:56
|
显示全部楼层
好的,你想要在随机位置和随机时间显示文本。下面是调整过的代码实现这个功能:
- #include <Adafruit_GFX.h>
- #include <Adafruit_SSD1306.h>
- #include <Wire.h>
- Adafruit_SSD1306 display(128, 64, &Wire, -1);
- int pos_x = 0; // 文本的X坐标位置
- int pos_y = 0; // 文本的Y坐标位置
- unsigned long previousMillis = 0; // 上一次文本更新的时间
- unsigned long interval = 0; // 更新文本的时间间隔
- void setup() {
- display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
- display.clearDisplay();
- }
- void loop() {
- unsigned long currentMillis = millis();
- if (currentMillis - previousMillis >= interval) {
- previousMillis = currentMillis;
- interval = random(500, 2000); // 随机生成更新时间间隔(500ms到2000ms之间)
- pos_x = random(0, display.width() - 16); // 随机生成X坐标位置
- pos_y = random(0, display.height() - 8); // 随机生成Y坐标位置
- display.clearDisplay(); // 清空屏幕
- display.setTextSize(1);
- display.setTextColor(WHITE);
- display.setCursor(pos_x, pos_y);
- display.println("你好");
- display.display();
- }
- }
复制代码
在这段代码中,我们使用了`random()`函数来生成随机的位置和时间间隔。在每次更新文本之前,我们会重新生成随机的X坐标、Y坐标和时间间隔。然后,我们使用`display.setCursor()`函数将文本放置到随机位置,并使用`display.print()`函数打印文本。
你可以上传这段代码到Arduino,并观察屏幕上的效果。每隔一段随机的时间,屏幕上会出现一个随机位置的"你好"文本。希望这次的代码符合你的需求!如果还有其他问题,请随时提问。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|