## EMULASI GERBANG LOGIKA TUNGGAL MULTIFUNGSI MENGGUNAKAN MIKROPENGENDALI ATMEGA8A

## Arief Hendra Saptadi
Jurusan Teknik Elektro Fakultas Teknik Universitas Muhammadiyah Semarang Jl. Kasipah no 10 -12 Semarang – Indonesia e-mail : ariefhendras@unimus.ac.id

## ABSTRAK
Gerbang  logika  merupakan  suatu  bagian  penting  dari  teknologi  digital.  Salah  satu  bentuk implementasi dari gerbang logika tersebut adalah dengan menggunakan IC TTL. Meskipun demikian, penggunaan  IC  tersebut  tidaklah  efisien,  mengingat  bahwa  dalam  satu  seri  IC  lazimnya  terdapat beberapa gerbang yang sama dengan fungsi logika yang tidak dapat diganti sesuai kebutuhan. Tujuan dari  penelitian  ini  adalah  membuat  model  emulasi  gerbang  logika  tunggal  multifungsi  yang  dapat dipilih  jenisnya  sesuai  kebutuhan.  Model  tersebut  direalisasikan  menggunakan  mikropengendali ATmega8A. Dua buah pin didedikasikan sebagai masukan logika. Sedangkan satu buah pin digunakan sebagai  keluaran  logika.  Sebuah  tombol  digunakan  sebagai  pemilih  fungsi  logika  NOT,  AND,  OR, NAND,  NOR,  XOR  atau  XNOR.  Tiga  buah  LED  berfungsi  sebagai  indikator  untuk  menandai  jenis gerbang  logika  yang  dipilih.  Berdasarkan  hasil  pengujian  didapatkan  hasil  bahwa  masing-masing fungsi logika untuk NOT, AND, OR, NAND, NOR, XOR dan XNOR dapat diemulasikan dengan baik sesuai  tabel  kebenaran  dari  masing-masing  gerbang  logika.  Fungsi  pemilihan  jenis  gerbang  logika melalui  tombol  dan  indikator  LED  juga  sudah  dapat  berjalan  sesuai  dengan  perencanaan.  Model tersebut  memungkinkan  lebih  dari  satu  mikropengendali  untuk  dioperasikan  dalam  satu  rangkaian namun dengan fungsi gerbang logika yang berbeda. Pada pengembangan selanjutnya, model ini dapat diperluas menggunakan mikropengendali dengan jumlah pin yang lebih banyak sehingga dapat memuat lebih dari satu gerbang, yang masing-masingnya dapat diatur untuk menjalankan fungsi logika yang berbeda-beda.
Keywords: emulasi, gerbang logika, mikropengendali ATmega8A

## 1.  PENDAHULUAN
Gerbang logika ( logic gates ) merupakan  bagian  mendasar  dari  sebuah sistem  komputer.  Berdasarkan  cara  kerja dari  beberapa  gerbang  tersebut,  sebuah mikroprosesor dapat dibangun. Pada tingkat dasar,  komputer  menggunakan  kombinasi bit  0  dan  1  sebagai  sistem  digital  yang direalisasikan  melalui  beberapa  gerbang dengan logika tertentu.
Salah  satu  bentuk  realisasi  gerbang logika  yang  paling  umum  dijumpai  adalah
dalam  wujud  rangkaian  terpadu  ( integrated circuit atau IC) Transistor-Transistor Logic
(TTL).  IC  tersebut  dibangun  dari  beberapa transistor  dwi  kutub  ( bipolar  junction transistor atau  BJT)  dan  resistor.  IC  TTL menjalankan fungsi  logika (misalkan NOT, AND,  OR  dan  sebagainya)  sekaligus memberikan penguatan ( amplification ).
Masukan dari gerbang logika tersebut dapat berasal  dari  piranti  sensor  yang  kemudian diatur  untuk  menggerakkan  perangkat  lain, semisal motor DC (Oktavia dkk, 2016).
Kendatipun demikian,  gerbang logika yang  terdapat  di  dalam  IC  TTL  tersebut bersifat  tetap  dan  tidak  dapat  dikonfigurasi ulang.  Sebagai  contoh,  jika  rangkaian membutuhkan  gerbang  logika  AND,  maka dapat digunakan IC seri 74HC08 dari Texas Instruments (Texas Instruments, Juni 2016), namun  jika  terdapat  perubahan  dan  akan menggunakan  gerbang  logika  OR,  maka perlu  dilakukan  penggantian    dengan  seri 74HC32  (Texas  Instruments,  Juli  2016). Alhasil pengubahan gerbang logika tersebut tidak  dapat  dilakukan  secara  dinamis  dan memerlukan penggantian IC secara fisik.
Tujuan  dari  penelitian  ini  adalah  membuat model emulasi gerbang logika tunggal multi fungsi menggunakan mikropengendali
ATmega8A yang dapat diubah-ubah fungsinya  sesuai  kebutuhan.  Manfaat  yang diperoleh dari penelitian ini adalah penggunaan IC yang lebih efisien dan dapat menggantikan keberadaan dari IC TTL.

