## RANCANG BANGUN FUNCTION GENERATOR BERBASIS DIGITAL TO ANALOG CONVERTER
1 Muchlis Abdi, 2 Untung Suryadhiato, 3 Ratna Mustika Yasi
1 Prodi Teknik Elektro, Universitas PGRI, Banyuwangi
2 Prodi Teknik Elektro, Universitas PGRI, Banyuwangi
3 Prodi Teknik Elektro, Universitas PGRI, Banyuwangi
1 muchlisabdi8@gmail.com , 2 u.suryadhiyanto@gmail.com , 3 nanacan12@gmail.com
Abstract  -  Facts  in  the  field  show  that  many  function generator  instruments  are  composed  of  analog  components. Based  on  the  size  of  its  dimensions,  this  type  of  function generator  has  a  large  size  so  that  it  cannot  be  implemented  on small-scale devices. To optimize electronic devices, it is necessary to implement a digital system. Based on this, this research intends to  produce  a  digital  to  analog  converter-based  digital  function generator  using  AT-Mega16,  LCD2x16  and  DAC0808  to determine  the  frequency  and  waveform  that  can  be  measured directly  using  an  oscilloscope.  The  use  of  the  C  programming language  by  utilizing  the  VSM  Studio  and  ProgISP  software  as commands  for  AT-Mega16.  This  research  produces  a  function generator  with  a  frequency  range  of  30.53  Hz  -  20  Khz.  The resulting  waveforms  include  sine,  checkerboard  and  ramp/ sawtooth.  The  function  generator  is  100%  accurate  at  a frequency  of  33  Hz  –  200  Hz  and  the  measurement  difference appears at a frequency of more than 200 Hz and tends to increase up  to  a  frequency  of  20  Khz.  In  addition  to  the  difference  in frequency, there are also waveform defects at frequencies above 2 Khz.  Placement  of  DAC-based  function  generator  oscillation programming  commands  in  sub  programs  can  cause  waveform defects. The waveform defect is assumed to be the lag time of the microcontroller  when  it  will  perform  looping  of  approximately 12.9  μs.  This  can  add  to  the  difference  in  the  resulting  period. The  use  of  commands  and  variable  readings  in  microcontroller programming  requires  a  time  lag  so  that  the  difference  between the  input  period  and  the  resulting  period  is  140  μs,  this  can  be seen in the experimental  measurement period from 50 μs to 500 μs.
Keywords — Function Generator, Digital to Analog Converter, Microcontroller
Abstrak— Fakta di lapangan menunjukkan bahwa instrumen function generator banyak yang tersusun atas komponen analog. Berdasarkan ukuran dimensinya function generator tipe tersebut memiliki  ukuran  besar  sehingga  tidak  dapat  diimplementasikan pada  perangkat  skala  kecil.  Untuk  mengoptimalkan  divice elektronik dibutuhkan implementasi sistem  digital. Berdasarkan hal  tersebut  penelitian  ini  bermaksud  menghasilkan  function generator  digital  berbasis  digital  to  analog  converter  dengan memanfaatkan  AT-Mega16,  LCD2x16  dan  DAC0808  untuk mengetahui frekuensi dan bentuk gelombang yang dapat diukur secara  langsung  dengan  menggunakan  oscilloscope.  Penggunan bahasa  pemrogaman  C  dengan  memanfaatkan  software  VSM Studio  dan  ProgISP  sebagai  perintah  untuk  AT-Mega16. Penelitian  ini  menghasilkan  function  generator  dengan  range frekuensi 30,53 Hz - 20 KHz. Bentuk gelombang yang dihasilkan
antara  lain  sinus,  kotak-kotak  dan  ramp/  gigi  gergaji.  Function generator  akurat  100%  pada  frekuensi  33  Hz  –  200  Hz  dan muncul selisih pengukuran pada frekuensi lebih dari 200Hz dan cenderung  naik  sampai  pada  frekuensi  20  KHz.  Selain  selisih frekuensi  juga  terdapat  cacat  bentuk  gelombang  pada  frekuensi diatas  2  KHz.  Penempatan  perintah  pemrograman  osilasi function  generator  berbasis  DAC  pada  sub  progam  dapat menyebabkan cacat bentuk gelombang. Cacat bentuk gelombang tersebut  diasumsikan  sebagai  jeda waktu  microcontroller  ketika akan  melakukan  looping  sebesar  kurang  lebih  12,9  μs.  Hal tersebut  dapat  menambah  selisih  periode  yang  dihasilkan. Penggunaan  perintah-perintah  dan  pembacaan  variabel  pada pemrograman  microcontroller  membutuhkan  jeda  waktu sehingga  didapatkan  selisih  antara  periode  yang  diinput  dengan periode yang dihasilkan sebesar 140 μs hal tersebut terlihat pada percobaan pengukuran periode 50 μs sampai dengan periode 500 μs.
Kata Kunci— Function Generator, Digital to Analog Converter, Mikrokontroler

