Langsung ke konten utama

Tutorial Jam Digital Menggunakan Shift Register 74595


Kali ini mikrodb akan membagikan project "Jam Digital"  menggunakan teknik shift register. Teknik shift register ini banyak digunakan dalam sistem digital. Namanya saja "Shift Register"

Sebelum nya, mikrodb akan sedikit menyinggung mengenai prinsip dasar dari shift register ini, khusus nya ic shift register yang akan kita gunakan pada aplikasi jam digital ini. Bagi teman - teman yang belum memiliki data sheet ic 74HC595, silahkan googling dulu yak... 

Sesuai nama nya, "Shift Register" atau Register Geser yaitu teknik memindahkan setiap bit data pada register dengan cara digeser dari bit terkecil ( lsb ) ke bit terbesar ( msb ) atau sebalik nya. per 1 siklus clock. Untuk lebih jelas nya perhatikan gambar di bawah ini. 

Ini adalah rangkaian 1 buah shift register , dimana bit2 data yang dikirim dari pin mikro akan di tampilkan menjadi data paralel pada output ic 74595 dengan jalan menggeser setiap bit data nya ( SIPO ) Serial In Paralel Out.



Kondisi bit data pada pin "DS" akan digeser  setiap 1 siklus clock yang diterima oleh pin "SH_CP". Jadi, misal kondisi bit pada PortC.1 adalah "0", maka data tersebut akan dikeluarkan di pin out shift register secara bergeser setiap 1 pulsa clock. Adapun pin "ST_CP" digunakan untuk pin Latch atau mempertahan kan kondisi bit data yang sedang digeser.

Berikut adalah contoh code sederhana dari rangkaian di atas, dituliskan dalam bahasa basic, menggunakan compiler BASCOM AVR.

$regfile = "m8def.dat"
$crystal = 8000000


Config Portc.0 = Output
Config Portc.1 = Output
Config Portc.2 = Output
Config Portc.3 = Output


Sh Alias Portc.0
Ds Alias Portc.1
Stc Alias Portc.2

Portc.0 = 0
Portc.1 = 0
Portc.2 = 0


Dim Hitung As Byte

Do
   Toggle Ds
      For Hitung = 1 To 8
         Sh = 1
         Waitms 200
         Sh = 0
         Waitms 200
         Stc = 1
         Waitms 10
         Stc = 0
      Next
Loop
End
Untuk video simulasi dari percobaan di atas, bisa dilihat di link berikut, 

https://www.facebook.com/video.php?v=4762600439783
Setelah kita sudah bisa memahami teknik dasar dari 1 buah shift register, sekarang kita coba menggeser data dengan 2 buah ic shift register. Dengan mengacu ke rangkaian berikut ini


Dengan contoh code dasar nya seperti di bawah ini :

$regfile = "m8def.dat"
$crystal = 8000000


Config Portc.0 = Output
Config Portc.1 = Output
Config Portc.2 = Output
Config Portc.3 = Output


Sh Alias Portc.0
Ds Alias Portc.1
Stc Alias Portc.2

Portc.0 = 0
Portc.1 = 0
Portc.2 = 0


Dim Hitung(2) As Byte

Do
   Toggle Ds
   For Hitung(1) = 1 To 2
      For Hitung(2) = 1 To 8
         Sh = 1
         Waitms 200
         Sh = 0
         Waitms 200
         Stc = 1
         Waitms 10
         Stc = 0
      Next Hitung(2)
   Next Hitung(1)
Loop
End

Dengan melihat cara kerja nya yang seperti itu, shift register banyak digunakan untuk aplikasi i/o expander untuk mikro, teknik display untuk jam digital, dll.  karena dari contoh di atas saja, kita bisa membuat 16 buah output hanya dengan menggunakan 3 pin mikro saja. 

Ok, jadi di atas itu hanya sedikit teori dasar saja, mungkin untuk lebih mendetail nya mengenai shift register ini, bisa anda temukan di google, banyak yang sudah bahas. selanjut nya disini kita akan me nge share salah satu implementasi dari shift register ini, yaitu Project Jam Digital menggunakan shift register 74hc595.