## 2. METODE PENELITIAN
Metode yang diterapkan untuk penelitian ini adalah terdiri dari:

## 2.1. Perancangan Sistem Keseluruhan
Sistem  secara  keseluruhan  adalah seperti  diperlihatkan  dalam  gambar  1. Sistem terdiri dari bagian masukan, pemilih gerbang,  indikator  jenis  gerbang,  indikator masukan dan indikator keluaran.
Semua  gerbang  memiliki  satu  buah keluaran  (yaitu  Z)  dan  diasumsikan mempunyai dua buah masukan (yaitu X dan Y)  dengan  perkecualian  gerbang  logika NOT.    Pemilih  gerbang  merupakan  sebuah masukan,  berupa  tombol  jika  ditekan berulang-ulang  akan  menghasilkan  nilai  0 hingga  7  yang  merupakan  kode  jenis gerbang  logika  yang  digunakan.  Kode  ini ditampilkan melalui tiga buah LED sebagai indikator jenis gerbang. Nilai kode selengkapnya  beserta  jenis  gerbang  yang diwakilinya adalah seperti pada tabel 1.
Gambar 1. Sistem Keseluruhan

## 2.2. Perancangan Perangkat Keras
Sebagai pengendali utama pada perangkat  ini  adalah  mikropengendali ATmega8A.  Seri  tersebut  dipilih  karena memiliki jumlah lajur I/O sebanyak 23 buah, memori  program  8  KB,  dapat  beroperasi dengan  tegangan  kerja  berkisar  2,7  –  5,5
Volt  dan clock dengan  frekuensi  rendah hingga  tinggi,  0  –  16  MHz  (Microchip,
2018).
Tabel 1. Kode Gerbang Logika
Kode Gerbang Logika 0 Tidak Aktif ( Disable )
1 Aktif, AND
2 Aktif, OR
3 Aktif, NOT
4 Aktif, NAND
5 Aktif, NOR
6 Aktif, XOR
7 Aktif, XNOR Seluruh masukan (termasuk pemilih
gerbang)  diwujudkan  dengan pushbutton .
Sedangkan semua keluaran maupun indikator, menggunakan LED. Baik
masukan  maupun  keluaran  menerapkan konfigurasi Active  High (aktif  saat  bernilai logika 1 atau High ). Rangkaian
selengkapnya seperti dalam gambar 2.
Gambar 2. Rangkaian Lengkap

## 2.3. Pernyataan Logika
Setiap gerbang logika memiliki tabel kebenaran  yang  membentuk  prinsip  kerja dari gerbang tersebut jika diberikan masukan logika  tertentu.  Penerapan  dari  gerbang logika  tersebut  melalui  mikropengendali adalah dengan membuat  sebuah pernyataan logika  ( logic  statement )  berdasarkan  tabel kebenaran.
Sebagai contoh untuk gerbang logika AND  memiliki  tabel  kebenaran  sebagai berikut:
Tabel 2. Tabel Kebenaran Gerbang AND
Masukan Keluaran X Y Z 0 0 0
0 1 0 1 0 0 1 1 1
Berdasarkan  tabel  tersebut  dengan melihat  baris  terakhir  dapat  dibuat  sebuah pernyataan  logika  “Jika  x  =  1  ( true )  DAN y  =  1  ( true )  maka  keluaran,  z  =  1  ( true ), selainnya,  z  =  0  ( false )”.  Ini  direalisasikan dalam kode program pada mikropengendali ATmega8A menjadi:
if((x==1)&&(y==1)) { PORTC.4 = 1; } else
{
PORTC.4 = 0; }
Dengan  menggunakan  pendekatan yang  sama  untuk  seluruh  gerbang  logika yang lain maka dapat dirumuskan pernyataan logika seperti dalam tabel 3.
Tabel 3. Pernyataan Logika
Gerbang  Pernyataan Logika AND Jika  x=1  DAN  y=1,  maka  z=1, selainnya z=0 OR Jika  x=0  DAN  y=0,  maka  z=0, selainnya z=1 NOT Jika  x=0,  maka  z=1,  selainnya z=0 NAND Jika  x=1  DAN  y=1,  maka  z=0, selainnya z=1 NOR Jika  x=0  DAN  y=0,  maka  z=1, selainnya z=0 XOR Jika  x=y,  maka  z=0,  selainnya z=1 XNOR Jika  x=y,  maka  z=1,  selainnya z=0