## I. Pendahuluan
Praktikum  merupakan  kegiatan  pembelajaran  yang  dapat menunjang kemampuan mahasiswa untuk memvisualisasi dan mengimplementasikan teori dan konsep yang sudah dipelajari. Salah  satu  instrumen  yang  sering  digunakan  dalam  kegiatan praktikum  teknik elektro adalah function generator [1]. Fakta di lapangan menunjukkan bahwa instrumen function generator banyak  yang  tersusun  atas  komponen analog .  Berdasarkan ukuran  dimensinya function  generator tipe  tersebut  memiliki ukuran  besar  sehingga  tidak  dapat  diimplementasikan  pada perangkat  skala  kecil  [2].  Implementasi  sistem digital berkembang dengan fungsi yang semakin komplek. Digitalisasi  merupakan  era  dimana  sistem analog digantikan oleh  sistem digital sebagai  media  optimasi  dalam  dunia elektronik.  Selain  itu  dihasilkan  efisiensi  perangkat,  baik dalam  komponen  pembentuk  dan output yang  dihasilkan  [3]. Berdasarkan  hasil  observasi  di  Laboratorium  program  studi Teknik  elektro  Universitas  PGRI  Banyuwangi  didapatkan function  generator yang  ada  jenis analog .  Pada  penelitian Wahyu  &  Sunardi,  2016  yang  berjudul  “Perancangan  dan Simulasi Generator Fungsi  Berbasis Proteus ”,  telah  berhasil mengembangkan function  generator dengan  memanfaatkan software  design elektronika proteus . Function  generator ini mampu  menghasilkan  gelombang  sinus  dan  kotak  65KHz.
Kelemahan  pada  penelitian  ini  hanya  sebatas  simulasi  tidak sampai  pengambilan  data  langsung  di  lapangan.  Berdasarkan hal tersebut tersebut muncul sebuah gagasan untuk merancang dan  membangun function  generator  digital Berbasis DAC ( Digital to Analog Converter ).

## II. Metode Penelitian

## 2.1. Metodologi
Penelitian ini merupakan penelitian eksperimen menggunakan  metode  penelitian  kuantitatif  yang  digunakan untuk mengetahui pengaruh variabel independen (treatment/perlakuan)  terhadap  variabel  dependen  (hasil) dalam  kondisi  yang  terkendalikan.  Sehingga  tahap-tahap dalam pelaksanaan pada penelitian ini diantaranya: desain alat, pembuatan  alat,  pengujian  alat,  analisis  dan  pembahasan. Penelitian  dilakukan  di  Laboratorium  prodi  Teknik  Elektro sejak bulan Mei hingga Agustus 2021.
2.2. Desain Sistem Alat

## 2.3. Metode Pembentukan Gelombang
DAC 0808 LF351 5 6 7 8 9 10 11 12 3 16 4 2 15 14 13 DIGITAL INPUT 8 bit 5K Ω 5K Ω 5K Ω - + V reff Vcc Vss V out 2 3 7 4 5 1 100K Ω +15 v -15 v -15 v 100nf 100pf 2K Ω

