● online
- Raspberry Pi 4 Model B 4GB Original UK E14 Raspi 4
- ADS1115 16 Bit I2C Module ADC 4 channel with Pro G
- RC Servo ARM Horn M3 Metal 25T MG995 MG946R MG996R
- LDR Sensor 5mm Cahaya 5528 Light Dependent Resisto
- USB To RS485 High Speed Converter RS-485 RS 485 Ad
- ESP32 ESP-32 Wireless Module ESP32-S ESP-WROOM-32
- 10mm Kapton Tape Polymide Film Gold High Temp isol
- Water Level sensor ketinggian air - deteksi air
- Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
- Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
Menangani 8×8 LED Dot Matrix Arduino
8×8 LED dot matrix merupakan sebuah display yang terdiri dari kumpulan led yang disusun secara simetris sejumlah 8 baris dan 8 kolom. Display nya bisa menampilkan berbagai karakter seperti huruf, angka maupun gambar. Untuk kegunaannya sering dipakai sebagai papan informasi berupa running text atau pun yang lainnya. Di bawah ini merupakan konfigurasi dari 8×8 dot matrix ini.

Sama seperti 7 segment dot matrix ini juga mempunyai jenis yaitu anoda dan katoda. Secara tampilan tidak ada bedanya, namun kita bisa mengenalinya dengan kode/seri yang terdapat di 8×8 dot matrix itu sendiri. Untuk katoda biasa ditandai dengan akhiran Ax, misalnya 2728AS. Sementara untuk anoda ditandai dengan akhiran Bx misalnya 3930BS. Cukup mudah kan? agar dapat digunakan sesuai keinginan, kita membutuhkan sebuah kontroler yang tak asing lagi adalah Arduino.
Alat dan bahan
Rangkaian

Sketch Program
#define ROW_1 2
#define ROW_2 3
#define ROW_3 4
#define ROW_4 5
#define ROW_5 6
#define ROW_6 7
#define ROW_7 8
#define ROW_8 9
#define COL_1 10
#define COL_2 11
#define COL_3 12
#define COL_4 13
#define COL_5 A0
#define COL_6 A1
#define COL_7 A2
#define COL_8 A3
const byte rows[] = {
ROW_1, ROW_2, ROW_3, ROW_4, ROW_5, ROW_6, ROW_7, ROW_8
};
const byte col[] = {
COL_1,COL_2, COL_3, COL_4, COL_5, COL_6, COL_7, COL_8
};
// The display buffer
// It's prefilled with a smiling face (1 = ON, 0 = OFF)
byte ALL[] = {B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111,B11111111};
byte EX[] = {B00000000,B00010000,B00010000,B00010000,B00010000,B00000000,B00010000,B00000000};
byte A[] = { B00000000,B00111100,B01100110,B01100110,B01111110,B01100110,B01100110,B01100110};
byte B[] = {B01111000,B01001000,B01001000,B01110000,B01001000,B01000100,B01000100,B01111100};
byte C[] = {B00000000,B00011110,B00100000,B01000000,B01000000,B01000000,B00100000,B00011110};
byte D[] = {B00000000,B00111000,B00100100,B00100010,B00100010,B00100100,B00111000,B00000000};
byte E[] = {B00000000,B00111100,B00100000,B00111000,B00100000,B00100000,B00111100,B00000000};
byte F[] = {B00000000,B00111100,B00100000,B00111000,B00100000,B00100000,B00100000,B00000000};
byte G[] = {B00000000,B00111110,B00100000,B00100000,B00101110,B00100010,B00111110,B00000000};
byte H[] = {B00000000,B00100100,B00100100,B00111100,B00100100,B00100100,B00100100,B00000000};
byte I[] = {B00000000,B00111000,B00010000,B00010000,B00010000,B00010000,B00111000,B00000000};
byte J[] = {B00000000,B00011100,B00001000,B00001000,B00001000,B00101000,B00111000,B00000000};
byte K[] = {B00000000,B00100100,B00101000,B00110000,B00101000,B00100100,B00100100,B00000000};
byte L[] = {B00000000,B00100000,B00100000,B00100000,B00100000,B00100000,B00111100,B00000000};
byte M[] = {B00000000,B00000000,B01000100,B10101010,B10010010,B10000010,B10000010,B00000000};
byte N[] = {B00000000,B00100010,B00110010,B00101010,B00100110,B00100010,B00000000,B00000000};
byte O[] = {B00000000,B00111100,B01000010,B01000010,B01000010,B01000010,B00111100,B00000000};
byte P[] = {B00000000,B00111000,B00100100,B00100100,B00111000,B00100000,B00100000,B00000000};
byte Q[] = {B00000000,B00111100,B01000010,B01000010,B01000010,B01000110,B00111110,B00000001};
byte R[] = {B00000000,B00111000,B00100100,B00100100,B00111000,B00100100,B00100100,B00000000};
byte S[] = {B00000000,B00111100,B00100000,B00111100,B00000100,B00000100,B00111100,B00000000};
byte T[] = {B00000000,B01111100,B00010000,B00010000,B00010000,B00010000,B00010000,B00000000};
byte U[] = {B00000000,B01000010,B01000010,B01000010,B01000010,B00100100,B00011000,B00000000};
byte V[] = {B00000000,B00100010,B00100010,B00100010,B00010100,B00010100,B00001000,B00000000};
byte W[] = {B00000000,B10000010,B10010010,B01010100,B01010100,B00101000,B00000000,B00000000};
byte X[] = {B00000000,B01000010,B00100100,B00011000,B00011000,B00100100,B01000010,B00000000};
byte Y[] = {B00000000,B01000100,B00101000,B00010000,B00010000,B00010000,B00010000,B00000000};
byte Z[] = {B00000000,B00111100,B00000100,B00001000,B00010000,B00100000,B00111100,B00000000};
float timeCount = 0;
void setup()
{
// Open serial port
Serial.begin(9600);
// Set all used pins to OUTPUT
// This is very important! If the pins are set to input
// the display will be very dim.
for (byte i = 2; i <= 13; i++)
pinMode(i, OUTPUT);
pinMode(A0, OUTPUT);
pinMode(A1, OUTPUT);
pinMode(A2, OUTPUT);
pinMode(A3, OUTPUT);
}
void loop() {
// This could be rewritten to not use a delay, which would make it appear brighter
delay(5);
timeCount += 1;
if(timeCount < 20)
{
drawScreen(A);
}
else if (timeCount < 40)
{
drawScreen(R);
}
else if (timeCount < 60)
{
drawScreen(D);
}
else if (timeCount < 80)
{
drawScreen(U);
}
else if (timeCount < 100)
{
drawScreen(I);
}
else if (timeCount < 120)
{
drawScreen(N);
}
else if (timeCount < 140) {
drawScreen(O);
}
else if (timeCount < 160)
{
drawScreen(ALL);
}
else if (timeCount < 180)
{
drawScreen(ALL);
}
else {
// back to the start
timeCount = 0;
}
}
void drawScreen(byte buffer2[])
{
// Turn on each row in series
for (byte i = 0; i < 8; i++) // count next row
{
digitalWrite(rows[i], HIGH); //initiate whole row
for (byte a = 0; a < 8; a++) // count next row
{
// if You set (~buffer2[i] >> a) then You will have positive
digitalWrite(col[a], (buffer2[i] >> a) & 0x01); // initiate whole column
delayMicroseconds(100); // uncoment deley for diferent speed of display
//delayMicroseconds(1000);
//delay(10);
//delay(100);
digitalWrite(col[a], 1); // reset whole column
}
digitalWrite(rows[i], LOW); // reset whole row
// otherwise last row will intersect with next row
}
}
//
/* this is siplest resemplation how for loop is working with each row.
digitalWrite(COL_1, (~b >> 0) & 0x01); // Get the 1st bit: 10000000
digitalWrite(COL_2, (~b >> 1) & 0x01); // Get the 2nd bit: 01000000
digitalWrite(COL_3, (~b >> 2) & 0x01); // Get the 3rd bit: 00100000
digitalWrite(COL_4, (~b >> 3) & 0x01); // Get the 4th bit: 00010000
digitalWrite(COL_5, (~b >> 4) & 0x01); // Get the 5th bit: 00001000
digitalWrite(COL_6, (~b >> 5) & 0x01); // Get the 6th bit: 00000100
digitalWrite(COL_7, (~b >> 6) & 0x01); // Get the 7th bit: 00000010
digitalWrite(COL_8, (~b >> 7) & 0x01); // Get the 8th bit: 00000001
}*/
Upload sketch program di atas, jika sudah yang nampil pada dot marix adalah icon love ;p. Semoga bermanfaat. terima kasih
Menangani 8×8 LED Dot Matrix Arduino
Bagi pegiat teknologi, komputer, elektronika, dan Internet Of Things (IoT) maka sudah tidak asing lagi dengan benda yang satu... selengkapnya
Pada artikel ini saya akan memberikan cara cepat menggunakan motor servo pada Arduino. Pasti tentunya anda sedang mencari tutorial-tutorial... selengkapnya
Setelah kemarin sudah belajar Blynk dan sensor LDR DISINI, sekarang lanjut ke sensor berikutnya yaitu sensor DHT11 untuk memonitoring... selengkapnya
Pada postingan artikel kali ini akan mengupas tentang penggunaan LCD 20×4 pada Arduino. Maksud dari 20×4 adalah lcd ini... selengkapnya
Raspberry Pi tidak hanya bisa menyalakan LED atau membaca tombol, tapi juga bisa menghasilkan suara menggunakan komponen bernama buzzer. Buzzer... selengkapnya
Sensor IR adalah sebuah sensor yang dapat mendeteksi rintangan menggunakan cahaya inframerah yang dipantulkan. Sensor ini mempunyai dua bagian... selengkapnya
Limit switch merupakan sebuah saklar yang memiliki tuas sebagai penghubung ataupun pemutus arus litrik. Prinsip kerjanya sama seperti push... selengkapnya
Hallo semuanya, kali ini saya akan mendemonstrasikan penggunaan RFID RC522 untuk membaca e-KTP maupun e-Toll. Pada postingan sebelumnya sudah... selengkapnya
Pernahkah Anda melihat katalog busana muslimah ataupun lainnya, lalu ada objek orang yang sama dengan mengunakan baju berwarna tetapi... selengkapnya
Mari kita belajar lagi, kali ini membahas sensor LDR. Dimana sensor ini nilainya akan berubah menyesuaikan cahaya yang diterima... selengkapnya
Item Deskripsi : This module performance is stable, measure the distance accurately. performance nearly the same as SRF05, SRF02 SRF05,… selengkapnya
Rp 13.90012A 300W DC Buck Step Down Converter CC CV Driver LED charge Battery Spesifikasi: Input Voltage: 5-40V Output Voltage: 1.2-35V… selengkapnya
Rp 39.400Kabel Jumper Dupont Pelangi 30cm female to Female 1 lembar = 40 kabel
Rp 13.500Description: TP5100 is a double switch buck 8.4V, single cell 4. 2V lithium battery charge management chip. Its ultra-compact QFN16… selengkapnya
Rp 10.600Kabel Jumper Dupont Pelangi 10 cm male to male 1 lembar = 40 kabel
Rp 13.000MERK : TOWER PRO MG995 180 derajat Specifications Weight: 55 g Dimension: 40.7 x 19.7 x 42.9 mm approx. Stall… selengkapnya
Rp 36.300sg90 towerpro penggerak pada robot-robot kecil, dan bisa digunakan sebagai alat untuk hobi membuat robot dsb, dengan berat sekitar 9g… selengkapnya
Rp 15.500Spesifikasi: 50mm Kapton Tape Polymide Film Gold High Temp isolasi Tahan Panas Harga Tertera: 1 Roll Kapton Tape Polymide Film… selengkapnya
Rp 75.000Specifications: Operating voltage: DC3-5V Operating current: less than 20mA Sensor Type: Analog Detection Area: 40mmx16mm Production process: FR4 double-sided HASL… selengkapnya
Rp 3.000Putaran = 180º Specifications • Weight: 55 g • Dimension: 40.7 x 19.7 x 42.9 mm approx. • Stall torque:… selengkapnya
Rp 36.400

Saat ini belum tersedia komentar.