Бегущая строка на PIC16F877 на 20 матрицах 8х8 или 160х8 пикселей (с часами и будильником)

Эта бегущая строка позволяет читать текст объемом не более 8192 буквы включая пробелы. Текст вводится в память 24С64 бегущей строки при помощи клавиатуры от компьютера без подключения самого компьютера. Во время ввода текста есть возможность стирания букв при помощи клавиши (Backspace) наблюдая за этим действием удаления букв на табло.

Есть возможность регулировки скорости бега букв при помощи 2-х клавиш рядом с цифрами клавиатуры (+ и -). Скорость бега строки записывается в самую последнюю ячейку памяти 24С64 поэтому при первом включении без регулировки скорости будет наблюдаться медленный бег букв и поэтому нужно сделать первую регулировку . Скорость бега очень сильно меняется при регулировки записи числа в последнюю ячейку 24С64 числа от 1….30 в десятичном измерении или в шестнадцатиричном1..1Е в чем можно убедиться с помощи программатора PICKIT2, но это не обязательно.

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

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

Микросхемы табло 74НС595 выполняют роль зажигания горизонтали табло или строки из 160 светодиодов,  а транзисторы дают возможность менять горизонтали или строки от верхних до нижних по очереди то есть зажигание табло происходит построчно с верху вниз по очереди со скоростью 300 кадров в секунду.

Сама микросхема 74НС595 представляет из себя обычный сдвиговый регистр с выводом каждого регистра на светодиодную матрицу но есть большое НО матрица с регистрами соединяется не на прямую а через фиксирующие логическое состояние регистрами.

Зачем это нужно? Это нужно для того чтобы пока идет загрузка от МК сдвиговых регистров по цепочке от одного к другому с каждым тактовым сигналом на выводе 11 и при этом наблюдалось на светодиодных матрицах чего нам вовсе не нужно потому что картинка при этом засвечивалась светодиодами не в нужных местах. Потому дополнительные фиксирующие регистры блокируют во время загрузки данных вывод информации на матрицы и обновляют лишь после того как на выводах 12 появиться тактовый сигнал передовая от сдвиговых регистров к фиксирующим данные, а фиксирующие передают на матрицы.

Данные табло создающие все картинку строки поступают от МК с вывода 34 на вход регистра 14 микросхемы 74НС595 от первой микросхемы 74НС595 ко второй данные передаются с выхода 9 на вход 14 и так по цепочке до последней 20 микросхемы.

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

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

Чтобы проверить первую плату дисплея нужно подключить клавиатуру к плате МК подать питание нажать одну или несколько букв подать команду конца строки, что текст введен нажав клавишу ENTER после этого пойдет бег строки с низкой скоростью потому что скорость бега тоже нужно отрегулировать нажимая клавишу (-) до тех пор пока не запишется константа от 5..1Е в шестнадцатиричном виде в память 24С64.

Если вам не нужна строка такой большой длинны состоящая из 20 матриц 8х8, то я могу вам выслать прошивку с меньшим количеством от 2 до 19 это делается просто и быстро ответ вам вышлю письмо с прошивкой мой адрес evgen100777(sobaka)rambler.ru.

Платы дисплея разведены для матриц 6х6 сантиметров красного цвета свечения с маркировкой QFT 2388ASR плата микроконтроллера сделана с условием модернизации добавления строке часов и термометра но потому что прошивка под это дело не доделана не рекомендую добавлять кнопки, чтобы не спалить порт МК.

Командные кнопки.

(Shift) – кнопка переключения на большие буквы, нажав на нее и отпустив нажимается буква и выводиться на табло заглавная буква если нажать следующую букву без предварительного нажатия Shift выводиться маленькая буква, то есть  перед каждым вводом заглавной буквы нужно нажать и отпустить Shift.

 (+и) — эти клавиши работают при включении бегущей строки до набора текста и регулируют скорость перемещения букв по табло + увеличивает скоростьуменьшает скорость перемещения букв.

Backspace— клавиша стирания текста во время набора, работает лишь в режиме набора текста отображая на табло удаленную букву смещением текста налево.

Enter эта клавиша запускает бег строки после набора текста обозначая конец текста в памяти 24С64 и говорит о том что нужно с этого места текста начать бег строки с начала.

Для нового набора текста бегущую строку нужно выключить и снова включить с подключенной клавиатурой выбрать скорость бега текста клавишами плюс и минус и при первом нажатии на букву табло очищается с отображением в правой части строки первой буквы набирая текст он продвигается в левую сторону после этого нажимается клавиша Enter  и строка уходит в рабочий режим бега не реагируя на клавиатуру.

