- Material yang dibutuhkan:
- Shift Register:
- Antarmuka LCD dengan ESP12 tanpa menggunakan Shift Register:
- KODE:
- Antarmuka LCD dengan ESP12 menggunakan Shift Register SN74HC595N:
- KODE:
Dalam tutorial ini kita akan melihat bagaimana menghubungkan NodeMCU dengan LCD 16x2 tanpa menggunakan komunikasi I2C. Di sini kita akan menampilkan LCD 16x2 menggunakan register geser SN74HC595. Kami juga dapat menghubungkannya bahkan tanpa menggunakan register geser apa pun. Kita akan melihat kedua jenis antarmuka dalam tutorial ini. Perbedaan utama antara kedua antarmuka adalah jumlah pin yang digunakan di NodeMCU.
Material yang dibutuhkan:
- NodeMCU ESP12E
- SN74HC595 IC Register Geser
- Modul LCD 16x2
- Potensiometer
- Kabel pria-wanita
- Papan tempat memotong roti
Shift Register:
Dalam sistem digital, register geser adalah kombinasi sandal jepit yang mengalir secara seri dan berbagi jam yang sama. Dalam paket bertingkat ini, data-out dari satu flip-flop bertindak sebagai data-in untuk flip-flop berikutnya yang menghasilkan rangkaian yang menggeser satu posisi array bit yang disimpan di dalamnya.
IC yang akan kita gunakan adalah SN74HC595N. Ini adalah serial 8-bit sederhana secara paralel out shift register IC. Dengan kata sederhana, IC ini memungkinkan input atau output tambahan untuk ditambahkan ke mikrokontroler dengan mengubah data antara format paralel dan serial. Mikrokontroler kami menggunakan 3 pin IC ini untuk mengirim data secara serial. Sebenarnya keluaran 8-bit akan datang pada 8 pin setelah mendapatkan informasi 8-bit dari pin masukan. Pelajari lebih lanjut tentang register geser di sini.
Diagram PIN dan fungsi PIN IC SN74HC595N diberikan di bawah ini:
Anda menemukan antarmuka 74HC595N dengan Arduino dan dengan Raspberry pi di sini.
Antarmuka LCD dengan ESP12 tanpa menggunakan Shift Register:
Jika Anda telah menggunakan LCD 16x2 dengan papan Arduino maka itu akan sangat mudah. Anda hanya perlu memasang pin di NodeMCU sama seperti yang Anda lakukan dengan papan Arduino.
Ada 16 pin GPIO di NodeMCU dan kami membutuhkan 6 pin dan gnd, vcc. Hubungkan pin sesuai dengan diagram Sirkuit yang diberikan di bawah ini:
Kami akan menggunakan 4 pin data dan RS, EN LCD yang terhubung sebagai:
Pin d7 LCD == Pin D8 dari NodeMCU
d6 pin LCD == D7 pin dari NodeMCU
d5 pin LCD == D6 pin dari NodeMCU
d4 pin LCD == D5 pin dari NodeMCU
Pin RS LCD == Pin D2 dari NodeMCU
Pin En LCD == Pin D3 dari NodeMCU
Anda dapat menggunakan GPIO apa pun untuk koneksi ini.
Sekarang, unggah kodenya menggunakan Arduino IDE seperti yang dijelaskan sebelumnya. Kode sama seperti untuk papan Arduino yang dapat ditemukan di contoh Liquidcrystal. Program ini sederhana dan mudah dimengerti jika Anda ingin mempelajari lebih lanjut tentang program ini, periksa antarmuka LCD kami dengan Program Arduino.
KODE:
#include
Seperti yang kita lihat, kita sudah menggunakan 6 pin NodeMCU. Sudah ada lebih sedikit pin yang tersedia untuk papan kecil ini dan kami hanya memiliki sedikit pin untuk menghubungkan sensor lain.
Maka untuk mengatasi masalah ini kita akan menggunakan IC register geser yang meminimalkan no. pin yang digunakan pada NodeMCU.
Antarmuka LCD dengan ESP12 menggunakan Shift Register SN74HC595N:
Ada 8 output dan 3 pin input yang tersedia di IC register geser. Kami akan menggunakan 6 pin output untuk menghubungkan dengan LCD dan 3 pin input ke NodeMCU.
Koneksi LCD dengan IC diberikan sebagai:
Pin D7 LCD == pin 1 IC
Pin D6 LCD == pin 2 IC
Pin D5 LCD == pin 3 IC
Pin D4 LCD == pin 4 IC
Pin RS LCD == pin 7 dari IC
En pin LCD == pin 15 IC
Koneksi NodeMCU dengan IC:
Pin D6 NodeMCU == pin 14 IC, PIN DATA IC
Pin D7 NodeMCU == pin 12 IC, PIN LATCH IC
Pin D8 NodeMCU == pin 11 IC, CLOCK PIN IC
Hubungkan PIN 16 dan PIN 10 IC ke Vcc.
Hubungkan PIN 8 dan PIN 13 dari IC ke GND.
Buat Sirkuit dengan hati-hati sesuai diagram di bawah ini:
Sekarang Perangkat Keras kami siap untuk diprogram.
Sekarang, kami membutuhkan library “ LiquidCrystal595 ” yang dapat diunduh dari tautan ini https://github.com/tehniq3/LiquidCrystal595 dengan mengikuti langkah-langkah di bawah ini:
1. Menu Goto Sketch dari Arduino IDE.
2. Klik Include Library .
3. Sekarang, klik Add.zip library. Pilih file zip yang telah Anda unduh dari tautan yang diberikan dan selesai.
Sekarang unggah kode yang diberikan di bawah ini dan Anda akan melihat pesan mencetak LCD.
KODE:
#include
Kode ini sederhana karena kita hanya perlu memberikan pin data, pin latch dan pin jam sebagai argumen di LiquidCrystal595 lcd (); dan sisa kodenya sama seperti yang telah kita lakukan sebelumnya.
Dengan cara ini, Anda baru saja menyimpan 3 pin NodeMCU dengan menggunakan Shift Register.
Juga, periksa antarmuka LCD 16x2 dengan Mikrokontroler lain:
- Antarmuka LCD dengan Mikrokontroler PIC
- 16x2 LCD Interfacing dengan Raspberry Pi menggunakan Python
- Antarmuka LCD dengan Mikrokontroler ATmega32
- Antarmuka LCD dengan Mikrokontroler 8051