## 2. Gambar 2.2 Skema Rangkaian DAC0808
Digital to analog converter adalah merubah besaran digital menjadi analog. Mikrokontroller difungsikan sebagai masukan 8-bit  sinyal  digital  dengan  memanfaatkan port -D  pada  AT- Mega16.  Sehingga  keluaran  pada  rangkaian  DAC  diharapkan membentuk  gelombang  sinus,  kotak-kotak  dan ramp /  gigi gergaji.  Pembentukan  gelombang  menggunakan  metode sampling  dengan  memanfaatkan software MATLAB.  Seperti yang terlihat pada gambar dibawah ini.
(a) (b) Ya Tidak Mulai Hidupkan Alat Standby Mode Input Data Gelombang DAC Tampilan Gelombang Pada Oscilloscope Akhiri Tampilan Gelomban g
Selesai
1. Gambar 2.1. Desain Sistem Alat

## (c)
3 . Gambar  2.3.  (a)  Sampling  Gelombang  Sinus.  (b)  Sampling
Gelombang  Kotak-kotak.  (c)  Sampling  Gelombang Ramp .
Gambar  di  atas  menunjukan  besar  amplitudo  sebesar  10v dengan  titik offset 5v.  Dari  hasil  sampling  tersebut  dapat diketahui  nilai  tegangan  keluaran  (Vo)  pada  sinyal  terdiskrit sehingga  data-data  8-bit  input  digital  bilangan  biner  dapat diketahui  dengan  rumus  yang  sesuai  data  sheet  DAC0808 sebagai berikut
[4].
Data-data  tersebut  kemudian  dikonversi  dalam  bilangan hexa desimal seperti yang tertera pada tabel-tabel dibawah ini.
1. Tabel 2.1. Data Pembentuk Gelombang Sinus
No Data No Data No Data No Data No Data 1 80 11 FA 21 CB 31 35 41 6 2 90 12 FE 22 BE 32 28 42 C
3 A0 13 FF 23 AF 33 1D 43 14 4 AF 14 FF 24 A0 34 14 44 1D 5 BE 15 FE 25 90 35 C 45 28 6 CB 16 FA 26 80 36 6 46 35 7 D8 17 F4 27 70 37 2 47 42 8 E3 18 EC 28 60 38 0 48 51 9 EC 19 E3 29 51 39 0 49 60
10 F4 20 D8 30 42 40 2 50 70
2. Tabel 2.2. Data Pembentuk Gelombang Kotak-kotak
No Data No Data No Data No Data No Data 1 FF 11 FF 21 FF 31 0 41 0 2 FF 12 FF 22 FF 32 0 42 0 3 FF 13 FF 23 FF 33 0 43 0 4 FF 14 FF 24 FF 34 0 44 0 5 FF 15 FF 25 FF 35 0 45 0 6 FF 16 FF 26 0 36 0 46 0
7 FF 17 FF 27 0 37 0 47 0 8 FF 18 FF 28 0 38 0 48 0 9 FF 19 FF 29 0 39 0 49 0 10 FF 20 FF 30 0 40 0 50 0
3. Tabel 2.3. Data Pembentuk Gelombang Ramp
No Data No Data No Data No Data No Data 1 0 11 34 21 68 31 9C 41 D0 2 5 12 39 22 6D 32 A1 42 D5 3 A 13 3E 23 72 33 A7 43 DB 4 10 14 44 24 78 34 AC 44 E0 5 15 15 49 25 7D 35 B1 45 E5 6 1A 16 4E 26 83 36 B6 46 EA 7 1F 17 53 27 87 37 BB 47 EF 8 24 18 58 28 8C 38 C0 48 F5 9 2A 19 5E 29 92 39 C6 49 FA 10 2F 20 63 30 97 40 CB 50 FF

## 2.4. Perancangan Hardware
4. Gambar 2.4. Desain Hardware
Alat  didesain  dengan software simulator  proteus  yang memiliki  6  tombol  dan  LCD  2x16. Port -D  pada  AT-Mega16 dirancang  untuk  menghasilkan  sinyal-sinyal  digital  yang kemudian  dikonversi  menjadi  sinyal  analog  pada  rangkaian digital to analog converter .

## 2.5. Perancangan Pemrograman
Pemrograman  dibuat  dengan software VSM-Studio  untuk mendapatkan file hex  yang  kemudian  dapat  di upload pada AT-Mega 16 menggunakan software Prog ISP.

## III. Hasil dan Pembahasan
Hasil pembuatan alat sesuai desain adalah sebagai berikut:
(a) (b)
5 . Gambar 3.1. (a) Alat Tampak Atas. (b) Alat Tampak Depan
Frekuensi yang dihasilkan pada alat penelitian diatas 30,53 Hz  -  20  Khz,  dengan  bentuk  gelombang  antara  lain:  sinus, kotak-kotak  dan ramp /  gigi  gergaji.  Tombol UP dan DOWN berfungsi sebagai pengatur nilai T (periode), perubahan nilai T sebesar  50  μs,  tombol LEFT dan RIGHT untuk  memilih bentuk gelombang, tombol OK untuk menjalankan proses dan tombol RST untuk kembali ke kondisi awal/ baru dihidupkan.

## 3.1. Hasil Pengujian
Uji coba bentuk gelombang dilakukan di beberapa besaran frekuensi  secara  acak  disemua  bentuk  gelombang  untuk membuktikan  apakah  data-data  pada  metode  pembentukan gelombang  dapat  menghasilkan  bentuk  gelombang  yang direncanakan.  Gambar  dibawah  ini  menunjukkan  bentuk gelombang pada frekuensi 1 KHz.
1 Gelombang Sinus (a) (b) (c) (d)
6. Gambar 3.2. (a) Tampilan LCD (b) Tampilan Gelombang Sinus Pada
Oscilloscope (c) Volt/ Div (d) Time/ Div
Berdasarkan  gambar  di  atas  dapat  dibaca  T  =  2,24  x  500 μs/ div = 1120 μs (f = 869,57 Hz), A = 44 x 500 mVolt = 22 Vp-p.
2 Gelombang Kotak-kotak
(a) (b) (c) (d) 7. Gambar 3.3. (a) Tampilan LCD (b) Tampilan Gelombang Kotak-
kotak Pada Oscilloscope (c) Volt/Div (d) Time/Div
Berdasarkan gambar di atas dapat dibaca T = 5,6 x 200 μs/ div = 1120 μs (f = 869,57 Hz), A = 44 x 500 mV/div = 22 Vp- p.
3 Gelombang Ramp (a) (b) (c) (d) 8. Gambar 3.4. (a) Tampilan LCD (b) Tampilan Gelombang Ramp
Pada Oscilloscope (c)Volt/Div (d) Time/Div
Berdasarkan  gambar  di  atas  dapat  dibaca  T  =  2,24  x  500 μs/ div = 1120 μs (f = 869,57 Hz), A = 22 x 1V/div = 22 Vp-p.
4. Tabel 3.1. Hasil Pengukuran
No. Input Output Selisih T (μs) f (Hz) T (μs) f (Hz) T (μs) f (Hz) 1 50 20000,00 190 5263,16 140,00 14736,84 2 100 10000,00 240 4166,67 140,00 5833,33 3 150 6666,67 290 3448,28 140,00 3218,39 4 200 5000,00 340 2941,18 140,00 2058,82 5 250 4000,00 390 2564,10 140,00 1435,90 6 300 3333,33 440 2272,73 140,00 1060,61 7 350 2857,14 490 2040,82 140,00 816,33 8 400 2500,00 540 1851,85 140,00 648,15 9 450 2222,22 590 1694,92 140,00 527,31 10 500 2000,00 640 1562,50 140,00 437,50 11 1000 1000,00 1120 892,85 150,00 130,43 12 2000 500,00 2100 476,19 100,00 23,81 13 3000 333,33 3050 327,87 50,00 5,46 14 4000 250,00 4025 248,45 25,00 1,55 15 5000 200,00 5000 200,00 0,00 0,00 16 6000 166,67 6000 166,67 0,00 0,00 17 7000 142,86 7000 142,86 0,00 0,00 18 8000 125,00 8000 125,00 0,00 0,00 19 9000 111,11 9000 111,11 0,00 0,00 20 10000 100,00 10000 100,00 0,00 0,00 21 10000 100,00 10000 100,00 0,00 0,00 22 20000 50,00 20000 50,00 0,00 0,00 23 30000 33,33 30000 33,33 0,00 0,00

## 3.2. Pembahasan
Alat  dibuat  sesuai  desain  yang  menghasilkan function generator dengan  rentang  frekuensi  33,33  Hz  sampai  dengan 20  KHz.  Metode  pembentukan  sampling  gelombang  dengan memanfaatkan software MATLAB  dapat  menghasilkan bentuk  gelombang  antara  lain:  sinus,  kotak-kotak  dan ramp . Perubahan  bentuk  gelombang  tidak  mempengaruhi  besar frekuensi  dan  amplitudo  yang  dihasilkan.  Hal  tersebut  dapat terlihat pada percobaan pertama frekuensi 1 KHz yang terlihat pada  gambar  4.5,  gambar  4.6  dan  gambar  4.7.  Hal  tersebut dikarenakan jumlah data pada setiap pembentukan gelombang sebanyak 50 data dan nominal delay / jeda waktu yang bernilai sama.
Pada  percobaan  frekuensi  tinggi  atau  periode  terendah terjadi  cacat  pada  gelombang  sinus  dan  ramp/  gigi  gergaji seperti yang terlihat pada gambar di bawah ini.
(a)
(b)
9. Gambar 3.5. (a) Cacat Gelombang Sinus (b)Cacat Gelombang Ramp
Gambar  di  atas  menunjukkan  cacat  bentuk  gelombang pada  kondisi  yang  berbeda  cacat  bentuk  gelombang  sinus terdapat  di  lereng  dan  cacat  gelombang  ramp  terdapat  di
puncak. Kecacatan senilai kurang lebih 12,9 μs setiap rentang gelombang  sinus  sebesar  190  μs.  Sedangkan  pada  bentuk gelombang  ramp  nilai  kecacatan  sebesar  kurang  lebih  12  μs pada rentang gelombang sebesar 190 μs. Bentuk kecacatan ini adalah  kondisi  jeda  waktu  saat  program  mengalami  loading pembacaan  data  untuk  looping.  Siklus  tersebut  terjadi  secara berulang  tergantung  kondisi  setting  periode  yang  diterapkan. Kondisi tersebut semakin tidak terlihat pada periode > 500 μs. Seperti ditunjukkan pada gambar dibawah ini.

## 10. Gambar 3.6. Gelombang Sinus 2KHz
Berdasarkan  cacat  bentuk  gelombang  tersebut  kemudian dilakukan  percobaan  pada  simulator  proteus  pada  gelombang sinus  20  KHz  yang  bermaksud  untuk  mengetahui  penyebab kecacatan. Seperti terlihat pada gambar dibawah ini.

## 11. Gambar 3.7. Tampilan Gelombang Sinus Pada Simulator
Dari  gambar  di  atas  cacat  bentuk  gelombang  juga  terlihat pada  simulator  sehingga  muncul  dugaan  penyebab  kecacatan tersebut  tertuju  pada  pemrograman.  Selanjutnya  dilakukan perbaikan pemrograman dengan merubah perintah untuk port- D  sebagai  osilasi  function  generator  yang  sebelumnya  ada pada  sub  program  dipindahkan  pada  program looping dan didapatkan seperti gambar dibawah ini.
TIME/DIV = 50μs
12. Gambar 3.8. Tampilan Gelombang Pada Simulator
Berdasarkan  gambar  di  atas  dapat  dijelaskan  penempatan perintah untuk port-D tidak didapatkan cacat pada gelombang sinus  pada  frekuensi  20KHz.  Dari  fenomena  tersebut  dapat dibahas bahwa penempatan perintah osilasi pada sub program dapat menyebabkan cacat bentuk gelombang.
Berdasarkan  hasil  pengukuran  dibuat  grafik  sebagai berikut.
13. Gambar 3.8. Grafik Selisih Frekuensi
Dari grafik di atas dapat dijelaskan alat akurat 100% pada frekuensi  30  Hz  sampai  dengan  200  Hz.  Selisih  pengukuran muncul  pada  frekuensi  diatas  200  Hz  dan  terus  meningkat sampai  pada  frekuensi  20  KHz.  Hal  yang  sama  juga  terjadi pada  penelian  Firdaus,  et  al.,  2020  yang  berjudul  “Rancang Bangun  Generator  PWM  Berbasis  Mikrokontroler  AVR ATmega”, menyatakan bahwa Semakin tinggi frekuensi PWM maka  semakin  besar  nilai  perbedaan  frekuensi  yang  diukur dengan yang diinginkan. Selisih terjadi akibat dari pembulatan nilai ICR dan OCR.
Berdasarkan  hal  tersebut  dibuat  analisis  terkait  selisih pengukuran.  Persentase  selisih  pengukuran  tertinggi  ada  pada tabel 4.1 pengambilan data selisih pengukuran pada periode 50 μs  sampai  dengan  500  μs,  dengan  interval  50  μs  dan didapatkan grafik sebagai berikut.

## 
14. Gambar 3.9. Grafik Selisih Periode
Pada grafik di atas terlihat selisih pengukuran periode rata- rata sebesar 140 μs di semua percobaan pada periode 50 μs – 500 μs. Sedangkan pada percobaan berikutnya pada tabel 4.2. data selisih pengukuran pada periode 1000 μs – 10000 μs dapat dilihat pada grafik sebagai berikut.

15. Gambar 3.10. Grafik Selisih Periode
Dari  grafik  di  atas  dapat  terlihat  selisih  pengukuran  terus menurun,  hal  tersebut  disebabkan  semakin  besar  perkalian time/div  pada oscilloscope maka  selisih  pengukuran  semakin tidak terlihat.
Dari  fenomena  tersebut  muncul  dugaan  pada  sebuah mikrokontroler yang mengalami perlambatan dalam mengeksekusi  pemrograman  yang  sudah  dibuat  dan  hanya terlihat  pada  pengukuran  frekuensi  tinggi.  Kemudian  sebagai penguat dugaan dilakukan percobaan dengan simulator dengan mengurangi perintah pemrograman. Pada percobaan ini hanya mengaktifkan port -D  dengan  nominal delay yang  sama  pada periode 50 μs didapatkan hasil sebagai berikut.

16. Gambar 3.11. Tampilan Gelombang Sinus Pada Simulator

## TIME/DIV = 50μs
TIME/DIV = 50μs
Dari  hasil  percobaan  tersebut  didapatkan  hasil  periode terukur 95 μs pada periode input 50 μs. Sehingga didapatkan selisih  pengukuran  sebesar  45  μs.  Sedangkan  pada penggunaan  pemrograman  yang  sudah  dirancang  selisih pengukuran 140 μs. Maka dapat dijelaskan bahwa penggunaan perintah-perintah pada pemrograman microcontroller membutuhkan  jeda  waktu  dan  hanya  terlihat  pada  pegukuran frekuensi tinggi.

## IV. Kesimpulan dan Saran
Function  generator berbasis  digital  to  analog  converter dapat  dirancang  dan  di  bangun  dengan microcontroller AT- Mega16,  DAC0808,  LCD2x16  dengan memanfaatkan software  Proteus,  VSM  Studio,  dan  Prog  ISP.  Metode pembentukan  geombang  dapat  dibuat  dengan  metode sampling menggunakan software MATLAB. Bentuk gelombang  yang  dihasilkan  antara  lain:  sinus,  kotak-kotak, dan ramp /  gigi  gergaji.  Perubahan  bentuk  gelombang  tidak berpengaruh  pada  besar  frekuensi  dan  amplitudo  yang dihasilkan.
Terdapat  kecacatan  bentuk  gelombang  sinus  dan ramp pada  frekuensi  lebih  dari  2  KHz.  Hal  tersebut  disebabkan adanya  jeda  waktu  sekitar  12,9  mikro  detik  ketika microcontroller akan  melakukan looping .  Kecacatan  tersebut semakin tidak terlihat seiring bertambahnya nilai periode yang d isetting . Kecacatan bentuk gelombang juga dapat menyebabkan  bertambahnya  selisih  antara  frekuensi  disetting dengan  frekuensi  yang  dihasilkan.  Pada  percobaan  pada simulator  dengan  memindahkan  perintah  untuk port -D  dari sub  program  ke  program looping dapat  menghasilkan  sinyal sinus  tanpa  cacat  pada  periode  50  μs.  Sehingga  dapat disimpulkan  bahwa  penempatan  perintah  osilasi  pembentuk gelombang  pada  sub  program  dapat  menyebabkan  cacat bentuk  pada  saat looping .  Maka  penempatan  perintah  osilasi harus pada program looping.
Function  generator yang  dihasilkan  pada  penelitian  ini akurat pada range frekuensi 33,33 Hz sampai dengan 200 Hz. Error  terjadi  pada  frekuensi  diatas  200  Hz.  Hal  tersebut disebabkan banyaknya perintah pada pemrograman microcontroller yang  membutuhkan  jeda  waktu.  Jeda  waktu
tersebut  terlihat  pada  percobaan function  generator berbasis digital to analog converter pada frekuensi tinggi. Hal t ersebut dikuatkan  dengan  percobaan  simulator  pada  periode  50  μs dengan  program  hanya  perintah  port-D  yang  menghasilkan selisih pengukuran 45 μs. Sedangkan pada penggunaan bahasa pemrograman yang sudah dirancangdidapatkan selisih sebesar 140 μs
. Berdasarkan  hasil  analisis  dan  pembahasan  muncul  saran yang diharapkan dapat menjadi penyempurna alat antara lain:
1 Penempatan perintah osilasi harus pada program looping . 2 Dibutuhkan  algoritma  pemrograman microcontroller yang  lebih  baik  untuk  dapat  memperkecil  selisih  antara frekuensi yang diinput dan yang dihasilkan.

## V. Daftar Pustaka
[1] Arsyad,  R.  D.,  Poernomo,  T.  &  Lucia,  J., “Perancangan  dan  Realisasi  Sistem  Pentransmisian Short Message dan Sinyal Digital pada Modem BPSK berbasis  MATLAB”,  Jurnal  Itenas  Rekayasa,  Vol. XVII No.1, pp. 1-12, 2013.
[2] Fariz,  A.,  Nia  ,  G.  .  A.  &  Drs.  Abdul,  R.  M., “Implementasi  Waveform  Generator  Gelombang Sinus,  Kotak,  Segitiga  Dan  Gergaji  Pada  Fpga Berbasis Vhdl”, Skripsi
Elektronika Dan Instrumentasi, 2014.
[3] Suryo, A. W., Sholeh, H. P., M., J. & Wijono, “Desain 8  Bit  R3R  Ladder  Digital  To  Analog  Converter”, Jurnal  EECCIS,  Volume  Vol.  6  No.2,  pp.  131-138, Desember 2012.
[4] Texas  Instrument,  DAC  0808  8-bit  D/A  Converter, Data Sheet DAC 0808, Literature Number: SNAS539A, Mei 1999.
[5] Joseph, T., Charles, M. R. & Bernard, G., “A Digital Frequency  Synthesizer”,  IEEE  Trans.  on  Audio Electroacoustics,  Volume  AU-19,  pp.  48-57,  Maret 1971.