Modul 4 (PIC)


MODUL IV 
Mikrokontroller PIC 16F877A


1. Tujuan [kembali]
a.      Merangkai dan menguji output pada mikrokontroller PIC 16F877A
b.      Merangkai dan menguji input pada mikrokontroller PIC 16F877A
c.      Merangkai dan menguji aplikasi I/O pada mikrokontroller PIC 16F877A

2. Alat dan Bahan [kembali]

          a.    Module PIC 16F877A
          b.    LED
          c.    Seven Segment
          d.    Buzzer
          e.    LCD
           f.    Jumper
          g.    Motor stepper 
          h.    Sensor LM35
           i.    Keypad
           j.    Sensor Ultrasonic
           k.   Dot matrix

3. Dasar Teori [kembali]

A. Mikrokontroler PIC16F877A

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.

MIkrokontroller PIC16F877A

Fitur-Fitur PIC16F877A
  1. RISC CPU yang mempunyai performance tinggi
  2. Hanya 35 jenis instruksi yang perlu dipelajari
  3. Semua instrujsi mempunyai siklus tunggal kecuali untuk instruksi percabangan.
  4. Kecepatan Instruksi: DC – 20 MHz clock input DC – 200 ns instruction cycle
  5. 8K x 14 words of FLASH Program Memory, 368 x 8 bytes of Data Memory (RAM) , 256 x 8 bytes of EEPROM Data Memory
  6. Pinout compatible dengan PIC16C73B/74B/76/77
  7. Interrupt (14 sumber interrupt)
  8. Delapan level hardware stack
  9. Direct, indirect dan relative addressing modes
  10. Power-on Reset (POR)
  11. Power-up Timer (PWRT) dan Oscillator Start-up Timer (OST)
  12. Watchdog Timer (WDT) dengan on-chip RC oscillator
  13. Programmable code protection dan Fully static design
  14. Power saving SLEEP mode
  15. Selectable oscillator options
  16. Low power, high speed CMOS FLASH/EEPROM technology
  17. In-Circuit Serial Programming (ICSP) hanya dengan dua pin
  18. Single 5V In-Circuit Serial Programming capability
  19. Processor read/write access to program memory
  20. Wide operating voltage range: 2.0V to 5.5V
  21. High Sink/Source Current: 25 mA
  22. 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.


B. LED

LED adalah suaatu semikonduktor yang memancarkan cahaya,  LED mempunyai kecenderungan polarisasi. LED mempunyai kutub positif dan negatif (p-n) dan hanya akan menyala bila diberikan arus maju. Ini dikarenakan LED terbuat dari bahan semikonduktor yang hanya akan mengizinkan arus listrik mengalir ke satu arah dan tidak ke arah sebaliknya. Bila LED diberikan arus terbalik, hanya akan ada sedikit arus yang melewati  LED. Ini menyebabkan LED tidak akan mengeluarkan emisi cahaya.


C. SEVENT SEGMENT


Layar tujuh segmen ini seringkali digunakan pada jam digital, meteran elektronik, dan perangkat elektronik lainnya yang menampilkan informasi numerik. Layar tujuh segmen ini terdiri dari 7 buah LED yang membentuk angka 8 dan 1 LED untuk titik/DP. Angka yang ditampilkan di seven segmen ini dari 0-9. Cara kerja dari seven segmen disesuaikan dengan LED. LED merupakan komponen diode yang dapat memancarkan cahaya. kondisi dalam keadaan ON jika sisi anode mendapatkan sumber positif dari Vcc dan katode mendapatkan sumber negatif dari ground.
Berdasarkan cara kerjanya, tujuh segmen dibagi menja

D. BUZZER

Buzzer adalah sebuah komponen elektronika yang berfungsi untuk mengubah getaran listrik menjadi getaran suara. Pada dasarnya prinsip kerja buzzer hampir sama dengan loud speaker, jadi buzzer juga terdiri dari kumparan yang terpasang pada diafragma dan kemudian kumparan tersebut dialiri arus sehingga menjadi elektromagnet, kumparan tadi akan tertarik ke dalam atau keluar, tergantung dari arah arus dan polaritas magnetnya, karena kumparan dipasang pada diafragma maka setiap gerakan kumparan akan menggerakkan diafragma secara bolak-balik sehingga membuat udara bergetar yang akan menghasilkan suara. Buzzer biasa digunakan sebagai indikator bahwa proses telah selesai atau terjadi suatu kesalahan pada sebuah alat (alarm)

E. LCD


berikut penjelasan kakinya yaitu:


F. JUMPER



Sebagai konektor antar modul satu dengan modul lainnya


G. MOTOR STEPPER




(Motor stepper )mengubah pulsa-pulsa listrik yang diberikan menjadi gerakan-gerakan diskrit rotor yang disebut langkah (steps). Nilai rating dari suatu motor stepper diberikan dalam langkah per putaran (steps per revolution). Motor stepper umumnya mempunyai kecepatan dan [torsi] yang rendah.
Motor stepper bekerja berdasarkan pulsa-pulsa yang diberikan pada lilitan fasenya dalam urut-urutan yang tepat. Selain itu, pulsa-pulsa itu harus juga menyediakan arus yang cukup besar pada lilitan fase tersebut. Karena itu untuk pengoperasian motor stepper pertama-tama harus mendesain suatu sequencer logic untuk menentukan urutan pencatuan lilitan fase motor dan kemudian menggunkan suatu penggerak (driver) untuk menyediakan arus yang dibutuhkan oleh lilitan fase

H. SENSOR LM35

Sensor suhu IC LM 35 merupkan chip IC produksi Natioanal Semiconductor yang berfungsi untuk mengetahui temperature suatu objek atau ruangan dalam bentuk besaran elektrik, atau dapat juga di definisikan sebagai komponen elektronika yang berfungsi untuk mengubah perubahan temperature yang diterima dalam perubahan besaran elektrik

I. KEYPAD






Penyusun tombol pada keypad dapat dibuat dari bermacam-macam bahan/komponen, seperti switch metal, switch karbon, dan resistif/kapasitif (touch panel). Penggunaan bahan tersebut disesuaikan dengan kebutuhan akan sensifitas, aksi penekanan, dan kebutuhan akan suatu tombol khusus. Bahan switch metal pada keypad digunakan untuk kebutuhan keypad atau tombol-tombol dengan arus yang besar. Keypad dengan bahan carbon dipakai untuk kebutuhan tombol-tombol dengan arus kecil. Biasanya itu digunakan untuk alat-alat digital yang hanya memilikitegangan 0 dan 5v. Penerapan bahan banyak kita jumpai seperti pada keypad remot tv, remot ac, joy stick, serta masih banyak lainnya.


J. SENSOR ULTRASONIC





Sensor ultrasonik PING terdiri dari tiga bagian utama yaitu :

  • Transmitter Gelombang Ultrasonik
  • Receiver Gelombang Ultrasonik
  • Rangkaian kontrol

Transmitter berfungsi sebagai pemancar gelombang ultrasonik. Gelombang yang dipancarkan memiliki frekuensi 40KHz. Gelombang ini akan dipancarakan dengan kecepatan 344.424m/detik atau 29.034uS per centimeter. Jika didepan terdapat halangan atau objek maka gelombang tersebut akan memantul. Pantulan gelombang akan dideteksi oleh receiver. Rangkaian kontrol akan mendeteksi pantulan gelombang dan menghitung lama waktu saat gelombang dipancarkan dan gelombang terdeteksi pantulannya. Lama waktu pemantulan gelombang ini akan dikonversi menjadi sinyal digital dalam bentuk pulsa. Sinyal inilah yang nantinya diolah oleh mikrokontroler atau mikroprosesor sehingga didapat nilai jarak antara objek dan sensor. Nilai jarak dapat diperoleh melalui rumus berikut ini :

Jarak (cm) = Lama Waktu Pantul (uS) / 29.034 / 2

Rumus jarak didapat dari pembagian lama waktu pantul dengan kecepatan gelombang ultrasonik dan dibagi 2 karena pada saat pemantulan terjadi dua kali jarak tempuh antara sensor dengan objek. Yaitu pada saat gelombang dipancarkan dari transmitter ke objek dan pada saat gelombang memantul ke receiver ultrasonik.

K. DOTMATRIX

Dot matrix adalah susunan titik-titik dua dimensi yang digunakan untuk menampilkan karakter-karakter, simbol atau gambar. Dahulu dot matrix digunakan pada printer-printer tua dan banyak perangkat tampilan digital. Pada printer, titik-titik tersebut adalah daerah yang diredupkan. Sedangkan pada display, titik-titik tersebut adalah daerah yang bercahaya. Sebagaimana pada LED atau CRT display cara kerjanya titik-titik yang sebelumnya mati, bercahaya sesuai sesuai obyek yang diinginkan.
Dot matrix banyak digunakan untuk menampilkan informasi pada mesin-mesin, jam, indikator keberangkatan kereta api dan perangkat lainnya yang membutuhkan display sederhana untuk resolusi yang terbatas. Display ini terdiri dari LED yang tersusun secara matrix berbentuk segi empat (bentuk selain segi empat juga ada) sehingga dengan menyalakan/mematikan lampu yang diinginkan, teks atau grafik yang dapat ditampilkan. Pengendali dot matrix mengkonversi instruksi dari decoder ke dalam sinyal elektris yang dapat menyalakan atau mematikan lampu sehingga tampilan yang diinginkan dapat terjadi.




4. Tugas Pendahuluan [kembali]
Dengan kondisi awal LED mati, input switch pertama 2 LED hidup, switch kedua 4 LED hidup, switch ketiga 6 LED hidup, switch keempat 8 LED hidup dan switch kelima semua LED mati.


5. Flowchart [kembali]



6. Listing Program [kembali]

void main() {
     PORTB=0x00;             
     TRISB=0x00;               
     PORTD=0x00;             
     TRISD=0x1f;             

while(1)
{
if(PORTD.RD0==1)     
{
PORTB=0x30;              
delay_ms(100);             
PORTB=0x00;           
delay_ms(100);            
}
if (PORTD.RD1==1)                             
{
PORTB=0xf0;             
delay_ms(100);          
PORTB=0x00;             
delay_ms(100);          
}
if (PORTD.RD2==1)                              
{
PORTB=0xf3;        
delay_ms(100);            
PORTB=0x00;           
delay_ms(100);            
}
if (PORTD.RD3==1)                            
{
PORTB=0xff;             
delay_ms(100);          
PORTB=0x00;           
delay_ms(100);           
}
if (PORTD.RD4==1)
{
PORTB=0x00;            
delay_ms(100);            
PORTB=0x00;            
delay_ms(100);            
}
}}                              

7. Video Simulasi [kembali]


8. Analisa Hubungan Rangkaian dengan Program [kembali]

Pada rangkaian ini digunakan 8 buah LED, 5 buah switch, mikrokontroler PIC, rangkaian reset, dan rangkaian clock mikrokontroler. Pada rangkaian jika switch 1 yang terhubung ke PIN D0 dihidupkan maka 2 buah LED yang hidup. Pada rangkaian switch 2 yang terhubung ke PIN D1 dihidupkan maka 4 buah LED yang hidup. Pada rangkaian jika switch 3 yang terhubung ke PIN D2 dihidupkan maka 6 buah LED yang hidup. Pada rangkaian jika switch 4 yang terhubung ke PIN D3 dihidupkan maka 2 buah LED yang hidup dan pada rangkaian jika switch 5 yang terhubung ke PIN D4 dihidupkan maka tidak ada LED yang hidup. Rangkaian ini diproses pada mikrokontroler PIC yang diprogram melalui aplikasi MikroC for PIC. Setiap switch diatur menjadi input sedangkan LED diatur menjadi output. Setiap switch diatur apabila aktif dengan logika PIN yang tersambung ke setiap switch dijadikan bernilai "1" dan LED akan memproses inputan tadi dengan hidup atau mati sesuai dengan yang kita program.


9. Link Download [kembali]
link download semua bahan = [DOWNLOAD]
Share on Google Plus

About Yovan Madina Fumasa

    Blogger Comment
    Facebook Comment

0 komentar:

Posting Komentar