Anda di halaman 1dari 14

BAB 2

LANDASAN TEORI

2.1. Sistem Minimum Mikrokontroler AT89S51

Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

mikrokomputer, hadir memenuhi kebutuhan pasar (market need) dan teknologi baru.

Sebagai teknologi baru, yaitu teknologi semi konduktor dengan kandungan transistor

yang lebih banyak namun hanya membutuhkan ruang kecil serta dapat diproduksi

secara massal (dalam jumlah banyak) sehingga harga menjadi lebih murah

(dibandingkan mikroprosesor). Sebagai kebutuhan pasar, mikrokontroler hadir untuk

memenuhi selera industri dan para konsumen akan kebutuhan dan keinginan alat-alat

bantu dan mainan yang lebih canggih serta dalam bidang pendidikan.

Tidak seperti sistem komputer, yang mampu menangani berbagai macam

program aplikasi (misalnya pengolah kata, pengolah angka, dan lain sebagainya),

mikrokontroler hanya bisa digunakan untuk satu aplikasi tertentu saja. Perbedaan

lainnya terletak pada perbandingan RAM dan ROM-nya. Pada sistem komputer

perbandingan RAM dan ROM-nya besar, artinya program-program pengguna

disimpan dalam ruang RAM yang relatif besar, sedangkan rutin-rutin antar muka

perangkat keras disimpan dalam ruang ROM yang kecil. Sedangkan pada

mikrokontroler, perbandingan ROM dan RAM-nya yang besar artinya program

kontrol disimpan dalam ROM yang ukurannya relatif lebih besar, sedangkan RAM

Universitas Sumatera Utara


7

digunakan sebagai tempat penyimpanan sederhana sementara, termasuk register-

register yang digunakan pada mikrokontroler yang bersangkutan.

Mikrokontroler AT89S51 merupakan salah satu keluarga dari MCS-51

keluaran Atmel. Jenis mikrokontroler ini pada prinsipnya dapat digunakan untuk

mengolah data per bit ataupun data 8 bit secara bersamaan.

Pada prinsipnya program pada mikrokontroler dijalankan bertahap, jadi pada

program itu sendiri terdapat beberapa set instruksi dan tiap instruksi itu dijalankan

secara bertahap atau berurutan.

Beberapa fasilitas yang dimiliki oleh mikrokontroler AT89S51 adalah sebagai

berikut :

1. Sebuah Central Processing Unit 8 bit

2. Osilator : internal dan rangkaian pewaktu

3. RAM internal 128 byte

4. Flash memori 4 Kbyte

5. Lima buah jalur interupsi (dua buah interupsi eksternal dan tiga buah interupsi

internal)

6. Empat buah programable port I/O yang masing-masing terdiri dari delapan

buah jalur I/O

7. Sebuah port serial dengan kontrol serial full duplex UART

8. Kemampuan untuk melaksanakan operasi aritmatika dan operasi logika

9. Kecepatan dalam melaksanakan instruksi per siklus 1 mikrodetik pada

frekuensi 12 MHz.

Universitas Sumatera Utara


8

2.1.1 Kontruksi AT89S51

Mikrokontroler AT89S51 hanya memerlukan tambahan 3 kapasitor, 1 resistor dan 1

kristal serta catu daya 5 volt. Kapasitor 10 mikro-farad dan resistor 10 kilo Ohm

dipakai untuk membentuk rangkaian reset. Dengan adanya rangkaian reset ini

AT89C4051 otomatis direset begitu rangkaian menerima catu daya. Kristal dengan

frekuensi maksimum 24MHz dan kapasitor 30 mikro-farad dipakai untuk melengkapi

rangkaian osilator pembentuk clock yang menentukan kecepatan kerja mikrokontroler.

Memori merupakan bagian yang sangat penting pada mikrokontroler.

Mikrokontroler memiliki dua macam memori yang sifatnya berbeda.

Read Only Memory (ROM) yang isinya tidak berubah meskipun IC kehilangan

catu daya. Sesuai dengan keperluannya, dalam susunan MCS-51 memori

penyimpanan program ini dinamakan sebagai memori program.

Random Access Memory (RAM) isinya akan sirna begitu IC kehilangan catu

daya, dipakai untuk menyimpan data pada saat program bekerja. RAM yang dipakai

untuk menyimpan data ini disebut sebagai memori data.

Ada berbagai jenis ROM. Untuk mikrokontroler dengan program yang sudah

baku dan diproduksi secara massal, program diisikan kedalam ROM pada saat IC

mikrokontroler dicetak dipabrik IC. Untuk keperluan tertentu mikrokontroler

menggunakan ROM yang dapat diisi ulang atau Programble-Eraseable ROM yang

disingkat menjadi PROM (PEROM). Dulu banyak UV-EPROM (Ultra Violet

Universitas Sumatera Utara


9

Eraseable Programble ROM) yang kemudian dinilai mahal dan ditinggalkan setelah

ada flash PEROM yang harganya jauh lebih murah.

Jenis memori yang dipakai untuk memori program AT89S51 adalah flash

PEROM, program untuk mengendalikan mikrokontroler diisikan ke memori itu lewat

bantuan alat yang dinamakan sebagai AT89C4051 flash PEROM Programmer.

Memori data yang disediakan dalam chip AT89S51 sebesar 128 kilo byte meskipun

hanya kecil saja tapi untuk banyak keperluan memori kapasitas itu sudah cukup.

AT89S51 dilengkapi UART (Universal Asyncronous Receiver/Transmiter)

yang biasa dipakai untuk komunikasi data secara seri. Jalur untuk komunikasi data

seri (RXD dan TXD) diletakkan berhimpitan dengan P1.0 dan P1.1. pada kaki nomor

2 dan 3, sehingga kalau sarana input/output bekerja menurut fungsi waktu. Clock

penggerak untaian pencacah ini bisa berasal dari osilator kristal atau clock yang

diumpan dari luar lewat T0 dan T1/T0 dan T1 berhimpitan dengan P3.4 dan P3.5,

sehingga P3.4 dan P3.5 tidak bisa dipakai untuk jalur input/output paralel kalau T0

dan T1 dipakai.

AT89S51 mempunyai enam sumber pembangkit interupsi, dua diantaranya

adalah sinyal interupsi yang diumpankan ke kaki INT0 dan INT1. Kedua kaki ini

berhimpitan dangan P3.2 dan P3.3 sehingga tidak bisa dipakai sebagai jalur

input/output paralel kalau INT0 dan INT1 dipakai untuk menerima sinyal interupsi.

Port1 dan 2, UART, Timer 0, Timer 1 dan sarana lainnya merupakan yang

secara fisik merupakan RAM khusus, yang ditempatkan di Special Function Register

(SFR).

Universitas Sumatera Utara


10

2.1.2 Pin-Pin pada Mikrokontroler AT89S51

Deskripsi pin-pin pada Mikrokontroler AT89S51 :

Gambar 2.1 IC Mikrokontroler AT89S51

VCC (Pin 40)

Suplai tegangan

GND (Pin 20)

Ground

Port 0 (Pin 39-Pin 32)

Port 0 dapat berfungsi sebagai I/O biasa, low order multiplex address/data ataupun

penerima kode byte pada saat flash progamming Pada fungsi sebagai I/O biasa port ini

dapat memberikan output sink ke delapan buah TTL input atau dapat diubah sebagai

input dengan memberikan logika 1 pada port tersebut.

Universitas Sumatera Utara


11

Pada fungsi sebagai low order multiplex address/data, port ini akan mempunyai

internal pull up.

Pada saat flash progamming diperlukan eksternal pull up, terutama pada saat

verifikasi program.

Port 2 (Pin 21 – pin 28)

Port 2 berfungsi sebagai I/O biasa atau high order address, pada saat mengakses

