жолды 16 * 16 нүктелік матрицаны AVR-ден қалай басып шығару керек

Суретте көрсетілгендей «LED GAME» жолын шығарғым келеді. Дот матрицасында тек 16 + 16 = 32 түйреуіш бар. avr-дан dotmatrix-ға дейінгі жолды басып шығарудың кез-келген жолы бар ма?

enter image description here

0
Сіз әр жолға үздіксіз сканерлеуді жүзеге асыруыңыз қажет, әр жол үшін тиісті баған биттарын қосу керек. Қандай болғанда да, оны жылдам көретін болсаңыз, оны көзге көрінбейтін және ескі сәнді CRT ретінде көреді.
қосылды автор Paul R, көзі
Сіз әр жолға үздіксіз сканерлеуді жүзеге асыруыңыз қажет, әр жол үшін тиісті баған биттарын қосу керек. Қандай болғанда да, оны жылдам көретін болсаңыз, оны көзге көрінбейтін және ескі сәнді CRT ретінде көреді.
қосылды автор Paul R, көзі
Сіз әр жолға үздіксіз сканерлеуді жүзеге асыруыңыз қажет, әр жол үшін тиісті баған биттарын қосу керек. Қандай болғанда да, оны жылдам көретін болсаңыз, оны көзге көрінбейтін және ескі сәнді CRT ретінде көреді.
қосылды автор Paul R, көзі
4 8x8 LED матрицалық дисплейді пайдалануды және оларды MAX7219 . Бұл заттарды AVR-тің көмегімен және оларды қалай ұстап қоюға арналған код бар. Қарапайым «бір қатарда» мультиплексирование, бәлкім, 1/16 жұмыс циклімен жарқын көрінбеуі мүмкін.
қосылды автор Brett Hale, көзі
4 8x8 LED матрицалық дисплейді пайдалануды және оларды MAX7219 . Бұл заттарды AVR-тің көмегімен және оларды қалай ұстап қоюға арналған код бар. Қарапайым «бір қатарда» мультиплексирование, бәлкім, 1/16 жұмыс циклімен жарқын көрінбеуі мүмкін.
қосылды автор Brett Hale, көзі
4 8x8 LED матрицалық дисплейді пайдалануды және оларды MAX7219 . Бұл заттарды AVR-тің көмегімен және оларды қалай ұстап қоюға арналған код бар. Қарапайым «бір қатарда» мультиплексирование, бәлкім, 1/16 жұмыс циклімен жарқын көрінбеуі мүмкін.
қосылды автор Brett Hale, көзі
Сондай-ақ, орнатылған 16x16 LED матрицалық дисплейлерді басқару аппаратурасымен сатып алуға болады, бірақ мен олармен тәжірибе алмаймын.
қосылды автор Brett Hale, көзі
Сондай-ақ, орнатылған 16x16 LED матрицалық дисплейлерді басқару аппаратурасымен сатып алуға болады, бірақ мен олармен тәжірибе алмаймын.
қосылды автор Brett Hale, көзі
Сондай-ақ, орнатылған 16x16 LED матрицалық дисплейлерді басқару аппаратурасымен сатып алуға болады, бірақ мен олармен тәжірибе алмаймын.
қосылды автор Brett Hale, көзі

6 жауаптар

Көптеген жарықдиодты матрицалар осы мысалда осында орналасқан:

LED matrix

16x16 LED матрицасы үшін жолдар үшін 16 жолақ және бағандар үшін 16 құдық бар. Сіздің нақты матрицаның қалай қалыптасқанын көру үшін оның деректер кестесін табуыңыз керек.

Дисплейде бірдеңе жазу үшін, сіз бірінші жолды ҚОСУЛЫ етіп, барлық қалғандарын ӨШІРУЛЕР, ҚЫЗМЕТІҢІЗДЕРДІ қосыңыз. Кідірістен кейін бірінші жолды ӨШІРУ, екінші жолды ҚОСУЛЫ күйіне орнатып, екінші жолда көргіңіз келетін козірлерді қосасыз. Сіз барлық жолдар арқылы қайталаңыз. Кешігу өте қысқа болғандықтан, сіздің көздеріңіз тезірек жарықтандырылмайды, себебі жарық диодты шамдар көп уақытты өшіреді.

Сізге микроконтроллерді таймерді үзуді қолдануды және үзіліс тәртібіндегі жолдар арқылы қайталануын ұсынамын. Осылайша, микроконтроллерді басқа мәселелерге оңай қолдану арқылы уақыт мәселелеріне қатысты өте көп алаңдамайсыз.

3
қосылды

Көптеген жарықдиодты матрицалар осы мысалда осында орналасқан:

LED matrix

16x16 LED матрицасы үшін жолдар үшін 16 жолақ және бағандар үшін 16 құдық бар. Сіздің нақты матрицаның қалай қалыптасқанын көру үшін оның деректер кестесін табуыңыз керек.

Дисплейде бірдеңе жазу үшін, сіз бірінші жолды ҚОСУЛЫ етіп, барлық қалғандарын ӨШІРУЛЕР, ҚЫЗМЕТІҢІЗДЕРДІ қосыңыз. Кідірістен кейін бірінші жолды ӨШІРУ, екінші жолды ҚОСУЛЫ күйіне орнатып, екінші жолда көргіңіз келетін козірлерді қосасыз. Сіз барлық жолдар арқылы қайталаңыз. Кешігу өте қысқа болғандықтан, сіздің көздеріңіз тезірек жарықтандырылмайды, себебі жарық диодты шамдар көп уақытты өшіреді.

Сізге микроконтроллерді таймерді үзуді қолдануды және үзіліс тәртібіндегі жолдар арқылы қайталануын ұсынамын. Осылайша, микроконтроллерді басқа мәселелерге оңай қолдану арқылы уақыт мәселелеріне қатысты өте көп алаңдамайсыз.

3
қосылды

Көптеген жарықдиодты матрицалар осы мысалда осында орналасқан:

LED matrix

16x16 LED матрицасы үшін жолдар үшін 16 жолақ және бағандар үшін 16 құдық бар. Сіздің нақты матрицаның қалай қалыптасқанын көру үшін оның деректер кестесін табуыңыз керек.

Дисплейде бірдеңе жазу үшін, сіз бірінші жолды ҚОСУЛЫ етіп, барлық қалғандарын ӨШІРУЛЕР, ҚЫЗМЕТІҢІЗДЕРДІ қосыңыз. Кідірістен кейін бірінші жолды ӨШІРУ, екінші жолды ҚОСУЛЫ күйіне орнатып, екінші жолда көргіңіз келетін козірлерді қосасыз. Сіз барлық жолдар арқылы қайталаңыз. Кешігу өте қысқа болғандықтан, сіздің көздеріңіз тезірек жарықтандырылмайды, себебі жарық диодты шамдар көп уақытты өшіреді.

Сізге микроконтроллерді таймерді үзуді қолдануды және үзіліс тәртібіндегі жолдар арқылы қайталануын ұсынамын. Осылайша, микроконтроллерді басқа мәселелерге оңай қолдану арқылы уақыт мәселелеріне қатысты өте көп алаңдамайсыз.

3
қосылды

1-нүкте матрицасының Pin 1-ін қалай анықтауға болады?

«2088BH-B» жапсырмасының қарама-қарсы жеріндегі нүктелік матрицаның сол жақ штыры 1-шi болып табылады.

Сіз келесі екі суреттен толық түсінік ала аласыз. «сурет

enter image description here

Бұл сізге көп көмектеседі деген үміттемін. 9 нүктелік матрицада (компилятор: micro-C) көрсету үшін жазылған келесі кодты көруге болады

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
қосылды

1-нүкте матрицасының Pin 1-ін қалай анықтауға болады?

«2088BH-B» жапсырмасының қарама-қарсы жеріндегі нүктелік матрицаның сол жақ штыры 1-шi болып табылады.

Сіз келесі екі суреттен толық түсінік ала аласыз. «сурет

enter image description here

Бұл сізге көп көмектеседі деген үміттемін. 9 нүктелік матрицада (компилятор: micro-C) көрсету үшін жазылған келесі кодты көруге болады

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
қосылды

1-нүкте матрицасының Pin 1-ін қалай анықтауға болады?

«2088BH-B» жапсырмасының қарама-қарсы жеріндегі нүктелік матрицаның сол жақ штыры 1-шi болып табылады.

Сіз келесі екі суреттен толық түсінік ала аласыз. «сурет

enter image description here

Бұл сізге көп көмектеседі деген үміттемін. 9 нүктелік матрицада (компилятор: micro-C) көрсету үшін жазылған келесі кодты көруге болады

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
қосылды