Для повторного вода текста нужно не забывать включить и выключить строку.

Бегущая строка с часами, календарем и набором текста на клавиатуре PS/2

Бегущая строка показывает время часы минуты секунды день цифрами, а месяц и день недели словами например ВРЕМЯ 12.30.10  20 ЯНВАРЯ СРЕДА. 

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

Во время набора текста нажатием клавиши левого CTRL вставляются часы с календарем в текст бегущей строки. Эта строка имеет все те же функции что и прошлые строки на PIC16F628 и PIC16F877 и управляется она точно также.

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

В настройках времени день недели и месяц отображается в виде цифр.

Вот чуть измененная схема этой строки тут добавилось две кнопки с подтягивающими резисторами изменения времени и часовым кварцем на 32768 Гц и ещё один резистор подтягивающий вход контролера отвечающий за ввод клавиатуру.

Для более стабильной работы PIC16F877 лучше запитывать через резистор 11 ом 0.25 Ватт по плюсовому питанию для понижения помех идущих от транзисторов которые коммутируют строки табло.

 

Бегущая строка с часами и термометром для улицы и дома.

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

Показания выводиться в виде надписи ТЕМПЕРАТУРА ДОМ 25,2 УЛИЦА -12,4 показания температуры имеют младший показатель в виде десятой доли градуса.

Для вставки термометра в текст надо нажать клавишу левый ALT на компьютерной клавиатуре, подключенной к бегущей строке.

Диапазон температур выводимым термометром -55 до 99 градусов но не рекомендуется нагревать датчик выше 70 градусов во избежание его порче.

Длина провода идущего к датчику на улице должен быть не более 4 метров.

Есть прошивка с тремя Украинскими буквами.
Сигнал будильника снимается  в виде лог 0 во время сигнала с 38 вывода PIC16F877


Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот

Схема 1IC
МК PIC 8-битPIC16F8771
IC1
Микросхема памяти24C641
IC2, IC3
Сдвиговый регистрCD74HC59520
VT1-VT8
Биполярный транзисторBD1408
C1, C2
Конденсатор100 нФ2
C3, C4
Конденсатор15 пФ2
C5
Конденсатор3.3 нФ1
R1-R16, R18, R19, R21-R24, R30, R31
Резистор330 Ом24

Резистор330 Ом144
R26, R27
Резистор5.1 кОм2
R28, R29
Резистор4.7 кОм2
Cr1
Кварцевый резонатор20.000 МГц1

Светодиодная матрица8х820

РазъёмPS/21
Схема 2IC
МК PIC 8-битPIC16F8771
IC1
Микросхема памяти24C641

Сдвиговый регистрCD74HC59520

Биполярный транзисторBD1408
C2
Конденсатор100 нФ1
C3, C4
Конденсатор15 пФ2
C5
Конденсатор3.3 нФ1
C6, C7
Конденсатор33 пФ2
C8
Конденсатор электролитический47 мкФ1
R18, R19, R21-R24, R30, R31
Резистор330 Ом24

Резистор330 Ом144
R26, R27, R32, R33
Резистор5.1 кОм4
R29, R34, R35
Резистор4.7 кОм3
R36
Резистор11 Ом1
Cr1
Кварцевый резонатор20.000 МГц1
Cr2
Кварцевый резонатор32768 Гц1
S1, S2
Кнопка тактовая2

Светодиодная матрица8х820

РазъёмPS/21
Схема 3IC
МК PIC 8-битPIC16F8771
IC1
Микросхема памяти24C641

Сдвиговый регистрCD74HC59520

Датчик температурыDS18B202

Биполярный транзисторBD1408
C2
Конденсатор100 нФ1
C3, C4
Конденсатор15 пФ2
C6, C7
Конденсатор33 пФ2
C5
Конденсатор3.3 нФ1
R18, R19, R21-R24, R30, R31
Резистор330 Ом24

Резистор330 Ом144
R26, R27, R32, R33
Резистор5.1 кОм4
R29, R34, R35-R37
Резистор4.7 кОм5
Cr1
Кварцевый резонатор20.000 МГц1
Cr2
Кварцевый резонатор32768 Гц1
S1, S2
Кнопка тактовая2

Светодиодная матрица8х820

РазъёмPS/21
Добавить все

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

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

Добавить комментарий

Ваш адрес email не будет опубликован.