RESUME
TEORI DASAR MIKROKONTROLER Arwin Darwis (60400114016) Pengenalan Mikrokontroller Mikrokontroller
sebagai
teknologi semikonduktor yang memiliki
kandungan transistor yang lebih banyak namun hanya membutuhkan ruang yang kecil serta dapat diproduksi dalam jumlah banyak dan harganya relatif lebih murah. Mikrokontroller hanya bisa digunakan untuk suatu aplikasi tertentu saja. Pada mikrokontroler, perbandingan ROM dan RAM-nya besar. Artinya program kontrol disimpan dalam
ROM yang ukurannya relatif lebih besar,
sedangkan RAM digunakan sebagai
tempat penyimpan sementara, termasuk
register-register yang digunakan pada mikrokontroller yang bersangkutan. Adapun kelebihan dari mikrokontroller adalah sebagai berikut : 1) Penggerak pada assembly
mikrokontoler
menggunakan
bahasa pemograman
dengan berpatokan pada kaidah digital dasar sehingga
pengoperasian sistem menjadi sangat mudah dikerjakan sesuai dengan logika sistem. 2) Mikrokontroller tersusun dalam satu chip dimana prosesor, memori, dan I/O terintegrasi menjadi satu kesatuan kontrol sistem sehingga mikrokontroller dapat dikatakan sebagai komputer mini 3) Sistem running bersifat berdiri sendiri tanpa tergantung dengan komputer sedangkan parameter
komputer
hanya
digunakan
untuk
download
perintah instruksi atau program. 4) Pada mikrokontroller tersedia fasilitas tambahan untuk pengembangan memori dan I/O yang disesuaikan dengan kebutuhan sistem. 5) Harga untuk memperoleh mikrokontroller lebih murah dan mudah didapat. Unit Mikrokontroler Mikrokontroller AT89C51 merupakan versi EEPROM dari 80C51 dimana memory internal ini dapat diprogram dan dihapus secara elektrik diproduksi oleh ATMEL Corporation. AT89C51 dibuat compatible dengan sel
instruksi dan pin keluaran standar industri MCS-51 yang memiliki 4Kbyte RAM internal dengan teknologi flas EEPROM yang dapat menyimpan data meskipun catu daya dimatikan. DT-51 merupakan development tools yang terdiri dari 2 bagian terintegrasi yaitu perangkat keras dan perangkat lunak. Komponen utama perangkat keras DT-51 ialah mikrokontroller AT89C51 yang merupakan salah satu turunan keluarga MCS-51 Intel. Fungsi DT-51, antara lain : timer, counter, RS-232 serial port, Programmable Perangkat Interface (PPI), serta LCD port. Perangkat lunak DT-51 terdiri dari Downloader DT51L dan Debugger DT51D. Berikut ini spesifikasi DT-51 : 1) Berbasis mikrokontroller 89C51 yang berstandar industri. 2) Serial port interface standar RS-232 untuk komunikasi antara komputer dengan board DT-51. 3) Memiliki 8 Kbytes non-volatile memory (EEPROM) untuk menyimpan program dan data. 4) Terdapat 4 port input output (I/O) dengan kapasitas 8 bit tiap portnya. 5) Port Liquid Crystal Display (LCD) untuk keperluan tampilan. 6) Konektor ekspansi untuk menghubungkan DT-51 dengan add-on board yang kampatibel dari Innovative Electronics. Mikrokontroller AT89C51 Mikrokontroler AT89C51 ialah mikrokomputer CMOS 8 bit dengan 4 KB Flash PEROM (Programmable and Erasable Only Memory) yang dapat dihapus dan ditulisi sebanyak 1000 kali. Mikrokontroler ini diproduksi dengan menggunakan teknologi high density non-volatile memory Atmel. Karakteristik mikrokontroler AT89C51 sebagai berikut : Low-power 32 jalur masukan/keluaran yang dapat diprogram (32 jalur masukan dihimpun dalam 4 buah port, setiap port memiliki 8 buah masukan) Dua timer counter 16 bit RAM 128 byte Lima interrupt
Fungsi dari mikrokontroler AT89C51 secara keseluruhan dapat dijelaskan sebagai berikut : Pin 1 sampai 8, adalah
kelompok
pin untuk port 1. Port 1 ini merupakan
port
I/O
dua
arah
yang digunakan untuk penghubungan dengan peralatan luar. Pin 9, adalah masukan reset. Pin 10 sampai 17, adalah port 3 yang juga merupakan port I/O. Pin 18, adalah untuk
XTAL
keluaran
dari
2
yaitu
inverting
oscillator amplifier. Pin 19, adalah XTAL 1 yaitu masukan untuk inverting oscillator amplifier dan masukan untuk rangkaian sumber detak (clock). Pin 20, adalah ground dan diberi simbol gnd. Pin ini terhubung dengan jalur netral/ground dari rangkaian pengatur daya. Pin 21 sampai 28, adalah port 2 yang juga sebagai port I/O. Pin 29, adalah Program Store Enable (PSEN), yaitu masukan sinyal baca untuk memori program eksternal agar masuk ke dalam bus selama proses pemberian/pengambilan instruksi (fetching). Pin 30, adalah Address Latch Enable (ALE) yaitu keluaran yang menghasilkan pulsa-pulsa untuk mengancing byte rendah alamat selama mengakses eksternal. Pin 31, adalah External Acces Enable (EA) yang merupakan sinyal kontrol untuk pembacaan memori program. Pin 32 sampai 39, adalah merupakan port 0 dan berfungsi sebagai I/O. Pin 40, adalah Vcc atau sumber tegangan.
Organisasi Memori Mikrokontroller AT89C51
Gambar 2. Blok Diagram Inti Dari AT89C Memori Program Memori program hanya bisa dibaca saja karena bersifat sebagai ROM. Memori ini disimpan dalam Flash PEROM. Memori program yang bisa diakses langsung hingga 64 Kbyte. Mikrokontroler AT89C51 mempunyai 4 Kbyte memori program internal. Bila memakai memori program eksternal, maka pin `EA’ diberi logika Low. Apabila ingin memakai memori program internal pin `EA’ diberi logika High. Memori Data Memori data menempati ruang alamat terpisah. Memori
eksternalnya
dapat diakses secara langsung hingga 64 Kbyte. CPU akan memberikan sinyal baca RD dan tulis WR selama mengakses memori data eksternal. Memori Eksternal Selain
PEROM
dan
internal
RAM
yang
terdapat
pada
mikrokontroler AT89C51, DT51 juga mempunyai memori eksternal berjenis EEPROM (Electrically Erasable Programmable Read Only Memory).
Set Instruksi Ada beberapa instruksi yang dikenal oleh mikrokontroler AT89C51 yaitu: Instruksi aritmetika, mencakup
penambahan
(ADD),
pengurangan
(SUBB), perkalian (MUL), dan pembagian (DIV). Intruksi logika dan manipulasi bit, terdiri dari : Logika AND (ANL), Logika OR (ORL), Logika NOT (CPL), Logika EXOR (XRL), Manipulasi Pengesetan (CLR), Manipulasi Bit Pengesetan (SETB), Manipulasi Bit Pengisian (MOV) dan Manipulasi Lompat. Instruksi transfer data, digunakan untuk memindahkan data antara : registerregister,
memori-memori,
register-memori,
antarmuka-register
dan
antarmuka-memori. Instruksi percabangan, dibagi dua yaitu percabangan dengan syarat dan percabangan tanpa syarat. Percabangan dengan syarat terdiri atas : CJNE, DJNZ dan JBC. Sedangkan percabangan tanpa syarat terdiri dari : Long Jump (LJMP) dan Short Jump (SJMP). Program Sumber Assembly Program sumber assembly merupakan program yang ditulis oleh pembuat program berupa kumpulan baris-baris perintah dan biasanya disimpan dengan extension .ASM. program sumber assembly terdiri atas beberapa bagian yaitu : Label, sangat berguna dalam pemberian nama pada alamat-alamat yang dituju, karena pemberian label pada suatu alamat lebih bersifat relatif. Mnemonic, disebut kode operasi adalah kode-kode yang akan dikerjakan oleh program assembler yang ada pada mikrokontroller merupakan perintah-perintah atau instruksi -instruksi yang sangat bergantung dengan jenis mikrokontroller yang digunakan. Operand merupakan pelengkap dari mnemonic, jumlah operand yang dibutuhkan oleh satu mnemonic tidak selalu sama, sebuah mnemonic dapat memiliki tiga, dua, satu atau bahkan tidak memiliki operand sama sekali.
Komentar tidak mutlak ada dalam sebuah program, namun bagian ini sangat berguna untuk menjelaskan proses-proses kerja ataupun catatancatatan tertentu pada bagian-bagian program. Programmable Peripheral Interface (PPI) 8255 Programmable Peripheral Interface (PPI) 8255 ialah chip antarmuka 24 bit (3 port) yang dapat diprogram sesuai keinginan. PPI 8255 merupakan chip yang paling banyak digunakan untuk interfacing menggunakan port ISA komputer. PPI 8255 sering digunakan sebagai
pengendali
motor stepper,
ADC/DAC, relay, dan rangkaian digital lainnya yang digunakan untuk Sistem Akuisisi Data. Berikut ini penjelasan mengenai tiap pin : PA0-PA07, merupakan terdiri
dari
8
bit,
port dapat
A
yang
diprogram
sebagai input atau output dengan metode bidirectional input/output. PB0-PB07, Port B dapat diprogram sebagai input/output, tetapi tidak dapat digunakan sebagai port bidirectional. PC0-PC07, Port sebagai
C
input/output,
dapat
diprogram
bahkan
dapat
dipecah menjadi dua, yaitu CU (bit PC4PC7) dan CL (bit PC0-PC3) yang dapat diprogram sebagai input/output. RD dan WR, Sinyal kontrol aktif rendah ini dihubungkan ke 8255. Jika 8255 menggunakan desain periferal I/O maka IOR dan IOW bus sistem dihubungkan ke kedua pin ini. RESET, Pin aktif tinggi ini digunakan untuk membersihkan Control Register. Ketika RESET diaktifkan, seluruh port diinisialisasi sebagai port input.
Pengaturan Control Word Pengaturan control word
bertujuan untuk menentukan fungsi dari
setiap port pada PPI 8255. dengan menentukan data yang masuk pada pin D0 – D7, kita dapat menentukan fungsi dari port-port pada PPI 8255. Dengan fungsi masing - masing pin sebagai berikut :
Gambar 4. Pengaturan Control Word Keypad Keypad adalah rangkaian tombol yang berfungsi untuk memberi sinyal pada suatu rangkaian dengan menghubungkan jalur-jalur tertentu. Keypad terdiri dari beberapa macam berdasarkan jumlah tombol dan fungsinya. LCD (Liquid Cristal Display) LCD
(Liquid
Cristal
Display)
adalah
salah
satu
komponen
elektronika yang berfungsi sebagai tampilan suatu data, baik karakter, huruf ataupun grafik. Dipasaran tampilan LCD sudah tersedia dalam bentuk modul yaitu tampilan LCD beserta
rangkaian pendukungnya termasuk ROM dll.
LCD mempunyai pin data, kontrol catu daya, dan pengatur kontras tampilan. Fungsi dari pin-pin pada rangkaian LCD yaitu: Pin data dapat dihubungkan dengan bus data dari rangkaian lain seperti mikrokontroler dengan lebar data 8 bit.
Pin RS (Register Select) berfungsi sebagai indikator atau yang menentukan jenis data yang masuk, apakah data atau perintah. Logika low menunjukan yang masuk adalah perintah, sedangkan logika high menunjukan data. Pin R/W (Read Write) berfungsi sebagai instruksi pada modul jika low tulis data, sedangkan high baca data. Pin E (Enable) digunakan untuk memegang data baik masuk atau keluar. Pin VLCD, berfungsi mengatur kecerahan tampilan (kontras) dimana pin ini dihubungkan dengan
trimpot
5
Kohm,
jika
tidak
digunakan
dihubungkan ke ground, sedangkan tegangan catu daya ke LCD sebesar 5 Volt