реклама на сайте
подробности

 
 
> Dot Matrix 5x7 (светодиодный точечный индикатор), Нужна помощь,консультация
uzzzer
сообщение May 17 2015, 10:33
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 78
Регистрация: 7-10-10
Из: Москва
Пользователь №: 59 985



Доброго всем дня !
Вот написал таки я программу для вывода символа на индикатор... Но ! Когда я перебираю строки матрицы, выставляя данные на столбцы, то все нормально, а когда наоборот... То получается такая ерунда: Когда выставлена минимальная задержка, то на индикаторе скажим так ничего не отображается, а когда большая, то отображается таже буква, только медленно соответственно. Как решить данную проблему ? Вразумите, чем эти переборы строк отличаются от перебора столбцов ?
Ниже текст программы, во вложенияи исходник и модель в Протеусе, а также проект целиком на ATMEL STUDIO 6.2.

CODE
#include <avr/io.h>
#include <util/delay.h>

unsigned char k;
//unsigned char arr[7]={0x07, 0x09, 0x11, 0x1F, 0x11, 0x11, 0x11}; //A перебераем строки, выставля данные на столбцы.
//unsigned char arr[5]={0x60, 0x5F, 0x3F, 0x3F, 0x00};//A перебераем столбцы, выставля данные на строки.
unsigned char arr[5]={0x60, 0x57, 0x37, 0x37, 0x00};//A перебераем столбцы, выставля данные на строки.


int main(void)
{

PORTA=0xFF;
DDRA=0xFF;

PORTB=0xFF;
DDRB=0xFF;

while (1)
{


/*for(k=0;k<=6;k++) //Перебераем строки Данные выставляем на столбцы.
{ //PORTB=0x00;
PORTA=arr[k];
//PORTB=0xFF;
PORTB&=~(1<<k);
_delay_ms(1);
PORTB=0xFF;
}*/

for(k=0;k<=4;k++) //Перебераем столбцы Данные выставляем на строки.
{ //PORTB=0x00;
PORTB=0xFF;
PORTA=arr[k];
PORTB&=~(1<<k);
PORTB=~PORTB;
//_delay_ms(100);
//PORTB=0xFF;
_delay_ms(1000); //При такой задержке более или менее адекватно выводится символ.
}
}
}


Сообщение отредактировал IgorKossak - May 17 2015, 19:04
Причина редактирования: [codebox] для длинного кода, [code] - для короткого!

Прикрепленные файлы
Прикрепленный файл  1.rar ( 17.1 килобайт ) Кол-во скачиваний: 9
Прикрепленный файл  matrix5x7.rar ( 83.85 килобайт ) Кол-во скачиваний: 11
 
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 05:47
Рейтинг@Mail.ru


Страница сгенерированна за 0.01453 секунд с 7
ELECTRONIX ©2004-2016