我意识到您可以在 lcd.setCursor 中使用变量,但是当我尝试使用从串行端口读取的整数时,它对我不起作用。有可能的?
这是我的代码的相关部分的样子,目前没有打印:
int align
if( Serial.available() ) {
align = Serial.read();
}
if( Serial.available() ) {
lcd.setCursor(align,0);
lcd.print('test');
}
我意识到您可以在 lcd.setCursor 中使用变量,但是当我尝试使用从串行端口读取的整数时,它对我不起作用。有可能的?
这是我的代码的相关部分的样子,目前没有打印:
int align
if( Serial.available() ) {
align = Serial.read();
}
if( Serial.available() ) {
lcd.setCursor(align,0);
lcd.print('test');
}
看起来您阅读了串行,因此 Serial.available() 变为 0。第二个块不运行。取出
}
if( Serial.available() ) {
你确定那是你想做的吗?如果您尝试读取一个数字然后移动光标,我认为您需要读取直到用户按下 enter('\r') 然后将您的字节从 read() 转换为整数。
char align[100];
while(Serial.available() && i< 99) {
align[i++] = Serial.read();
}
align[i++]='\0';
lcd.setCursor(atoi(align),0);
如果这不是您想要的,可以添加一些 sudo 代码注释,以便人们可以遵循您的思路。