Mundarija:
- 1 -qadam: Led matritsaning texnik xususiyatlari
- 2 -qadam: kerakli komponentlar
- 3 -qadam: LED matritsasini Arduino IDE -ga ulang
- 4 -qadam: dasturlash
- 5 -qadam: Enjoi It
Video: Arduino yordamida LED matritsasini boshqarish: 5 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:25
Salom, do'stim.
Ushbu maqolada men sizga Arduino yordamida Led Matrixdan qanday foydalanishni ko'rsataman.
Led Matrix - bu LED ko'rinishidagi massivlar to'plami. Led matritsalar turiga qarab har xil ustunlar va qatorlarga ega. Ma'lum kombinatsiyali bir nechta LEDlarni taqdim etish orqali, Led matritsasi bir qator belgilar, harflar, belgilar va boshqalarni ko'rsatishi mumkin. Led Matrixning boshqa nomi - nuqta matritsasi.
Led Matrixning ishlash printsipi men kecha yaratgan "7 segmentli displey" bilan bir xil. Ularning orasidagi farq faqat tashqi ko'rinishdir.
1 -qadam: Led matritsaning texnik xususiyatlari
Led matritsaning texnik xususiyatlari:
- LEDlar soni: 64
- Chiziqlar soni: 8
- Ustunlar soni: 8
- Ishlash kuchlanishi: 4,7 V - 5 V shahar
- Ishlash oqimi: 320mA
- Maksimal ish oqimi: 2A
2 -qadam: kerakli komponentlar
Kerakli komponentlar:
- Led Matrik
- Arduino Nano
- Jumper simlari
- USB mini
- Loyiha kengashi
Kerakli kutubxona:
LedControl
Arduino IDE -ga kutubxona qo'shish uchun siz ushbu maqolada "Arduino -ga kutubxona qo'shish" ni ko'rishingiz mumkin.
3 -qadam: LED matritsasini Arduino IDE -ga ulang
Quyidagi tavsifga qarang yoki yuqoridagi rasmga qarang:
Led Matrix Arduino uchun
VCC ==> +5V
GND ==> GND
Din ==> D6
CS ==> D7
CLK ==> D8
4 -qadam: dasturlash
Bu bosh matritsani sinash uchun ishlatilishi mumkin bo'lgan namunaviy eskiz:
// Biz doimo kutubxonani kiritishimiz kerak#include "LedControl.h"
/*
Endi biz bilan ishlash uchun LedControl kerak. ***** Bu pin raqamlari, ehtimol, sizning qurilmangiz bilan ishlamaydi ***** 6 -pin DataIn -ga ulangan, CLK -pin 7 -ga ulangan, LOAD -ga ulangan. Bizda faqat bitta MAX72XX bor. */
LedControl lc = LedControl (6, 8, 7, 1);
/ * biz har doim displey yangilanishlari o'rtasida biroz kutamiz */
imzosiz uzoq kechikish = 100;
bo'sh o'rnatish () {
/ * MAX72XX ishga tushganda quvvatni tejash rejimida, biz uyg'onish qo'ng'irog'ini qilishimiz kerak */ lc.shutdown (0, noto'g'ri); / * Yorqinlikni o'rta qiymatlarga o'rnating */ lc.setIntensity (0, 8); / * va displeyni tozalang */ lc.clearDisplay (0); }
/*
Bu usul matritsada "Arduino" so'zining belgilarini ketma -ket ko'rsatadi. (butun belgilarni ko'rish uchun sizga kamida 5x7 LED kerak) */ void writeArduinoOnMatrix () {/ *bu erda */ bayt a [5] = {B01111110, B10001000, B10001000, B10001000, B01111110} belgilarining ma'lumotlari ko'rsatilgan; bayt r [5] = {B00111110, B00010000, B00100000, B00100000, B00010000}; bayt d [5] = {B00011100, B00100010, B00100010, B00010010, B11111110}; bayt u [5] = {B00111100, B00000010, B00000010, B00000100, B00111110}; bayt i [5] = {B00000000, B00100010, B10111110, B00000010, B00000000}; bayt n [5] = {B00111110, B00010000, B00100000, B00100000, B00011110}; bayt o [5] = {B00011100, B00100010, B00100010, B00100010, B00011100};
/ * endi ularni birma -bir kichik kechikish bilan ko'rsatish */
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]); kechikish (kechikish); 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]); kechikish (kechikish); 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]); kechikish (kechikish); 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]); kechikish (kechikish); 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]); kechikish (kechikish); 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]); kechikish (kechikish); 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]); kechikish (kechikish); 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); kechikish (kechikish); }
/*
Bu funksiya ketma -ket bir necha Ledni yoritadi. Shakl har bir qatorda takrorlanadi. Naqsh qator raqami bilan birga miltillaydi. qator raqami 4 (indeks == 3) 4 marta yonadi va hokazo */ void rows () {for (int row = 0; qator <8; qator ++) {kechikish (kechikish vaqti); lc.setRow (0, qator, B10100000); kechikish (kechikish); lc.setRow (0, qator, (bayt) 0); uchun (int i = 0; i
/*
Bu funksiya ustundagi ba'zi LEDlarni yoritadi. Shakl har bir ustunda takrorlanadi. Naqsh ustun raqami bilan birga miltillaydi. ustun raqami 4 (indeks == 3) 4 marta miltillaydi va hokazo */ void ustunlar () {for (int col = 0; col <8; col ++) {kechikish (kechikish vaqti); lc.setColumn (0, col, B10100000); kechikish (kechikish); lc.setColumn (0, col, (bayt) 0); uchun (int i = 0; i
/*
Bu funksiya matritsadagi har bir LEDni yoritadi. Led qator raqami bilan birga miltillaydi. qator 4 raqami (indeks == 3) 4 marta miltillaydi va hokazo. kechikish (kechikish); lc.setLed (0, qator, ustun, to'g'ri); kechikish (kechikish); uchun (int i = 0; i
void loop () {
writeArduinoOnMatrix (); qatorlar (); ustunlar (); bitta (); }
Men uni fayl sifatida ham ko'rsataman:
5 -qadam: Enjoi It
Bu LED matritsasi bo'yicha qo'llanma edi.
Ushbu maqolani o'qiganingiz uchun tashakkur. keyingi maqolada ko'rishguncha.
Tavsiya:
Arduino va Ps2 masofadan boshqarish pulti yordamida 4dof yuqori quvvatli katta o'lchamli robot qo'lini qanday boshqarish mumkin?: 4 qadam
Arduino va Ps2 masofadan boshqarish pulti bilan 4dof yuqori quvvatli katta o'lchamli robot qo'lini qanday boshqarish mumkin?: Bu to'plamda yuqori quvvatli mg996 dvigateli ishlatiladi, u yuqori oqimga muhtoj, bizda ko'p quvvat manbai sinovi bor. Faqat 5v 6a adapter ishlaydi. Va arduino taxtasi 6dof robot qo'li ustida ham ishlaydi.end: yozing SINONING do'konini DIY o'yinchoq uchun sotib oling
Yorqinlikni boshqarish PWM asosidagi LEDni boshqarish tugmachalari, Raspberry Pi va skretch yordamida: 8 qadam (rasmlar bilan)
Yorqinlikni boshqarish PWM asosidagi LEDni boshqarish tugmachalari, Raspberry Pi va Scratch yordamida: Men PWMning o'quvchilarimga qanday ishlashini tushuntirishga harakat qilardim, shuning uchun men o'z oldimga ikkita tugma yordamida LEDning yorqinligini boshqarishga harakat qildim. - bitta tugmachaning yorqinligini oshiradi, ikkinchisi esa uni o'chiradi. Dastur uchun
Arduino bilan 2.4 Gigagertsli NRF24L01 moduli yordamida simsiz masofadan boshqarish - Nrf24l01 4 kanalli / Quadcopter uchun 6 kanalli uzatuvchi qabul qilgich - Rc vertolyoti - Arduino yordamida Rc samolyoti: 5 qadam (rasmlar bilan)
Arduino bilan 2.4 Gigagertsli NRF24L01 moduli yordamida simsiz masofadan boshqarish | Nrf24l01 4 kanalli / Quadcopter uchun 6 kanalli uzatuvchi qabul qilgich | Rc vertolyoti | Arduino yordamida Rc samolyoti: Rc avtomashinasini boshqarish | Kvadrokopter | Drone | RC samolyoti | RC qayig'i, bizga har doim qabul qiluvchi va uzatuvchi kerak bo'ladi, deylik, RC QUADCOPTER uchun bizga 6 kanalli uzatuvchi va qabul qilgich kerak, va bu turdagi TX va RX juda qimmatga tushadi, shuning uchun biz uni o'zimizda ishlab chiqaramiz
HW30A Dvigatel tezligini boshqarish moslamasi va Arduino UNO yordamida uchuvchisiz kvadrokopterli cho'tkasi bo'lmagan shahar motorini (3 simli) qanday boshqarish kerak: 5 qadam
HW30A Dvigatel tezligini boshqarish moslamasi va Arduino UNO yordamida uchuvchisiz kvadrokopterli cho'tkasiz shahar motorini (3 simli tip) qanday boshqarish mumkin: Tavsif: HW30A dvigatel tezligini boshqarish moslamasi 4-10 NiMH/NiCd yoki 2-3 hujayrali LiPo batareyalari bilan ishlatilishi mumkin. BEC 3 ta LiPo hujayralari bilan ishlaydi. U cho'tkasi bo'lmagan doimiy dvigatelning tezligini boshqarish uchun ishlatilishi mumkin (3 simli) maksimal 12 Vt gacha
Taymer funktsiyasi bilan televizorni masofadan boshqarish pulti yordamida uy jihozlarini qanday boshqarish mumkin: 7 qadam (rasmlar bilan)
Uy asbob -uskunalarini masofadan boshqarish pulti bilan taymer funktsiyasi yordamida qanday boshqarish mumkin: Iste'mol bozoriga 25 yil kirganidan keyin ham, infraqizil aloqa so'nggi kunlarda juda dolzarb bo'lib qolmoqda. Bu sizning 55 dyuymli 4K televizoringiz yoki avtomobilingizning ovoz tizimidan qat'i nazar, hamma narsaga javob berish uchun IQ masofadan boshqarish pulti kerak