10- laboratoriya mashg’uloti Mavzu: 8x8 yorug‘lik diodili matrisani Arduino da boshqarish



Download 1,17 Mb.
bet1/4
Sana10.06.2022
Hajmi1,17 Mb.
#649765
  1   2   3   4
Bog'liq
10-Laboratoriya mashguloti (1)


10- Laboratoriya mashg’uloti
Mavzu:8x8 yorug‘lik diodili matrisani Arduino da boshqarish.
Yorug'lik chiqaradigan diodlardan tashkil topgan kichik matritsa sizga kerakli ma'lumotlarni ko'rsatishi mumkin, ehtimol bu raqamlardir, chunki o'lchamlari unchalik katta emas, 8 dan 8 gacha LEDhar bir diametri 3 mm. Ushbu matritsa qizil rangda porlaydi, chunki u eng sezilarli va boshqa ranglarga qaraganda ko'proq e'tiborni tortadi.

Ushbu matritsadan foydalanishning eng qulay usuli bu Arduinochunki bu raqamli. Agar siz oddiy dastur yozsangiz, kerakli ma'lumotni ushbu "displey" da ko'rsatishingiz mumkin. Savdoda qimmatroq uch rangli matrisalar mavjud, ularda asosiy uchta rangni birlashtirib deyarli har qanday rangni yaratishingiz mumkin.

Ushbu matritsa 16 ta xulosaga ega, yuqoridagi diagrammada matritsaning elementar tarkibiy qismlari qanday ulanganligi aniq ko'rsatilgan - LEDlar, unga binoan modulni raqamli va analog qurilmada ko'paytirish uchun to'g'ri ulashingiz mumkin. Hozirgi cheklovli rezistorlar haqida unutmang, agar piksellardan biri yonib ketsa juda xafa bo'ladi. Bir nuqtaning nominal doimiy oqimi 20 mA, eng yuqori oqim 100 mA, ta'minot kuchlanishi 2.1-2.1V to'lqin uzunligi 625-630 nm, maksimal quvvat tarqalishi 40 mVtni tashkil qiladi, umumiy anod bu erda, ya'ni ortiqcha. LED matritsasining umumiy o'lchamlari 37  yoqilgan 37  yoqilgan mm. Siz ehtiyotkorlik bilan lehimlashingiz kerak, lehim bilan ishlaydigan dazmolga 260 daraja haroratda 5 s dan oshiq vaqt davomida tegmang, tavsiya etilgan harorat -40 - +70 Selsiy.
Agar sizda LED-larda bir nechta bunday matritsalar bo'lsa, ularni ulashingiz mumkin, ularda keng maydonli ma'lumot taxtalari yaratiladi.

Ushbu maqola yalang'och 8x8 matritsani sotib olgan va 74hc595 smenali registrlarni sotib olganlar va barchasini qanday ulashni bilmaganlar uchun yaratilgan.
Men uzoq vaqt davomida Internetda yuqoridagi tarkibiy qismlarni qanday ulash bo'yicha ko'rsatmalarni izladim, lekin men buni ro'yxatga olish kitoblarim uchun emas yoki ishlamaydigan eskizlar bilan topmadim, shuning uchun o'zimni 8 * 8 rasm bilan yoqtirish uchun qo'llarim va boshlarim bilan ishlashga to'g'ri keldi.
Matritsalar va smenali registrlar uchun ma'lumotlar jadvallarini Internetda topib, quyidagi diagrammani tortdim.
Ikkala mikrosxemaning 12-oyog'i (qulfli pin) portlarni tejash uchun odatiy holdir, chunki turli vaqtlarda registrlarni osib qo'yishning ma'nosi yo'q. Ba'zi bir matritsa pinlari (anodlar) nominal qiymati 220 ohm bo'lgan oqim cheklovchi rezistorlar orqali ulanadi. Sxema bo'yicha qolgan barcha narsalar juda oddiy. Faqatgina holda, matritsa chizilgan rasmlar.

Rasmlar chiziq bo'yicha ko'rsatilishi kerak (aks holda shunga o'xshash matritsalar bilan), biroz kechikish bilan (inson ko'zi deyarli 1 m kechikishni farq qilmaydi).
Eskizda hamma narsani tushuntirishga harakat qildim. Bortga yuklashda displeyda biz arduino portining monitoriga yuboradigan raqamlar ko'rsatiladi (videoga qarang).
Tayyorlangan qurilmaning fotosurati (ekrandagi zigzag, eskizda uning surati pic massivida saqlanadi)


Matritsali displey - bu 8x8 LED matritsadan va minimal talab qilinadigan belbog'li MAX7219 chipiga asoslangan boshqaruv panelidan iborat qurilma. Fotosuratda siz allaqachon tugagan qurilmani ko'rishingiz mumkin, ammo u pochta orqali menga ushbu shaklda keldi, shuning uchun men lehim temirini olib, kerakli narsalarni lehimlashim kerak edi.

Arduino Nano-ga asosiy ulanish sxematik diagrammada ko'rsatilgan.

Diagrammadan ko'rinib turibdiki - hamma narsa oddiy, shunchaki ikkala taxtaning kontakt simlarini quyidagi tartibda ulashingiz kerak:

Shunday qilib, nihoyat kod bilan ishlash vaqti keldi va LED matritsasini ishga tushirish uchun LedControl kutubxonasini yuklab olish va o'rnatish kerak. Kutubxona MAXIM 7221 va 7219 mikrosxemalarini qo'llab-quvvatlaydi, LED matritsasi MAX7219-ni drayver sifatida ishlatadi, bu bizga kerak. Ushbu kutubxonaning asosiy funktsiyalarini namoyish etadigan kichik eskizdan boshlash kerak deb o'ylayman. Eskizda setRow () funktsiyasi LEDlarni yoqish / o'chirish uchun ishlatiladi. SetRow () funktsiyasini chaqirish uchun sintaksis:
matrix.setRow (0, qator, ustun, to'plam);
Qayerda matritsa- sinf ob'ekti Ledcontrol
- SPI avtobusidagi qurilmaning manzili, bu holda qurilma bitta va raqamlash noldan boshlanadi
qator - qator (mumkin bo'lgan qiymatlar 0 dan 7 gacha)
yo'g'on- ustun (mumkin bo'lgan qiymatlar 0 dan 7 gacha)
o'rnatildi- o'rnatish qiymati ( rost- yoqish yolg'on- o'chiring)
matrix.setRow (0, 1, 4, to'g'ri)
1-qatorda va 4-ustunda joylashgan matritsadagi LEDni yoqing.
Boshqa misol:
int x \u003d 1;
int y \u003d 4;
matrix.setRow (0, x, y, to'g'ri);
matrix.setRow (0, x, y, noto'g'ri);
Xuddi shu narsa faqat o'zgaruvchilardan foydalangan holda va berilgan koordinatlarda yonib turgan LEDning keyingi yopilishi. Shunday qilib, eskizda setRow () funktsiyasidan foydalangan holda bir nechta animatsiyalar o'ynaladi.
1. Matritsaning ko'rsatkichi
Biz allaqachon bilganimizdek, segment ko'rsatkichlari, shkala yoki raqamlar, bir-biriga ulangan alohida LEDlardan iborat. Masalan, LEDlar guruhida barcha katodlarni ulash mumkin. Bunday indikator «umumiy katod bilan», aks holda «umumiy anod bilan» yozuviga ega. Va agar biz LEDlarni raqam yoki o'lchov shaklida emas, balki panjara shaklida joylashtirsak nima bo'ladi? Bu juda grafik ko'rsatkich bo'ladi. Ya'ni, unda siz nafaqat raqamni, balki biron bir tasvirni ham aks ettirishingiz mumkin. Bunday panjara matritsa indikatori deb ataladi va LEDlardan foydalanishda u LED matritsasi deb ataladi. Matritsa indikatorining o'lchamlari gorizontal va vertikal ravishda joylashgan nuqtalar soni. Masalan, eng keng tarqalgan ko'rsatkichlar 8 × 8 piksel o'lchamiga ega. Agar yuqori aniqlikdagi LED matritsasi kerak bo'lsa, u shunchaki 8 × 8 ko'rsatkichlardan iborat. Buni qanday qilish kerak, biz keyinroq bilib olamiz. Hozircha, barcha 64 LED matritsa ichida qanday ulanganligini aniqlaylik. Albatta, etti segmentli indikatorda bo'lgani kabi, barcha LEDlarni umumiy katod yoki anod bilan ulash mumkin. Bunday holda biz 64 ta kontrolör chiqishi yoki 8 ta o'zgartirish registriga muhtojmiz. Ikkala variant ham juda behuda. Yana to'g'ri variant - bu LEDlarni har birida 8 ta guruhga umumiy katod bilan birlashtirish. Bu matritsaning ustunlari bo'lsin. Keyin, bu ustunlardagi parallel LEDlar yana umumiy anotga ega bo'lgan 8 qismdan iborat guruhlarga yana birlashtiriladi. Siz quyidagi sxemani olasiz:

 Tasavvur qiling, R6C3 LEDni yoqish. Buning uchun biz R6 piniga yuqori signal darajasini va C3 pinini erga ulashimiz kerak. Ushbu nuqtani o'chirmasdan, boshqasini yoqishga harakat qiling - R3C7. Musbat quvvat manbai R3 va yerdan C7 ga ulangan. Ammo bu holda R6 va R3 chiziqlari C3 va C7 ustunlari bilan emas, balki to'rtta joyda kesishadi! Shunday qilib, ikkita emas, balki to'rtta nuqta yoritiladi.
2. LED matritsasi va Shift registrlari
Bizning darsimizda biz eng oddiy 8 × 8 qizil rangli LED matritsani Arduino Uno bilan bog'laymiz. Pin raqamlash pastki chap burchakdan boshlanadi. Shu bilan birga, 1-16 sonli oyoqlarning raqamlanishi C va R ustunlari va chiziqlarini raqamlash bilan hech qanday mantiq bilan bog'liq emas.

Dinamik ko'rsatkichlar haqida darsga e'tiborni qaratib, biz matritsali indikatorni boshqarish pallasida 8 bitli o'zgartirish registrlaridan foydalanishga harakat qilamiz. Biz bitta registrni ustunlar uchun javob beradigan indikator xulosalariga, ikkinchisini esa chiziqlar xulosasiga bog'laymiz. O'chirish sxemasi


Download 1,17 Mb.

Do'stlaringiz bilan baham:
  1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish