PIC16F84
Tinjauan Umum
PIC16F84 merupakan mikrokontroler kelas menengah (mid range) yang dikeluarkan oleh Microchip. Mikrokontroler PIC16F84 menggunakan arsitektur Harvard yang menekankan pemisahan memori data dan memori program, hal ini membuat mikrokontroler PIC16F84 sangat handal dan cepat dibandingkan mikrokontroler lainnya yang sekelas.
Karena memori program dan memori data mikrokontroler PIC16F84 terpisah, lebar memori data dan memori program pun jelas berbeda. Dalam hal ini lebar memori program memiliki lebar 14 bit dan memori data memiliki lebar 8 bit. Opcode dan operand dalam memori program mikrokontroler PIC16F84 dikemas dalam paket 14 bit, hal ini jelas menguntungkan karena opcode dan operand hanya memerlukan satu alamat memori dan ini jelas menambah efisiensi memori program mikrokontroler ini.
Mikrokontroler PIC16F84 juga dikenal mengadopsi arsitektur RISC (Reduced Instruction Set Computer), karena itu mikrokntroler ini hanya menyediakan 35 jenis instruksi umum. Instuksi ini sangat efektif dan mudah dipelajari.
Fitur:
- Memori program 1024 byte, masing masing selebar 14 bit.
- 68 byte RAM, masing-masing selebar 8 bit.
- 64 byte EEPROM, masing-masing selebar 8 bit.
- 15 buah register fungsi khusus (SFR)
- Stack 8 tingkat.
- Pengalamatan langsung dan tidak langsung.
- Interupsi Eksternal
- 13 buah pin I/O yang dapat dikendalikan secara individual.
- Pencacah internal 8 bit.
- Watchdog Timer.
- Proteksi Kode
- Modus penghematan daya.
Memory
Mikrokontroler PIC16F84 memiliki kapasaitas memori program 1 kilobyte, EEPROM 64 byte dan RAM 68 byte. Mikrokontroler PIC16F84 memiliki memori program berjenis Flash EEPROM yang bersifat nonvolatile reprogramable, karena itu sangat cocok untuk penelitian maupun aplikasi lapangan.
Set Instruksi
Mikrokontroler PIC16F84 memiliki 33 jenis instruksi yang dikelompokkan menjadi bit oriented instruction, byte oriented instruction serta literal and control instruction.
- Bit Oriented Instruction
- Instruksi ini berorientasi pada operasi bit per bit.
- Byte Oriented Instruction
- Kelompok instruksi ini berorientasi pada operasi byte per byte. Lebih detail lagi, byte oriented insturuction dapat dibagi menjadi:
- Instruksi pentransferan data
- Instruksi Aritmatika dan Logika
- Instruksi Lainnya
- Literal and Control Instruction
- Kelompok instruksi ini berorientasi pada pengontrolan aliran program dan pemuatan register dengan data literal (immediate).
Tabel Instruksi Beroreintasi Byte:
Instruksi | Operasi | Flag | Penjelasan |
---|---|---|---|
Instruksi Pentransferan Data | |||
baris1, kolom1 | baris1, kolom2 | baris1, kolom3 | baris1, kolom4 |
baris2, kolom1 | baris2, kolom2 | baris2, kolom3 | baris2, kolom4 |
Pemrograman
IDE yang digunakan untuk pemrograman mikrokontroler PIC16F84 adalah MPLAB