memori secara 16 bit. Pada saat mengakses memori 8 bit, port ini akan mengeluarkan

isi dari P2 special function register. Port ini mempunyai internal pull up dan berfungsi

sebagai input dengan memberikan logika 1. Sebagai output, port ini dapat

memberikan output sink keempat buah input TTL.

Port 3 (Pin 10 – pin 17)

Port 3 merupakan 8 bit port I/O dua arah dengan internal pullup. Port 3 juga

mempunyai fungsi pin masing-masing, yaitu sebagai berikut :

Tabel 2.1 Konfigurasi Port 3 Mikrokontroler AT89S51

Nama Pin Fungsi

P3.0 (Pin 10) RXD (Port Input Serial)

P3.1 (Pin 11) TXD (Port Output Serial)

P3.2 (Pin 12) INT0 (Interrupt 0 Serial)

P3.3 (Pin 13) INT1 (Interrupt 1 Serial)

P3.4 (Pin 14) T0 (Input Eksternal timer 0)

P3.5 (Pin 15) T1 (Input Eksternal timer 1)

P3.6 (Pin 16) WR (Untuk menulis eksternal data memori)

P3.7 (Pin 17) RD (Untuk membaca eksternal data memori)

Universitas Sumatera Utara


12

RST (pin 9)

Reset akan aktif dengan memberikan input high selama 2 cycle.

ALE/PROG (pin 30)

Address latch Enable adalah pulsa output untuk me-latch byte bawah dari alamat

selama mengakses memori eksternal. Selain itu, sebagai pulsa input program (PROG)

selama memprogram Flash.

PSEN (pin 29)

Progam store enable digunakan untuk mengakses memori progam eksternal.

EA (pin 31)

Pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan

menjalankan progam yang ada pada memori eksternal setelah sistem direset. Jika

kondisi high, pin ini akan berfungsi untuk menjalankan progam yang ada pada

memori internal. Pada saat flash progamming, pin ini akan mendapat tegangan 12

Volt.

XTAL1 (pin 19)

Input untuk clock internal.

XTAL2 (pin 18)

Output dari osilator.

2.2. Ultrasonik

Sensor ultrasonik terdiri dari dua bagian, yaitu transmitter dan receiver dengan

komponen yang sama yaitu piezoelectric transducer. Pada dasarnya, sensor ini

digunakan juga untuk uji kondisi dua keadaan, yaitu ” ada atau tidaknya ultrasonik”.

Universitas Sumatera Utara


13

Dalam aplikasi, metode transmisi dan switching informasi terimanya juga bermacam –

macam. Namun, sebagian besar ’state’ atau keadaan yang dijadikan pedoman uji tetap

menggunakan uji dua kondisi tersebut.

Sensor ultrasonik menggunakan prinsip time of flight (waktu suara untuk pergi

dan pulang.) untuk mengukur tinggi/jarak. Sensor ini terdiri atas sebuah transduser

ultrasonik transmitter yang berfungsi mengirimkan gelombang suara dengan frekuensi

40 kHz, dan sebuah transduser ultrasonik receiver yang berfungsi untuk menangkap

pantulan gelombang suara yang dikirimkan oleh ultrasonik transmitter.

Gambar 2.2 Sensor tinggi/jarak Ultrasonik Parallax

Proses pengiriman dilakukan oleh transmitter, yaitu dengan cara memberikan

sinyal gelombang kotak 40 kHz kepada transduser ultrasonik transmitter. Kemudian

transmitter akan merubah gelombang kotak 40 kHz menjadi gelombang suara dengan

frekuensi yang sama. Berikut adalah gambar rangkaian ultrasonik transmitter.

Gambar 2.3 Rangkaian transmitter ultrasonik

Universitas Sumatera Utara


14

Pada saat gelombang pantul diterima oleh receiver, gelombang suara akan

diubah menjadi sinyal listrik. Sinyal listrik ini sangat lemah sehingga tidak dapat

