Seven segment adalah display angka yang tersusun dari tujuh buah segmen led dan sebuah dot yang dicetak dalam sebuah packing berbentuk kotak. Seven segment banyak digunakan sebagai display angka dari suatu nilai yang telah di proses. Dalam project saya sebelumnya pada artikel “Rakit Sendiri Jam Digital mu” disana saya menggunakan seven segment sebagai penampil angka jam. Bagaimana sih cara menampilkan angka pada seven segment?

Dalam simulasi menggunakan software multisim pada video saya disini. Menggambarkan bahwa seven segment di drive menggunakan IC TTL seri 74xx yang memerlukan banyak minimal 2 buah IC untuk dapat menyalakan sebuah seven segment yang menampilkan angka angka.

Dalam artikel ini saya akan mengajak kamu semua untuk menyalakan sebuah seven segment menggunakan mikrokontroller PanjeRino dengan sangat mudah. Namun sebelum kita masuk dalam perakitan dan uploading program tentunya kamu harus mengetahui fungsi dari masing masing kaki dan segment tersebut.

Pada seven (7) segment terdapat 7 buah bagian led yang tersusun menyerupai angka dan kesemuanya itu memiliki notasi a,b,c,d,e,f dan g. Notasi tersebut digunakan untuk mempermudah kita menentukan segment mana yang akan menyala atau tidak. pada gambar disamping ini adalah konfigurasi dari semua notasi tersebut. Namun bagai mana menentukan kaki yang terhubung dengan semua notasi tersebut? dalam video dibawah ini saya menerangkan bagaimana menentukan kesemua kaki tersebut.

Setelah mengetahui kaki kaki yang kita akan gunakan sekarang masalah dengan menghubungkan ke Panjerino tidak jadi soal selama kita mengetahui konfigurasi kaki tersebut. Silahkan simak coding sederhana berikut dibawah.

int a = 2; //pin 2 pada panjerino ke a
int b = 3;
int c = 4;
int d = 5;
int e = 6;
int f = 7;
int g = 8;
int angka=0;
void setup()
{
  pinMode(a,OUTPUT);
  pinMode(b,OUTPUT);
  pinMode(c,OUTPUT);
  pinMode(d,OUTPUT);
  pinMode(e,OUTPUT);
  pinMode(f,OUTPUT);
  pinMode(g,OUTPUT);
}
void angka0()
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,LOW);
  digitalWrite(f,LOW);
  digitalWrite(g,HIGH);
}

void angka1()
{
  digitalWrite(a,HIGH);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,HIGH);
  digitalWrite(e,HIGH);
  digitalWrite(f,HIGH);
  digitalWrite(g,HIGH);

}

void angka2()
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,HIGH);
  digitalWrite(d,LOW);
  digitalWrite(e,LOW);
  digitalWrite(f,HIGH);
  digitalWrite(g,LOW);

}

void angka3()
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,HIGH);
  digitalWrite(f,HIGH);
  digitalWrite(g,LOW);
}

void angka4()
{
  digitalWrite(a,HIGH);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,HIGH);
  digitalWrite(e,HIGH);
  digitalWrite(f,LOW);
  digitalWrite(g,LOW);
}

void angka5()
{
  digitalWrite(a,LOW);
  digitalWrite(b,HIGH);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,HIGH);
  digitalWrite(f,LOW);
  digitalWrite(g,LOW);
}

void angka6()
{
  digitalWrite(a,LOW);
  digitalWrite(b,HIGH);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,LOW);
  digitalWrite(f,LOW);
  digitalWrite(g,LOW);
}

void angka7()
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,HIGH);
  digitalWrite(e,HIGH);
  digitalWrite(f,HIGH);
  digitalWrite(g,HIGH);
}

void angka8()
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,LOW);
  digitalWrite(f,LOW);
  digitalWrite(g,LOW);
}

void angka9()
{
  digitalWrite(a,LOW);
  digitalWrite(b,LOW);
  digitalWrite(c,LOW);
  digitalWrite(d,LOW);
  digitalWrite(e,HIGH);
  digitalWrite(f,LOW);
  digitalWrite(g,LOW);

}

void menampilkan(int angka)
{
  switch (angka)
  {
    case 0:
    angka0();
    break;

    case 1:
    angka1();
    break;

    case 2:
    angka2();
    break;

    case 3:
    angka3();
    break;

    case 4:
    angka4();
    break;

    case 5:
    angka5();
    break;

    case 6:
    angka6();
    break;

    case 7:
    angka7();
    break;

    case 8:
    angka8();
    break;

    case 9:
    angka9();
    break;

  }
}

void counterup()//perulangan counter up
{
  for(int i=0; i<10; i++)
  {
    if(i>9)
    {
      i=0;
    }
    menampilkan(i);
    delay(1000);

  }
}

void loop()
{
  counterup();
}

Program tersebut di atas adalah coding yang akan meng-counter up angka pada seven segment, untuk program counter down kamu hanya perlu merubah perulangan pada program nya saja. selamat mencoba 😀

Baca juga  Simulasi Thermometer Seven Segmen

[wpdm_file id=10]

 

Loading

Seven Segment Panjerino

Komentar anda

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.