Perhatikan gambar rangkaian LED di bawah ini. Rangkaian terdiri dari sebuah resistor yang diseri dengan sebuah LED.
Gambar rangkaian sebelah kiri adalah rangkaian LED Aktif-Low. Dan gambar sebelah kanan adalah rangkaian LED Aktif-High.

Fungsi resistor seri pada rangkaian diatas adalah sebagai pembatas arus.
Anda bisa menggunakan resistor dengan nilai yang aman mulai 150 ohm, 180 ohm, 220 ohm, hingga 2K2 ohm tergantung dari tipe LED yang Anda gunakan dan seberapa tingkat kecerahan dari nyala LED yang Anda inginkan.
Btw, saya menggunakan software ExpressSCH untuk menggambar rangkaian LED di atas. ExpressSCH adalah software untuk menggambar skematik yang merupakan bagian dari paket software ExpressPCB.
Pada rangkaian LED Aktif-Low, LED akan menyala jika PIN-8 (PB0) diberi logika 0 (LOW) dan akan padam jika diberi logika 1 (HIGH).
Penjelasannya adalah sebagai berikut.
Ketika diberi logika 0, maka tegangan pada kaki anoda LED lebih positif dibandingkan dengan kaki katoda.
Selisih tegangan pada kaki anoda dan katoda LED ini melebihi tegangan jatuh LED, sehingga LED pun menghantar (dialiri arus listrik) dan menyala.
Sebaliknya, ketika diberi logika 1, maka kaki anoda LED tidak lebih positif daripada kaki katoda, oleh karenanya LED tidak menghantar (tidak dialiri arus listrik) sehingga LED pun tidak menyala.
Sekarang perhatikan gambar rangkaian LED Aktif-High.
Pada rangkaian LED Aktif-High, LED akan menyala jika PIN-9 (PB1) diberi logika 1 (HIGH) dan akan padam jika diberi logika 0 (LOW).
Ketika diberi logika 1, maka tegangan pada kaki anoda LED lebih positif dibandingkan dengan kaki katoda LED.
Selisih tegangan pada kaki anoda dan katoda LED ini melebihi tegangan jatuh LED, sehingga LED pun menghantar (dialiri arus listrik) dan menyala.
Sebaliknya, ketika diberi logika 0, maka tegangan pada kaki anoda LED tidak lebih positif daripada kaki katoda LED, oleh karenanya LED tidak menghantar (tidak dialiri arus listrik) sehingga LED pun tidak menyala.
Kode Program Kontrol LED
Dengan mengacu pada rangkaian LED di atas, maka pin kontrol untuk rangkaian LED Aktif-Low terhubung ke PORTB.0 (PB0) dan pin kontrol untuk rangkaian LED Aktif-High terhubung ke PORTB.1, (PB1).
Dan berikut ini adalah contoh program kontrol LED untuk AVR-GCC.
Contoh Program Kontrol LED AVR-GCC
// Kontrol LED Aktif Low dan Aktif High // Teknik Elektro Links // https://teknikelektrolinks.com #define F_CPU 1000000L #include <avr/io.h> #include <util/delay.h> #define ON 1 #define OFF 0 //macro LED ON/OFF untuk LED Aktif-Low #define LED_AL(x) ((x)==(ON) ? (PORTB&=~_BV(PB0)) : (PORTB|=_BV(PB0))) //macro LED ON/OFF untuk LED Aktif-High #define LED_AH(x) ((x)==(ON) ? (PORTB|=_BV(PB1)) : (PORTB&=~_BV(PB1))) int main(void) { PORTB = 0b00000001; //PB1=0, PB0=1 --> kedua LED OFF DDRB = 0b00000011; //PB0 dan PB1 sebagai output while(1) { LED_AL(ON); LED_AH(ON); //kedua LED ON _delay_ms(500); //delay 1/2 detik LED_AL(OFF); LED_AH(OFF); //kedua LED OFF _delay_ms(500); //delay 1/2 detik } }
Contoh Program Kontrol LED (Arduino)
Dengan mengacu pada rangkaian di atas, maka pin kontrol untuk LED Aktif-Low terhubung ke PIN-8 dan pin kontrol untuk rangkaian LED Aktif-High terhubung ke PIN-9, berikut adalah contoh program pengendalian LED untuk Arduino.
// Kontrol LED Aktif Low dan Aktif High // Teknik Elektro Links // https://teknikelektrolinks.com void setup() { pinMode(8, OUTPUT); //pin-8 sebagai output pinMode(9, OUTPUT); //pin-9 sebagai output } void loop() { digitalWrite(8, LOW); //LED Aktif-Low ON digitalWrite(9, HIGH); //LED Aktif-High ON delay(500); //delay 1/2 detik digitalWrite(8, HIGH); //LED Aktif-Low OFF digitalWrite(9, LOW); //LED Aktif-High OFF delay(500); //delay 1/2 detik }
Rangkaian LED Aktif-Low dan Aktif-High merupakan rangkaian yang sangat penting dalam bereksperimen mikrokontroler.
Tidak hanya karena murah dan mudah dirangkai, tapi kedua rangkaian tersebut dapat mewakili berbagai macam rangkaian output, baik yang aktif-low maupun yang aktif-high seperti relay, buzzer, motor, dan solenoid.
Hubungi Kami
Teknik Elektro Links melayani perancangan dan pembuatan sistem kontrol dan monitoring berbasis mikrokontroler. Kami menggunakan beberapa tipe mikrokontroler antara lain: MCS51, AVR, PIC, STM8, Arduino, ESP8266, ESP32.
Untuk panel kontrol industri, selain menggunakan beberapa tipe mikrokontroler yang sudah teruji baik di industri, kami menggunakan Zelio Smart-Relay.
Kami juga melayani pembuatan program aplikasi untuk platform Windows, Linux dan Raspberry Pi.
Whatsapp: 0882-3560-7047.
Semoga bermanfaat dan selamat belajar.