Selasa, 21 November 2017

Antarmuka Mikrokontroler dengan led



Antarmuka dengan Piranti LED

1. Rangkaian Antarmuka Mikrokontroler dengan LED

Sebelum menghubungkan piranti eksternal dengan mikrokontroler, harus dilakukan analisis antarmuka yang cermat untuk meyakinkan bahwa tegangan, arus dan pewaktuan yang diperlukan memenuhi persyaratan yang diberikan oleh mikrokontroler maupun piranti eksternal tersebut. Berikut ini akan dibahas bagaimana menghubungkan LED dengan mikrokontroler AVR. 
Sebuah LED (Light Emitting Diode) adalah sebuah sumber cahaya yang terbuat dari semikonduktor. Biasanya LED digunakan sebagai lampu indikator logika 1 atau logika 0 pada pin tertentu di mikrokontroler, dan mulai banyak digunakan sebagai penerangan/lampu. Gambar 3.2 memperlihatkan bentuk fisik LED dan simbol rangkaiannya. Sebuah LED mempunyai 2 kaki yaitu anoda atau kaki positif dan katoda atau kaki negatif.  Untuk menyalakan LED, maka kaki anoda harus diberi tegangan 1.7 V -  2.2 V lebih besar daripada kaki katoda. Tegangan ini disebut tegangan  maju (Vf). Arus LED juga harus dibatasi oleh besar arus tertentu yang disebut arus maju (If). Tegangan maju dan arus maju biasanya tercantum dalam datasheet LED tersebut.

(a) LED warna merah, hijau dan biru

(b)  

(b) Simbol elektronik
Gambar 3.2 LED

            Contoh rangkaian LED dapat dilihat dalam Gambar 3.3. Logika 1 diberikan oleh mikrokontroler ke masukan inverter. Inverter akan memberikan logika 0 pada output-nya sehingga akan memberikan virtual ground pada kaki katoda LED. Resistor membatasi arus yang melewati LED tersebut.  Nilai resistor dapat dihitung dari persamaan (3.1). 
R = (VDD − VDIODE)/IDIODE                                                                    (3.1)
Gambar 3.3 Rangkaian antarmuka mikrokontroler dengan LED

Gambar 3.4 Rangkaian LED dalam trainer I/O

Penting untuk diingat bahwa IC inverter 7404 harus digunakan karena kemampuannya untuk memberikan arus 16 mA dengan aman. Sebagai alternatif, dapat digunakan transistor NPN seperti 2N2222 (PN2222 atau MPQ2222)  sebagai pengganti inverter seperti yang ditunjukkan dalam Gambar 3.3.
Dalam trainer I/O yang digunakan, rangkaian antarmuka mikrokontroler dengan LED yang dihubungkan dengan kedelapan pin sebuah port dapat dilihat dalam Gambar 3.4. Dalam modul trainer I/O yang dipakai dalam praktikum, kedelapan rangkaian LED tersebut dihubungkan ke sebuah soket jumper bernama OUTPUT.

2. Perintah Dasar Mengeluarkan Data

Sebelum mulai menulis program dengan bahasa C, perlu diketahui bahwa mikrokontroler AVR perlu diset isi register DDR dan PORT agar bisa digunakan sebagaimana mestinya, seperti yang terlihat dalam Tabel 3.2.

Tabel 3.2 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;
Contohnya:
PORTB = 0xaa;
Untuk mengirim data byte dalam bentuk bilangan biner ke PORTX (X=A, B, C, D) digunakan statement:
 PORTX = 0bdata;
Contohnya:
 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;
Dimana data bisa berupa 0 atau 1.
Contohnya:
PORTB.1 = 0;




0 komentar:

Posting Komentar

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Affiliate Network Reviews