Program counter menggunakan 7-segment 1 Digit

7:00 AM
Program counter menggunakan 7-segment 1 Digit


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.

Sebelum memulai, pahami 7-segment display. Setiap segmen dihubungkan ke pin Arduino untuk menyalakan LED:
seven segment pinout

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

  1. Sambungkan segmen a-g ke pin digital Arduino (2-8).
  2. Hubungkan resistor 220 Ohm ke setiap pin segmen.
  3. Hubungkan pin common cathode (CC) ke GND Arduino.
Program 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
  }
}

  

Penjelasan Kode
  • 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.
Cara Kerja Alat
  • 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.


Next Article
« Prev Post
Previous Article
Next Post »
Disqus
Tambahkan komentar Anda

No comments