BAB II DASAR TEORI DAN KOMPONEN PENDUKUNG

dokumen-dokumen yang mirip
Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

BAB II. PENJELASAN MENGENAI System-on-a-Chip (SoC) C8051F Pengenalan Mikrokontroler

Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

BELAJAR MIKROKONTROLER PIC16 F84

BAB II LANDASAN TEORI

MIKROKONTROLER AT89S52

SISTEM KOMPUTER.

BAB I TUGAS MATA KULIAH SISTEM MIKROPROSESOR DOSEN PEMBERI TUGAS : FATAH YASIN, ST, MT.

BAB II MIKROKONTROLER PIC16F877 DAN KOMPONEN PENDUKUNGNYA. Inc yang popular digunakan sekarang ini. Merupakan salah satu mikrokontroler dari

BAB II TINJAUAN PUSTAKA

Sistem Minimum Mikrokontroler. TTH2D3 Mikroprosesor

MICROCONTROLER AVR AT MEGA 8535

MICROCONTROLER AVR AT MEGA 8535

PERTEMUAN MEMORY DAN REGISTER MIKROKONTROLER

Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

Arsitektur Komputer, Mikroprosesor dan Mikrokontroller. TTH2D3 Mikroprosesor

Tabel 1. Karakteristik IC TTL dan CMOS

Kumpulan instruksi lengkap yang dimengerti

Mikrokontroler AVR. Hendawan Soebhakti 2009

ARSITEKTUR MIKROKONTROLER AT89C51/52/55

MIKROPENGENDALI C TEMU 2b AVR ARCHITECTURE. Oleh : Danny Kurnianto,S.T.,M.Eng Sekolah Tinggi Teknologi Telematika Telkom

Sistem Mikrokontroler FE UDINUS

LAMPIRAN KODE PROGRAM

Gambar 1.1. Diagram blok mikrokontroller 8051

DAFTAR ISI HALAMAN JUDUL... HALAMAN PENGESAHAN P EMBIMBING... HALAMAN PENGESAHAN P ENGUJI... HALAMAN PERSEMBAHAN... HALAMAN MOTTO... KATA PENGANTAR...

Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

BAB III LANDASAN TEORI. digunakan seperti MCS51 adalah pada AVR tidak perlu menggunakan oscillator

PENGANTAR MIKROKOMPUTER PAPAN TUNGGAL (SINGLE CHIP) Oleh : Sumarna, Jurdik Fisika, FMIPA UNY

Set Instruksi: Set instruksi?

Pendahuluan Mikrokontroler 8051

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika

OPERATION SYSTEM. Jenis - Jenis Register Berdasarkan Mikroprosesor 8086/8088

STRUKTUR CPU. Arsitektur Komputer

MAKALAH MODE DAN FORMAT PENGALAMATAN SET INSTRUKSI. Nama : Annisa Christyanti Kelas : XI TJA 3 NIS :

BAB II LANDASAN TEORI

MODUL PRAKTIKUM SISTEM OPERASI PRAKTIKUM I MODEL PEMROGRAMAN 1

SISTEM KERJA MIKROPROSESOR

ARSITEKTUR KOMPUTER SET INSTRUKSI

Materi 3. Komponen Mikrokomputer SYSTEM HARDWARE DAN SOFTWARE DADANG MULYANA

Sistem Tertanam. Pengantar Atmega328 dan Arduino Uno. Dennis Christie - Universitas Gunadarma

DAFTAR ISI. Daftar Pustaka P a g e

SATUAN ACARA PERKULIAHAN

CENTRAL PROCESSING UNIT (CPU) Sebuah mesin tipe von neumann

BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED. Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S52 termasuk kedalam keluarga MCS-51 merupakan suatu. dua macam memori yang sifatnya berbeda yaitu:

Pendahuluan BAB I PENDAHULUAN

BAB II KONSEP DASAR PERANCANGAN

BAB II TEORI DASAR 2.1 Pendahuluan 2.2 Sensor Clamp Putaran Mesin

Ket. Ranah kognitif a. Tipe hasil belajar : Pengetahuan (C1) proporsi 43,33 % b. Tipe hasil belajar : Pemahaman (C2) proporsi 56,66 %

PERTEMUAN MINGGU KE-5 ARSITEKTUR SET INSTRUKSI

BAB III PERANCANGAN SISTEM

ORGANISASI KOMPUTER DASAR

BAB III MIKROKONTROLER

SATUAN ACARA PERKULIAHAN. Proses Pembelajaran (kegiatan mahasiswa)

Pertemuan 2 Organisasi Komputer II. Struktur & Fungsi CPU (I)

Struktur CPU 3/23/2011

BAB II TINJAUAN PUSTAKA. Gambar 2.1. Simbol LED [8]

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB IV ANALISIS RANGKAIAN ELEKTRONIK

BAB II DASAR TEORI. Gambar 2.1 Sensor MLX 90614[5]

BAB III PERANCANGAN SISTEM

Struktur Sistem Komputer

BAB V SISTEM PENGOLAHAN DATA KOMPUTER (Arsitektur Komputer) "Pengantar Teknologi Informasi" 1

MIKROKONTROLER Yoyo Somantri dan Egi Jul Kurnia

Struktur Fungsi CPU. Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 --

BAB II DASAR TEORI 2.1. Mikrokontroler AVR ATmega32

Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer

TI2043 Organisasi dan Arsitektur Komputer Tugas 2 Interrupt Driven I/O

BAB 2 LANDASAN TEORI

SINYAL INTERUPSI. 1. Latar Belakang

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika. Assembler Bahasa pemrograman mikrokontroler MCS-51

Struktur Sistem Komputer

II. TINJAUAN PUSTAKA. Mikrokontroler ATmega8535 merupakan salah satu jenis mikrokontroler keluarga AVR

Mengenal bahasa assembly

BAB 2 TINJAUAN TEORITIS. Sensor TGS 2610 merupakan sensor yang umum digunakan untuk mendeteksi adanya

BAB III TEORI PENUNJANG. Microcontroller adalah sebuah sistem fungsional dalam sebuah chip. Di

DCH1B3 Konfigurasi Perangkat Keras Komputer SAP-2

BAB II DASAR TEORI. ATmega8535 merupakan IC CMOS 8-bit berdaya rendah yang berdasar pada

Gambar 2.1 Mikrokontroler ATMega 8535 (sumber :Mikrokontroler Belajar AVR Mulai dari Nol)

III. METODOLOGI PENELITIAN. Penelitian dan perancangan tugas akhir ini telah dimulai sejak bulan Juli 2009

4. Port Input/Output Mikrokontroler MCS-51

CENTRAL PROCESSING UNIT (CPU)

Sistem Komputer. Tiga komponen utama : CPU

PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51

BAB III DESAIN DAN PENGEMBANGAN SISTEM

BAB II KONSEP DASAR SISTEM MONITORING TEKANAN BAN

PERTEMUAN PERANGKAT KERAS MIKROKONTROLER

ARSITEKTUR MIKROPROSESOR Z80. Yoyo somantri Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia

BAB II LANDASAN TEORI

Pertemuan Ke-8 Unit I/O (Unit Masukan dan Keluaran)

BAB 2 TINJAUAN PUSTAKA

BAB II LANDASAN TEORI. Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu

Hanif Fakhrurroja, MT

Mikrokontroler 89C51 Bagian II :

Set Instruksi & Mode Pengalamatan. Team Dosen Telkom University 2016

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51

BAB 2 LANDASAN TEORI

1 Tinjau Ulang Sistem Komputer

Transkripsi:

BAB II DASAR TEORI DAN KOMPONEN PENDUKUNG Mikrokontroler merupakan sebuah komputer sederhana dalam satu serpih (chip). Mikrokontroler adalah salah satu pengembangan yang penting dalam bidang elektronik sejak penemuan mikroprosesor. Mikrokontroler dapat ditemukan pada piranti elektronik saat ini seperti: DVD, kamera, mesin cuci dan piranti elektronik lainnya. Walaupun kecil mikrokontroler cukup rumit. Untuk memahaminya diperlukan pengetahuan tentang perangkat keras (hardware) maupun perangkat lunak (software), karena mikrokontroler bekerja berdasarkan kedua komponen tersebut. Biasanya dalam sebuah mikrokontroler terdapat ROM (Read-Only Memory) RAM (Read Acces Memory), beberapa buah bandar keluaran/masukan (I/O PORT) dan beberapa komponen pendukung (peripheral) seperti: pencacah/pewaktu, ADC (Analog-to-Digital Converter), DAC (Digital-to-Analog Converter) dan bandar komunikasi serial. Pada umumnya dalam sebuah mikroprosesor terdapat 3 kompenen utama yaitu: ALU (Arithmetic Logic Unit ) untuk melakukan perhitungan data, sekumpulan pengingat (register) untuk memegang data pengguna dan unit pengendali yang mengatur aliran data dari pengingat (register) ke ALU. Mikrokontroler selain mengandung ketiga komponen tersebut juga sudah tercakup RAM,ROM dan bandar bandar keluaran /masukan. Berdasarkan komponen dalam mikrokontronler dapat dikatakan bahwa mikrokontroler lebih cepat dari mikroprosesor hal ini disebabkan karena sudah terdapat unit memori dalam serpih (chip) yang sama, oleh karena itu aksesnya lebih cepat. Kekurangannya adalah kemampuan menyimpan data baik di ROM maupun RAM lebih sedikit, tapi dapat ditambah dengan unit memori luar. 2.1 Mikrokontroler PIC16F877A Mikrokontroler PIC dari Microchip merupakan salah satu mikrokontroler yang banyak digunakan oleh peminat elektronika untuk membuat perangkat

elektronika. Salah satu alasan kesuksesan PIC adalah karena dukungan yang disediakan oleh Microchip. Dukungan yang disediakan termasuk sebuah software yang dapat digunakan untuk pengembangan dalam lingkungan profesional yaitu MPLAB. MPLAB dapat di download secara gratis dari situs Microchip. Dalam MPLAB sudah termasuk sebuah assembler, linker, debugger, dan simulator. Microchip juga menjual murah in-circuit debugger yang disebut MPLAB ICD2. Website Microchip juga dilengkapi ratusan dokumen pendukung gratis seperti: datasheet, catatan aplikasi dan contoh kode. Selain itu PIC16F877A mempunyai fitur yang lengkap yang membuatnya lebih unggul dari yang lain diantaranya: 1. Menggunakan desain RISC CPU sehingga intruksinya hanya 35 jenis. 2. Semua intruksi dilaksanakan dalam satu siklus selain intruksi percabangan 3. Direct, indirect dan relative addressing mode 4. Dapat menangani 14 buah sumber interupsi 5. Memiliki 8K x 14 word memori program 6. 368 x 8 bit memori data (RAM) 7. Mempunyai EEPROM 256 x 8 bit 8. Dapat beroperasi pada tegangan 2-5 Volt 9. In-Circuit Programing (ICSP) dapat dilakukan melalui 2 buah pena 10. Watchdog Timer (WDT) mempunyai osilator tersediri. 11. Dua buah modul PWM 12. 10 bit multi chanel ADC 13. Universal Synchronous Asynchronous Reciever Transmitter (USART) 14. Timer dalam tiga buah

2.1.1 Pena-pena mikrokontroler PIC16F877A Mikrokontroler PIC16F877A mempunyai 40 pena (pin) seperti yang ditunjukkan pada Gambar 2.1 Gambar 2.1 Konfigurasi Pena PIC16F877A Masing-masing pena mikrokontroler PIC16F877A menpunyai kegunaan sebagai berikut: 1. Bandar A (RA0-RA5) Bandar A adalah bandar masukan/keluaran (I/O) dua arah (bidirectional). Bandar A juga mempunyai fungsi alternatif seperti pada Tabel 2.1 Tabel 2.1 Fungsi Alternatif Bandar A Pena Fungsi Alternatif RA0/AN0 Digital I/O, masukan analog 0 RA1/AN1 Digital I/O, masukan analog 1 RA2/AN2/V REF+ Digital I/O, masukan analog 2, tegangan referensi A/D rendah