langsung di proses, tetapi harus dikondisikan terlebih dahulu menggunakan rangkaian

pengkondisi sinyal.

Pada proyek ini penulis memakai sensor ultrasonik ping))) buatan parallax.

sensor ultrasonik ping))) ini merupakan sensor jarak yang presisi. Dapat melakukan

pengukuran jarak sampai 3 meter dan sangat mudah untuk dihubungkan ke

mikrokontroler menggunakan sebuah pin Input dan pin Output.

Sensor ultrasonik ping))) bekerja dengan cara memancarkan sinyal ultrasonik

sesaat dan menghasilkan pulsa output yang sesuai dengan waktu pantul sinyal

ultrasonik sesaat kembali menuju sensor. Dengan mengukur lebar pulsa pantulan

tersebut maka jarak target didepan sensor dapat diketahui.

2.3. Seven Segment

Seven segment merupakan cacah segment minimum yang dipergunakan untuk

menampilkan angka 0 sampai 9 seperti yang diilustrasikan pada gambar dibawah ini.

Gambar 2.4 Tampilan seven segment

Universitas Sumatera Utara


15

Sejumlah karakter alphabet juga bisa disajikan menggunakan tampilan seven segment

ini.

Seven segment terdiri dari 2 konfigurasi, yaitu common anoda dan common

katoda. Pada seven segment tipe common anoda, anoda dari setiap LED dihubungkan

menjadi satu kemudian dihubungkan ke sumber tegangan positip dan katoda dari

masing-masing LED berfungsi sebagai input dari seven segment, seperti ditunjukkan

pada gambar berikut ini :

Gambar 2.5 Konfigurasi seven segmen tipe common anoda

Sesuai dengan gambar di atas, maka untuk menyalakan salah satu segmen,

maka katodanya harus diberi tegangan 0 volt atau logika low. Misalnya jika segmen a

akan dinyalakan, maka katoda pada segmen a harus diberi tegangan 0 volt atau logika

low, dengan demikian maka segmen a akan menyala. Demikian juga untuk segmen

lainnya.

Pada seven segment tipe common katoda, katoda dari setiap LED dihubungkan

menjadi satu kemudian dihubungkan ke ground dan anoda dari masing-masing LED

berfungsi sebagai input dari seven segment, seperti ditunjukkan pada gambar berikut

ini :

Universitas Sumatera Utara


16

Gambar 2.6 Konfigurasi seven segmen tipe common katoda

Sesuai dengan gambar di atas, maka untuk menyalakan salah satu segmen,

maka anodanya harus diberi tegangan minimal 3 volt atau logika high. Misalnya jika

segmen a akan dinyalakan, maka anoda pada segmen a harus diberi tegangan minimal

3 volt atau logika high, dengan demikian maka segmen a akan menyala. Demikian

juga untuk segmen lainnya.

Tampilan seven segment mempunyai dua tipe : Light Emitting Diode (LED)

dan Liquid Crystal Display (LCD). Dimana disini kita akan membahas tentang

karakteristik dari LED.

2.3.1 LED (Light Emitting Diode)

LED merupakan singkatan dari Light Emitting Diode. Dari sisi penggolongan, LED

merupakan komponen aktif bipolar semikonduktor, karena itu hanya mampu

mengalirkan arus dalam satu arah saja. Untuk menyalakan LED, cukup dengan

mengalirkan arus dari anoda ke katoda (forward bias) dengan beda potensial

minimum berkisar antara 1,5 hingga 2 volt dan arusnya berkisar di 20mA. Perlu

diperhatikan juga bahwa LED juga memiliki tegangan nyala maksimum, jika tegangan

tersebut terlewati maka LED akan rusak.

Universitas Sumatera Utara


17

Pada umumnya LED dikemas berkaki dua (katoda dan anoda) dengan

bermacam - macam warna nyala. Untuk membedakan kedua kaki tersebut, kaki anoda

biasanya dibuat lebih panjang daripada katoda. Harganya sangat terjangkau, berkisar

dari 250 rupiah hingga beberapa ribu rupiah. LED banyak digunakan untuk indikator

dan transmisi sinyal atau bahkan untuk penerangan. LED banyak digunakan karena

hemat daya, tahan lama dan ekonomis, maka wajar jika popularitas LED mengalahkan

tabung nixie maupun lampu pijar.

2.3.2 Antar Muka LED

LED dapat menyala pada arus searah (DC) maupun arus bolak - balik (AC), yang

membedakan adalah kontinyuitas. Pada arus DC LED menyala secara kontinyu.

Sedangkan pada arus AC, LED akan menyala secara tidak kontinyu (nyala - padam

secara periodik), menyala pada setengah gelombang pertama dan padam pada

setengah gelombang berikutnya, hal ini terjadi secara periodik pada frekuensi senilai

denga frekwensi AC yang diterapkan.

Hal ini terjadi karena LED hanya mengalirkan arus satu arah saja, sebagai

akibatnya LED hanya akan menyala pada fasa dimana LED mendapatkan forward

bias (hanya setengah gelombang). Mata manusia terkadang terlalu lambat untuk

merespon aktifitas nyala padam tersebut, pada frekuensi tertentu (biasanya 85Hz atau

lebih) LED akan terlihat tetap menyala meskipun faktanya berkedip - kedip. Prinsip

ini lebih lanjut digunakan untuk memultipleks LED maupun untuk penghematan daya.

Universitas Sumatera Utara


18

Pada umumnya rangkaian digital menggunakan tegangan operasi 5 s.d 12 volt

DC. Karena LED memiliki tegangan maksimum dan tegangan minimum maka arus

dan dan tegangan LED harus diatur sedemikian rupa sehingga berada dalam wilayah

yang dapat diterima oleh LED. Tugas ini umumnya dapat diimplementasikan dengan

pemasangan resistor dan LED secara seri. Masukannya adalah bagaimana memilih

nilai resistor supaya LED dapat menyala pada tegangan diatas level minimum dan

dibawah level maksimum pada tingkatan kecerahan yang dapat diterima. Pada

aplikasinya nilai resistor tidaklah sekritis teorinya, penyimpangan beberapa puluh ohm

masih dapat diterima. Nilai resistor tersebut dapat dihitung dengan rumus berikut.

Gambar 2.7 LED dan resistor secara seri

Keterangan :

D = LED VD = Tegangan LED

ID = Arus LED R = Resistor

VR = Tegangan Resistor IR = Arus Resistor

Sebagai pijakan, aplikasi dengan tegangan operasi 5 volt biasanya menggunakan

resistor 330Ù hingga 470Ù. Pada aplikasinya, LED dapat dikendalikan dengan 2 cara.

Yaitu dengan menyambungkan anoda ke catu positif dan katoda ke keluaran

rangkaian, atau dengan menyambungkan katoda ke ground dan anoda ke keluaran

rangkaian.

Universitas Sumatera Utara


19

Gambar 2.8 Cara pengendalian LED

Pada cara pertama, LED akan menyala jika keluaran rangkaian berlogika 0

(terhubung ke ground). Sedangkan pada cara kedua LED akan menyala jika keluaran

berlogika 1 (terhubung dengan catu positif). Jika rangkaian keluaran yang

disambungkan ke LED berupa keluaran mikrokontroler, port, TTL atau CMOS, maka

cara pertama lebih menguntungkan karena rangkaian keluaran hanya difungsikan

untuk menerima arus dan menyambungkan ke ground. Pada kenyataannya pun, cara

ini memang lebih sering digunakan.

2.4. Bahasa Assembly MCS-51

Bahasa yang digunakan untuk memprogram IC mikrokontroler AT89C4051 adalah

bahasa assembly untuk MCS-51. angka 51 merupakan jumlah instruksi pada bahasa

ini hanya ada 51 instruksi.

Universitas Sumatera Utara

Anda mungkin juga menyukai