Projek Pergerakkan LED
Mengendalikan LED dengan kondisi HIGH (LED hidup) atau LOW (LED mati) melalui Microcontroller NodeMCU. Dengan memanfaatkan waktu tunda memberi efek LED bergerak.
Last updated
Was this helpful?
Mengendalikan LED dengan kondisi HIGH (LED hidup) atau LOW (LED mati) melalui Microcontroller NodeMCU. Dengan memanfaatkan waktu tunda memberi efek LED bergerak.
Last updated
Was this helpful?
LED (Light Emiting Diode) banyak digunakan sebagai indikator berlangsungnya proses, awal proses atau berakhirnya proses pada sistem microcontroller, sehingga pengguna dapat mengetahui proses yang sedang terjadi. LED memiliki polaritas plus dan minus, biasanya posisi plus tegangan ditandai dengan kaki yang lebih panjang dari yang lainnya, seperti tampak gambar di bawah ini
Seperti dijelaskan pada bagian sebelumnya. Karena keterbatasan pin NodeMCU untuk mengendalikan banyak output maka kontrol rangkaian LED melalui 2 buah IC shift registry. IC 74HC595 adalah komponen yang berfungsi untuk melakukan perubahan sinyal digital dari bentuk serial menjadi output paralel sebanyak 8 buah. IC ini sering digunakan sebagai ekspansi pin dari mikrokontroller yang memiliki pin output sedikit. Hal ini sangat menguntungkan jika anda ingin mengontrol 40 buah lampu dengan mikrokontroller yang hanya memiliki pin kurang dari itu.
Sederhananya, IC 74HC595 menerima input berupa serial yang membutuhkan 3 pin saja dan memprosesnya menjadi 8 output. Namun kita juga bisa menambahkan sejumlah IC 74HC595 secara seri sehingga kita memiliki output kelipatan 8. Misal kita berikan 3 IC maka output berjumlah 24.
Ingat pada IC ini, kita beroperasi pada listrik searah (DC) dan menggunakan sinyal digital. adapun penyebutan sinyal digital adalah 0 untuk mati dan 1 untuk hidup. 1 buah IC 74HC595 memberikan output sejumlah 8, oleh karena itu terdapat 8bit data output dengan masing masing adalah 1 ataupun 0.
VCC : Suplai tegangan + dengan tegangan 5V/3.3V
GND : Suplai tegangan GND
Q0-Q7 : Pin output dari IC 74HC595, berjumlah 8 dan dimulai dari Q0
SRCLR/MR : untuk mengosongkan deretan output menjadi 0 (bersifat Active Low sehingga deretan output menjadi 0 jika diberikan tegangan GND/0)
OE : (Output Enable) berfungsi untuk mematikan menghidupkan / mengaktifkan pin output (bersifat Active Low maka jika diberikan tegangan GND pin output tetap hidup)
DATA/DS/SER : adalah pin data masukan untuk menentukan bit pin output.
SRCLK/SHCP : berfungsi untuk memasukkan bit berdasarkan bit pin data.
RCLK/STCP : berfungsi untuk mengeluarkan deretan kondisi tersebut pada pin output.
Pemasukkan bit output
Yang bertugas memasukkan bit adalah pin Data dan SRCLK/SHCP
Pertama pin data diberikan sinyal 0 atau 1 (tergantung keinginan pengguna)
Kemudian pin SRCLK diberikan sinyal 1.
Disaat SRCLK menerima sinyal 1 (Hidup), 1 bit data bernilai sinyal yang berdasarkan pin data disimpan.
misalnya pin data diberikan 1 maka 1 bit data bernilai 1 tersimpan. bit tersebut tersimpan tapi belum dikeluarkan ke pin output.
Terakhir kedua pin tersebut dimatikan.
kemudian langkah diatas diulangi lagi untuk memasukkan bit kedua dst.
Pengeluaran bit output ke pin output
pin RCLK/STCP diberikan sinyal 1, maka bit bit yang tersimpan dikeluarkan ke pin output.
Misalkan bit tersimpan adalah : 0 1 maka pin Q0 tidak ada tegangan (0), sementara Q1 ada tegangan (1)
pin RCLK dimatikan, Output tetap pada kondisi masing-masing.
Anda bisa berikan beban apapun pada pin keluaran 74HC595, seperti lampu LED untuk menandakan bahwa pin tersebut memiliki kondisi 1 atau 0.
Catatan: Anda tidak perlu pusing tentang masalah shift register. Pada implementasi program akan digunakan library yang menangani hal ini. Kita cukup mengetahi bagaimana cara penggunaan shift register dalam implementasi programnya.
Projek bertujuan untuk mengendalikan 9 LED, kapan hidup dan kapan mati. Dengan memainkan waktu tunda dan mengubah urutan LED aktif/mati akan menjadikan rangkaian LED tersebut seolah-olah membentuk animasi. Kontrol LED hanya dalam dua kondisi yaitu HIGH atau LOW (hidup atau mati).
Program membutuhkan library ShiftRegister74HC595 untuk memudahkan kita mengelola IC 74HC595. Instalasi library dalam IDE Arduino dapat dilakukasn dengan cara berikut:
Download library di https://github.com/Simsso/ShiftRegister74HC595. Kemudian file ShiftRegister74HC595-master.zip diinstal melalui menu Sketch > Include Library > Add .ZIP library.
Cara lain, library ShiftRegister74HC595 dapat diinstall secara online. Buka menu Sketch > Inlcude Library > Manage Libraries. Dari textbox tuliskan kata kunci pencarian “ShiftRegister74HC595”. Dari daftar library pilih library yang dibuat oleh Timo Denk, kemudian tekan tombol Install.
Catatan. Cara intalasi library di atas berlaku sama untuk setiap penambahan library baru ke dalam IDE Arduino untuk projek-projek berikutnya.
Source Code: https://github.com/doditsuprianto/IoT-Development-Board-DSP-TECH/blob/main/Projek_Pergerakkan_LED.ino
Buatlah animasi LED lain yang belum pernah dibuat sebelumya