PRAKTIKUM 2_LED


PERCOBAAN II
ANTARMUKA MIKROKONTROLER DENGAN LIGHT EMITTING DIODE (LED)


1.      TUJUAN
1.      Mengetahui dan memahami cara mengantarmukakan mikrokontroler dengan rangkaian LED.
2.      Mengetahui dan memahami bagaimana memrogram mikrokontroler untuk menyalakan LED.

2.      DASAR TEORI
2.1 LED

Sebuah LED (Light Emitting Diode) adalah sebuah sumber cahaya yang terbuat dari semikonduktor. Biasanya LED digunakan sebagai lampu indikator dalam beberapa piranti, dan mulai banyak digunakan sebagai penerangan/lampu. Gambar 1 memperlihatkan bentuk fisik LED dan simbol rangkaiannya.



(a)     LED warna merah, hijau dan biru

(b) Simbol elektronik

Gambar 2.1 LED

Untuk menyalakan sebuah LED perlu rangkaian tambahan yang dapat dilihat dalam Gambar 2.2. Rangkaian tersebut berupa sebuah transistor yang difungsikan sebagai saklar dan dua buah resistor untuk pembatas arus. Dalam modul I/O yang dipakai dalam praktikum, kedelapan rangkaian LED tersebut dihubungkan ke sebuah soket jumper bernama OUTPUT.

Gambar 2.2 Rangkaian LED

2.2 PERINTAH DASAR MENGELUARKAN DATA
Sebelum mulai menulis program dengan bahasa C, perlu diketahui bahwa mikrokontroler ATmega8535 perlu diset isi register DDR dan PORT agar bisa digunakan sebagaimana mestinya, seperti yang terlihat dalam Tabel 1.

Tabel 1 Konfigurasi Pengaturan Port I/O

DDR bit = 1
DDR bit = 0
PORT bit = 1
Output ; High
Input; R pull up
PORT bit = 0
Output; Low
Input, Floating

Untuk mengirim data byte dalam bentuk bilangan heksadesimal ke PORTX (X=A, B, C, D) digunakan statement

      PORTX = 0xdata;
      PORTB = 0xaa;

Untuk mengirim data byte dalam bentuk bilangan biner ke PORTX (X=A, B, C, D) digunakan statement

      PORTX = 0bdata;
      PORTB = 0b10101010;

Untuk mengirim data per bit ke PORTX.Y (X=A, B, C, D, dan Y=0, 1, 2 , 3, 4, 5, 6, 7) digunakan statement

      PORTX.Y = data;
      PORTB.1 = 0;

Dimana data bisa berupa 0 atau 1.


3.      ALAT DAN BAHAN YANG DIGUNAKAN

  1. 1 set Personal Computer/Laptop yang sudah berisi program Code Vision dan Khazama
  2. 1 buah catu daya DC +5V
  3. 1 buah multimeter
  4. 1 buah ISP Downloader AVR
  5. 1 buah sistem minimum AVR
  6. 1 buah I/O
  7. 1 buah kabel printer USB
  8. 1 buah kabel pita hitam

4.        PROSEDUR
  1. Rangkailah peralatan yang diperlukan seperti dalam Gambar 2.3. Hubungkan soket jumper PORTB pada minimum system dengan soket jumper OUTPUT pada I/O.


                              Gambar 2.3 Blok diagram antarmuka mikrokontroler

  1. Buka program Code Vision AVR

  1. Buatlah project baru dengan inisialisasi PORTA sebagai output (DDRA = FFH) dan output value = 0 (PORTA=00H) sehingga pada program bagian inisialisasi PORTA terlihat sebagai berikut:
PORTA=0x00;
DDRA=0xff;

  1. Tambahkan file header
#include <delay.h>

  1. Tuliskan dalam program utama sebagai berikut:

// Program LED1
PORTA=0x0f;            
            delay_ms(1000);        
            PORTA=0xf0;            
            delay_ms(1000);

  1. Amati nyala LED dan gambarkan nyala LED tersebut.

  1. Ulangi langkah 3-6 untuk program-program berikut:

//Program LED2
            PORTA=0b00001111;             
            delay_ms(1000);
PORTA=0b11110000;           
            delay_ms(1000);                    

//Program LED3
PORTA=0x55;           
            delay_ms(1000);                    
            PORTA=0xaa;           
            delay_ms(1000);                    

//Program LED4
            PORTA=0b11100111;
delay_ms(1000);        
PORTA=0b11011011;
delay_ms(1000);        
PORTA=0b10111101;
delay_ms(1000);        
PORTA=0b01111110;
delay_ms(1000);        
PORTA=0b10111101;
delay_ms(1000);        
PORTA=0b11011011;
delay_ms(1000);        

//Program LED5
PORTA=0b00000001;     PORTA.0=1;
delay_ms(1000);        
PORTA=0b00000010;     PORTA.1=1;
delay_ms(1000);        
PORTA=0b00000100;
delay_ms(1000);        
PORTA=0b00001000;
delay_ms(1000);        
PORTA=0b00010000;
delay_ms(1000);        
PORTA=0b00100000;
delay_ms(1000);        
            PORTA=0b01000000;
            delay_ms(1000);        
            PORTA=0b10000000;
            delay_ms(1000);  
           
  1. DATA HASIL PERCOBAAN

Program LED1

O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik

Program LED2

O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik

Program LED3

O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik

Program LED4

O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik

Program LED5

O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik
O O O O O O O O delay 1 detik


  1. PEMBAHASAN
1.      Buatlah kesimpulan hasil masing-masing program.
PROGRAM LED1



PROGRAM LED2



PROGRAM LED3



PROGRAM LED4



PROGRAM LED5




2.      Apakah persamaan dan perbedaan PROGRAM LED1 dan PROGRAM LED2?



3.      Instruksi yang digunakan untuk mengeluarkan data ke LED adalah…



4.      Mengapa ada jeda waktu sekitar 1 detik antara tampilan LED yang pertama dengan yang berikutnya?




  1. KESIMPULAN










Tidak ada komentar:

Posting Komentar