AVR dan 16 * 16 nuqtali matritsada mag'lubiyatni qanday chiqarish kerak

Rasmda ko'rsatilganidek, "LED GAME" satrini chiqarishni xohlayman. Ammo nuqta matritsasida faqat 16 + 16 = 32 pin bor. Avrdan dotmatrixgacha stringni chop etishning biron bir usuli bormi?

enter image description here

0
Har bir satr uchun tegishli ustun bitlarini o'girib, barcha qatorlar bo'ylab raster skanerdan o'tkazish kerak. Siz buni tezda bajarishingiz bilanoq, ko'z uni doimiy suratga olish, xuddi eski va qadimgi CRT kabi ko'radi.
qo'shib qo'ydi muallif Paul R, manba
Har bir satr uchun tegishli ustun bitlarini o'girib, barcha qatorlar bo'ylab raster skanerdan o'tkazish kerak. Siz buni tezda bajarishingiz bilanoq, ko'z uni doimiy suratga olish, xuddi eski va qadimgi CRT kabi ko'radi.
qo'shib qo'ydi muallif Paul R, manba
Har bir satr uchun tegishli ustun bitlarini o'girib, barcha qatorlar bo'ylab raster skanerdan o'tkazish kerak. Siz buni tezda bajarishingiz bilanoq, ko'z uni doimiy suratga olish, xuddi eski va qadimgi CRT kabi ko'radi.
qo'shib qo'ydi muallif Paul R, manba
4 8x8 LED matritsali displeydan foydalanishni va ularni MAX7219 . Bu narsalarni AVR bilan haydash va ularni qanday ulash kerakligi haqida ko'p kod bor. Bir vaqtning o'zida oddiy 'ketma-ketlik' ko'paytmasi, 1/16 ish aylanishi bilan etarlicha ravshan ko'rinmaydi.
qo'shib qo'ydi muallif Brett Hale, manba
4 8x8 LED matritsali displeydan foydalanishni va ularni MAX7219 . Bu narsalarni AVR bilan haydash va ularni qanday ulash kerakligi haqida ko'p kod bor. Bir vaqtning o'zida oddiy 'ketma-ketlik' ko'paytmasi, 1/16 ish aylanishi bilan etarlicha ravshan ko'rinmaydi.
qo'shib qo'ydi muallif Brett Hale, manba
4 8x8 LED matritsali displeydan foydalanishni va ularni MAX7219 . Bu narsalarni AVR bilan haydash va ularni qanday ulash kerakligi haqida ko'p kod bor. Bir vaqtning o'zida oddiy 'ketma-ketlik' ko'paytmasi, 1/16 ish aylanishi bilan etarlicha ravshan ko'rinmaydi.
qo'shib qo'ydi muallif Brett Hale, manba
Bundan tashqari, o'rnatilgan 16x16 LED matritsali displeylar bilan jihozlashingiz mumkin, lekin ular bilan hech qanday tajriba yo'q.
qo'shib qo'ydi muallif Brett Hale, manba
Bundan tashqari, o'rnatilgan 16x16 LED matritsali displeylar bilan jihozlashingiz mumkin, lekin ular bilan hech qanday tajriba yo'q.
qo'shib qo'ydi muallif Brett Hale, manba
Bundan tashqari, o'rnatilgan 16x16 LED matritsali displeylar bilan jihozlashingiz mumkin, lekin ular bilan hech qanday tajriba yo'q.
qo'shib qo'ydi muallif Brett Hale, manba

6 javoblar

Ko'pgina LED matritsalari shu erda joylashganki,

LED matrix

Agar 16x16 LED matrisi uchun satrlar uchun 16 pin va ustunlar uchun 16 pin bor. Sizning o'ziga xos matritsangiz qanday yaratilganligini ko'rish uchun uning ma'lumotlar sahifasini topishingiz kerak bo'ladi.

Ekranda biror narsa yozish uchun siz birinchi qatorni ON holatiga qo'yasiz, barcha boshqalar O'chirilgan va kerakli qo'shiqlarni faollashtiradi. Kechiktirilgandan keyin siz birinchi qatorni OFF holatiga, ikkinchi qatorni esa ON holatiga qo'yasiz va ikkinchi qatorda ko'rmoqchi bo'lgan qo'shiqlarni faollashtirasiz. Bu kabi barcha qatorlarni yinelasan. Kechikish juda qisqa bo'ladi, chunki sizning ko'zlaringiz LEDlarning ko'pincha yopiq ekanligini ko'rish uchun etarli darajada tez emas.

Sizga mikroprotsessor ustida taymer to'xtashdan foydalanishni va chiqib ketish tartibidagi satrlar orqali yechishni tavsiya qilaman. Shunday qilib, vaqt masalalari haqida juda ko'p tashvish qilmasdan, mikrokontrolörün boshqa narsalar uchun osongina foydalanishingiz mumkin.

3
qo'shib qo'ydi

Ko'pgina LED matritsalari shu erda joylashganki,

LED matrix

Agar 16x16 LED matrisi uchun satrlar uchun 16 pin va ustunlar uchun 16 pin bor. Sizning o'ziga xos matritsangiz qanday yaratilganligini ko'rish uchun uning ma'lumotlar sahifasini topishingiz kerak bo'ladi.

Ekranda biror narsa yozish uchun siz birinchi qatorni ON holatiga qo'yasiz, barcha boshqalar O'chirilgan va kerakli qo'shiqlarni faollashtiradi. Kechiktirilgandan keyin siz birinchi qatorni OFF holatiga, ikkinchi qatorni esa ON holatiga qo'yasiz va ikkinchi qatorda ko'rmoqchi bo'lgan qo'shiqlarni faollashtirasiz. Bu kabi barcha qatorlarni yinelasan. Kechikish juda qisqa bo'ladi, chunki sizning ko'zlaringiz LEDlarning ko'pincha yopiq ekanligini ko'rish uchun etarli darajada tez emas.

Sizga mikroprotsessor ustida taymer to'xtashdan foydalanishni va chiqib ketish tartibidagi satrlar orqali yechishni tavsiya qilaman. Shunday qilib, vaqt masalalari haqida juda ko'p tashvish qilmasdan, mikrokontrolörün boshqa narsalar uchun osongina foydalanishingiz mumkin.

3
qo'shib qo'ydi

Ko'pgina LED matritsalari shu erda joylashganki,

LED matrix

Agar 16x16 LED matrisi uchun satrlar uchun 16 pin va ustunlar uchun 16 pin bor. Sizning o'ziga xos matritsangiz qanday yaratilganligini ko'rish uchun uning ma'lumotlar sahifasini topishingiz kerak bo'ladi.

Ekranda biror narsa yozish uchun siz birinchi qatorni ON holatiga qo'yasiz, barcha boshqalar O'chirilgan va kerakli qo'shiqlarni faollashtiradi. Kechiktirilgandan keyin siz birinchi qatorni OFF holatiga, ikkinchi qatorni esa ON holatiga qo'yasiz va ikkinchi qatorda ko'rmoqchi bo'lgan qo'shiqlarni faollashtirasiz. Bu kabi barcha qatorlarni yinelasan. Kechikish juda qisqa bo'ladi, chunki sizning ko'zlaringiz LEDlarning ko'pincha yopiq ekanligini ko'rish uchun etarli darajada tez emas.

Sizga mikroprotsessor ustida taymer to'xtashdan foydalanishni va chiqib ketish tartibidagi satrlar orqali yechishni tavsiya qilaman. Shunday qilib, vaqt masalalari haqida juda ko'p tashvish qilmasdan, mikrokontrolörün boshqa narsalar uchun osongina foydalanishingiz mumkin.

3
qo'shib qo'ydi

PIN-1 nuqta matritsasini qanday aniqlash mumkin?

"2088BH-B" yorlig'i qarshi nuqtadagi nuqta matritsasining eng chap pimi 1-pin.

Quyidagi ikkita rasmdan to'liq fikr olishingiz mumkin. rasm ta'rifini kiriting

enter image description here

