Berikut adalah contoh program untuk mengontrol 7-segment display dengan menggunakan Arduino dan 74HC595 shift register dengan tambahan push button sebagai counter:


// Define pin connections
#define latchPin 8
#define clockPin 12
#define dataPin 11
#define buttonPin 2

// Define the numbers to be displayed on the 7-segment display
byte numbers[10] = { 0b00111111, 0b00000110, 0b01011011, 0b01001111, 0b01100110, 0b01101101, 0b01111101, 0b00000111, 0b01111111, 0b01101111 };

int count = 0;

void setup() {
  // Initialize the shift register pins
  pinMode(latchPin, OUTPUT);
  pinMode(clockPin, OUTPUT);
  pinMode(dataPin, OUTPUT);
 
  // Initialize the push button pin
  pinMode(buttonPin, INPUT_PULLUP);
}

void loop() {
  // Check if the button is pressed
  if (digitalRead(buttonPin) == LOW) {
    // Increment the count
    count++;
    // Reset the count to 0 if it reaches 10
    if (count == 10) {
      count = 0;
    }
    // Write the number to the shift register
    shiftOut(dataPin, clockPin, MSBFIRST, numbers[count]);
    digitalWrite(latchPin, HIGH);
    digitalWrite(latchPin, LOW);
    // Wait for a short delay to avoid multiple counts from a single press
    delay(100);
  }
}



Penjelasan:

  • Program ini menggunakan pin yang sama dengan program sebelumnya untuk koneksi ke shift register dan 7-segment display.
  • Kami menambahkan definisi pin buttonPin, yaitu pin yang digunakan untuk membaca input dari push button.
  • Kami juga menambahkan variabel count, yang menyimpan nilai dari counter saat ini.
  • Pada fungsi setup, kami mengatur semua pin yang akan digunakan sebagai output atau input dengan internal pull-up resistor untuk push button.
  • Pada fungsi loop, kami membaca input dari push button dan jika ditekan, kami akan menambahkan count dan menulis angka baru ke shift register. Jika count mencapai 10, maka count akan direset kembali ke 0. Kami juga menambahkan delay singkat untuk menghindari multiple counts dari satu tekanan tombol.

Pastikan Anda sudah menghubungkan push button dengan benar ke Arduino Anda sebelum menjalankan program ini.

 Copyright stekom.ac.id 2018 All Right Reserved