Berkenalan dengan Decade Counter CD4017

Hari ini IC CD4017 pesanan saya tiba. Setahu saya, ini adalah IC yang sudah cukup berumur. Saya sudah pernah dengar dan baca tentang tipe ini bertahun yang lalu. Hanya saja saya baru akan memakainya sekarang. Jadi inilah saat yang tepat untuk berkenalan dengan CD4017.

CD4017 adalah sebuah decade counter alias penghitung persepuluhan. Di datasheet tertuliskan bahwa dia adalah 5-stage Johnson counter dengan 10 decoded output. Terus terang saya tidak paham artinya. Yang saya tahu adalah dia penghitung yang mampu menghitung sampai sepuluh. Tipe yang lain adalah CD4022 yang merupakan penghitung perdelapan.

Tanpa basa-basi saya langsung membaca datasheet dan googling untuk mulai merangkainya. Dalam sirkuit kali ini saya merangkaikan 10 LED lengkap dengan resistor pembatas arus ke CD4017. Pin clock dari CD4017 saya hubungkan ke pin D2 Arduino Nano andalan saya. Sedangkan pin reset saya hubungkan ke pin D3. Di bawah ini adalah skema dari rangkaian yang saya buat.

Skema rangkaian test CD4017

Skema rangkaian test CD4017

Saya memprogram Arduino untuk memberikan clock setiap 1/2 detik ke CD4017. Setelah hitungan ke-8 saya me-reset counter dengan mengirimkan sinyal HIGH ke pin reset CD4017. Jadi LED akan menyala berurutan dari LED0 ke LED7 untuk kemudian kembali ke LED0.

CD4017 on breadboard

CD4017 on breadboard

Walau pun CD4017 adalah IC kuno, tapi pemakaiannya masih sering. Berdasarkan pencerahan dari situs embbeded-lab.com, IC ini bisa digunakan untuk teknik scanning di LED dot matrix. Dengan CD4017 tugas scanning bisa dilakukan dengan mudah. Cuma perlu 2 pin ke Arduino, yaitu pin clock dan pin reset. Keduanya tidak terlalu banyak memerlukan pemikiran di coding, kecuali untuk men-generate clock dan reset di akhir penghitungan.

Beda dengan pendekatan saya sebelumnya yang menggunakan shift register untuk scanning, benar-benar repot secara pemrograman. Ehm… maklumlah, saya benar-benar masih amatiran, perlu belajar banyak sekali. Syukurlah nemu situs embedded-lab.com tersebut.

Di bawah ini adalah source code test CD4017. Saya mengeset supaya setelah 8 clock penghitung kembali ke 0. Ini sesuai jumlah baris LED dot matrix yang harus di-scanning. Nantikan oprekan selanjutnya yaaa…

/*
Emanuel Setio Dewo, setio.dewo@gmail.com
14 November 2012

Test CD4017
*/

byte cnt_clock = 2;
byte cnt_reset = 3;
byte cnt = 0;

void setup() {
  pinMode(cnt_clock, OUTPUT);
  pinMode(cnt_reset, OUTPUT);
  reset_counter();
}

void reset_counter() {
  digitalWrite(cnt_reset, HIGH);
  delayMicroseconds(10);
  digitalWrite(cnt_reset, LOW);
}

void loop() {
  // Reset setelah hitung 8
  if (cnt >= 8) {
    cnt = 0;
    reset_counter();
  }
  else {
    digitalWrite(cnt_clock, HIGH);
    digitalWrite(cnt_clock, LOW);
  }
  delay(500);
  cnt++;
}
Iklan

Tentang Emanuel Setio Dewo

Tumbuh, Berkembang, Berbuah...
Pos ini dipublikasikan di Arduino, Catatan, Dewo, Elektronika, Prototype dan tag , , . Tandai permalink.

7 Balasan ke Berkenalan dengan Decade Counter CD4017

  1. elvinnio berkata:

    *menanti oprekan selanjutnya* cemungudh…

  2. putra berkata:

    Kalau boleh tahu belinya dimana ya? Saya juga lagi nyari cuma susah dapatnya! Thanks.

    • BasirPidie berkata:

      Mantap artikelnya mas… Sedikit tambahan, Decade counter 4017 memang cocok untuk men trigger nyala LED secara berurutan pada satu barisan led. Akan tetapi, untuk aplikasi yang menggunakan baris dan kolom seperti running text LED, kita tetap butuh shift register(74HC595) pada sisi kolomnya. karena urutan keluaran pada output pin shift register tidak harus berurutan. contohnya untuk membuat spasi antar huruf. Thanks

    • Benar, Mas BasirPidie,
      Penggunaan Decade Counter ini bisa untuk scanning 7-segment atau dot matrix. Sedangkan code-nya tetap bisa menggunakan shift register.
      Salam

  3. Om Pantura berkata:

    mas mau tanya, cara mengunci bagian led yang menyala gimana ya? contoh saya mau led nomor 4 aja yang menyala itu gmana kodenya? tak ganti cnt = 4 kok nggk bisa,..? dan mungkin nggk ini bisa diterapkan untuk smw led nyala scr bersamaan.?

    sebelumnya terima kasih

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s