LCD显示屏Arduino Uno

时间:2018-01-16 18:07:03

标签: arduino-uno

我正在尝试创建一个显示在液晶显示屏上的基本arduino uno秒表。从理论上讲,这是一个非常简单的项目,但我遇到了显示问题。我计算我的分钟和秒数,然后尝试将它们打印到显示器,中间用冒号。来自java,我认为只是使用了加号。但是,这会导致屏幕上出现一堆随机,无法识别的字符。我测试过看秒和分钟是否分开,他们这样做,所以我认为它是lcd.print()的语法。我无法在其他任何地方找到这个问题。帮助将不胜感激。

代码:

#include <LiquidCrystal.h>



LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int seconds;
int minutes;
int timedif;
int starttime = -1;

void setup()
{

    lcd.begin(16, 2); //Initialize the 16x2 LCD


    lcd.clear();    //Clear any old data displayed on the LCD
}

void loop()
{

  lcd.setCursor(0,0);
  lcd.print("Stopwatch");
  lcd.setCursor(0,1);
  if (starttime == -1) { //if running first time, time dif is initiated
    starttime = millis();
  }

  timedif = (millis() - starttime)/1000; //will get difference in terms of seconds

  minutes = floor(timedif/60); // divides by sixty, drops decimal
  seconds = timedif%60; //gets remainder of divided by 60
  lcd.print(minutes + ";" + seconds);

}

1 个答案:

答案 0 :(得分:0)

您要打印的内容是JAVA语法,Arduino使用C语法。 有关如何使用此API的信息,请参阅this

您需要构建字符串(例如作为char数组)并将其传递给print方法