#define buzzer 9
#define dataPin AO4
#define lachPin A1
#define clockPin A2
#define btnM 29
#define btnB 51
#define btnK 25
#define btnH 23
#define ledM 53
#define ledB 52
#define ledK 22
#define ledH 27
int tombolA = 0;
int tombolB = 0;
int tombolC = 0;
int tombolD = 0;
int ClockPin ; A2
int lactPin ; 2
int dataPinA04 ; 4
byte angka[10]={
B11000000,// 0
B11111001,// 1
B10100100,// 2
B10110000,// 3
B10011001,// 4
B10010010,// 5
B10000010,// 6
B11111000,// 7
B10000000,// 8
B10010000,// 9
};
void tampilanAngka(int puluhan, int satuan) {
digitalWrite(lachPin, LOW);
shiftOut(dataPinA4, clockPin, MSBFIRST, angka[puluhan]);
shiftOut(dataPinA4, clockPin, MSBFIRST,angka[puluhan]);
digitalWrite(lachPin, HIGH);
}
void setup() {
Serial.begin(9600);
pinMode(btnM, INPUT_PULLUP);
pinMode(btnB, INPUT_PULLUP);
pinMode(btnK, INPUT_PULLUP);
pinMode(btnH, INPUT_PULLUP);
pinMode(ledM, OUTPUT);
pinMode(ledB, OUTPUT);
pinMode(ledK, OUTPUT);
pinMode(ledH, OUTPUT);
pinMode(dataPinAO4, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(lachPin, OUTPUT);
digitalWrite(ledM, LOW);
digitalWrite(ledB, LOW);
digitalWrite(ledK, LOW);
digitalWrite(ledH, LOW);
}
void loop() {
if (digitalRead(btnM) == LOW) {
Serial.println("Tombol M ditekan");
digitalWrite(ledM, HIGH);
delay(500);
digitalWrite(ledM, LOW);
}
if (digitalRead(btnB) == LOW) {
Serial.println("Tombol B ditekan");
digitalWrite(ledB, HIGH);
delay(500);
digitalWrite(ledB, LOW);
}
if (digitalRead(btnK) == LOW) {
Serial.println("Tombol K ditekan");
digitalWrite(ledK, HIGH);
delay(500);
digitalWrite(ledK, LOW);
}
if (digitalRead(btnH) == LOW) {
Serial.println("Tombol H ditekan");
digitalWrite(ledH, HIGH);
delay(500);
digitalWrite(ledH, LOW);
}
if (digitalRead(btnB) == LOW) {
nilai++;
if (nilai > 99) nilai = 0;
tampilkanAngka(nilai / 10, nilai % 10);
tone(buzzer, 500, 100);
delay(200);
}
if (digitalRead(btnM) == LOW) {
nilai--;
if (nilai < 0) nilai = 99;
tampilkanAngka(nilai / 10, nilai % 10);
tone(buzzer, 400, 100);
delay(200);
}
}