首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LCD Arduino显示不正确

LCD Arduino显示不正确
EN

Stack Overflow用户
提问于 2020-04-07 08:38:35
回答 1查看 875关注 0票数 0

我的问题是,当我在串行监视器中输入字符串时,它显示如下:

LCD Arduino误差 setCursor不工作,而且在实际输出之前还有另一个奇怪的字符创建。

这是我的示例代码:

代码语言:javascript
复制
void setup() {

    lcd.begin(16, 2);
    Serial.begin(9600);
    lcd.print("hello, world!");
}

void loop() {

    String readString;
    String Q;
    while (Serial.available()) {
        delay(1);
        if (Serial.available()>0) {
            char c = Serial.read();
            if(isControl(c)){
                break;
            }
            readString += c;
        }
    }
    Q = readString;
    if (Q == "1"){
        lcd.setCursor(0,1);
        lcd.print("Hello");
    }
    if (Q == "2"){
        lcd.setCursor(0,1);
        lcd.print("World");
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-07 09:12:13

首先,您应该了解LCD的库函数。

若要设置所需的theFirst行,请执行以下操作

代码语言:javascript
复制
 lcd.setCursor(0,0);  // row index starts with 0

如果您只将光标设置回不清除屏幕,可能会有奇怪的字符,sodo a

代码语言:javascript
复制
 lcd.clear(); //clears the whole screen

或定义空字符串:

代码语言:javascript
复制
 String lineClear ="                ";  // should be 16 spaces for a 16x2 display

并作为一个清除序列(例如,对于顶部行)

代码语言:javascript
复制
 lcd.setCursor(0,0);
 lcd.print(lineClear);
 lcd.print("Hello");

记住语法是

代码语言:javascript
复制
 lcd.setCursor(col, row)  
 // index for 16x2 is col 0-15,row 0-1 
 // index for 20x4 is col 0-19,row 0-3 

在安装过程中做一个

代码语言:javascript
复制
lcd.clear(); 

初始化lcd后,从缓冲区中移除可能的手工艺品。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61075974

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档