RA3/AN3/V REF+ Digital I/O, masukan analog 3, tegangan referensi A/D tinggi RA4/T0CK1/C1out Digital I/O, masukan penabuh luar timer0, keluaran camparator 1 RA5/-SS/AN5 Digital I/O, slave select untuk SSP 2. Bandar B (RB0-RB7) Bandar B adalah masukan/keluaran dua arah (bidirectional). Bandar B dapat diprogram secara perangkat lunak untuk internal weak pull-up pada semua masukannya. Bandar B juga punyai fungsi alternatif seperti pada Tabel 2.2 Tabel 2.2 Alternatif Bandar B Pena RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD Fungsi alternatif Digital I/O, external interupt Digital I/O Digital I/O Digital I/O, pena mempukan ICSP tegangan rendah Digital I/O Digital I/O Digital I/O, penabuh ICSP dan in-circuit debugger Digital I/O, data ICSP, in-circuit debugger 3. Bandar C (RC0-RC7) Bandar C adalah masukan/keluaran (I/O) dua arah (bidirectional). Bandar C juga mempunyai fungsi alternatif seperti pada Tabel 2.3.

Tabel 2.3 Fungsi Bandar C Pena Fungsi RC0/T1OSO/T1CK1 Digital I/O, keluran osilator timer1, masukan penabuh luar timer1 RC1/T1OSI,CCP2 RC2/CCP1 RC3,SCK,SCL RC4/SDI/SDA RC5/SDO RC6/TX,CK RC7/RC/DT Digital I/O,masukan osilator timer1,keluaran PWM2 dan compare2, masukan capture2 Digital I/O,keluaran PWM1 dan compare1, masukan capture1 Digital I/O,penabuh SPI, Penabuh I 2 C Digital I/O, masukan data SPI, masukan data I 2 C Digital I/O,keluaran data SPI Digital I/O,transmit USART, penabuh USART Digital I/O, receiver USART, data USART 4. Bandar D (RD0-RD7) Bandar D adalah bandar I/O dua arah (bidirectioanal) atau bandar budak ketika dihubungkan dengan bus mikroprosesor. 5. Bandar E (RE0-RE2) Bandar E adalah bandar I/O dua arah (bidirectional). Bandar E juga punyai fungsi alternatif seperti pada Tabel 2.4. Tabel 2.4 Fungsi Bandar E Pena RE0/-RD/AN5 RE1/-WR/AN6 Fungsi Digital I/O, kendali baca untuk bandar budak paralel, masukan analog 5 Digital I/O, kendali tulis untuk bandar budak paralel, masukan analog 6

RE2/-CS/AN7 Digital I/O, memilih untuk bandar budak paralel, masukan analog 7 6. OSC1 dan OSC2 Merupakan masukan untuk sumber penabuh luar, berupa Kristal atau rangkaian RC untuk mengaktifkan osilator yang terdapat pada mikrokontroler PIC16F877A. 7. MCLR /V PP Merupaka masukan untuk reset atau tegangan masukan pada saat memprogram. 8. V DD dan V SS Pena V DD dihubungkan dengan sumber tegangan +5 Volt dan V SS pada ground. 2.1.2 Memori Memori mikrokontroler merupakan sebuah lokasi/tempat menyimpan program yang akan dijalankan dan data yang digunakan program. Memori dapat dianggap sekumpulan blok (cell) atau lokasi yang dikenali dengan alamatnya. Setiap blok menyimpan kata (word). Word adalah sebuah informasi unit logika yang disimpan dalam sebuah blok. Terdapat dua atau tiga jenis memory yang tersedia dalam mikrokontroler : Nonvolatile program memory. Volatile RAM (Random Acces Memory). Optional nonvolatile memori data (EEPROM).

2.1.2.1 Memori Program Memori program dikenal dengan nama yang berbeda beda, yaitu tempat penyimpan program kendali (control) dan firmware. Nama tidak terlalu penting, asalkan dapat dipahami bahwa memori ini digunakan untuk menyimpan aplikasi perangkat lunak. Kata sifat nonvolatile menjelaskan kemampuan memori untuk memelihara informasi yang disimpan walupun catu daya dimatikan. Hal ini penting karena setiap catu daya diberikan kepada mikrokontroler, kode aplikasi harus mulai bekerja. Ruang memori program adalah jumlah maksimum kode program yang dapat diprogramkan kedalam mikrokontroler dan berisikan semua kode yang akan dijalankan aplikasi sekaligus berisikan nilai- nilai awal untuk variabel yang digunakan. Memori program biasanya tidak berubah selama program dijalankan dan kode aplikasi disimpan menggunakan peralatan tersendiri. Memori program dalam mikrokontroler PIC16F877A terdiri atas: Flash ROM : 8K x 14 bit. Memori Stack: 8 x 13 bit. Memori program berupa Flash ROM berukuran word 14 bit dengan kapasitas 8K word (PIC16F873 hanya 4K Word). Memori program diakses hanya oleh Program counter (PC), dan karena itu PC berukuran 13 bit. PC ialah register yang memilihara jalannya urutan program dengan menyimpan alamat intruksi yang sedang dijalankan. Alamat awal program biasanya adalah nol,dimana intruksi pertama program akan disimpan kecuali penulis program menentukan lain. Setiap intruksi dijalankan, PC akan bertambah satu untuk menunjuk keintruksi selanjutnya. Percabangan dan jump (pelompatan) tidak dilaksanakan dalam satu intruksi. Hal lain yang berhubungan dengan PC adalah stack. Stack tidak termasuk kedalam program maupun data. Stack digunakan menyimpan isi PC bila ada intruksi CALL. Stack yang 8 word digunakan hanya secara internal untuk menyimpan alamat instruksi kembali dari subrutin, tidak dapat digunakan untuk data. Stack berukuran 13 bit, seukuran dengan PC. Stack bersifat LIFO ( Last In First Out ).

Karena memori program dalam PIC menggunakan sistim paging (halaman), maka 2 bit (bit 12 dan 11) dari PC yang 13 bit menunjukan nomor halaman dan dan 10 bit lagi menunjukkan alamat dalam halaman yang ditunjuk. Memori program dibagi atas halaman (blok) memori yang berukuran 2 Kilo Word dengan alamat 11 bit dan mikrokontroler PIC16F877A ini dapat mengakses program secara kontinu hanya dalam halaman yang sama. Untuk mengakses program pada halaman yang berbeda, seperti dalam intruksi percabangan CALL dan GOTO, 2 bit atas alamat diambil dari register PCLATH yaitu PCLATH<4:3>. Karena itu harga PCH harus di program untuk menunjuk ke nomor halaman yang diinginkan. Penyesuaian halaman alamat tujuan ini, dilakukan dengan menyetel bit-bit PCLATH<4:3>. Untuk melakukan percabangan ke halaman 1 (alamat 0x800-0xFFF), sebagai contoh, PCLATH<4> direset dan PCLATH<3> disetel sebelum mengajukan instruksi percabangan. Dalam pelaksanaan instruksi RETURN dan RETFIE (return from interrupt and enable interrupt), alamat kembali sepenuhnya diambil (dengan mem-pop-nya) dari stack, sehingga tak perlu penyesuaian halaman. Perlu dicatat bahwa stack hanya 8 tingkat sehingga penggunaan pemanggilan bersarang (nested) harus hati-hati, jangan menyebabkan stack overflow. Gambar 2.2 menunjukkan peta memori dan stack dari PIC 16F877A. 2.1.2.2 Memori Data Memori data PIC memakai sistim paging (halaman). Setiap page (halaman) disebut BANK dan setiap BANK memiliki 128 blok memori atau register. PIC16F877A memiliki 4 BANK sehingga jumlah memorinya 512 byte,terbagi atas : RAM : 368 x 8 bit dan EEPROM : 256 x 8 bit.

Gambar 2.2 Peta Memori PIC16F877A RAM merupakan memori bersifat volatile sehingga hanya berfungsi menyimpan data sementara. RAM merupakan Special Function Registers (SFRs). SFRs digunakan untuk mengendalikan PIC dan mengakses modul disekelilingnya. Gambar 2.3 menunjukan SFRs dan GFRs. Pengaksesan register file secara langsung sangat sederhana yaitu dengan mencantumkan nomor alamat register dalam instruksinya. Pengaksesan secara taklangsung (terindeks) dilakukan melalui register indeks INDF (register pertama pada setiap BANK), yang sebenarnya bukanlah register fisik. Setiap pengaksesan register INDF sebenarnya mengakses register yang ditunjuk oleh register pemilih register yaitu FSR (File Select Register).

2.1.2.3 Register Khusus ( SFRs ) SFRs adalah register yang ditempatkan di memori data dengan informasi tertentu atau fungsi control untuk mikrokontroler maupun peralatan disekitarnya, serta berguna untuk melihat keadaan bit dari prosesor. SFRs berhubungan dengan inti dari prosesor atau peralatan disekitarnya (peripheral). SFRs dinamai berdasarkan fungsinya, misalnya TMR0 merupakan bagian dari sistim pewaktuan (timer), STATUS memegang bendera (flag) dari prosesor, INTCON digunakan untuk kontrol interup. Beberapa SFRs dapat dibaca dan ditulis sedangkan sebagian lagi hanya dapat dibaca. Program Counter (PC), register bandar (PORT register) dan register lainnya dipetakan sebagai bagian dari blok SFRs. Register kerja satu satunya yang tidak ditempatkan diblok utama register adalah register yang diakses dengan nama W. Lembaran data (datasheet) menyediakan informasi SFRs secara lengkap. SFRs yang umum atau sering digunakan dalam suatu sistim sederhana adalah : STATUS, PCLATH, PCL,FSR, OPTION, INTCON, PORTA, PORTB, PORTC,TRISA, TRISB, TRISC, TMR0.

Gambar 2.3 Peta File Register

Beberapa SFR S yang digunakan. 1. STATUS Register STATUS berisi status ALU, status Reset dan bit-bit pemilih memori data. Format register STATUS ditunjukkan pada Gambar 2.4. STATUS (03h, 83h,103h, 183h) Pemilih BANK register (for indirect addressing) 0= bank 0, 1 (00 FFh) 1= bank 2, 3 (100 1FFh) Pemilih BANK register (for direct addressing) 00= bank 0 (00 7Fh) 01= bank 1 (80 FFh) 10= bank 2 (100 17Fh) 11= bank 3 (180 1FFh) Time Out 0= a WDT time-out occured 1= after power-up, CLRWDT, or SLEEP intruction Carry/borrow from MSB (ADDWF, ADDLW, SUBWF, SUBLW instruction) 0= No carry-out occured 1= a carry-out occured Digit Carry/borrow from lower nibble (ADDWF, ADDLW, SUBWF, SUBLW instruction) 0= No carry-out occured 1= a carry-out occured Zero: aritthmetic or logic ops 0= result is NOT zero 1= result is zero Power-down 0= by exec. of SLEEP 1= after power-up or CLRWDT Gambar 2.4 Format Registes STATUS Pemilih bank memori untuk pengalamatan tak langsung dilakukan melalui RP0:RP1 sedangkan untuk pengalamatan tak langsung dilakukan melalui IRP. Status reset ditunjukkan pada time-out (TO) dan powerdown (PD) menunjukkan penyebab terjadinya time-out atau power down. Status ALU ditunjukkan oleh C, DC dan Z. Zero bit (Z) menunjukkan hasil dari operasi perhitungan atau logika menghasilkan nol, Digit Carry/ Borrow menunjukkan adanya carry atau borrow dari nible terendah sedangkan Carry/Borrow menunjukkan carry dari MSB dalam penjumlahan atau carry pada pengurangan.

Pengaksesan atas masing-masing bit ditunjukkan di atas kotak bit dengan notasi: U= tak digunakan, R= Readable, W= Writable, -n= harga pada saat power-on, yaitu -0 = berlogika 0, -1 = berlogika 1, -x = tak tertentu. Jadi dapat juga diartikan bahwa dari harga n dalam notasi ini menunjukkan harga default. 2. PCL dan PCLATH PC terdiri atas 13 bit. Delapan bit terendah dapat ditulis dan dibaca, bit terendah disediakan oleh PCL. Bit tinggi tidak dapat dibaca tapi secara tak langsung dapat ditulis melalui PCLATH. Pada saat kembali dari intruksi RETURN datau RETFIE PCLATH tidak berubah sehinga pemakai harus memulis kembali isi PCLATH. komputasi GOTO dicapai dengan memanfaatkan penambahan offset pada PC (ADDWF, PCL). Pada saat penggunaan komputasi GOTO untuk membaca tabel data harus diperhatikan jangan sampai lokasi penyimpanan data tidak melebihi 256 bit, bila melebihi maka komputasi harus dilakukan dengan mengikut sertakan PCLATH. 3. INDF dan FSR Pengalamatan dengan register INDF akan mengakibatkan pengalamatan tak langsung. Pengalamatan tak langsung dapat dilakukan dengan menggunakan register INDF. Setiap intruksi yang menggunakan register INDF sebenarnya mengakses register yang ditunjuk oleh FSR. Membaca register INDF itu sendiri (FSR=0) berarti membaca pada alamat 00h. INDF dan FSR memungkinkan pemakaian array. 4. PORTC dan TRISC PORTC merupakan bandar 8 bit yang dua arah (bidirectioanal). Arah data ditentukan pada register TRISC. Bila bit TRISC dibuat 1 maka PORTC yang sesuai dengan bit pada TRISC akan berfungsi sebagai masukan dan bila 0 akan berfungsi sebagai keluaran.

