Matritsani boshqarish sxemasini yig'ib, ko'pchilik so'rashi mumkin: "Haqiqatan ham, 30 yil ichida hech kim matritsa bilan ishlashning oddiy usulini o'ylab topmaganmi?" Aslida, ular o'ylab topishdi. Turli xil displeylar bilan ishlash uchun, shu jumladan LED matritsasi bilan ishlash uchun ixtisoslashgan mikrosxemalar mavjud. Quyidagi darslarning birida biz MAX7219 chipidan foydalanib indikatorni qanday boshqarishni bilib olamiz. Ushbu usul bizga bir nechta matritsalarni bitta katta displey bilan osongina birlashtirishga imkon beradi, bu elektr zanjirini sezilarli darajada murakkablashtirmaydi.
Va nihoyat, biz samoviy matritsa modullaridan keldik. Har bir modul MAX7219 chipidan (), LED matritsasidan, bitta kondensatordan va jabduqda bitta rezistordan iborat.
Bu MAX7219 tomonidan SPI interfeysi orqali boshqariladi.
Klasterdagi mikrosxemalar ketma-ket ulangan. Internetda maksimal darajadagi ketma-ket ulanish faqat MAX7219-ning atigi 8 qismiga ruxsat berishini o'qidim. Bunga ishonmang. 16 modul ulandi va hammasi yaxshi ishlaydi.
Ali tomonidan taqdim etilgan modullar bir nechta versiyada mavjud. Eng ommaboplari 2 xil: DIP va SOIC paketlarida chip bilan. Kengroq DIP chipli modul klasterga ulanishda unchalik qulay emas. Bir nechta simni ulashga to'g'ri keladi.
SOIC to'plamidagi mikrosxemali modullar LED matritsasining o'lchamiga ega va ular lehim yoki o'tish joylari orqali ulanadi. Bu chiroyli va aniq tarzda chiqadi.
Matritsalar va klasterlar bilan ishlash uchun eng mashhur kutubxonalar Mark Rays tomonidan ishlab chiqarilgan MAX72xx panel va MajicDesigns dan Parola: birinchi kutubxonadan foydalanish osonroq, ikkinchisi ko'proq funktsiyalar bilan murakkabroq. Men batafsilroq tizimga kiraman.
MAX72xx panel
MAX72xx panelidan foydalanganda kutubxonani o'rnatish talab qilinadi Adafruit gfx.
Matnni ruslashtirish uchun yuklab olish kerak BU FIL va Arduino / Libraries / Adafruit-GFX-Library-master katalogida standart glcdfont.c faylini almashtiring. Shuningdek, ushbu faylda zarur harflar va raqamlardan tashqari har xil belgilar to'plami tasvirlangan. Ularning hammasi ham yordam bera olmaydi. Quyidagi rasmda belgilar qanday shakllanganligi tushuntirilgan.
Agar kerak bo'lsa, siz o'zingizning belgilaringizni yaratishingiz va ularni fayldagi ishlatilmagan belgilar bilan almashtirishingiz mumkin. Turli kutubxonalarda ishlatiladigan deyarli barcha nuqta shriftlar shu tarzda shakllantirilgan.
Shunday qilib, MAX72xx paneli va Adafruit GFX kutubxonalari o'rnatildi, glcdfont.c fayli o'zgartirildi. Arduino IDE-ni ishga tushiring, oching FILE . Eskizda utf8rus funktsiyasi mavjud. Rus tilida ramzlar jadvalining konversiyasini ta'minlaydi. Bu faqat dasturdan normal chiqish uchun kerak, ya'ni dasturda kerakli matn rus tilida yozilgan. Agar matn MAQOMOT porti orqali kiritilsa, Serial_Read funktsiyasida belgilar kodini tuzatish amalga oshiriladi. IDE va \u200b\u200bkonsolda ishlab chiquvchilar turli xil kodlashlardan foydalanganlar.
Faylning boshida kutubxonaning ishlashi uchun zarur bo'lgan chiziqlar mavjud.
int soniOfHorizontalDisplays \u003d 1;
int soniOfVerticalDisplays \u003d 16;
Menda SOIC paketida mikrochipli modullar mavjud. Ular kichik xususiyatga ega. Modullarning matritsasi 90 daraja aylantirilgan holda o'rnatiladi. Bu ulanish qulayligi uchun to'lov. Agar siz kutubxonalar bilan birga kelgan eskizlarni ishlatsangiz, ular har bir modulda matnni pastdan yuqoriga ko'rsatadi. Matn zigzaglarda ko'rsatiladi. Ushbu kasallikni davolash uchun kutubxonada 16 ta vertikal displey (jismoniy ravishda gorizontal ravishda joylashtirilgan) mavjudligini "aytib berish" kerak. Va keyin O'rnatishni bekor qilib, kutubxona qatorini belgilang
matrix.setRotation (matrix.getRotation () + 1);
Har bir matritsani dasturiy ravishda o'zgartiradi. Va hamma narsa odatiy tarzda namoyish etiladi.
Mikrosxemalarning DIP-holati bo'lgan modullar bunday emas. U erda hamma narsa chiroyli, bir nechta simdan tashqari.
MAX72xx Panel kutubxonasi juda kamtar. Chiqishning vizual effektlari yo'q. Klaster bitta sifatida qabul qilinadi. MD Parola bilan hammasi yaxshi.