Aplikasi jam digital ini sangat cocok dibuat, baik untuk dipakai sendiri atau barangkali kawan2 ada project jam digital , mungkin contoh yang kami bagikan ini bisa dijadikan bahan. Berikut gambar skema dari jam digital nya


Ini tampilan saat run.



Silahkan bagi teman2 yang ingin membuat Jam Digital sendiri, unduh file project lengkap  nya disini
Semoga bermanfaat dan silahkan diskusi di komen, jika ada kendala...supaya sama2 bisa belajar. 

Salam Solder 
:D

Komentar

Postingan populer dari blog ini

Tutorial Membuat File EEPROM Menggunakan EEPROM EDITOR

Salah satu kelebihan dari mikrokontroler AVR adalah adanya fitur  Internal Eeprom . Dengan tambahan fitur ini membuat para oprekers makin cinta sama avr.  :v Eeprom  biasanya kita gunakan untuk menyimpan data pada hardware yang kita buat.data bisa  berupa nilai-nilai, atau karakter-karakter tertentu yang mana data-data tersebut bisa kita ubah-ubah dari halaman  Front End . Sehingga ketika ada perubahan/upgrade/seting pada alat yang kita buat, kita cukup melakukan perubahan pada file data yang tersimpan di eeprom saja tanpa harus merubah di halaman  Back End  ( Code Program ) nya. Jelas hal ini akan membuat sistem yang kita bangun menjadi  User Friendly , artinya akan sangat memberikan kemudahan bagi user yang menggunakan nya. Lalu, bagaimana cara membuat file untuk eeprom tersebut? Menulis data pada eeprom seringkali kita kerjakan langsung dari kode program. Contoh : Dim No_hp as string*11 No_hp = "08993188048" Writeeeprom No_hp , ...

DIY Jadwal Sholat Digital Menggunakan ATMEGA8

Shalat fardhu sebagai kewajiban yang diwajibkan Allah kepada ummat Islam, sebanyak lima kali sehari semalam, ditetapkan dengan berwaktu. Hal ini ditegaskan-Nya dalam firman-Nya sbb:   Maka apabila kamu telah menyelesaikan shalat(mu), ingatlah Allah di waktu berdiri, di waktu duduk dan di waktu berbaring, kemudian apabila kamu telah merasa aman, maka dirikanlah shalat itu (sebagaimana biasa). Sesungguhnya shalat itu adalah fardhu yang ditentukan waktunya atas orang-orang yang beriman . (QS. an-Nisa 103) Pelaksanaan shalat tersebut telah diatur oleh Allah baik dari segi waktu, tata-cara pelaksanaan dan bacaannya sehingga umat Islam tidak diberi hak untuk merubah, yang sering disebut dengan ibadah mahdlah (khusus). Waktu-waktu yang ditentukan itu, dalam fiqih Islam dikenal dengan:   1.      Subuh 2.    Dzuhur 3.    Ashar 4.    Magrib 5.    Isya’ Berkenaan dengan ini, mikrodb akan berbagi mengena...

Mengisi Bootloader Arduino ke ATMEGA8/168/328

Siapa yang tak kenal board  Arduino ?? Dewasa ini board ini sangat booming, dan memang tidak bisa dipungkiri kehadiran arduino ini seakan memberi warna tersendiri kepada banyak orang, terutama para penggemar elektronika / mikrokontroler. Dulu, untuk membuat project - project elektronika berbasis mikrokontroler, seseorang dituntut terlebih dahulu harus memiliki pengetahuan khusus/skill dalam desain hardware dan pemrograman. Namun, kini hal itu sudah menjadi bagian yang tak perlu dihiraukan lagi semenjak arduino muncul dengan berbagai kemudahan yang disediakan nya. Alih-alih yang tadi nya wajib bisa programming, kini semua hampir semua orang yang tak perlu memiliki dasar pemrograman sudah bisa membangun sebuah project mikrokontroler sekelas " Advanced ".  Plus minus orang menyikapi kehadiran Arduino ini, disatu sisi menganggap ini adalah sebuah kemudahan teknologi yang harus dimanfaatkan. Kalau bisa menjadi mudah, kenapa mesti mencari yang susah?? begitu kata teman sebelah...