Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Wire.h>
- #include <LiquidCrystal_I2C.h>
- #include <Keypad.h>
- #include<Servo.h>
- Servo myServita;
- const int servoPin=10;
- int readVal;
- const int buttonPin = 1;
- const int redPin = 13;
- const int greenPin = 12;
- const int bluePin = 0;
- int counter = 0;
- const byte ROWS = 4;
- const byte COLS = 4;
- char hexaKeys[ROWS][COLS] = {
- {'1', '2', '3', 'A'},
- {'4', '5', '6', 'B'},
- {'7', '8', '9', 'C'},
- {'*', '0', '#', 'D'}
- };
- byte rowPins[ROWS] = {9, 8, 7, 6};
- byte colPins[COLS] = {5, 4, 3, 2};
- Keypad customKeypad = Keypad(makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);
- LiquidCrystal_I2C lcd(0x3F, 16, 2);
- void setup(){
- lcd.backlight();
- lcd.init();
- myServita.attach(servoPin);
- Serial.begin(9600);
- pinMode(buttonPin, INPUT);
- pinMode(redPin, OUTPUT);
- pinMode(greenPin, OUTPUT);
- pinMode(bluePin, OUTPUT);
- }
- void loop(){
- char customKey = customKeypad.getKey();
- if (customKey){
- lcd.print(customKey);
- }
- if (customKey=='*')
- {
- lcd.clear();
- }
- if (customKey=='#')
- {
- readVal=129;
- myServita.write(readVal);
- delay(500);
- myServita.write(0);
- delay(500);
- int buttonState;
- buttonState = digitalRead(buttonPin);
- if (buttonState == LOW) {
- counter++;
- delay(150);
- }
- else if (counter == 0) {
- digitalWrite(redPin, LOW);
- digitalWrite(greenPin, LOW);
- digitalWrite(bluePin, LOW);
- }
- else if (counter == 1) {
- digitalWrite(redPin, HIGH);
- digitalWrite(greenPin, LOW);
- digitalWrite(bluePin, LOW);
- }
- else if (counter == 2) {
- digitalWrite(redPin, LOW);
- digitalWrite(greenPin, HIGH);
- digitalWrite(bluePin, LOW);
- }
- else if (counter == 3) {
- digitalWrite(redPin, LOW);
- digitalWrite(greenPin, LOW);
- digitalWrite(bluePin, HIGH);
- }
- else {
- counter = 0;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement