Реклама ⓘ
Главная » Микроконтроллеры
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Реклама ⓘ

Бегущая строка 8x80 с набором текста на клавиатуре

Это модифицированная версия проекта бегущая строка на PIC16F628. Данное устройство воспроизводит текст на светодиодной матрице 8x 80 светодиодов, имеет память текста 128 символов, которые загружаются с компьютерной  клавиатуры PS/2, подключенной прямо к бегущей строке.

Я пробовал несколько клавиатур, с каждой из трех устройство работало без проблем.
Устройство имеет все русские буквы заглавные и маленькие, а также цифры и прочие знаки, английских букв нет.

Схема бегущей строки на МК PIC16F628 с набором текста на клавиатуре

Микроконтроллер работает на частоте 20 МГц и управляет сдвиговыми регистрами 74HC595D, которые логическим уровнем 1 зажигает светодиодные матрицы строк, а дешифратор К555ИД7 или его полный аналог 74LS138 управляет через усилительные транзисторы 8-мю столбцами всех матриц.

Матрицы подключаются к сдвиговым регистрам 74HC595D через резисторы, которые защищают от перегорания светодиодов, ограничивая ток.

Микросхемы 74HC595D имеют 8 триггеров фиксации данных на выходах, соединенных с матрицей светодиодов  и  8 сдвиговых триггеров,  в которые через 14 вход загружают данные и с 9 выхода продолжают сдвиг дальше на следующие регистры цепочки из 10 штук.

Для этого сдвига необходим такт, идущий от процессора на все входы 11- 74HC595D после каждого 80-того такта цепочка регистров продвигается до 80 триггера всех 74HC595D, после этого как загружена вся строка из 80 триггеров, подается еще один тип такта, уже на входы 12 всех 74HC595D, после чего загружаются  за один такт  8 дополнительных  триггеров фиксации данных на выходах, соединенных с матрицей светодиодов от сдвиговых триггеров,  на всех 74HC595D за один такт, матрица при этом засвечивает одну полосу из 80 светодиодов и засветка эта происходит без изменений логических уровней даже тогда, когда загружаются сдвиговые регистры.

Так перебираются по очереди 8 строк из 80 светодиодов с помощью дешифратора К555ИД7 с большой скоростью, что совершенно не видно глазу.

Такой метод очень удобный и не снижает яркости бегущей строки по причине ухода программы процессора на выполнение других операций, не связанных с отображением.

При включении с пустой памятью букв, отображает внизу полосу говорящую, что память не заполнена, после ввода хотя бы одной буквы, строка начинает свою работу перебирая строки матриц. Советую сильно не нагружать током матрицы низким сопротивлением, так как при включении с пустой памятью букв, матрицы непрерывно светится нижняя строка.

Управление и ввод данных

Когда нужно ввести заглавную букву, нужно нажать и отпустить левый Shift на клавиатуре, потом нажать нужную букву и на дисплее появится эта заглавная буква, с добавлением очередных букв табло будет передвигаться на один знак.
После набора текста, нужно нажать клавишу левый Ctrl на клавиатуре, это будет говорить о законченном тексте, после которого строка пойдет на следующий круг.

Если во время набора текста вы сделали ошибку, ввели не нужную букву, то нужно нажать клавишу BackSpace столько раз, сколько ввели не нужных букв, после этого нужно ввести правильные буквы, при этом на дисплее старые буквы не пропадают, они пропадут когда вы запустите строку и на следующем круге отображения их уже не будет.
Для запуска работы устройства отображения бегущих букв нажать Enter.
После команды Enter- запуска строки текст уже не изменяется для ввода новой информации, устройство нужно выключить и снова включить, тогда можно вести текст за места старого.

Для ввода знаков (!@#$%:?) нужно нажать левый Shift и отпустить потом клавиши с цифрами 1234567 над буквами там они нарисованы – это чтобы вам не искать.

Знак тире (-) просто нажав клавишу рядом с нулем.

Для ввода точки или запятой нажимать клавишу рядом с буквой Ю, если запятая, то вначале Shift. 

Подключение матрицы:

Подключение матрицы

Бегущая строка с компьютерной клавиатурой и памятью на 8192 буквы

В дальнейшем, был разработан еще один вариант бегущей строки с памятью на 8192 буквы. В данном проекте буквы также загружаются с компьютерной  клавиатуры PS/2, в флэш память 24С62. Очень удобно иметь несколько микросхем и менять их если нужен другой текст.

Принципиальная схема бегущей строки с памятью:

Схема бегущей строки на МК PIC16F628 с набором текста на клавиатуре и памятью на 8192 буквы

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
U1 МК PIC 8-бит
PIC16F628A
1 Поиск в магазине ОтронВ блокнот
U2-U11 Сдвиговый регистр
CD74HC595
10 Поиск в магазине ОтронВ блокнот
U12 Кодер, декодер
SN74LS138
1 Аналог 555ИД7Поиск в магазине ОтронВ блокнот
U13 Флэш память24С641 Применяется при варианте сборки с памятью на 8192 буквы.Поиск в магазине ОтронВ блокнот
Q1-Q8 Биполярный транзистор
2N2905
8 Поиск в магазине ОтронВ блокнот
С1, С2 Конденсатор15 пФ2 Поиск в магазине ОтронВ блокнот
С3 Конденсатор3300 пФ1 Поиск в магазине ОтронВ блокнот
Конденсатор0.1 мкФ13 Соединяется с питанием каждой микросхемыПоиск в магазине ОтронВ блокнот
R1-R8, R49, R50 Резистор
4.7 кОм
10 Поиск в магазине ОтронВ блокнот
R9-R48, R51-R90 Резистор
470 Ом
80 Поиск в магазине ОтронВ блокнот
Кварцевый резонатор20 МГц1 Поиск в магазине ОтронВ блокнот
Светодиодная матрица8х8 LED10 Поиск в магазине ОтронВ блокнот
Разьем для подключения клавиатуры1 Поиск в магазине ОтронВ блокнот
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Теги:

Родиков Евгений Юрьевич Опубликована: 2012 г. 0 0
Я собрал 0 2
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 5 Проголосовало: 2 чел.

Комментарии (60) | Я собрал (0) | Подписаться

0
Евгений #
Появилась новая прошивка если кому надо пишите evgen100777@rambler.ru или Skype- evgen100777
Ответить
0
Евгений #
Если делать прошивку HEX из ASM файла в MPLAB 8.56 появляется ошибка по вине MPLAB, в MPLAB-ах других версий все нормально.
Ответить
0
Александр #
А какие матрицы вы здесь использовали?
Ответить
0
Евгений #
Матрицы подойдут любые анодами к 74НС595 катодами к транзисторам. Микросхема 74НС595 засвечивает по горизонтали, а 555ид7 по вертикали разрешает засветить нужную строку. 555ид7 перебирает горизонтальные строки 74НС595 засвечивает горизонталь в нужных местах.
Ответить
0
володя #
Хорошо бы использовать вместо 74HC595 микросхему STP16CP05 она получается заменила бы две 595. Посмотрите и аналогов у нее много.
Ответить
0
Евгений #
Посмотрел эту микросхему - хорошая штука. Если на ней делать, то не нужны резисторы 80 штук, там можно регулировать на одном выходе яркость светодиодов. Один только существенный минус - стоит эта микросхема от 50...80 руб, хотя если поискать, можно найти и дешевле.
Если буду делать следующую строку, то может буду делать на ней. 595 я купил по 7 руб

Ответить
0
володя #
Насчет цены, то stp16CP05 у нас стоит 1$, а насчет конструкции, то переделать надо только транзисторный каскад управления строками (поправьте меня если не так). Ну и часы на DS1307 тоже бы не помешали
Ответить
0
Евгений #
Программный код закончился, осталось не более 15 строк, для часов не хватит.
Ответить
0
Евгений #
Замерил частоту обновления матриц получилось 343 Герца, то есть изображение мерцать не будет, например у хорошего телевизора 100 Гц.
Ответить
0
Евгений #
Если вам нужно изменить количество матриц от 2...10 или изменить скорость бега строки пишите
Ответить
0
Rexer #
Нужна прошивка для 5 матриц
Ответить
0
GrinAV1954 #
Если я до Вас достучался, то пожалуйста, помогите изменить прошивку на 4 матрицы. Заранее спасибо!
Ответить
0
Михаил #
Поясните, пожалуйста, что обозначает: прошивка - при помощи 24С62? Можно просто имеющуюся прошивку программировать на ТРИТОНЕ в панельке?
Ответить
0
Евгений #
Прошивка 24С64 - это прошивка для схемы с памятью букв, 8192 буквы самая нижняя схема там есть эта микросхема. Прошивать можно на любом программаторе который может прошить и проверить запись в PIC16F628.
Не забываем получить у меня новую прошивку! Для схемы с 24С64 пишите мне
Ответить
0
Владимир #
Собираюсь повторить вашу схему и в связи с этим осмелюсь попросить у вас прошивку для схемы 24С64 и если можно полный файл(ы)печатной платы LAY.
Ответить
0
Сергей #
Собрал вашу схему с 24с64. Подскажите какими прошивками нужно прошивать?
Ответить
0
Олег #
Кто повторил схему? У меня нет генерации на 20 МГц (на 4 МГц - есть, но никаких выходных сигналов). Кварц и PIC менял, пробовал прошивки под разные версии схемы, писал Евгению Юрьевичу, но ответа нету.
Ответить
0
Евгений #
Чтобы генерация кварца была устойчивой, нужно ее правильно проверять, я сталкивался с такой проблемой когда подключал осциллограф к кварцу. Генерация пропадала и это правильно.
Осциллограф к кварцу нужно подключать через конденсатор 1..5пф.
Для устойчивой генерации, иногда нужно менять кварцы или конденсаторы, должны быть как на схеме соединяющий кварц с массой.
Ответить
0
Улугбек #
Собрал схему, нету генерации. Пробовал и кварц менять и конденсаторы подбирать по даташиту. Бес толку. Что порекомендуете?
Ответить
0
Олег #
Почти сделал схему. Проблема с подключением матриц. Походу упустил момент небольшой. А генерация есть. "Мозг" схемы работает отлично.
Ответить
0
Евгений #
Чтобы наладить бегущую строку, достаточно подключить одну матрицу 8х8 из светодиодов, чтобы она заработала. Только вовремя работы одной матрицы нужно текст бегущий быстро поворачивать голову в направлении движения, чтобы разглядеть.
Провожать головой текст в направлении движения будет легче, если увеличить количество матриц 8х8 от двух штук до 10 штук.
Скорость бега и количество матриц могу я уменьшить очень быстро и легко в прошивке и выслать вам.
Ответить
0
Dima #
А плата тут двухсторонняя или односторонняя?
Ответить
0
Евгений #
Плата у меня была односторонняя с перемычками под мои матрицы размером 32на32 милиметра
Ответить
0
Олег #
Все собрал! Плата рабочая. Делал одностороннюю.
Только из-за того, что матрицы взял размером 60*60, пришлось все устройство разбить на 3 платы. На двух из них матрицы и 595 микрухи, а на одной контроллер, память и 555ИД7 с транзюками
Ответить
0
Павел #
Как я понял из схемы, если добавить последовательно еще 595, конечно с увеличением мощности транзисторов, то длину строки можно увеличить на сколько захочешь. Я прав?
Имеется ли возможность увеличить разрядность символов с 8х8 до 16х10 или около этого, для увеличения высоты текста бегущей строки?
Ответить
0
evgen100777 #
Чтобы увеличить число матриц например с 10 до 20, то есть соседняя статья на сайте Паяльник.
Ответить
0
maverick #
Кто-то собирал схему с 24С64? Какая прошивка под этот вариант?
Ответить
0
evgen100777 #
Последнюю прошивку могу выслать! Только пишите для какой строки на каком микроконтроллере 628 или 877
Ответить
0
evgen100777 #
Там в папке указано с применением 24С64
Ответить
0
mastep75 #
Я собрал это устройство при постоянной поддержке автора. Большое спасибо ему за это! Все работает очень хорошо.
Ответить
0
sergey 657 #
А печатка в lay есть?
Ответить
0
vvitalij #
Евгений, есть желание собрать этот прибор, но с последней прошивкой как ее получить?
Ответить
0
evgen100777 #
Чтобы получить свежую прошивку пишите в ЛС
Ответить
0
олег #
Евгений скажите пожалуйста, а расширить возможно матрицы. Скажем подключить еще 10 матриц параллельно. Если можно то как?
Ответить
0
evgen100777 #
Нет так нельзя
Ответить
0
Дмитрий #
Есть у кого нибудь образец печатки?
Как движется текст, по схеме в каком направлении? От какого регистра к какому?
Ответить
0
evgen100777 #
Плата микроконтроллера крепиться с лева на табло текст бежит с права налево
Ответить
0
dima #
Скажите пожалуйста, а зачем 10 сдвиговых регистров?
Ответить
0
Алексей #
На схеме показано что выводы матриц "запаяны в ряд". Но по даташиту ряды и столбцы идут не подряд. Я использую матрицы с общим анодом (1088BS). Если я правильно понял: выводы R1-R8 к 74HC595; выводы C1-C8 - к 74S138.
По матрицам просмотрел много всего - запутался. Развейте мои сомнения, господа...
Ответить
0
Григорий #
Может кому пригодится, на светодиодах. Зеркалить не надо.
Прикрепленный файл: Индикато Бегущей строки.lay6
Ответить
0
Yrich #
Всем привет,есть у кого печатка блока управления в lay? Подарили индикатор матричный как на схеме, хочу собрать строку, чтобы индикатор без дела не лежал
Ответить
0
Yrich #
Кто подскажет интересный вариант бегущей строки с применением ds1307 + ds18b20 ?
Ответить
0
Григорий #
Применения нет бегущей строки. Но есть индикаторы меняющие показания это всё. Число, дата: две температуры (зависит от переключателя,то есть кнопки.) И две платы разведены под индикаторы и управление.
Ответить
0
Алёна #
Будет ли "бежать" текст после отключения клавиатуры? Или строка работает только с клавиатурой?
Ответить
0
Григорий #
Тест бежит и без клавы, я собрал матрицу на отдельных светодиодах,работает. Вот как стереть его из память?
Ответить
0
maverick5334 #
Тоже вопрос - ка стереть текст из памяти.
Ответить
0
maverick5334 #
У кого не стирается текст из памяти - прошивка выложенная под статьёй этого не позволяет. Обратитесь к автору за другой и тогда всё заработает.
Вот прошивка которой поделился автор (всё стирается) и мои платы. Плата управления с использованием 24C64. Прошивка рассчитана на 10 матриц.
Прикрепленный файл: Begushaj stroka(3).HEX
Прикрепленный файл: Бегущая строка.lay
Ответить
0
johnnyb #
Please I need the program "Begu shaj stroka (3) .HEX" in editable ASM format to adapt it to the Latin alphabet.
Thanks
Ответить
0
Григорий #
Тоже делюсь своей платой.Светики 10мм, входят свободно.
Ответить
0
Anjey #
В печатной плате smd резисторы в корпусе 1206?
Ответить
0
maverick5334 #
Там использованы ТРИ типоразмера резисторов, 0805, 1206 и 2010 (2010 только в качестве перемычек)
2010 легко можно заменить на обычные проволочные перемычки чуть подкорректировав плату, вместо SMD контактов 2010 добавив обычное отверстие.
Это у меня патологическая неприязнь к проволочным перемычкам... Я их стараюсь совсем избежать или свести к минимуму.
Отредактирован 03.05.2019 21:22
Ответить
0
ЮРА #
Не подскажите как менять скорость?
Ответить
0
maverick5334 #
Только связаться с автором.
Он отвечает, мне помог.
Отредактирован 18.05.2021 22:35
Ответить
0
johnnyb #
Please I need the program "Begu shaj stroka (3) .HEX" in editable ASM format to adapt it to the Latin or English alphabet.
Thanks
Ответить
0
johnnyb #
I can not contact the author, neither through the mail this forum nor by email (evgen100777(@)rambler.ru)
Ответить
0
SEM-83 #
Ребят кто какие транзюки втыкал?
Ответить
0
SEM-83 #
Парни как выставить фьюзы при прошивке?
Генерации нет.
Ответить
0
jonhnnyb #
Please, I can't contact the author.
Could you send me the corrected version 3 of the program in .asm mode so that I can program it in Latin alphabet.
I would greatly appreciate it.
Ответить
0
maverick5334 #
Replied to you by email
Ответить
0
johnnyb #
Thank you so much.
I already have all those files.
There is nothing new that can help me.
I will try to contact the author again through Skype to get version 3 in .asm.
Unfortunately I don't have enough programming knowledge to correct the version 2 file in .asm to have my own version 3.
If I modified version 1 with RS232 connection and made it work correctly the Latin alphabet (https://cxem.net/mc/mc147.php)
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическая мощность?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

AVR-программатор USB ASP
AVR-программатор USB ASP
Мультиметр Mastech MS8268 Конструктор для сборки: предусилитель на лампе 6N3
вверх