Salah satu library favorit saya untuk dapat mengontrol LED Matrix dengan IC Max72xx adalah MD_Parolla. Pada artikel ini saya akan membagikan cara menampilkan text terbalik atau Inverted Text menggunakan library MD_Parola dan board Arduino Nano.
Text terbalik sering kita jumpai pada mobil Ambulance atau Emergency seperti yang ditunjukkan pada hasilnya sebagai berikut:
Catatan: Lihat melalui cermin, maka anda akan membaca tulisan Ambulance dan Emergency!
Rangkaian
Untuk menghubungkan arduino ke LED Matrix, sangatlah mudah. Hubungkan seperti pada tabel berikut ini:
Arduino Board LED Matrix 5V VCC GND GND 13 SCK 11 DIN 10 CS
Install Library
Untuk dapat menggunakan kode program nantinya, kita harus install 2 library yaitu MD_Parola dan MD_MAX72xx. Library ini sudah tersedia secara default dan dapat langsung install melalui manage library arduino. Namun jika anda tidak mengetahui cara installnya, anda dapat melakukan instalasi secara manual dengan download librarynya menggunakan dua tombol berikut:
Jika anda belum tau cara install library tersebut, anda dapat membaca artikel Cara Install Library di Arduino IDE.
Kode Program
Setelah library diatas di install ke Arduino IDE, sekarang saatnya melakukan upload kode program. Copy semua kode berikut dan paste kan ke Arduino IDE anda. Lalu klik tombol upload.
#include <MD_Parola.h>
#include <MD_MAX72xx.h>
#include <SPI.h>
#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
#define MAX_DEVICES 8
#define PAUSE_TIME 1000
#define SCROLL_SPEED 50
#define CLK_PIN 13
#define DATA_PIN 11
#define CS_PIN 10
// HARDWARE SPI
MD_Parola P = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);
// SOFTWARE SPI
//MD_Parola P = MD_Parola(HARDWARE_TYPE, DATA_PIN, CLK_PIN, CS_PIN, MAX_DEVICES);
const char *msg[] =
{
"Ambulance",
"Emergency",
};
void setup(void)
{
P.begin();
P.setZoneEffect(0, true, PA_FLIP_LR);
P.setIntensity(15);
}
void loop(void)
{
static uint8_t cycle = 0;
if (P.displayAnimate())
{
// set up the string
P.displayText(msg[cycle], PA_CENTER, SCROLL_SPEED, PAUSE_TIME, PA_PRINT, PA_NO_EFFECT);
// prepare for next pass
cycle = (cycle + 1) % ARRAY_SIZE(msg);
}
}
Jika sudah, anda akan melihat hasilnya seperti pada gambar bergerak diawal artikel ini. Semoga artikel MD_Parola Arduino Inverted Text (Ambulance) in bermanfaat.