naivxnaivet

Untitled

Dec 25th, 2019
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <toneAC.h>
  2. #include <LiquidCrystal_I2C.h> //library
  3. #include <Wire.h>
  4. #define BACKLIGHT_PIN     13 //backlight pin
  5.  
  6. LiquidCrystal_I2C lcd(0x3f, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
  7. //use for 0x2 7
  8. //LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
  9.  
  10.  
  11. unsigned long debounceDelay = 50;
  12. int threshold = 0;
  13. int count = 0;
  14.  
  15. #define buttonPin1 2
  16. int buttonState1;
  17. int lastButtonState1 = LOW;
  18. unsigned long lastDebounceTime1 = 0;
  19.  
  20. #define buttonPin2 3
  21. int buttonState2;
  22. int lastButtonState2 = LOW;
  23. unsigned long lastDebounceTime2 = 0;
  24.  
  25. #define buttonPin3 4
  26. int buttonState3;
  27. int lastButtonState3 = LOW;
  28. unsigned long lastDebounceTime3 = 0;
  29.  
  30. #define buttonPin4 5
  31. int buttonState4;
  32. int lastButtonState4 = LOW;
  33. unsigned long lastDebounceTime4 = 0;
  34.  
  35. #define buttonPin5 6
  36. int buttonState5;
  37. int lastButtonState5 = LOW;
  38. unsigned long lastDebounceTime5 = 0;
  39.  
  40. #define buttonPin6 7
  41. int buttonState6;
  42. int lastButtonState6 = LOW;
  43. unsigned long lastDebounceTime6 = 0;
  44.  
  45. #define buttonPin7 8
  46. int buttonState7;
  47. int lastButtonState7 = LOW;
  48. unsigned long lastDebounceTime7 = 0;
  49.  
  50.  
  51. #define buttonPin8 9
  52. int buttonState8;
  53. int lastButtonState8 = LOW;
  54. unsigned long lastDebounceTime8 = 0;
  55.  
  56. #define buttonPin9 10
  57. int buttonState9;
  58. int lastButtonState9 = LOW;
  59. unsigned long lastDebounceTime9 = 0;
  60.  
  61. #define buttonPin10 11
  62. int buttonState10;
  63. int lastButtonState10 = LOW;
  64. unsigned long lastDebounceTime10 = 0;
  65.  
  66.  
  67. void setup()
  68. {
  69.   Serial.begin(9600);
  70.   pinMode(buttonPin1, INPUT_PULLUP);
  71.   pinMode(buttonPin2, INPUT_PULLUP);
  72.   pinMode(buttonPin3, INPUT_PULLUP);
  73.   pinMode(buttonPin4, INPUT_PULLUP);
  74.   pinMode(buttonPin5, INPUT_PULLUP);
  75.   pinMode(buttonPin6, INPUT_PULLUP);
  76.   pinMode(buttonPin7, INPUT_PULLUP);
  77.   pinMode(buttonPin8, INPUT_PULLUP);
  78.   pinMode(buttonPin9, INPUT_PULLUP);
  79.   pinMode(buttonPin10, INPUT_PULLUP);
  80.  
  81. }
  82.  
  83. void loop() {
  84.   readBtn1();
  85.   readBtn3();
  86.   readBtn2();
  87.   readBtn4();
  88.   readBtn5();
  89.   readBtn6();
  90.   readBtn7();
  91.   readBtn8();
  92.   readBtn9();
  93.   readBtn10();
  94.  
  95.   booleanCheck();
  96.   Serial.println(threshold);
  97. }
  98.  
  99. void readBtn1() {
  100.   int reading = digitalRead(buttonPin1);
  101.   if (reading != lastButtonState1) {
  102.     lastDebounceTime1 = millis();
  103.   }
  104.   if ((millis() - lastDebounceTime1) > debounceDelay) {
  105.     if (reading != buttonState1) {
  106.       buttonState1 = reading;
  107.       if (buttonState1 == LOW) {
  108.         count = 1;
  109.       }
  110.     }
  111.   }
  112.   lastButtonState1 = reading;
  113. }
  114.  
  115. void readBtn2() {
  116.   int reading = digitalRead(buttonPin2);
  117.   if (reading != lastButtonState2) {
  118.     lastDebounceTime2 = millis();
  119.   }
  120.   if ((millis() - lastDebounceTime2) > debounceDelay) {
  121.     if (reading != buttonState2) {
  122.       buttonState2 = reading;
  123.       if (buttonState2 == LOW) {
  124.         count = 2;
  125.       }
  126.     }
  127.   }
  128.   lastButtonState2 = reading;
  129. }
  130.  
  131. void readBtn3() {
  132.   int reading = digitalRead(buttonPin3);
  133.   if (reading != lastButtonState3) {
  134.     lastDebounceTime3 = millis();
  135.   }
  136.   if ((millis() - lastDebounceTime3) > debounceDelay) {
  137.     if (reading != buttonState3) {
  138.       buttonState3 = reading;
  139.       if (buttonState3 == LOW) {
  140.         count = 3;
  141.       }
  142.     }
  143.   }
  144.   lastButtonState3 = reading;
  145. }
  146.  
  147. void readBtn4() {
  148.   int reading = digitalRead(buttonPin4);
  149.   if (reading != lastButtonState4) {
  150.     lastDebounceTime4 = millis();
  151.   }
  152.   if ((millis() - lastDebounceTime4) > debounceDelay) {
  153.     if (reading != buttonState4) {
  154.       buttonState4 = reading;
  155.       if (buttonState4 == LOW) {
  156.         count = 4;
  157.       }
  158.     }
  159.   }
  160.   lastButtonState4 = reading;
  161. }
  162.  
  163. void readBtn5() {
  164.   int reading = digitalRead(buttonPin5);
  165.   if (reading != lastButtonState5) {
  166.     lastDebounceTime5 = millis();
  167.   }
  168.   if ((millis() - lastDebounceTime5) > debounceDelay) {
  169.     if (reading != buttonState5) {
  170.       buttonState5 = reading;
  171.       if (buttonState5 == LOW) {
  172.         count = 5;
  173.       }
  174.     }
  175.   }
  176.   lastButtonState5 = reading;
  177. }
  178.  
  179. void readBtn6() {
  180.   int reading = digitalRead(buttonPin6);
  181.   if (reading != lastButtonState6) {
  182.     lastDebounceTime6 = millis();
  183.   }
  184.   if ((millis() - lastDebounceTime6) > debounceDelay) {
  185.     if (reading != buttonState6) {
  186.       buttonState6 = reading;
  187.       if (buttonState6 == LOW) {
  188.         count = 6;
  189.       }
  190.     }
  191.   }
  192.   lastButtonState6 = reading;
  193. }
  194.  
  195. void readBtn7() {
  196.   int reading = digitalRead(buttonPin7);
  197.   if (reading != lastButtonState7) {
  198.     lastDebounceTime7 = millis();
  199.   }
  200.   if ((millis() - lastDebounceTime7) > debounceDelay) {
  201.     if (reading != buttonState7) {
  202.       buttonState7 = reading;
  203.       if (buttonState7 == LOW) {
  204.         count = 7;
  205.       }
  206.     }
  207.   }
  208.   lastButtonState7 = reading;
  209. }
  210.  
  211. void readBtn8() {
  212.   int reading = digitalRead(buttonPin8);
  213.   if (reading != lastButtonState8) {
  214.     lastDebounceTime8 = millis();
  215.   }
  216.   if ((millis() - lastDebounceTime8) > debounceDelay) {
  217.     if (reading != buttonState8) {
  218.       buttonState8 = reading;
  219.       if (buttonState8 == LOW) {
  220.         count = 8;
  221.       }
  222.     }
  223.   }
  224.   lastButtonState8 = reading;
  225. }
  226.  
  227. void readBtn9() {
  228.   int reading = digitalRead(buttonPin9);
  229.   if (reading != lastButtonState9) {
  230.     lastDebounceTime9 = millis();
  231.   }
  232.   if ((millis() - lastDebounceTime9) > debounceDelay) {
  233.     if (reading != buttonState9) {
  234.       buttonState9 = reading;
  235.       if (buttonState9 == LOW) {
  236.         count = 9;
  237.       }
  238.     }
  239.   }
  240.   lastButtonState9 = reading;
  241. }
  242.  
  243. void readBtn10() {
  244.   int reading = digitalRead(buttonPin10);
  245.   if (reading != lastButtonState10) {
  246.     lastDebounceTime10 = millis();
  247.   }
  248.   if ((millis() - lastDebounceTime10) > debounceDelay) {
  249.     if (reading != buttonState10) {
  250.       buttonState10 = reading;
  251.       if (buttonState10 == LOW) {
  252.         count = 10;
  253.       }
  254.     }
  255.   }
  256.   lastButtonState10 = reading;
  257. }
  258.  
  259.  
  260. void booleanCheck()
  261. {
  262.   lcd.setCursor(0, 0);
  263.   lcd.print(F("Button Pressed"));
  264.   lcd.setCursor(0, 1);
  265.  
  266.   switch (count)
  267.   {
  268.     case 0:
  269.       threshold = 0;
  270.       lcd.print(F("Nothing pressed"));
  271.       break;
  272.  
  273.     case 1:
  274.       threshold = 10;
  275.       lcd.print(F("10hz pressed"));
  276.       break;
  277.  
  278.     case 2:
  279.       threshold = 20;
  280.       lcd.print(F("20hz pressed"));
  281.       break;
  282.  
  283.     case 3:
  284.       threshold = 50;
  285.       lcd.print(F("50hz pressed"));
  286.       break;
  287.  
  288.     case 4:
  289.       threshold = 100;
  290.       lcd.print(F("100hz pressed"));
  291.       break;
  292.  
  293.     case 5:
  294.       threshold = 200;
  295.       lcd.print(F("200hz pressed"));
  296.       break;
  297.  
  298.     case 6:
  299.       threshold = 500;
  300.       lcd.print(F("500hz pressed"));
  301.       break;
  302.  
  303.     case 7:
  304.       threshold = 1000;
  305.       lcd.print(F("20hz pressed"));
  306.       break;
  307.  
  308.     case 8:
  309.       threshold = 1500;
  310.       lcd.print(F("1500hz pressed"));
  311.       break;
  312.  
  313.     case 9:
  314.       threshold = 2000;
  315.       lcd.print(F("2000hz pressed"));
  316.       break;
  317.  
  318.     case 10:
  319.       threshold = 2500;
  320.       lcd.print(F("2500hz pressed"));
  321.       break;
  322.   }
  323.  
  324. }
Advertisement
Add Comment
Please, Sign In to add comment