## 2.4. Perancangan Perangkat Lunak
Perangkat lunak untuk mikropengendali ATmega8A ditulis
menggunakan  bahasa  C  melalui  aplikasi
CodeVision  AVR  versi  3.31  (Evaluation).
Ada  pun  untuk  aplikasi  eXtreme  Burner versi 1.4.2 untuk mengunduh berkas HEX ke mikropengendali.
Ketika pertama kali berjalan,
program akan mengatur port C dan D. Ada pun port C digunakan sebagai masukan dan keluaran  untuk  gerbang  logika,  sedangkan port  D  digunakan  sebagai  pemilih  gerbang sekaligus keluaran indikator gerbang logika yang dipilih saat itu melalui tiga buah LED.
Pada  kondisi  awal,  variabel  pilih berisi  nol.  Variabel  ini  digunakan  untuk menampung nilai kode gerbang logika yang digunakan.  Pemilihan  dilakukan  dengan menekan  tombol  di  PD3  beberapa  kali hingga menghasilkan kode yang ditampilkan dalam bentuk nyala LED.
Sebagai  contoh  untuk  memilih gerbang NOR, maka awalnya tombol di PD3 ditekan 5 kali sehingga menghasilkan nilai 5 seperti  dalam  tabel  1.  Selanjutnya  saat masukan  X  (di  PC0)  dan  Y  (di  PC2) diberikan nilai-nilai sesuai tabel kebenaran, maka keluaran Z (di PC4) akan menampilkannya sesuai gerbang NOR. Ada pun  kondisi  logika  dari  masukan  X  dan  Y ditampilkan  lewat  dua  buah  LED,  masing- masing  pada  pin  PC1  dan  PC3.  Cara  kerja selengkapnya adalah seperti pada gambar 3.
Gambar 3. Diagram Alir Program

## 3. HASIL DAN PEMBAHASAN
Berdasarkan perancangan yang sudah dibuat dan percobaan yang dilakukan,
maka dapat   disajikan hasil-hasil pengujian sebagaimana berikut ini:

## 3.1 Pemilihan Gerbang Logika
Pengujian
dilakukan dengan
menekan  tombol  di  PD3  beberapa  kali  dan mengamati  tampilan  indikator  LED,  yaitu masing-masing  di  pin  PD2,  PD1  dan  PD0.
Hasil pengujian seperti dalam tabel 4.
Sesuai hasil tersebut dapat
disimpulkan bahwa proses pemilihan gerbang  logika  sudah  dapat  dilakukan dengan benar.
Tabel 4. Gerbang Logika dan Indikator
Kode Gerbang Indikator LED PD2 PD1 PD0 0 Non-Aktif OFF OFF OFF 1 AND OFF OFF ON 2 OR OFF ON OFF 3 NOT OFF ON ON 4 NAND ON OFF OFF 5 NOR ON OFF ON 6 XOR ON ON OFF 7 XNOR ON ON ON

