[英]Starting New Rows With Arduino TFT
我正在尝试在 1.8" TFT 显示器上写入。我试图让 MCU 在每一行上写入,并在到达屏幕的指定“底部”后开始新行,但它写入下一行而不是下一行,类似于下面。
BlahBlahBlahBlah
Blah
Blah
Blah
Blah
Blah
而我正在寻找
BlahBlahBlahBlah
BlahBlahBlahBlah
BlahBlahBlahBlah
BlahBlahBlahBlah
BlahBlahBlahBlah
据我所知,if 语句没有重置,因此程序写入并将 cursor 设置回下一行的顶部。
Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST);
int lineNumber = 1;
int rowNumber = 1;
void setup(void)
{
tft.initR(INITR_BLACKTAB);
tft.fillScreen(ST77XX_BLACK);
while (rowNumber <= 5)
{
if (lineNumber > 15)
{
tft.setCursor(25*rowNumber, 0);
rowNumber++;
lineNumber = 1;
}
tft.println("Blah");
lineNumber++;
}
}
我找到了解决方法。 我没有使用 println() function,而是使用了 print() function 并将 cursor 显式设置为我想要的位置。 如下图所示。
for (int rowNumber = 0; rowNumber <= 4; rowNumber++)
{
tft.setCursor(25*rowNumber,0);
for (int lineNumber = 0; lineNumber <= 15; lineNumber++)
{
tft.setCursor(25*rowNumber, 7*lineNumber);
tft.print("blah");
Serial.println(lineNumber);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.