5. PORTD dan TRISD PORTD merupakan bandar 8 bit yang dua arah (bidirectioanal). Arah data ditentukan pada register TRISD. Bila bit TRISD dibuat 1 maka PORTC sesuai dengan bit pada TRISD akan berfungsi sebagai masukan dan bila 0 berfungsi sebagai keluaran. 2.1.3 Kumpulan Perintah ( Intruction Set ) Semua mikrokontroler atau mikroprosesor menjalankannya intruksinya dengan bahasa mesin masing masing. Bahasa mesin terdiri dari kode biner yang menggambarkan/menjelaskan tugas yang harus dilaksanakan mikrokontroler. Kode biner terdiri dari kumpulan bilangan 0 dan 1. PIC medium-end setiap intruksinya terdiri dari 14 bit, oleh karena itu sebuah program dalam bahasa mesin terdiri dari 14 word. Dari tabel instruction set tabel 2.5 dapat dilihat bahwa tabel dibagi atas 5 kolom dan memeliki 35 jenis intruksi. Tabel 2.5 Kumpulan perintah dalam PIC 16F877A Mnemoni Deskripsi Sikl Opcode Statu Byte Oriented File Register Operations ADDWF Add W and f 1 00 0111 C, ANDWF AND W and f 1 00 0101 Z CLRF F Clear f 1 00 0001 Z CLRW Clear W 1 00 0001 Z COMF Complement f 1 00 1001 Z DECF f,d Decrement f 1 00 0011 Z DECFSZ Decrement f, Skip if 1(2) 00 1011 - INCF f,d Increment f 11 00 1010 Z INCFSZ Increment f, Skip if 1(2) 00 1111 - IORWF Inclusive OR W 1 00 0100 Z MOVF Move f 1 00 1000 Z MOVWF Move W to f 1 00 0000 - NOP No Operation 1 00 0000 - RLF f,d Rotate Left through 1 00 1101 C RRF f,d Rotate Right through 1 00 1100 C SUBWF Subtract W from f 1 00 0010 C, SWAPF Swap nibbles in f 1 00 1110 - XORWF Exclusive OR W 1 00 0110 Z Bit Oriented File Register Operations BCF f,b Bit Clear f 1 01 00bb -

BSF f,b Bit Set f 1 01 01bb - BTFSC Bit Test f, Skip if 1(2) 01 10bb - BTFSS Bit Test f, Skip if 1(2) 01 11bb - Literal and Control Operations ADDLW Add literal and W 1 11 111x C, ANDLW AND literal and W 1 11 1001 Z CALL k Call Subroutine 2 10 0kkk - CLRWDT Clear Watchdog 1 00 0000 TO,P GOTO k Go to address 2 10 1kkk - IORLW k Inclusive OR literal 1 11 1000 Z MOVLW Move literal to W 1 11 00xx - RETFIE Return from Interrupt 2 00 0000 - RETLW Return with literal in 2 11 01xx - RETURN Return from 2 00 0000 - SLEEP Go into Standby 1 00 0000 TO,P SUBLW Subtract W from 1 11 110x C, XORLW Exclusive OR literal 1 11 1010 Z Kolom pertama menunjukkan mnemonic dan code operand yang mengikutinya. Terdapat 4 kode operand, yaitu : 1. f untuk file menunjukkan lokasi memori dalam RAM. 2. b untuk bit menunjukkan register tertentu dalam memori data, 3 bit. 3. d untuk destination menunjukkan hasil disimpan di memori data atau dalam W terdiri atas 1 bit,jika 1 maka disimpan dalam register itu sendiri dan jika 0 dalam W. 4. k untuk literal menunjukkan 8 bit data atau 11 bit alamat dalam memori program. Kolom kedua meringkaskan apa yang dilakukan intruksi. Kolom ketiga menunjukkan berapa siklus intruksi dilaksanakan. Hampir semua intruksi dilaksanakan dalam satu siklus, kecuali ada beberapa yang dua siklus seperti intruski percabangan. Kolom keempat memberikan 14 bit opcode yang sebenarnya setiap intruksi. kolom kelima menjelaskan bit dalam register STATUS yang dipengaruhi setiap intruksi.