## 3.2 Fungsionalitas Gerbang Logika
Pengujian untuk
mengecek
fungsionalitas  dari  masing-masing  gerbang logika dilakukan dengan menekan tombol di PC0  (masukan  X)  dan  PC2  (masukan  Y).
Nilai  keduanya  diamati  melalui  nyala  LED di PC1 dan PC3. Ada pun keluaran diamati via LED di PC4.
Hasil-hasil  pengujian  adalah  seperti tertera dalam tabel 5 hingga 11. Berdasarkan hasil  tersebut  dapat  diketahui  bahwa fungsionalitas  dari  masing-masing  gerbang
logika  telah  berhasil  diemulasikan  dengan baik.
Tabel 5. Pengujian Gerbang AND
Tabel Kebenaran Indikator LED X Y Z PC1 PC3 PC4 0 0 0 OFF OFF OFF 0 1 0 OFF ON OFF 1 0 0 ON OFF OFF 1 1 1 ON ON ON
Tabel 6. Pengujian Gerbang OR
Tabel Kebenaran Indikator LED X Y Z PC1 PC3 PC4 0 0 0 OFF OFF OFF 0 1 1 OFF ON ON 1 0 1 ON OFF ON 1 1 1 ON ON ON
Tabel 7. Pengujian Gerbang NOT
Tabel Kebenaran Indikator LED X Z PC1 PC4 0 1 OFF ON 1 0 ON OFF Tabel 8. Pengujian Gerbang NAND
Tabel Kebenaran Indikator LED X Y Z PC1 PC3 PC4 0 0 1 OFF OFF ON 0 1 1 OFF ON ON 1 0 1 ON OFF ON 1 1 0 ON ON OFF
Tabel 9. Pengujian Gerbang NOR
Tabel Kebenaran Indikator LED X Y Z PC1 PC3 PC4 0 0 1 OFF OFF ON 0 1 0 OFF ON OFF 1 0 0 ON OFF OFF 1 1 0 ON ON OFF
Tabel 10. Pengujian Gerbang XOR
Tabel Kebenaran Indikator LED X Y Z PC1 PC3 PC4 0 0 0 OFF OFF OFF 0 1 1 OFF ON ON 1 0 1 ON OFF ON
1 1 0 ON ON OFF Tabel 11. Pengujian Gerbang XNOR
Tabel Kebenaran Indikator LED X Y Z PC1 PC3 PC4 0 0 1 OFF OFF ON 0 1 0 OFF ON OFF 1 0 0 ON OFF OFF 1 1 1 ON ON ON

## 4. PENUTUP

## Kesimpulan
Berdasarkan perancangan dan pengujian yang dilakukan dapat ditarik beberapa kesimpulan sebagai berikut ini:
1. Emulasi  gerbang  logika  tunggal  multi
fungsi  telah  dapat  diwujudkan  untuk tujuh gerbang logika (AND, NOT, OR, NAND,  NOR,  XOR  dan  XNOR)  yang dipilih  melalui  sebuah  tombol  tekan dengan indikator tiga buah LED.
2. Masing-masing  gerbang  logika  telah dapat  diimplementasikan  melalui  dua buah  masukan  (kecuali  untuk  gerbang
NOT)  dan  satu  buah  keluaran  sesuai dengan tabel kebenaran.

## Saran
Berikut  ini  beberapa  pertimbangan untuk kemungkinan pengembangan ke depan:
1. Model  ini  dapat  dikembangkan  untuk
beberapa buah mikropengendali ATmega8A, masing-masingnya menjadi gerbang logika berlainan, yang saling terhubung dalam sebuah rangkaian digital.
2. Bagi  mikropengendali  dengan  jumlah pin I/O yang banyak dapat
diimplementasikan beberapa buah gerbang  logika  di  dalamnya,  yang masing-masingnya  dapat  diatur  untuk fungsi logika yang berbeda-beda.

## 5. DAFTAR PUSTAKA
Microchip.,  2017. ATmega8A  Low-Power
AVR 8-bit Microcontroller Data Sheet Summary .  [online]  Microchip  Tech- nology  Incorporated.  Terdapat  di: https://www.microchip.com/wwwpro ducts/en/ATmega8A Diakses  pada  5
November 2017.
Texas  Instruments.,  Juni  2016.  SNx4HC08
Quadruple 2-Input Positive-AND
Gates.  [online]    Texas  Instruments
Incorporated. Terdapat
di:
www.ti.com/lit/ds/symlink/sn74hc08. pdf Diakses pada 8 November 2017.
Texas  Instruments.,  Juli  2016.  SNx4HC32
Quadruple 2-Input Positive-OR Gates.
[online] Texas Instruments Incorporated. Terdapat di: www.ti.com/lit/ds/symlink/sn74hc32.
pdf Diakses pada 8 November 2017.
Oktavia, V., Lapanporo, B. P. dan Ihwan, A.,
2016. Aplikasi Gerbang Logika untuk
Pembuatan  Prototipe  Penjemur  Ikan Otomatis.  PRISMA  FISIKA,  Vol.  4  , No. 3 (2016), hal. 94 – 100.