// Definisikan pin-pin yang akan digunakan untuk mengontrol seven-segment display
const int segPins[] = {22, 23, 24, 25, 26, 27, 28};
const int dotPin = 29; // Pin untuk dot (titik desimal)
// Menginisialisasi nilai-nilai yang akan ditampilkan
const byte numbers[] = {
B00111111, // 0
B00000110, // 1
B01011011, // 2
B00001111, // 3
B01100110, // 4
B01101101, // 5
B01111101, // 6
B00000111, // 7
B01111111, // 8
B01101111 // 9
};
void setup() {
// Inisialisasi pin-pin sebagai OUTPUT
for (int i = 0; i < 7; i++) {
pinMode(segPins[i], OUTPUT);
}
// Inisialisasi pin dot sebagai OUTPUT
pinMode(dotPin, OUTPUT);
}
void loop() {
// Menampilkan angka "22.11.4953" pada seven-segment display dengan dot
displayNumber(2);
delay(1000);
displayNumber(2);
delay(1000);
displayNumber(1);
delay(1000);
displayNumber(1);
delay(1000);
displayNumber(4);
delay(1000);
displayNumber(9);
delay(1000);
displayNumber(5);
delay(1000);
displayNumber(3);
delay(1000);
}
// Fungsi untuk menampilkan angka pada seven-segment display dengan satu dot
void displayNumber(int num) {
for (int i = 0; i < 7; i++) {
digitalWrite(segPins[i], !bitRead(numbers[num], i));
}
// Nyalakan dot
digitalWrite(dotPin, HIGH);
delay(2000);
digitalWrite(dotPin, LOW);
delay(2000);
}