Jumat, 13 Mei 2016

7 Segment Shift Register

7 SEGMENT SHIFT REGISTER
VIA ARDUINO

Salam elektro,kenapa sih pada tutorial kali ini akses 7 segment menggunakan shift register ? because dengan menggunakan shift register kalian bisa menghemat banyak sekali port pada arduino,coba kalian bayangkan jika kalian akses 7 segment menggunakan metode multiplexing,ya sekitar 12 port kalian harus pakai,sedangkan menggunakan shift register kalian hanya perlu 3 port saja,kekurangan menggunakan shift register butuh biaya tambahan aja sih buat beli icnya,dan nambah ruang pcb,tapi ya sebanding juga sih dengan hasilnya,ya silahkan kalian pilih saja,mana yang enak kalian gunakan,langsung aja kalian simak penjelasannya dibawah ini 

TOLONG BACA DENGAN DETAIL !

Siapkan alat dan bahan :
  • Arduino Uno/Nano/Mega (sama saja)
  • 7 segment common anode 
  • IC 74hc595 (shift register)
  • Kabel jumper disesuaikan
  • Breadboard
  • Laptop
  • Software arduino ide
  • Kabel usb
  • Download simulasi proteus
  • Download program
  • Download datasheet 74hc595
1. Sambungkan seluruh komponen dengan board arduino

CATATAN !
Jika kalian membuatnya pada real hardware perhatikan sambungan pin Q7' dan MR dan OE pada ic shift register

2. Copy paste sketch/program di bawah ini  ke dalam software arduino 
/*
 * 7 Segment Shift Register 
 * By Fickry Muhammad
 */

int latchpin = 8; // connect to pin 12 on the '595
int clockpin = 12; // connect to pin 11 on the '595
int datapin = 11; // connect to pin 14 on the '595

int o,p,q,r;
int LED = A0;
int z= 99;
int segdisp[10] = {3,159,37,13,153,73,65,27,1,9 };
void setup()
{
 pinMode(latchpin, OUTPUT);
 pinMode(clockpin, OUTPUT);
 pinMode(datapin, OUTPUT);
}
void loop()
{
   digitalWrite(latchpin, LOW);
   shiftOut(datapin, clockpin, LSBFIRST, segdisp[r]); 
   shiftOut(datapin, clockpin, LSBFIRST, segdisp[q]); 
   shiftOut(datapin, clockpin, LSBFIRST, segdisp[p]); 
   shiftOut(datapin, clockpin, LSBFIRST, segdisp[o]); 
   digitalWrite(latchpin, HIGH);
   
   o = ((z / 1000) % 10);
   p = ((z /100) % 10);
   q = ((z / 10) % 10);
   r = z % 10;
}
3. Verify program arduino,apabila tidak terjadi error lanjut dengan proses upload

4. Upload program,apabila succes akan muncul tulisan done uploading,apabila ada yang belum tahu bagaimana cara upload code/sketch ke board arduino bisa baca disini

5. Sekarang kalian coba simulasikan pada software proteus

 

Share:

1 komentar:

Copyright © FILAB | Powered by FILAB
Design by Fickry Muhammad | Technology by Filab.id