Pada umumnya counter ini dibentuk dari beberapa buah rangkaian flip-flop atau
bistabil multivibrator yang jumlahnya disesuaikan dengan kebutuhan. Menurut cara
kerja masukan pulsa ke dalam setiap flip-flop, maka counter dapat dibagi menjadi:
Sedangkan menurut urutan hitungan yang terbentuk pada outputnya, maka counter
dapat dibagi menjadi:
1. Up counter
2. Down counter
3. Up-down counter
Counter ini dapat menghitung biangan biner dengan urutan dari bawah ke atas.
Apabila digunakan 4 buah flip-flop, maka kita dapat melakukan hitunga paling tinggi
adalah 1111. Counter yang dapat menghitung sampai 1111 disebut 4 bit binary counter.
Oleh karena dapat menghitung dengan cara ke atas, maka disebut pula asynchronous
4 binary up counter. Gambarnya dapat dilihat seperti berikut.
Pada rangkaian di atas, input J dan K dari seluruh flip-flop dibuat dalam keadaan 1.
Sebelum pulsa pertama yang akan dihitung masuk ke input, maka seluruh output
counter L4, L3, L2 dan L1 dibuat 0 terlebih dahulu dengan jalan membuat clear dalam
keadaan 0 walaupun sesaat.
Pada saat pulsa pertama bergerak dari 1 ke 0, maka output flip-flop A akan berubah
dari 0 ke 1, Ouput B akan tetap karena sinyal yang masuk pada input clock berubah
dari 0 ke 1. Flip ke 3 dan 4 juga tidak mengalami perubahan karena belum ada
perubahan pada input clocknya. Jadi dapat disimpulakan bahwa sesudah pulsa
pertama datang keadaan ouput L4, L3, L2, L1 adalah 0001.
Selanjutnya apabila pulsa kedua bergerak dari 1 ke 0, output flip-flop 1 akan kembali
menjadi 0, akibatnya terjadi perubahan juga pada input clock flip-flop 2 (dari 1 ke 0)
sehingga ouput flip-flop 2 menjadi 1. Sedangkan flip flop 3 dan 4 outputnya belum
mengalami perubahan karena pulsa input clocknya belum mengalami perubahan dari 1
ke 0. jadi sekarang output rangkaian counter ini adalah 0010.
Prinsip kerja dari counter ini adalah kebalikan dari up counter, yaitu menghitung
bilangan biner dengan urutan mulai dari atas ke bawah (dari besar ke kecil). Prinsip
kerjanyapun tidak jauh berbeda dari up counter. Bedanya hanya setiap output flip-flop
diambil dari output Q, sedangkan input clocknya dihubungkan dengan ouput not Q dari
flip-flop sebelumnya. Untuk lebih jelasnya dapat dilihat gambar berikut.
Ketika pulsa ke dua masuk (berubah dari 1 ke 0), maka output flip-flop pertama akan
berubah dari 1 ke 0 yang berarti output not Q nya juga berubah dari 0 ke 1. perubahan
output not Q ini akan diteruskan ke flip-flop yang kedua. Tetapi tidak akan
menyebabkanperubahan pada flip-flop ke dua (Q flip-flop ke dua masih tetap 1). Hal
yang sama juga terjadi pada flip ketiga dan keempat. Jadi pada pulsa yang kedua ini
output dari keempat flip-flop tersebut adalah 1110.
Dengan memanfaatkan tombol up dan down pada gambar di atas kita dapat melakukan
proses penghitungan dari atas atau dari bawah.
jika pada asynchronous counter pulsa yang akan dihitung datangnya tidak serentak,
maka pada synchronour counter ini pulsa yang ingin dihitung ini masuk ke dalam setiap
flip-flop serentak (bersama-sama) sehinga perubah output setiap flip-flop akan terjadi
secara serentak. Oleh karena itu proses penghitungan pada synchronous counter ini
akan lebih cepat jika dibandingkan dengan asynchronous counter.
E. Syinchronous Binary Down Counter
Sama dengan synchronous binary up counter di atas, hanya saja bedanyan rangkaian
ini melakukan penghitungan dari atas ke bawah. Rangkaiannya dapat dilihat pada
gambar berikut.
Pada rangkaian ini bisa dilakukan proses penghitungan ke atas atau ke bawah dengan
memanfaatkan tombol pengatur proses penghitungan. Rangkaiannya dapat dilihat
seperti berikut.
Jika kita menggunakan kontrol up counter maka rangkaian yang aktif adalah
Sedangkan jika kita menggunakan down counter maka rangkaian yang aktif adalah
Selain dapat menghitung pulsa, counter dapat juga digunakan untuk pembagi frekuensi.
Frekuendi output dari sebuah flip-flop adalah setengah dari frekuensi inputnya. Jadi,
pada counter yang menggunakan empat buah flip-flop akan membagi 16 frekuensi
inputnya (f output = 1/16 f input).
Pada contoh counter yang sudah dibahas di atas hanya mampu menghitung sampai
bilangan tertentu saja, 2, 4, 6, 8, 16, 32 dan seterusnya. Untuk dapat melakukan
penghitungan diluar bilangan tersebut diperlukan rangkaian khusus yang akan kita
bahas pada tema selanjutnya.