WHAT'S NEW?
Loading...

Tutorial Seven Segmen Menggunakan Pushbutton Arduino DECODER

Tutorial Seven Segmen Menggunakan Pushbutton Arduino DECODER


Hai gaes gan sobat prend saudara, Hari ini gw akan memposting tentang menggunakan seven segmen di arduino. Tapi untuk kali ini beda gaes dari postingan sebelumnya, Sekarang gw akan menambahkan pushbutton. Apa nih fungsi pushbutton pada percobaan kali ini ?? Fungsinya untuk menambah kan variasi pada tampilan seven segmen, misalnya kita mau nama agan atau nama pacar agan kita bisa menekan tombol 1, 2 dan seterusnya. OKe  gak usah panjang lebar langsung simak aja OKE

Alat dan Bahan 
  1. Arduino 
  2. Kabel Jumper 
  3. Seven Segmen Anoda
  4. Breadboard atau PCB
  5. Push Button
Pemasangan Komponen


Rangkaian pada simulasi

Rangkaian secara Real 

Script Arduino

void setup() {
  pinMode(2,OUTPUT);
  pinMode(3,OUTPUT);
  pinMode(4,OUTPUT);
  pinMode(5,OUTPUT);
  pinMode(6,OUTPUT);
  pinMode(7,OUTPUT);
  pinMode(8,OUTPUT);

  pinMode(9, INPUT_PULLUP);
  pinMode(10, INPUT_PULLUP);
  pinMode(11, INPUT_PULLUP);
  tampil (" ");
}

  int a,i,b;
  char decoder[]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xBF,0x7F,0xFF, 0xC0, 0xF9, 0xA4, 0xB0, 0x99,0x92, 0x82, 0xF8, 0x80, 0x90,0xFF, 0xFF, 0xFF, 0xB7, 0xFF,
                  0xFF, 0xFF, 0xA0,0x83, 0xC6, 0xA1, 0x84, 0x8E,0x90, 0x8B, 0xF9, 0xF1, 0x8D,0xC7, 0xB0,
                  0xAB, 0xA3, 0x8C,0x98, 0xAF, 0x92, 0x87, 0xE3,0x9D, 0x86, 0x89, 0x91, 0xA4}; //kode untuk menampilkan sebuah karakter
  char NIM[]={"1641160074"};
  char nama[]={"ALFAN NURDIN"};
  char kelas[]={"JTD 2D"};

void loop() {
  if(digitalRead(9)==LOW) // jika pin 9 ditekan makan akan mengerjakan tampil (NIM)
  {
    tampil (NIM);
  }

  if(digitalRead(10)==LOW)
  {
    tampil(nama);
  }

  if(digitalRead(11)==LOW)
  {
    tampil(kelas);
  }
}

void tampil(char c[])
  {
  for (i=0;c[i]!=0;i++)
  {
    for(a=0;a<=6;a++)
    {
      digitalWrite(8-a,bitRead(decoder[c[i]-0x20],a));
    } 
    delay(500);

    //---Pemadaman--//
    for(b=0;b<=6;b++)
    {
      digitalWrite(8-b,0xff);
    }
    delay(100);
    }
  }

Video percobaan 

0 komentar:

Post a Comment