Oleh
I WAYAN SUPARDI, S.Si, M.Si
19710331 199903 1 00 2
BAB I
PENDAHULUAN
I.1. Mikrokontroler
Mikrokontroler adalah komputer mikro dalam satu chip tunggal. Mikrokontroler
memadukan CPU, ROM, RAM, I/O paralel, I/O seri, counter-timer, dan rangkaian clock dalam
satu chip tunggal. Mikrokontroler berbeda dengan mikroprosesor dalam beberapa hal.
Mikrokontroler memadukan memori untuk menyimpan program atau data pheriperal I/O
untuk berkomunikasi dengan alat luar. Pemanfaatan mikrokontroler saat sangat populer di
bidang kendali dan instrumentasi elektronik. Hal ini terjadi karena mikrokontroler memiliki
keunggulan dan kemudahan dalam penggunaannya. Disamping harganya yang sangat murah
dibandingkan sistim lainnya. Jika dibandingkan dengan mikroprosesor pada setiap
mikrokontroler terdapat unit-unit CPU/MPU, Memory Unit, I/O Unit yang dihubungkan oleh
tiga bus yaitu bys data bus alamat dan bus kendali. Dengan demikian maka sebuah
mikrokontroler adalah sebuah sistim mikroprosesor dalam sebuah chip tunggal. Dengan
menambahkan peralatan input dan peralatan output sebuah mikrokontroler dapat berfungsi
sebagai komputer mikro dalam satu chip tunggal. Mikrokontroler sebagai sebuah chip telah
mengalami perkembangan baik dari sisi arsitektur, teknologi dan kemampuannya. Struktur
internal sebuah mikrokontroler AT89C51 bisa dilihat pada gambar 5 sebagai contoh kasus.
Jika dibandingkan dengan mikroprosesor pada setiap mikrokontroler terdapat unit-unit
CPU/MPU, Memory Unit, I/O Unit yang dihubungkan oleh tiga bus yaitu bys data bus alamat
dan bus kendali. Dengan demikian maka sebuah mikrokontroler adalah sebuah sistim
mikroprosesor dalam sebuah chip tunggal. Dengan menambahkan peralatan input dan peralatan
output sebuah mikrokontroler dapat berfungsi sebagai komputer mikro dalam satu chip
2. Tekan sekali maka akan muncul komponen elektonika, setelah itu pilih komponen yang
diperlukan, sepeti telihat dalam Gambar 1.4.
3. Setelah komponen yang akan dipelukan dalam pembuatan rangkaian sudah ditemukan maka
pilihlah, kemdian komponen yang telah dipilih akan tercopy pada lembar kerja, seperti
telihat dalam Gambar 1.5.
4. langkah berikutnya adalah sorot komponen yang ada pada bagian A dari Gamba 1.5, lalu
kursor di pindah ke bagian B pada Gambar 1.5. klik 2x dengan cepat maka komponen
tesebut akan telihat.
5. Memilih komponen elektonika yang lain dilakukan dengan cara yang sama dari langkah 1
samapi 4.
7. Menghubungkan rangkaian dapat dilakukan dengan cara meletakkan kursor pada pin
komponen elektonika, dilanjutkan dengan menekan mouse kiri dalam kondisi mouse
ditekan kursor digerakkan ke pin komponen elektronika yang akan dihubungkan, seperti
telihat dalam Gambar 1.7. untuk berhenti/memutuskan garis penghubung dengan cara
menekan mouse kiri 2x dengan cepat.
3. Hasil dari pemilihan langkah 2 adalah sepeti telihat dalam Gambar 1.11.
B. Desain Rangkaian
Rangkaian minimum untuk menghidupkan 1 buah 7-Segmen melalui P0 di tunjukkan
pada Gambar 2.1.
VCC
D1
R1
C1 360R D2
U1 R2 LED-BIGY
19 39
XTAL1 P0.0/AD0
38
360R D3
33p
P0.1/AD1 R3 LED-BIGY
X1 P0.2/AD2
37
CRYSTAL 18 36
D4
C2 XTAL2 P0.3/AD3
35
360R
R4 LED-BIGY
P0.4/AD4
34
P0.5/AD5
33
33p 9
P0.6/AD6
32
360R D5
RST P0.7/AD7 R5 LED-BIGY
R9 C3 21
P2.0/A8
22
360R D6
P2.1/A9 R6 LED-BIGY
10k 23
P2.2/A10
10uF 29 24
PSEN P2.3/A11 360R D7
30
ALE P2.4/A12
25 R7 LED-BIGY
31 26
EA P2.5/A13
27
VCC P2.6/A14 360R D8
P2.7/A15
28 R8 LED-BIGY
1 10 360R
P1.0 P3.0/RXD
2 11 LED-BIGY
P1.1 P3.1/TXD
3 12
P1.2 P3.2/INT0
4 13
P1.3 P3.3/INT1
5 14
P1.4 P3.4/T0
6 15
P1.5 P3.5/T1
7 16
P1.6 P3.6/WR
8 17
P1.7 P3.7/RD
AT89C51
D. Program
D.1. Program aplikasi untuk membuat program 4 LED Nyala dan 4 LED mati
==============================================================
Org 0h
Mulai:
Mov P0, #00001111b ; LED pada P0.7 – P0.4 nyala dan LED pada P0.3 – P0.0
mati
Acall delay ; memanggil sub rutinn delay
Mov P0, #11110000b ; LED pada P0.0 – P0.3 nyala dan LED pada P0.4 – P0.7
mati
Acall delay ; memanggil sub rutinn delay
SJMP Mulai ; lompat ke subrutin Mulai
D.2. Program aplikasi untuk membuat program 4 LED Nyala pada pin genap dan 4 LED mati
dengan kelompok pin ganjil.
===============================================================
Org 0h
Mulai:
Mov P0, #01010101b ; LED pada P0.1,P0.3,P0.5,P0.7 nyala dan LED pada
P0.0,P0.2,P0.4,P0.6 mati
Acall delay ; memanggil sub rutinn delay
Mov P0, #10101010b ; LED pada P0.0,P0.2,P0.4,P0.6 nyala dan LED pada
P0.1,P0.3,P0.5,P0.7 mati
Acall delay ; memanggil sub rutinn delay
SJMP Mulai ; lompat ke subrutin Mulai
D.3. Program aplikasi untuk membuat program Nyala LED dari tengah berjalan kekiri dan
kekanan dan kembali ke posisi awal.
===============================================================
Org 0h
Mulai:
Mov P0, #11100111b ; LED pada P0.3 dan P0.4 nyala dan LED pada lainnya
mati
Acall delay ; memanggil sub rutinn delay
Mov P1, #11011011b ; LED P1.0 s/d P1.3 nyala
D4. Pogram beikut ini meupakan aplikasi untuk membuat LED menyala bergantian (bergeser)
dari P1.0 ke P1.7 kemudian kembali ke awal lagi secara berulang-ulang :
Org OH
Mov A,#11111110b ; simpan data 11111110b ke akumulator
Mulai :
Mov P1,A ; keluarkan isi akumulator ke Port1
D.5. Berikut ini diberikan gabungan dari gerakan LED menyala kanan-kiri dan kiri-kanan
sehingga nampak seperti ping pong.
Org 0H
Mov A, #111111110b ; simpan data 11111110b ke akumulator
Mulai :
Mov P1,A ; kirim data Port 3
Acall delay ; tunda sebentar
RL A ; putar isi akumulator ke kiri 1 bit
Cjne A,#7FH,mulai ; apakah A=01111111b ? tidak ulangi !
Mulai :
Mov P1,A ; kirim data ke Port 3
Acall delay ; tunda sebentar
RR A ; putar isi akumulator ke kanan 1 bit
Cjnz A,#0FE, Mulai1 ; apakah A=11111110b ? tidak ulangi !
TUGAS :
1. Buatlah program agar LED menyala bergantian dengan arah berlawanan (dari
P1.7 ke P1.0) dengan menggunakan perintah RR
2. Buatlah program agar LED menyala dari tengah terus kekiri dan kekanan
kemudian kembali kesemula (11100111)
3. Buatlah program agar LED menyala bergantian dengan arah berlawanan (dari
P1.7 ke P1.0) dengan menggunakan perintah RR
LAPORAN AKHIR :
Buatlah Laporan akhir yang berisi rangkaian berisi tujuan, dasar teori, bahan dan alat,
langkah-langkah percobaan, gambar rangkaian, program, hasil dan kesimpulan dai
pratikum yang dilakukan
B. Desain Rangkaian
Rangkaian minimum untuk menghidupkan 7-segmen melalui P0 di tunjukkan pada
Gambar 2.2.
C1 R1
VCC
U1
19 39
XTAL1 P0.0/AD0 360R
33p 38 R2
P0.1/AD1
X1 P0.2/AD2
37
CRYSTAL 18 36
C2 XTAL2 P0.3/AD3
35
360R
R3
P0.4/AD4
34
P0.5/AD5
33
P0.6/AD6 360R
33p 9 32 R4
RST P0.7/AD7
R9 C3 21
P2.0/A8 360R
22 R5
P2.1/A9
23
10k P2.2/A10
10uF 29 24
PSEN P2.3/A11 360R
30 25 R6
ALE P2.4/A12
31 26
EA P2.5/A13
27 360R
VCC P2.6/A14
P2.7/A15
28 R7
1 10 360R
P1.0 P3.0/RXD
2
P1.1 P3.1/TXD
11 R8
3 12
P1.2 P3.2/INT0
4 13 360R
P1.3 P3.3/INT1
5 14
P1.4 P3.4/T0
6 15
P1.5 P3.5/T1
7 16
P1.6 P3.6/WR
8 17
P1.7 P3.7/RD
AT89C51
D. Program
Sebelum membuat progam langkah yang harus kita pehatikan adalah hubungan pin 7-segmen
dengan port pada mikrokontroler. Hubungan pin 7-segmen dengan port 0 (P0) adalah sebagai
berikut :
Port 0 7-segmen
P0.0 Pin a
P0.1 Pin b
P0.2 Pin c
P0.3 Pin d
P0.4 Pin e
P0.5 Pin f
P0.6 Pin g
Dari hubungan pin dai P0 dengan pin 7-Segmen maka untuk menapilkan angka 0 maka pin
pada 7-Segmen active adalah pin a,b,c,d,e dan f. P0 yang active adalah p0.0, p0.1, p0.2, P0.3,
P0.4 dan P0.5 (11000000 = c0h). untuk lengkapnya pehatikan Tabel 2.1.
D.1. Program aplikasi untuk membuat program 1 7-Segmen menampilkan angak 0 s/d angka 9
==============================================================
Org 0h
Mulai:
Mov P0, #0c0h ; keluarkan angka 0 lewat p0
Acall delay ; memanggil sub rutinn delay
Mov P0, #0f9h ; keluarkan angka 1 lewat p0
Acall delay ; memanggil sub rutinn delay
Mov P0, #0a4h ; keluarkan angka 2 lewat p0
Acall delay ; memanggil sub rutinn delay
Mov P0, #0b0h ; keluarkan angka 3 lewat p0
Acall delay ; memanggil sub rutinn delay
Mov P0, #099h ; keluarkan angka 4 lewat p0
Acall delay ; memanggil sub rutinn delay
Mov P0, #092h ; keluarkan angka 5 lewat p0
Acall delay ; memanggil sub rutinn delay
Mov P0, #082h ; keluarkan angka 6 lewat p0
Acall delay ; memanggil sub rutinn delay
Mov P0, #0f8h ; keluarkan angka 7 lewat p0
D.3. Program aplikasi untuk membuat program 1 7-Segmen menampilkan angak 0 s/d angka 9
dengan aray
==============================================================
Org 0h
Mulai:
Mov R3, #10 ; Jumlah Angka numeric
Mov DPTR, #angka
Utama:
Clr A ; kosongkan akumulator
Movc A,@A+DPTR
Mov p0,A ; keluarkan isi akumulator ke P0
INC DPTR ; tambah 1 DPTR
Acall delay ; memanggil sub rutinn delay
Djnz R3, Utama ; Kurangi R3 dengan 1, kalau belum 0 lompat ke Utama
; jika sudah kerjakan perintah dibawahnya
SJMP Mulai
D.4. Program aplikasi untuk membuat program 3 7-Segmen menampilkan angak 0 s/d angka
99 dengan array
R9 C3 21
P2.0/A8
22
P2.1/A9
23
10k P2.2/A10
10uF 29 24
PSEN P2.3/A11
30 25
ALE P2.4/A12
31 26
EA P2.5/A13
27
VCC P2.6/A14
28
P2.7/A15
1 10
P1.0 P3.0/RXD
2 11
P1.1 P3.1/TXD
3 12
P1.2 P3.2/INT0
4 13
P1.3 P3.3/INT1
5 14
P1.4 P3.4/T0
6 15
P1.5 P3.5/T1
7
P1.6 P3.6/WR
16 R12 Q1 Q2 Q3
8 17 BC177 BC177 BC177
P1.7 P3.7/RD
1k
AT89C51 R14
1k R15
R11 22k
22k R13 R10
1k 22k
VCC
org 0h
ratusan equ 30h
puluhan equ 31h
satuan equ 32h
angka equ 33h
mov dptr,#numerik
mov a,satuan
Movc A,@A+dptr
mov p0,a
mov p1,#7fh
acall delay
mov a,puluhan
movc a,@a+dptr
mov p0,a
mov p1,#bfh
acall delay
mov a,ratusan
movc a,@a+dptr
mov p0,a
D.5. Berikut ini diberikan gabungan dari gerakan LED menyala kanan-kiri dan kiri-kanan
sehingga nampak seperti ping pong.
Org 0H
Mov A, #111111110b ; simpan data 11111110b ke akumulator
Mulai :
Mov P1,A ; kirim data Port 3
Acall delay ; tunda sebentar
RL A ; putar isi akumulator ke kiri 1 bit
Cjne A,#7FH,mulai ; apakah A=01111111b ? tidak ulangi !
Mulai :
Mov P1,A ; kirim data ke Port 3
Acall delay ; tunda sebentar
numerik:
db 0c0h,f9h,a4h,b0h,99h,92h,82h,f8h,80h,90h
End
TUGAS :
1. Buatlah program yang menampilkan huruf A s/d F dengan array
2. Buatlah program dengan menggunakan 8 7-Segmen untuk menampilkan tulisan
FISICA UnUD
LAPORAN AKHIR :
Buatlah Laporan akhir yang berisi rangkaian berisi tujuan, dasar teori, bahan dan alat,
langkah-langkah percobaan, gambar rangkaian, program, hasil dan kesimpulan dai
pratikum yang dilakukan
B. Desain Rangkaian
Rangkaian minimum untuk menghidupkan 7-segmen melalui P0 di tunjukkan pada
Gambar 2.4.
C1
U1
19 39
XTAL1 P0.0/AD0
33p 38
P0.1/AD1
X1 P0.2/AD2
37
CRYSTAL 18 36
C2 XTAL2 P0.3/AD3
35
P0.4/AD4
34
P0.5/AD5
33
P0.6/AD6
33p 9 32
RST P0.7/AD7
R9 C3 21
P2.0/A8
22
P2.1/A9
23
10k P2.2/A10
10uF 29 24
PSEN P2.3/A11
30 25
ALE P2.4/A12
31 26
EA P2.5/A13
27
VCC P2.6/A14
28
P2.7/A15
D8 1 10
R8 2
P1.0 P3.0/RXD
11
P1.1 P3.1/TXD
3 12
D7 360R P1.2 P3.2/INT0
LED-BIGY R7 4
P1.3 P3.3/INT1
13
5 14
P1.4 P3.4/T0
6 15
D6 360R P1.5 P3.5/T1
LED-BIGY R6 7
P1.6 P3.6/WR
16
8 17
P1.7 P3.7/RD
D5 360R
LED-BIGY R5 AT89C51
D4 360R
LED-BIGY R4
D3 360R
LED-BIGY R3
D2 360R
LED-BIGY R2
D1 360R
LED-BIGY R1
360R
LED-BIGY
VCC
Rangkaian LED di hubungkan dengan P1, dan Push buttom di hubungkan pada P3.0 dan
P3.1.
D. Program
D.1. Program aplikasi untuk membuat program push buttom dimana tombol pada p3.0
dipergunakan untuk menghidup LED pada P0 dan P3.1 untuk mematikan LED pada P0
==============================================================
Org 0h
Mulai:
Mov a,P3 ; baca port 3 dan masukkan isinya ke akumulator
CJNE a,#0FEh,Mati ; bandingkan isi akumulator dengan 0FEh, jika tdk sama
; lompat ke label Mati, jika sama kerjakan pogram
; dibawahnya
Mov P1, #00h ; keluarkan logika 0 ke P1
End.
D.2. Program aplikasi untuk membuat program push buttom dimana tombol pada p3.0
dipergunakan untuk menghidup LED pada P0 sampai tombol pada P3.0 dilepas
==============================================================
Org 0h
Mulai:
Mov a,P3 ; baca port 3 dan masukkan isinya ke akumulator
CJNE a,#0FEh,Mati ; bandingkan isi akumulator dengan 0FEh, jika tdk sama
; lompat ke label Mati, jika sama kerjakan pogram
; dibawahnya
CJNE R0,#0, Terus
Mov R0,#0
Mov P1, #00h ; keluarkan logika 0 ke P1
Tunggu:
Mov a,P3 ; tunggu hingga tombol tekan di lepas
CJNE A,#0FFh,Tunggu
SJMP Mulai
Terus :
Mov R0,#0
Mov P3, #0FFh ; keluarkan logika 1 ke P3
SJMP tunggu
VCC
R2
360R
R3
360R
R4
360R
R5
360R
R6
360R
C1 R7
U1
360R
19 39 R8
XTAL1 P0.0/AD0
33p 38
P0.1/AD1
X1 P0.2/AD2
37
360R
CRYSTAL 18 36
C2 XTAL2 P0.3/AD3
35
P0.4/AD4
34
P0.5/AD5
33
P0.6/AD6
33p 9 32
RST P0.7/AD7
R9 C3 21
P2.0/A8
22
P2.1/A9
10k 23
P2.2/A10
10uF 29 24
PSEN P2.3/A11
30 25
ALE P2.4/A12
31 26
EA P2.5/A13
27
VCC P2.6/A14
28
P2.7/A15
1 10
P1.0 P3.0/RXD
2 11
P1.1 P3.1/TXD
3 12
P1.2 P3.2/INT0
4 13
P1.3 P3.3/INT1
5 14
P1.4 P3.4/T0
6 15
P1.5 P3.5/T1
7 16
P1.6 P3.6/WR
8 17
P1.7 P3.7/RD
AT89C51
Sebelum membuat progam langkah yang harus kita pehatikan adalah hubungan pin 7-segmen
dengan port pada mikrokontroler. Hubungan pin 7-segmen dengan port 0 (P0) adalah sebagai
berikut :
Port 0 7-segmen
P0.0 Pin a
P0.1 Pin b
Programnya adalah :
Org 0h
Mulai:
Mov a, p3
CJNE A,#FEH, Satu ;bandingkan Akumulator = FE ya keluarkan angka 1 ke P0
Mov P0, #0f9h ; keluarkan angka 1 lewat p0
SJMP Mulai
Satu:
LAPORAN AKHIR :
Buatlah Laporan akhir yang berisi rangkaian berisi tujuan, dasar teori, bahan dan alat,
langkah-langkah percobaan, gambar rangkaian, program, hasil dan kesimpulan dai
pratikum yang dilakukan
B. Desain Rangkaian
Rangkaian minimum untuk menghidupkan 7-segmen melalui P0 di tunjukkan pada
Gambar 2.6.
R9 C3 21
P2.0/A8
22
P2.1/A9
10k 23
P2.2/A10
10uF 29 24
PSEN P2.3/A11
30 25
ALE P2.4/A12
31 26
EA P2.5/A13
27
VCC P2.6/A14
28
P2.7/A15
3
1 10
P1.0 P3.0/RXD
2
3
P1.1
P1.2
P3.1/TXD
P3.2/INT0
11
12
A 1 2 3
4 13
P1.3 P3.3/INT1
5 14
P1.4 P3.4/T0
6
7
P1.5
P1.6
P3.5/T1
P3.6/WR
15
16
B 4 5 6
8 17
P1.7 P3.7/RD
AT89C51
C 7 8 9
D 0 #
Rangkaian LED di hubungkan dengan P1, dan Push buttom di hubungkan pada P3.0 dan
P3.1.
D. Program
Sebelum membuat progam langkah yang harus kita pehatikan adalah hubungan pin 7-segmen
dengan port pada mikrokontroler. Hubungan pin 7-segmen dengan port 0 (P0) adalah sebagai
berikut :
D.1. Program aplikasi untuk membuat program push buttom dimana tombol pada p3.0
dipergunakan untuk menghidup LED pada P0 dan P3.1 untuk mematikan LED pada
==============================================================
Org 0h
Mulai:
Mov a,P3 ; baca port 3 dan masukkan isinya ke akumulator
CJNE a,#0FEh,Mati ; bandingkan isi akumulator dengan 0FEh, jika tdk sama
; lompat ke label Mati, jika sama kerjakan pogram
; dibawahnya
Mov P1, #00h ; keluarkan logika 0 ke P1
SJMP Mulai
Mati :
CJNE a,#0FDh,Mulai ; bandingkan isi akumulator dengan 0FDh, jika tdk sama
; lompat ke label Mulai, jika sama kerjakan pogram
; dibawahnya
Mov P1, #0FFh ; keluarkan logika 1 ke P1
SJMP Mulai
End.
Org 0h
Mulai:
Mov a,P3 ; baca port 3 dan masukkan isinya ke akumulator
CJNE a,#0FEh,Mati ; bandingkan isi akumulator dengan 0FEh, jika tdk sama
; lompat ke label Mati, jika sama kerjakan pogram
; dibawahnya
CJNE R0,#0, Terus
Mov R0,#0
Mov P1, #00h ; keluarkan logika 0 ke P1
Tunggu:
Mov a,P3 ; tunggu hingga tombol tekan di lepas
CJNE A,#0FFh,Tunggu
SJMP Mulai
Terus :
Mov R0,#0
Mov P3, #0FFh ; keluarkan logika 1 ke P3
SJMP tunggu
End.
TUGAS :
4. Buatlah program yang menampilkan huruf A s/d F dengan array
5. Buatlah program dengan menggunakan 8 7-Segmen untuk menampilkan
tulisan FISICA UnUD
LAPORAN AKHIR :
I. TUJUAN
a. Merancang dan membuat modul output berupa karakter yang ditampilkan pada
LCD (Liquid Crystal Display) sebagai peraga.
b. Mengkoneksi dan mengimplementasikan LCD dengan mikrokontroller board
AT89S51/52.
II. DASAR TEORI
LCD (Liquid Cristal Display) berfungsi untuk menampilkan karakter angka, huruf
ataupun simbol dengan lebih baik dan dengan konsumsi arus yang rendah. LCD (Liquid Cristal
Display) dot matrik M1632 merupakan modul LCD buatan hitachi. Modul LCD (Liquid Cristal
Display) dot matrik M1632 terdiri dari bagian penampil karakter (LCD) yang berfungsi
menampilkan karakter dan bagian sistem prosesor LCD dalam bentuk modul dengan
mikrokontroler yang diletakan dibagian belakan LCD tersebut yang berfungsi untuk mengatur
tampilan LCD serta mengatur komunikasi antara LCD dengan mikrokontroler yang
menggunakan modul LCD tersebut. LCD ini memiliki 16 kaki, sebagaimana ditunjukkan
dalam Tabel 2.1.
III. Gambar
ALAT DAN BAHAN2.1 Konfigurasi pin LCD 16 x 2
$regfile = "8052.dat"
$crystal = 16000000
Dim I As Byte
Dim X As Byte
Dim A As String * 1
Cursor Off
Do
I = 40
Cls
Locate 1 , 16
Lcd "Mikrokontroller Fisika Udayana "
Locate 2 , 16
Lcd Chr(0)
Locate 2 , 40
Lcd Chr(0)
Do
Shiftlcd Left
Decr I
Waitms 995
Loop Until I = 0
Loop
End
VII. PEMBAHASAN
Pada percobaan kali ini metode pengalamatan data pada lcd menggunakan metode 4 bit.
Hal ini mengakibatkan penggunaan 4 pin data pada LCD. Pada mikrokontroller Port 0 (P0.4,
P0.5, P0.6, P0.7) masing masing digunakan untuk input data pada pin lcd yaitu ( Db.4, Db.5,
Db.6, Db7), dan Port 2 digunakan untuk kontrol dimana P2.0 digunakan untuk mengontrol pin
RS LCD serta P2.2 digunakan untuk mengontrol pin Enable pada LCD.
VIII. KESIMPULAN
Dari percobaan yang dilakukan, dapat ditarik beberapa kesimpulan sebagai berikut:
1. Dot Matrik dapat dioperasikan dengan menggunakan mikrokontroler AT
89S51/2.
2. Hasil percobaan yang diperoleh dapat menampilkan keluaran dari Dot Matrik.
LAPORAN AKHIR :
IX. TUJUAN
c. Merancang dan membuat modul output berupa ADC yang ditampilkan pada
seven segment sebagai peraga.
d. Mengkoneksi dan mengimplementasikan ADC dengan mikrokontroller board
AT89S51/52.
X. DASAR TEORI
Analog To Digital Converter (ADC) adalah pengubah input analog menjadi kode – kode
digital. ADC banyak digunakan sebagai pengatur proses industri, komunikasi digital dan
rangkaian pengukuran/pengujian. Umumnya ADC digunakan sebagai perantara antara sensor
yang kebanyakan analog dengan sistim komputer seperti sensor suhu, cahaya, tekanan/berat,
aliran dan sebagainya kemudian diukur dengan menggunakan sistim digital (komputer)
ADC (Analog Digital Converter) merupakan fitur pada mikrokontroler yang berfungsi
untuk mengkonversi sinyal/data dari besaran analog menjadi besaran digital. Mengapa harus di
konversi, Karena sebagian besar data/sinyal yang ada di dunia ini merupakan besaran analog.
Pengkonversian data dari analog ke digital merupakan suatu cara untuk mengolah data
analog tersebut agar dapat di modifikasi, di manipulasi dan mengubah karakteristiknya. Contoh
besaran analog yang sering di temui dalam kehidupan sehari-hari yaitu suhu, cahaya,
kecepatan,tegangan, suara, dll. Fitur ADC ini sering digunakan dalam proses industri dan
komunikasi digital. ADC inilah yang menghubungkan antara sensor dengan sistem komputer
yang telah terintegrasi. ADC memiliki 2 faktor penting pada penggunaannya
yaitu Kecepatan Sampling dan Resolusi. Dimana kecepatan sampling ini berpengaruh terhadap
seberapa banyak sinyal analog yang di konversi ke sinyal digital dalam satuan waktu. Satuan
waktu yang digunakan yaitu SPS (Sample per Second). Sedangkan resolusi ADC berpengaruh
terhadap ketelitian hasil konversinya. Resolusi pada mikrokontroler AVR ada 2 yaitu resolusi
8 bit dan 10 bit
Prinsip kerja ADC adalah mengkonversi sinyal analog ke dalam bentuk besaran yang
merupakan rasio perbandingan sinyal input dan tegangan referensi. Sebagai contoh, bila
tegangan referensi (Vref) 5 volt, tegangan input 3 volt, rasio input terhadap referensi adalah
org 00H
c1_hextobcd:
clr c
mov b,#100 ;First divide by 100
div ab
mov r0,a ;save MSB in R0
clr c
mov a,b
mov b,#10 ;Divide by 10
div ab
swap a
mov r1,a ;save the tens place in the Higher nibble of R1
mov a,b
orl a,r1
mov r1,a ;save the tens place in the Lower nibble of R1
ret
disp:
mov a,#11111110b
mov r0,#01h
disp1:
mov p3,a
mov p1,@r0
inc r0
rl a
acall delay
cjne a,#11111011b,disp1
sjmp disp
ret
delay:
PUSH B
PUSH 6
PUSH 7
MOV B,#2H
delay1 : MOV R6,#2H
delay2 : MOV R7,#0H
delays:
PUSH B
PUSH 6
PUSH 7
MOV B,#15H
delay11 : MOV R6,#15H
delay21 : MOV R7,#0H
DJNZ R7,$
DJNZ R6,delay21
DJNZ B,delay11
POP 7
POP 6
POP B
RET ;(MAIN)
END
LAPORAN AKHIR :
Buatlah Laporan akhir yang berisi rangkaian berisi tujuan, dasar teori, bahan dan alat,
langkah-langkah percobaan, gambar rangkaian, program, hasil dan kesimpulan dai
pratikum yang dilakukan