Arduino – CLCD with I2C – Variable Resistor + Switch 2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
#include <Wire.h> #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27,16,2); // or 0x3F int varRes=A1; int volumes=0; int volumesLength=1; int button1=4; int button2=5; int stateButton1=0; int stateButton2=0; unsigned long cnt=0; void setup() { pinMode(button1, INPUT); pinMode(button2, INPUT); lcd.init(); delay(1000); lcd.backlight(); lcd.setCursor(0,0); lcd.print("Var : "); lcd.setCursor(0,1); lcd.print("B1 : "); lcd.setCursor(8,1); lcd.print("B2 : "); } void loop() { volumes=analogRead(varRes); volumesLength=String(volumes).length(); lcd.setCursor(6,0); for (int i=0;i<4-volumesLength;i++) { lcd.print(" "); } lcd.print(volumes); if (digitalRead(button1) && cnt==0) { stateButton1=!stateButton1; cnt=millis(); } else if (digitalRead(button2) && cnt==0) { stateButton2=!stateButton2; cnt=millis(); } else if (millis() > cnt+300) { cnt=0; } lcd.setCursor(5,1); lcd.print(stateButton1); lcd.setCursor(13,1); lcd.print(stateButton2); } |