a.
Mempelajari aplikasi output pada mikrokontroller
PIC 16F877A
b. Mempelajari aplikasi input pada mikrokontroller PIC 16F877A
c. Mempelajari aplikasi I/O pada
mikrokontroller PIC 16F877A
a. Module PIC 16F877A
b. Switch
c. Seven Segment
d. Jumper
d. Jumper
- · PIC 16F877A
Mikrokontroler PIC16F877A merupakan salah satu
mikrokontroler dari keluarga PICmicro yang popular digunakan sekarang ini,
mulai dari pemula hingga para profesional. Hal tersebut karena PIC16F877A
sangat praktis dan menggunakan teknologi FLASH memori sehingga dapat di
program-hapus hingga seribu kali. Keunggulan mikrokontroler jenis RISC ini
dibanding dengan mikrokontroler 8-bit lain dikelasnya terutama terletak pada
kecepatan dan kompresi kodenya. Selain itu, PIC116F877A juga tergolong praktis
dan ringkas karena memiliki kemasan 40 pin dengan 33 jalur I/O.
Anggota keluarga PICmicro buatan Microchip Inc.
cukup banyak. Ada yang menggunakan FLASH memori dan ada pula yang jenis OTP
(One Time Programmable). Mikrontroler dari keluarga PICmicro yang popular,
antara lain PIC2C08, PIC16C54, PIC16F84. Agar lebih mengenal PIC16F877A,
berikut ini diberikan fitur-fitur penting yang terdapat pada PIC16F877A.
Fitur-Fitur
PIC16F877A
- RISC CPU yang mempunyai performance tinggi
- Hanya 35 jenis instruksi yang perlu dipelajari
- Semua instrujsi mempunyai siklus tunggal kecuali untuk instruksi percabangan.
- Kecepatan Instruksi: DC – 20 MHz clock input DC – 200 ns instruction cycle
- 8K x 14 words of FLASH Program Memory, 368 x 8 bytes of Data Memory (RAM) , 256 x 8 bytes of EEPROM Data Memory
- Pinout compatible dengan PIC16C73B/74B/76/77
- Interrupt (14 sumber interrupt)
- Delapan level hardware stack
- Direct, indirect dan relative addressing modes
- Power-on Reset (POR)
- Power-up Timer (PWRT) dan Oscillator Start-up Timer (OST)
- Watchdog Timer (WDT) dengan on-chip RC oscillator
- Programmable code protection dan Fully static design
- Power saving SLEEP mode
- Selectable oscillator options
- Low power, high speed CMOS FLASH/EEPROM technology
- In-Circuit Serial Programming (ICSP) hanya dengan dua pin
- Single 5V In-Circuit Serial Programming capability
- Processor read/write access to program memory
- Wide operating voltage range: 2.0V to 5.5V
- High Sink/Source Current: 25 mA
- Commercial, Industrial and Extended temperature ranges
Deskripsi Pin Pin
Mikrokontroler PIC16F877A di produksi dalam kemasan 40 pin PDIP (Plastik
Dual In Line) maupun 40 pin SO (Small Outline). Namun yang banyak terdapat dipasaran
adalah kemasan PDIP. Pin-pin untuk I/O sebanyak 33 pin, yang terdiri atas 6
pada Port A, 8 pada Port B, 8 pada Port C, 8 pada Port D, 3 pada Port E. Ada
pula beberapa Pin pada mikrokontroler yang memiliki fungsi ganda.
Organisasi Memori
Memori pada PIC16F877A dapat dipisahkan menjadi dua blok memori, satu untuk
memori program dan satu untuk memori data. Memori EEPROM dan register GPR
didalam RAM merupakan memori data, sedangkan memori FLASH merupakan memori
program.
- · Seven Segment
Seven
Segment Display memiliki 7 Segmen dimana setiap segmen dikendalikan secara ON
dan OFF untuk menampilkan angka yang diinginkan. Angka-angka dari 0 (nol) sampai
9 (Sembilan) dapat ditampilkan dengan menggunakan beberapa kombinasi Segmen.
Selain 0 – 9, Seven Segment Display juga dapat menampilkan Huruf Hexadecimal
dari A sampai F. Segmen atau elemen-elemen pada Seven Segment Display diatur
menjadi bentuk angka “8” yang agak miring ke kanan dengan tujuan untuk
mempermudah pembacaannya. Pada beberapa jenis Seven Segment Display, terdapat
juga penambahan “titik” yang menunjukan angka koma decimal. Terdapat beberapa jenis Seven Segment
Display, diantaranya adalah Incandescent bulbs, Fluorescent lamps (FL), Liquid
Crystal Display (LCD) dan Light Emitting Diode (LED).
LED
7 Segmen (Seven Segment LED)
Salah
satu jenis Seven Segment Display yang sering digunakan adalah 7 Segmen yang
menggunakan LED (Light Emitting Diode) sebagai penerangnya. LED 7 Segmen ini umumnya memiliki 7 Segmen
atau elemen garis dan 1 segmen titik yang menandakan “koma” Desimal. Jadi
Jumlah keseluruhan segmen atau elemen LED sebenarnya adalah 8. Cara kerjanya
pun boleh dikatakan mudah, ketika segmen atau elemen tertentu diberikan arus
listrik, maka Display akan menampilkan angka atau digit yang diinginkan sesuai
dengan kombinasi yang diberikan.
Terdapat
2 Jenis LED 7 Segmen, diantaranya adalah “LED 7 Segmen common Cathode” dan “LED
7 Segmen common Anode”.
LED
7 Segmen Tipe Common Cathode (Katoda)
Pada
LED 7 Segmen jenis Common Cathode (Katoda), Kaki Katoda pada semua segmen LED
adalah terhubung menjadi 1 Pin, sedangkan Kaki Anoda akan menjadi Input untuk
masing-masing Segmen LED. Kaki Katoda
yang terhubung menjadi 1 Pin ini merupakan Terminal Negatif (-) atau Ground
sedangkan Signal Kendali (Control Signal) akan diberikan kepada masing-masing
Kaki Anoda Segmen LED.
LED
7 Segmen Tipe Common Anode (Anoda)
Pada
LED 7 Segmen jenis Common Anode (Anoda), Kaki Anoda pada semua segmen LED
adalah terhubung menjadi 1 Pin, sedangkan kaki Katoda akan menjadi Input untuk
masing-masing Segmen LED. Kaki Anoda yang terhubung menjadi 1 Pin ini akan
diberikan Tegangan Positif (+) dan Signal Kendali (control signal) akan
diberikan kepada masing-masing Kaki Katoda Segmen LED.
Prinsip
Kerja Dasar Driver System pada LED 7 Segmen
Blok
Dekoder pada diagram diatas mengubah sinyal Input yang diberikan menjadi 8
jalur yaitu “a” sampai “g” dan poin decimal (koma) untuk meng-ON-kan segmen
sehingga menghasilkan angka atau digit yang diinginkan. Contohnya, jika output
dekoder adalah a, b, dan c, maka Segmen LED akan menyala menjadi angka
“7”. Jika Sinyal Input adalah berbentuk
Analog, maka diperlukan ADC (Analog to Digital Converter) untuk mengubah sinyal
analog menjadi Digital sebelum masuk ke Input Dekoder. Jika Sinyal Input sudah
merupakan Sinyal Digital, maka Dekoder akan menanganinya sendiri tanpa harus
menggunakan ADC.
Fungsi
daripada Blok Driver adalah untuk memberikan arus listrik yang cukup kepada
Segmen/Elemen LED untuk menyala. Pada Tipe Dekoder tertentu, Dekoder sendiri
dapat mengeluarkan Tegangan dan Arus listrik yang cukup untuk menyalakan Segmen
LED maka Blok Driver ini tidak diperlukan. Pada umumnya Driver untuk menyalakan
7 Segmen ini adalah terdiri dari 8 Transistor Switch pada masing-masing elemen
LED.
PRINSIP KERJA :
Pada percobaan ini kamai
menggunakan PIC 16F877A sebagai
mikrokontroller dengan switch sebagai input dan seven segment sebagai output.
Switch terhubung ke pin RD.2 dan RD.3 serta
seven segment terhubung ke PORT B, pin RD.0 dan RD.1. ketika switch
kedua yang terhubung ke pin RD.3 aktif HIGH, maka seven segment akan counter
down 2 digit dari 9 hingga 0.
void main(void) //Fungsi utama program
{ //Pembuka program utama
int i,j[]={0x3F, 0x06, 0x5B, 0x4F, 0x66,
0x6D, 0x7D, 0x07, 0x7F, 0x67};
//Deklarasi varaiabel i dan array j bertipe int
PORTB=0x00; //Deklarasi PORT B dengan kondisi awal LOW
TRISB=0x00; //Deklarasi PORT B secara
keseluruhan sebagai OUTPUT
PORTD=0x00; //Deklarasi PORT D dengan kondisi awal
LOW
TRISD=0x0F; //Deklarasi PORT B sebagai
OUTPUT dan INPUT
while(1) //Fungsi perulangan
{
if(PORTD.RD3==1) //Jika pin RD.3 aktif HIGH
{
for(i=9;i>=0;i--) //7-segment counter down dari 9-0
{
PORTB=j[i]; //Kondisi PORT B sesuai array j dengan
urutan i
delay_ms(100); //Delay selama 100ms
}
}
else //Jika kondisi if tidak terpenuhi
{
PORTB=0x00; //Kondisi PORT B mati
}
}
} //Akhir program
Ketika
ditekan switch 2 maka seven segment akan counter down 2 digit dari 9 sampai 0
File HTML
(Download)
Video Rangkaian
(Download)
No comments:
Post a Comment