Umid qilamanki, bu sizga juda yordam beradi. 9-nuqta matritsasida (kompilyator: micro-C) ko'rsatiladigan 9 kodni sinab ko'rishingiz mumkin.

void main() 
{
     DDRB = 0b11111111;
     DDRC = 0b11111111;
     while(1)
     {
           PORTB=0b00000000; //1
           PORTC=0b10000000;
            Delay_us(5);

           PORTB=0b00000000;       //2
           PORTC=0b01000000;
            Delay_us(5);

           PORTB=0b00000000;          //3
           PORTC=0b00100000;
            Delay_us(5);

           PORTB=0b00000000;             //4
           PORTC=0b00010000;
            Delay_us(5);

           PORTB=0b10011110; //5
           PORTC=0b00001000;
            Delay_us(5);

           PORTB=0b10010010;       //6
           PORTC=0b00000100;
            Delay_us(5);

           PORTB=0b10010010;          //7
           PORTC=0b00000010;
           Delay_us(5);

           PORTB=0b11111110;             //8
           PORTC=0b00000001;
           Delay_us(5);

     }
}
0
qo'shib qo'ydi

PIN-1 nuqta matritsasini qanday aniqlash mumkin?

"2088BH-B" yorlig'i qarshi nuqtadagi nuqta matritsasining eng chap pimi 1-pin.

Quyidagi ikkita rasmdan to'liq fikr olishingiz mumkin. rasm ta'rifini kiriting

enter image description here

Umid qilamanki, bu sizga juda yordam beradi. 9-nuqta matritsasida (kompilyator: micro-C) ko'rsatiladigan 9 kodni sinab ko'rishingiz mumkin.

void main() 
{
     DDRB = 0b11111111;
     DDRC = 0b11111111;
     while(1)
     {
           PORTB=0b00000000; //1
           PORTC=0b10000000;
            Delay_us(5);

           PORTB=0b00000000;       //2
           PORTC=0b01000000;
            Delay_us(5);

           PORTB=0b00000000;          //3
           PORTC=0b00100000;
            Delay_us(5);

           PORTB=0b00000000;             //4
           PORTC=0b00010000;
            Delay_us(5);

           PORTB=0b10011110; //5
           PORTC=0b00001000;
            Delay_us(5);

           PORTB=0b10010010;       //6
           PORTC=0b00000100;
            Delay_us(5);

           PORTB=0b10010010;          //7
           PORTC=0b00000010;
           Delay_us(5);

           PORTB=0b11111110;             //8
           PORTC=0b00000001;
           Delay_us(5);

     }
}
0
qo'shib qo'ydi

PIN-1 nuqta matritsasini qanday aniqlash mumkin?

"2088BH-B" yorlig'i qarshi nuqtadagi nuqta matritsasining eng chap pimi 1-pin.

Quyidagi ikkita rasmdan to'liq fikr olishingiz mumkin. rasm ta'rifini kiriting

enter image description here

Umid qilamanki, bu sizga juda yordam beradi. 9-nuqta matritsasida (kompilyator: micro-C) ko'rsatiladigan 9 kodni sinab ko'rishingiz mumkin.

void main() 
{
     DDRB = 0b11111111;
     DDRC = 0b11111111;
     while(1)
     {
           PORTB=0b00000000; //1
           PORTC=0b10000000;
            Delay_us(5);

           PORTB=0b00000000;       //2
           PORTC=0b01000000;
            Delay_us(5);

           PORTB=0b00000000;          //3
           PORTC=0b00100000;
            Delay_us(5);

           PORTB=0b00000000;             //4
           PORTC=0b00010000;
            Delay_us(5);

           PORTB=0b10011110; //5
           PORTC=0b00001000;
            Delay_us(5);

           PORTB=0b10010010;       //6
           PORTC=0b00000100;
            Delay_us(5);

           PORTB=0b10010010;          //7
           PORTC=0b00000010;
           Delay_us(5);

           PORTB=0b11111110;             //8
           PORTC=0b00000001;
           Delay_us(5);

     }
}
0
qo'shib qo'ydi