SMART brädspelet (5 / 7 steg)
Steg 5: Frågesport modul
Jag ville göra enkel frågesport-modul som använder en intressant styrmekanism. Potentiometer styr en markör som "väljer" ett svar på LCD. När knappen trycks, som svaret är valt och avgör om spelarna besvaras korrekt eller inte.
< p > #include LiquidCrystal lcd (12, 11, 5, 4, 3, 2); < br > int buttonPin = 1;
int potMeterPin = A5;
booleska currentButtonState = låg;
booleska lastButtonState = låg; < /p >< p > void setup() {
Serial.BEGIN(9600);
LCD.BEGIN (16, 2);
pinMode (buttonPin, ingång);
pinMode (potmeterPin, ingång);
Serial.println ("din fråga här?").
} < /p >< p > void loop() {
int sensorValue = analogRead(potMeterPin);
om (sensorValue < 250) {
lcd.setCursor (0, 0); //
LCD.Print ("> A1 < A2");
lcd.setCursor (0, 1);
LCD.Print ("A3 A4");
} else om (sensorValue > 250 & & sensorValue < 500) {
lcd.setCursor (0, 0);
LCD.Print ("A1 > A2 <"); < /p >< p > lcd.setCursor (0, 1);
LCD.Print ("A3 A4"); < /p >< p >} else om (sensorValue > 500 & & sensorValue < 750) {
lcd.setCursor (0, 0);
LCD.Print ("A1 A2"); < /p >< p > lcd.setCursor (0, 1);
LCD.Print ("> A3 < A4"); < /p >< p >} else om (sensorValue > 750) {
lcd.setCursor (0, 0);
LCD.Print ("A1 A2"); < /p >< p > lcd.setCursor (0, 1);
LCD.Print ("A3 > A4 <");
}
currentButtonState = digitalRead(buttonPin);
om (currentButtonState == hög & & lastButtonState == låg & & sensorValue > 750) {
Serial.println("true!");
} else om (currentButtonState == hög & & lastButtonState == låg & & sensorValue < 750) {
Serial.println("false!");
}
lastButtonState = currentButtonState;
} < /p >