Mikrokontroler AT89C51 LANDASAN TEORI

12 Gambar 2.5. Fresnel Lens Information. Gambar 2.6. Pewaktuan dan waktu tunda delay sensor PIR KC778B

C. Mikrokontroler AT89C51

Mikrokontroler merupakan kombinasi dari CPU, memori dan IO dalam sebuah chip atau sering disebut lingkungan chip mikrokomputer SCM. CPU merupakan unit pengolahan pusat terdiri dari dua bagian yaitu 13 unit pengendali Control Unit CU serta unit aritmatik dan logika Aritmatic Logic Unit ALU. Moh. Ibnu Malik dan Anistardi, 1987:1. Di dalam chip mikrokontroler telah dilengkapi dengan Central Proccesing Unit Mikroprosesor, rumah memory, dan perangkat peripheral lainnya, sehingga mikrokontroler sering disebut dengan mikrokomputer chip tunggal. Salah satu jenis mikrokontroller yang paling banyak digunakan adalah dari jenistype AT89C51 yang merupakan mikrokontroller keluaran ATMEL dengan 4K Byte Flash PEROM Programmable and Erasable Read Only Memory, AT89C51 merupakan memori dengan teknologi nonvolatile memory, isi memori tersebut dapat diisi ulang ataupun dihapus berkali-kali. Memori ini biasa digunakan untuk meyimpan intruksi Perintah berstandar MCS-51 code sehingga memungkinkan mikrokontroller ini untuk bekerja dalam mode single chip operation Mode operasi keping tunggal yang tidak memerlukan external memory Memori luar untuk menyimpan source kode tersebut. 14 Gambar 2.7. Deskripsi Hardware Tabel 1. Tabel Deskripsi Hardware Nomor PIN Nama PIN Alternatif Keterangan 20 GND Ground 40 VCC Power Supply 32...39 P0.7...P0.0 D7...D0 A7...A0 Port 0 dapat berfungsi sebagai IO biasa, low order multiplex addressdata ataupun menerima kode byte pada saat Flash Programming Pada fungsi sebagai IO biasa port ini dapat memberikan output sink ke delapan buah TTL Input atau dapat diubah sebagai input dengan memberikan logika 1 pada port tersebut. Pada fungsi sebagai low order multiplex addressdata port ini akan mempunyai internal pull up. Pada saat Flash Programming diperlukan external pull up terutama pada saat verifikasi program. 1...8 P1.0...P1.7 Port 1 berfungsi sebagai IO biasa atau menerima low order address bytes selama pada saat Flash Programming. 15 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. 21...28 P2.0...P2.7 A8...A15 Port 2 berfungsi sebagai IO biasa atau high order address, pada saat mengakses memory secara 16 bit Movx Dptr Pada saat mengakses memory secara 8 bit, Movx Rn 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 10...17 Port 3 Sebagai IO biasa Port 3 mempunyai sifat yang sama dengan Port 1 ataupun Port 2. Sedangkansebagai fungsi spesial port-port ini mempunyai keterangan sebagai berikut: 10 11 12 13 14 15 16 17 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 RXD TXD INT0 INT1 T0 T1 WR RD Port Serial Input Port Serial Output Port External Interrupt 0 Port External Interrupt 1 Port External Timer 0 Input Port External Timer 1 Input External Data Memory Write Strobe External Data Memory Read Strobe 9 RST Reset akan aktif dengan memberikan input high selama 2 cycle 30 ALE PROG Pin ini dapat berfungsi sebagai Address Latch Enable ALE yang me-latch low byte address pada saat mengakses memory eksternal. Sedanglan pada saat Flash Programming PROG berfungsi sebagai pulse input untuk Pada operasi normal ALE akanmengeluarkan sinyal clock sebesar 116 frekuensi oscillator kecuali pada saat mengakses memori eksternal Sinyal Clock pada Pin ini dapat pula didisable dengan men-set bit 0 dari Special Function Register dialamat 8EH ALE hanya akan aktif pada saat mengakses memory eksternal MOVX MOVC 16 29 PSEN Pin ini berfungsi pada saat mengeksekusi program yang terletak pada memori eksternal. PSEN akan aktif dua kali setiap cycle. 31 EA VP Pada kondisi low, pin ini akan berfungsi sebagai EA yaitu mikrokontroler akan menjalankan program yang ada pada memori eksternal setelah sistem di-reset. Jika berkondisi high, pin ini akan berfubgsi untuk menjalankan program yang ada pada memori internal. Pada saat Flash Programming pin ini akan mendapat tegangan 12 Volt VP 19 XTAL1 Input Oscillator 18 XTAL2 Output Oscillator Struktur Memori Gambar 2.8. Alamat RAM internal dan Flash PEROM AT89C51 mempunyai struktur memori yang terdiri atas: • RAM Internal, memori sebesar 128 byte yang biasanya digunakan untuk menyimpan variable atau data yang bersifat sementara. • Special Function Register Register Fungsi Khusus, memori yang berisi register-register yang mempunyai fungsi-fungsi khusus yang 17 disediakan oleh mikrokontroller tersebut, seperti timer serial dan lain-lain. • Flash PEROM, memori yang digunakan untuk menyimpan intruksi- instruksi MCS-51. Karena arsitekturnya sederhana dan bahasa programnya mudah dimengerti, maka menggunakan mikrokontroler AT89C51. AT89C51 mempunyai struktur memori yang terpisah antara RAM Internal dan Flash PEROM-nya. RAM Internal dialamati oleh RAM Address Register Register Alamat RAM sedangkan Flash PEROM yang menyimpan perintah-perintah MCS-51 dialamati oleh Progam Address Register Register Alamat Progam. Dengan adanya struktur memori yang terpisah tersebut, walaupun RAM Internal dan Flash PEROM, mempunyai alamat awal yang sama, yaitu alamat 00, namun secara fisiknya kedua memori tersebut tidak saling berhubungan. Sumber: Andi Nalwan Paulus. 2002. Panduan Praktis Teknik Antarmuka dan Pemrograman. Jakarta : PT Elex Media Komputindo.. 18

D. Pemrogaman menggunakan Bahasa Assembler asm.51