Berikut adalah program counter menggunakan 7-segment display dengan Arduino. Program ini akan menampilkan angka dari 0 hingga 9 secara berurutan dan ditampilkan pada 7-segment display common cathode.
Komponen yang Dibutuhkan
- Arduino Uno (atau jenis lainnya).
 - 7-segment display (common cathode).
 - Resistor 220 Ohm (7 buah, untuk melindungi LED pada 7-segment).
 - Kabel jumper.
 - Breadboard.
 
Biasanya, pin segmen dihubungkan ke Arduino seperti ini:
- a → Pin 2
 - b → Pin 3
 - c → Pin 4
 - d → Pin 5
 - e → Pin 6
 - f → Pin 7
 - g → Pin 8
 - Common Cathode (CC) → GND
 
- Sambungkan segmen a-g ke pin digital Arduino (2-8).
 - Hubungkan resistor 220 Ohm ke setiap pin segmen.
 - Hubungkan pin common cathode (CC) ke GND Arduino.
 
  // Definisi pin untuk setiap segmen (a-g) pada 7-segment
int segA = 2;
int segB = 3;
int segC = 4;
int segD = 5;
int segE = 6;
int segF = 7;
int segG = 8;
// Array untuk menyimpan pola angka 0-9 (LOW berarti segmen menyala)
byte angka[10][7] = {
  {LOW, LOW, LOW, LOW, LOW, LOW, HIGH}, // 0
  {HIGH, LOW, LOW, HIGH, HIGH, HIGH, HIGH}, // 1
  {LOW, LOW, HIGH, LOW, LOW, HIGH, LOW}, // 2
  {LOW, LOW, LOW, LOW, HIGH, HIGH, LOW}, // 3
  {HIGH, LOW, LOW, HIGH, HIGH, LOW, LOW}, // 4
  {LOW, HIGH, LOW, LOW, HIGH, LOW, LOW}, // 5
  {LOW, HIGH, LOW, LOW, LOW, LOW, LOW}, // 6
  {LOW, LOW, LOW, HIGH, HIGH, HIGH, HIGH}, // 7
  {LOW, LOW, LOW, LOW, LOW, LOW, LOW}, // 8
  {LOW, LOW, LOW, LOW, HIGH, LOW, LOW}  // 9
};
// Fungsi untuk menampilkan angka di 7-segment
void tampilkanAngka(int num) {
  digitalWrite(segA, angka[num][0]);
  digitalWrite(segB, angka[num][1]);
  digitalWrite(segC, angka[num][2]);
  digitalWrite(segD, angka[num][3]);
  digitalWrite(segE, angka[num][4]);
  digitalWrite(segF, angka[num][5]);
  digitalWrite(segG, angka[num][6]);
}
void setup() {
  // Atur pin segmen sebagai output
  pinMode(segA, OUTPUT);
  pinMode(segB, OUTPUT);
  pinMode(segC, OUTPUT);
  pinMode(segD, OUTPUT);
  pinMode(segE, OUTPUT);
  pinMode(segF, OUTPUT);
  pinMode(segG, OUTPUT);
}
void loop() {
  // Loop angka 0-9
  for (int i = 0; i <= 9; i++) {
    tampilkanAngka(i); // Tampilkan angka pada 7-segment
    delay(1000);       // Tunda 1 detik sebelum ke angka berikutnya
  }
}
  
  
  - Array angka menyimpan pola segmen untuk angka 0–9.
 - Setiap angka diwakili oleh 7 nilai (LOW/HIGH) untuk segmen a-g.
 - LOW berarti segmen menyala pada 7-segment common cathode.
 - Fungsi tampilkanAngka() menyalakan segmen sesuai pola angka.
 - Loop for digunakan untuk menghitung dari 0 sampai 9, dengan jeda 1 detik antar angka.
 
- Upload kode program ke Arduino menggunakan Arduino IDE.
 - LED pada 7-segment akan menampilkan angka dari 0 hingga 9 secara berurutan.
 - Angka akan berubah setiap 1 detik.
 