2.2 LED LED (Light Emitting Diode atau Light Emitting Device) merupakan piranti yang vital dalam teknologi electroluminescent, seperti aplikasi teknologi display (tampilan), sensor, dan lain-lainnya. Teknologi electroluminescent didasarkan pada konsep pancaran cahaya yang dihasilkan oleh suatu piranti sebagai akibat dari adanya medan listrik yang diberikan kepadanya. Pada dekade terakhir ini telah diperoleh kemajuan yang menarik dalam bidang desain piranti LED. LED dimamfaatkan untuk kepentingan produk industri seperti membuat tampilan yang luas/besar, fleksibel, murah dan dapat juga digunakan sebagai layar yang efisien untuk berbagai keperluan seperti, komputer atau layar TV yang dapat ditempelkan pada dinding atau dapat digulung di dalam saku baju. Gambar 2.5 merupakan simbol sebuah LED. Berdasarkan Gambar 2.5 dapat diketahui bahwa sebuah LED merupakan dioda yang memancarkan cahaya. Gambar 2.5. Simbol LED 2.3 Persistence of vision ( kekakuan penglihatan ) Persistence Of Vision (POV) merupakan ketidakmampuan mata manusia untuk melihat perubahan yang cepat. Mata manusia hanya dapat melihat perubahan tidak lebih dari 50 Hz. Penomena Persistence Of Vision dimamfaatkan secara luas dalam bidang penampilan. TV atau layar monitor diperbaharui gambarnya sebanyak 60-80 kali setiap detik. 2.4 Transistor Transistor ditemukan Shcokley pada tahun1951. Penemuan transistor membawa revolusi besar-besaran dalam bidang elektronika. Sebelum tahun1951

peralatan elektronika menggunakan tabung vakum yang membutuh ruang yang besar dan daya yang besar. Penemuan ini membuat industri komputer berubah drastis, yang mana sebelumnya komputer berukuran besar dan sangat mahal. Transistor merupakan komponen semikonduktor yang dapat berfungsi sebagai penguat (amplifier), penyambung/pemutus (switch), stabilasi tegangan, modulasi sinyal, sebagai memori dan berbagai fungsi lainnya. Transistor dapat diibaratkan dapat bekerja sebagai keran arus listrik, dimana berdasarkan arus masukan (transitor bipolar) dan tegangan masukan (FET) dapat mengendalikan keluarannya dengan sangat terkendali. 2.5 ULN 2803 ULN 2803 adalah IC yang didalamnya merupakan susunan transistor yang terpasang secara darlington dan dapat menangani arus sebesar 500 ma. Setiap ULN2803 terdapat delapan buah susunan darlington yang dapat bekerja terpisah sehingga beban yang dapat dipasang pada ULN2803 sebanyak 8 buah. ULN2803 sudah terdapat tahanan masukan sebesar 3,7K sehingga dapat dihubungkan lansung dengan TTL/CMOS tanpa membutuhkan tahanan pembatas arus tambahan. Rangkaian dalam ULN2803 diperlihatkan pada Gambar 2.6 dan pena-penanya diperlihatkan pada Gambar 2.7. Gambar 2.6 Bagan Bagian setiap penggerak dalam ULN2803

Gambar 2.7 Pena-Pena ULN2803 2.6 Decade Counter 4017 (Johnson Counter) Johnson counter merupakan sebuah ring counter. HEF4017B merupakan Johnson counter yang digunakan dalam alat yang dirancang. Gambar 2.8 menunjukkan diagram fungsi dari HEF4017B. Gambar 2.8 Diagram Fungsi HEF4017B HEF4017B mempunyai 10 keluaran (Q0-Q9). Sebuah Master Reset (MR) yang berguna untuk mengembalikan seperti keadaan awal. CP0 merupakan penabuh yang menggeser keluaran satu bit selama CP1 berlogika rendah.