gpt4 book ai didi

arduino - 在 OLED 显示屏上滚动长文本

转载 作者:行者123 更新时间:2023-12-05 02:20:03 26 4
gpt4 key购买 nike

如何在 128x64 OLED 显示屏上滚动长文本
我正在使用 Adafruit_SSD1306 驱动程序
此代码仅显示“This”,因为文本太大而无法显示,但是当我滚动文本时,仅“This”滚动而不滚动其余文本

display.setTextSize(5);
display.setTextColor(WHITE);
display.setCursor(0,16);
display.clearDisplay();
display.print("This is a long long text");
display.display();
delay(1);
display.startscrollleft(0x00, 0x0F);

最佳答案

在 ssd1306 显示器上滚动并环绕长文本行:

这段代码来自 YT,它做得很漂亮。我的以下版本适用于 ssd1306 128x64 显示器。仅用于演示目的的临时文本字符串。它显示 5 行,第一行是静止的。所有剩余的卷轴。下一行是文本大小“2”。其他尺寸为“1”。

/* https://www.youtube.com/watch?v=sTYPuDMPva8
Set the appropriate screen size in the Adafruit_SSD1306.h by uncommenting
one of the two following lines.

//#define SSD1306_128_64 ///< DEPRECTAED: old way to specify 128x64 screen
//#define SSD1306_128_32 ///< DEPRECATED: old way to specify 128x32 screen
*/

#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

Adafruit_SSD1306 display(4);

char message[]="297M LstWyPt, 345M StPt, rec#89";
int x, minX;

void setup(){
Serial.begin(9600);
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.setTextSize(2);
display.setTextColor(WHITE);
display.setTextWrap(false);
x = display.width();
minX = -12 * strlen(message); // 12 = 6 pixels/character * text size 2
}

void loop(){

display.clearDisplay();
display.setCursor(0,0);
display.setTextSize(1);
display.print("Sat:13 03:56:32 67%");// GPS # Satellites, Time, % Batt chg
display.setTextSize(2);
display.setCursor(x,10);
display.print(message);
display.setCursor(x,28);
display.setTextSize(1);
display.print("Press #1 New StPt, 2 RecWayPt, Cur 32.567, -102.456");
display.setCursor(x,38);
display.setTextSize(1);
display.print("Press #1 New StPt, 2 RecWayPt, Cur 32.567, -102.456");
display.setCursor(x,48);
display.setTextSize(1);
display.print("Press #1 New StPt, 2 RecWayPt, Cur 32.567, -102.456");
display.display();
x=x-8; // scroll speed, make more positive to slow down the scroll
if(x < minX) x= display.width();
}

关于arduino - 在 OLED 显示屏上滚动长文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40564050/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com