Mundarija:

Arduino yordamida LED matritsasini boshqarish: 5 qadam
Arduino yordamida LED matritsasini boshqarish: 5 qadam

Video: Arduino yordamida LED matritsasini boshqarish: 5 qadam

Video: Arduino yordamida LED matritsasini boshqarish: 5 qadam
Video: PIR MOTION Sensor with Arduino uno Led indication 2024, Noyabr
Anonim
Arduino yordamida LED matritsasini boshqarish
Arduino yordamida LED matritsasini boshqarish
Arduino yordamida LED matritsasini boshqarish
Arduino yordamida LED matritsasini boshqarish

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
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
Kerakli komponentlar
Kerakli komponentlar
Kerakli komponentlar
Kerakli komponentlar
Kerakli komponentlar
Kerakli komponentlar
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

Led matritsasini Arduino IDE -ga ulang
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

Dasturlash
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

Enjoi It
Enjoi It

Bu LED matritsasi bo'yicha qo'llanma edi.

Ushbu maqolani o'qiganingiz uchun tashakkur. keyingi maqolada ko'rishguncha.

Tavsiya: