Daftar Isi:
- Perlengkapan
- Langkah 1: Periksa Paket
- Langkah 2: Sedikit Tentang Dot Matrix Khusus Ini
- Langkah 3: Driver MAX7219
- Langkah 4: Sirkuit
- Langkah 5: Kode
- Langkah 6: Outputnya
Video: MAX7219 LED Dot Matrix Perakitan dan Pengujian: 6 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
Tampilan Dot-Matrix adalah perangkat tampilan yang berisi dioda pemancar cahaya yang disejajarkan dalam bentuk matriks. Tampilan Dot-Matriks ini digunakan dalam aplikasi di mana Simbol, Grafik, Karakter, Abjad, Angka perlu ditampilkan bersama secara statis maupun Gerakan bergulir. Tampilan Dot Matrix diproduksi dalam berbagai dimensi seperti 5x7, 8x8, 16x8, 128x16, 128x32 dan 128x64 di mana angka-angka tersebut mewakili LED dalam baris dan kolom, Juga tampilan ini hadir dalam berbagai warna seperti Merah, Hijau, Kuning, Biru, Oranye, Putih.
Dalam Instruksi ini, saya akan membahas antarmuka Dot Matrix 8x8 yang memiliki driver MAX7219 ke Arduino Uno. Mari kita mulai.
Perlengkapan
MAX7219
Langkah 1: Periksa Paket
Seperti yang Anda lihat, saya memiliki versi smt dari papan driver, sangat penting untuk memverifikasi setiap komponen yang diperlukan karena komponen smd berukuran sangat kecil dan Anda dapat dengan mudah kehilangannya. Ada juga versi celup yang tersedia secara online tetapi saya menggunakan versi smt untuk ukurannya.
Langkah 2: Sedikit Tentang Dot Matrix Khusus Ini
modul tunggal dapat menggerakkan katoda umum 8x8 dot matrix.
Tegangan operasi: 5 v
Dimensi: panjang 3.2 cm X lebar 3.2 cm X tinggi 1.3 cm, lubang dengan empat sekrup, diameter 3 mm
Modul dengan antarmuka input dan output, dukungan untuk cascading beberapa modul.
Terminal data IN dan OUT ditentukan pada modul.
Langkah 3: Driver MAX7219
MAX7219 adalah IC yang dirancang untuk mengontrol MATRIX LED 8x8. IC adalah driver tampilan katoda umum (Common Negative) input serial yang menghubungkan mikroprosesor (atau mikrokontroler) ke tampilan LED numerik 7-segmen hingga 8 digit, tampilan grafik batang, atau 64 LED individu.
Fitur dan Spesifikasi
Rentang tegangan operasi: +4.0 hingga +5.5V
Tegangan operasi yang direkomendasikan: +5V
Tegangan suplai maksimum: 6V
Arus maksimum yang diizinkan untuk mengalir melalui setiap pin segmen: 100mA
Arus maksimum yang diizinkan melalui setiap pin ground DIGIT: 500mA
Konsumsi daya rendah
Waktu Tunda Data-ke-Segmen: 2.2mSec
Suhu pengoperasian: 0 °C hingga +70 °C
Suhu Penyimpanan: -65 °C hingga +150 °C
Langkah 4: Sirkuit
Rangkaian ini cukup sederhana dan dapat dibangun menggunakan kabel jumper pria ke wanita. Cukup ikuti pinout dan bangun sirkuitnya. Anda nanti dapat merakitnya di PCB jika Anda membuat aplikasi permanen untuk Matrix.
Konfigurasi Pin adalah sebagai berikut:
- Vcc ke 5V Pin Arduino.
- Gnd ke Gnd Pin Arduino.
- DIN ke Digital Pin 12 dari Arduino.
- CS ke Digital Pin 11 dari Arduino
- CLK ke Digital Pin 10 dari Arduino.
Langkah 5: Kode
Di sini, di Instructable ini, saya akan memberi Anda dua kode berbeda. Satu akan menghasilkan beberapa abjad bahasa Inggris dan smilies pada Matrix. Yang lain akan menyalakan semua 64 LED satu per satu. Anda harus menggunakan perpustakaan lledcontrol untuk membuatnya bekerja.
Ini adalah kode untuk huruf dan senyuman bahasa Inggris
#sertakan int DIN = 12; int CS = 11; int CLK = 10; byte e[8]= {0x7C, 0x7C, 0x60, 0x7C, 0x7C, 0x60, 0x7C, 0x7C}; byte d[8]= {0x78, 0x7C, 0x66, 0x66, 0x66, 0x66, 0x7C, 0x78}; byte u[8]= {0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x7E, 0x7E}; byte c[8]= {0x7E, 0x7E, 0x60, 0x60, 0x60, 0x60, 0x7E, 0x7E}; byte delapan[8]= {0x7E, 0x7E, 0x66, 0x7E, 0x7E, 0x66, 0x7E, 0x7E}; byte s[8]= {0x7E, 0x7C, 0x60, 0x7C, 0x3E, 0x06, 0x3E, 0x7E}; byte titik[8]= {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18}; byte o[8]= {0x7E, 0x7E, 0x66, 0x66, 0x66, 0x66, 0x7E, 0x7E}; byte m[8]= {0xE7, 0xFF, 0xFF, 0xDB, 0xDB, 0xDB, 0xC3, 0xC3}; LedControl lc=LedControl(DIN, CLK, CS, 0); void setup(){ lc.shutdown(0, false); //MAX72XX dalam mode hemat daya saat startup lc.setIntensity(0, 15); // Atur kecerahan ke nilai maksimum lc.clearDisplay(0); // dan hapus tampilan } void loop(){ byte smile[8]= {0x3C, 0x42, 0xA5, 0x81, 0xA5, 0x99, 0x42, 0x3C}; byte netral[8]= {0x3C, 0x42, 0xA5, 0x81, 0xBD, 0x81, 0x42, 0x3C}; byte cemberut[8]= {0x3C, 0x42, 0xA5, 0x81, 0x99, 0xA5, 0x42, 0x3C}; printByte(senyum); penundaan (1000); printByte(netral); penundaan (1000); printByte(mengernyitkan dahi); penundaan (1000); printEduc8s(); lc.clearDisplay(0); penundaan (1000); } void printEduc8s() { printByte(e); penundaan (1000); printByte(d); penundaan (1000); printByte(u); penundaan (1000); printByte(c); penundaan (1000); printByte(delapan); penundaan (1000); printByte(s); penundaan (1000); printByte(titik); penundaan (1000); printByte(c); penundaan (1000); printByte(o); penundaan (1000); printByte(m); penundaan (1000); } void printByte(karakter byte ) { int i = 0; for(i=0;i<8;i++) { lc.setRow(0, i, karakter); } }
dan kode untuk menguji semua 64 LED
//Kita harus selalu menyertakan library#include "LedControl.h"
/*
Sekarang kita membutuhkan LedControl untuk bekerja. ***** Nomor pin ini mungkin tidak akan bekerja dengan perangkat keras Anda ***** pin 12 terhubung ke DataIn pin 10 terhubung ke CLK pin 11 terhubung ke LOAD Kami hanya memiliki satu MAX72XX. */ LedControl lc=LedControl(12, 11, 10, 1);
/* kami selalu menunggu sebentar di antara pembaruan tampilan */
waktu tunda lama yang tidak ditandatangani = 100;
batalkan pengaturan() {
/* MAX72XX dalam mode hemat daya saat startup, kita harus melakukan wakeup call */ lc.shutdown(0, false); /* Atur kecerahan ke nilai sedang */ lc.setIntensity(0, 8); /* dan hapus tampilan */ lc.clearDisplay(0); }
/*
Metode ini akan menampilkan karakter untuk kata "Arduino" satu demi satu pada matriks. (Anda membutuhkan setidaknya 5x7 led untuk melihat seluruh karakter) */ void writeArduinoOnMatrix() { /* ini adalah data untuk karakter */ byte a[5]={B01111110, B10001000, B10001000, B10001000, B01111110}; byte r[5]={B00111110, B00010000, B00100000, B00100000, B00010000}; byte d[5]={B00011100, B00100010, B00100010, B00010010, B11111110}; byte u[5]={B00111100, B00000010, B00000010, B000000100, B00111110}; byte i[5]={B00000000, B00100010, B10111110, B00000010, B00000000}; byte n[5]={B00111110, B00010000, B00100000, B00100000, B00011110}; byte o[5]={B00011100, B00100010, B00100010, B00100010, B00011100};
/* sekarang tampilkan satu per satu dengan sedikit delay */
lc.setRow(0, 0, a[0]); lc.setRow(0, 1, a[1]); lc.setRow(0, 2, a[2]); lc.setRow(0, 3, a[3]); lc.setRow(0, 4, a[4]); tunda (waktu tunda); lc.setRow(0, 0, r[0]); lc.setRow(0, 1, r[1]); lc.setRow(0, 2, r[2]); lc.setRow(0, 3, r[3]); lc.setRow(0, 4, r[4]); tunda (waktu tunda); lc.setRow(0, 0, d[0]); lc.setRow(0, 1, d[1]); lc.setRow(0, 2, d[2]); lc.setRow(0, 3, d[3]); lc.setRow(0, 4, d[4]); tunda (waktu tunda); lc.setRow(0, 0, u[0]); lc.setRow(0, 1, u[1]); lc.setRow(0, 2, u[2]); lc.setRow(0, 3, u[3]); lc.setRow(0, 4, u[4]); tunda (waktu tunda); lc.setRow(0, 0, i[0]); lc.setRow(0, 1, i[1]); lc.setRow(0, 2, i[2]); lc.setRow(0, 3, i[3]); lc.setRow(0, 4, i[4]); tunda (waktu tunda); lc.setRow(0, 0, n[0]); lc.setRow(0, 1, n[1]); lc.setRow(0, 2, n[2]); lc.setRow(0, 3, n[3]); lc.setRow(0, 4, n[4]); tunda (waktu tunda); lc.setRow(0, 0, o[0]); lc.setRow(0, 1, o[1]); lc.setRow(0, 2, o[2]); lc.setRow(0, 3, o[3]); lc.setRow(0, 4, o[4]); tunda (waktu tunda); lc.setRow(0, 0, 0); lc.setRow(0, 1, 0); lc.setRow(0, 2, 0); lc.setRow(0, 3, 0); lc.setRow(0, 4, 0); tunda (waktu tunda); }
/*
Fungsi ini menyalakan beberapa Led berturut-turut. Pola akan diulang pada setiap baris. Pola akan berkedip bersama dengan nomor baris. baris nomor 4 (indeks==3) akan berkedip 4 kali dll. */ void rows() { for(int row=0;row<8;row++) { delay(delaytime); lc.setRow(0, baris, B10100000); tunda (waktu tunda); lc.setRow(0, baris, (byte)0); untuk(int i=0;i
/*
Fungsi ini menyalakan beberapa Led di kolom. Pola tersebut akan berulang pada setiap kolom. Pola akan berkedip bersama dengan nomor kolom. kolom nomor 4 (indeks==3) akan berkedip 4 kali dll. */ void kolom() { for(int col=0;col<8;col++) { delay(delaytime); lc.setColumn(0, col, B10100000); tunda (waktu tunda); lc.setColumn(0, col, (byte)0); untuk(int i=0;i
/*
Fungsi ini akan menyala setiap Led pada matriks. Led akan berkedip bersama dengan nomor baris. baris nomor 4 (indeks==3) akan berkedip 4 kali dll. */ void single() { for(int row=0;row<8;row++) { for(int col=0;col<8;col++) { tunda (waktu tunda); lc.setLed(0, baris, col, benar); tunda (waktu tunda); untuk(int i=0;i
lingkaran kosong() {
tulisArduinoOnMatrix(); baris(); kolom(); Lajang(); }
Langkah 6: Outputnya
Tonton video lengkapnya disini:-MAX7219 8x8 LED MATRIX ASSEMBLY DAN PENGUJIAN MENGGUNAKAN ARDUINO
Nah semua kerja keras ini, pasti terbayar dengan cukup baik ketika Anda melihat hasilnya. Itu sangat berharga!!
Berlangganan ke saluran youtube saya:-Barang Kreatif
Direkomendasikan:
Dot Matrix 32x8 Max7219 Interfacing Dengan Ardiuno: 5 Langkah (dengan Gambar)
Dot Matrix 32x8 Max7219 Berinteraksi Dengan Ardiuno: Hai Semua, Berbasis Dot Matrix o Max7219 bukanlah hal baru di tahun 2020, hingga saat ini, proses penyiapan didokumentasikan dengan baik, orang akan mengunduh pustaka perangkat keras dari MajicDesigns. dan mengubah beberapa baris di file header dan FC16 bekerja seperti pesona. Ini sampai
Pengujian Gambar untuk Warna dan Kejelasan: 8 Langkah
Pengujian Gambar untuk Warna dan Kejelasan: Saya membuat Instruksi ini untuk saya; untuk meningkatkan Instructables saya, namun saya berniat untuk membagikan apa yang saya temukan. Saya telah memperhatikan beberapa gambar yang saya unggah ke Instructabes keluar dengan sempurna dan gambar lainnya tidak jelas, sedikit berubah warna atau kabur. Tidak tahu
Coilgun SGP33 - Perakitan Penuh dan Petunjuk Pengujian: 12 Langkah
Coilgun SGP33 - Perakitan Lengkap dan Petunjuk Pengujian: Tutorial ini menjelaskan cara merakit elektronik dari coil gun yang ditunjukkan dalam video ini: Perakitan SGP-33 YoutubeAda juga video di mana Anda melihatnya beraksi di halaman terakhir tutorial ini. Ini tautannya. PCB untuk demo ini di mana jenisnya
Pemantau SMS -- Tampilan Dot Matrix -- MAX7219 -- SIM800L: 8 Langkah (dengan Gambar)
Pemantau SMS || Tampilan Dot Matrix || MAX7219 || SIM800L: Dalam video ini, Anda akan mempelajari cara menggunakan modul GSM, tampilan dot matrix, dan cara menampilkan teks bergulir di dalamnya. Setelah itu kami akan menggabungkannya untuk menampilkan pesan yang diterima melalui SIM GSM ke tampilan dot matrix. Caranya cukup mudah dan
Stasiun Pengujian Baterai Lithium-ion 18650: 6 Langkah (dengan Gambar)
Stasiun Pengujian Baterai Lithium-ion 18650: Selama sekitar satu tahun terakhir, saya telah menguji 18650 sel Lithium-ion dari baterai daur ulang untuk digunakan kembali untuk memberi daya pada proyek saya. Saya mulai menguji sel satu per satu dengan iMax B6, lalu mendapatkan beberapa penguji Liitokalaa Lii-500 dan seterusnya