Страница 1 из 1
нужна помощь. бегущая строка
Добавлено: Пн дек 14, 2009 22:53:56
Twilo
Приветствую!
есть вот такая схема. Хочеться сделать там бегущую строку-текст. Обьясните плиз, каким образом это делается. В каком виде записывать текст? Интересует алгоритм, и все что может этого касаться. В програмировании немного разбираюсь, пытаюсь писать на Си. делаю все сам. Буду благодарен за любую информацию. Спасибо
Re: нужна помощь. бегущая строка
Добавлено: Вт дек 15, 2009 00:01:58
xVekx
Ну для этого дело тебе нужны шрифты (не помню откуда содрал =) ).
Идея как это работает может быть такой 3 сдвиг регистра сдвигают одиночный импульс в право в то время как на порту D поочерёдно появляется сигнал управляющий столбцами. (Типо как работа сканера).
для этого нужен будет буфер массив
функция вывода буфера
unsigned char buff [8*3];
записываем в регистр одиночный импульс
for(uchar i=0 , i<8*3;i++)
{
PORTD = buff;
// после сдвигаем одиночный импульс в регистре в право, посылая тактовые импульсы на регистр.
}
А вот алгоритм работы с буфером (типо как в бегущей строке),
я думаю разобраться будет не сложно.
Для этого нужен будет буфер строки =)).
И сдвигая влево или в право первый буфер относительно буфера строки, мы будем иметь описаный вами эффект =))).
Добавлено: Вт дек 15, 2009 00:21:57
Twilo
я так понял вы шрифт выложили!? Спасибо!
unsigned char buff [8*3];
почему именно 8*3? Восемь байт - это одна матрица и три потому что их три? правильно?
Добавлено: Вт дек 15, 2009 00:42:14
xVekx
8 бит (байт считается равным восьми битам) это размер строки в индикаторе по схеме 3 индикатора подключены к 3 регистрам вот откуда 8*3 =). Надеюсь вы разберётесь в даташите на регистр
http://www.nxp.com/documents/data_sheet/74HC_HCT595.pdf
Добавлено: Вт дек 15, 2009 09:48:12
Twilo
спасибо, я это и хотел сказать, но несмог. а с регистром я работать умею.
Добавлено: Вт дек 15, 2009 20:26:13
Twilo
путем несложных комбинаций клавиш на компьютере удалось получить описанный эффект
Спасибо
xVekx за подсказки!
Выкладываю вдруг кому пригодиться