我无法将 outPut 中的代码显示在液晶屏幕上,我做错了什么或遗漏了什么?另外我也不能 100% 确定 lcd 是一个物体。这是针对带有 Arduino ide 的 Leonardo Arduino,但我也无法用 Java 和 C++ 解决这个问题。非常感谢任何帮助或指导。
#include <LiquidCrystal.h>
#include <Keyboard.h> // The main library for sending keystrokes.
//LCD pin to Arduino
const int pin_RS = 8;
const int pin_EN = 9;
const int pin_d4 = 4;
const int pin_d5 = 5;
const int pin_d6 = 6;
const int pin_d7 = 7;
const int pin_BL = 10;
int y = 0;
int z = 0;
LiquidCrystal lcd( pin_RS, pin_EN, pin_d4, pin_d5, pin_d6, pin_d7);
void setup() {
Keyboard.begin(); // Initialise the library.
lcd.begin(16, 2);
lcd.setCursor(0,0);
lcd.print("Electropeak.com");
lcd.setCursor(0,1);
lcd.print("Press Key:");
}
void loop() {
Keyboard.press('f12'); // Press and hold the 'f12' key.
delay(100); // Wait for the computer to register the press.
Keyboard.releaseAll(); // Release both of the above keys.
delay(1000);
int x;
x = analogRead (0);
lcd.setCursor(10,1);
output();
}
void outPut(){
lcd.print("Does not show");
}
在本例中,由于
lcd
是一个全局变量,因此它在所有可以看到其声明的函数中都可用(这是显示的所有函数)。无需显式地将其发送到函数。
如果您确实想将对象传递给函数,您可以通过 copy 传递或通过 reference 传递(您想要这个作为
lcd
)。您可以以不同的方式编写该函数,如下所示:
void my_function(LiquidCrystal& lcd) {
// now lcd is available to use below
lcd.print("It works!");
}