Бегущая строка STX-4
 
 
Основные характеристики устройства:
- макс. разрешение(W*H): 200 x 24 точек;
- информационная емкость: 10000 знаков (5 текстовых банков, каждый по 2000 знаков);
- количество шрифтов: 6 ;
- встроенный редактор текста с подключаемой компьютерной АТ-клавиатурой, язык и режим выводятся на ее светодиоды;
- загрузка текста с компьютера через интерфейсы: RS-232 (COM-порт), RS-485;
- датчик температуры;
- встроенные часы/календарь;
- датчик освещенности(яркость табло от времени суток);
 

Присланные фотографии:

Схема устройства.
Схема собрана на микроконтроллере Atmega64.
Полная схема контроллера.

Облегченная схема контроллера табло с минимумом функционала(просто бегущая строка).

Микроконтроллер Atmega64, Atmega64A(но Atmega64L не подойдет - маленькая частота) содержит достаточно внутренней памяти для хранения программы, шрифтов и выводимой текстовой информации. Во внутренней памяти МК может храниться 1 текстовый банк (2000 символов). Если потребуется текст большей длины или нужно хранить несколько сообщений, то на плату устанавливается микросхема дополнительной памяти U3 24C64. В этом случае общая длина текста может быть до 10000 знаков (1 банк в МК + 4 банка во внешней памяти).
Чтобы не падала яркость экрана светодиодная матрица делится на 3 блока по 8 горизонтальных строк каждый(но может быть подключено 1 или 2 блока - на 8 или 16 точек в высоту). Т.о. время свечения каждой строки составляет около 1/8 от общего времени - стандартное значение для большинства подобных устройств. Микросхема U8 включена как демультиплексор и коммутирует тактовый сигнал модуля SPI(выход SCK) на один из трех блоков. На адресные входы A и B подается номер этого блока. Выдвигаемые байты данных с SPI(выход MOSI)  подаются на все блоки одновременно, но захват данных происходит только тем блоком на который сейчас поступают тактовые импульсы. Скорость потока данных - 1Мбит, при частоте регенерации свыше 80Гц - 2Мбит/с.
Микросхемы U9, U10 и U11 74НС245 являются буферными усилителями, специально разработаны для работы на тяжелую нагрузку(шина данных с относительно большой емкостью). Резисторы R23...R36 - "антизвонные", немного затягивают фронты и исключают ложные срабатывания сдвиговых регистров. Для подключения контроллера к табло рекомендуется использовать ленточный кабель, где сигнальные линии чередуются с земляными.
Яркость табло определяется освещенностью фоторезистора R38, сигнал с него поступает на вход АЦП и регулирует коэффициент заполнения ШИМ. ШИМ с МК (разъем J7 LED_PWM) поступает на входы разрешения /OE сдвиговых регистров матрицы. Пределы регулировки яркости: 10...100%. Если авторегулировка яркости не используется, то входы /OE сдвиговых регистров подключаются на землю, а фоторезистор можно не устанавливать. Имеющийся в наличии фоторезистор и конкретные условия освещенности могут потребовать подбор значения R21. Датчик освещенности целесообразно смонтировать в трубке, которую направить вверх на небо. Так исключается боковая засветка от фонарей уличного освещения и других нежелательных источников света.
Транзисторы Q9 и Q10 образуют выход с открытым коллектором для клавиатурного интерфейса. В подпрограмме работы с клавиатурой используются таймауты, поэтому "горячее" переподключение клавиатуры не будет вызывать ошибок приема как это происходило в первой и второй версиях устройства.
Транзисторы Q1-Q8 коммутриуют анодные строки светодиодной матрицы на плюс питания. Если матрица длинная и кушает много тока, то на строки каждого блока ставится свой транзистор:

К контакту J2 LED_PWR подключается мощный источник питания +5V,  он питает всю светодиодную матрицу. Т.к. светодиодная матрица потребляет много тока, то следует использовать достаточно толстые провода, особенно это касается земляных проводников.
Микросхема U4 MAX232 преобразует 12-вольтовые уровни интерфейса RS-232 (от COM-порта) в стандартные уровни ТТЛ. Микросхема U5 SN75176 является приемопередатчиком дифференциального интерфейса RS-485. Существует большое количество ее аналогов  у разных производителей (например, MAX485, SP485 и т.д.), но некоторые микросхемы несовместимы по расположению выводов. Поэтому перед установкой аналога следует свериться с документацией производителя(посмотреть на ее datasheet).
Во избежание конфликта выходов, одновременно на плату не следует устанавливать обе микросхемы MAX232 и SN75176(т.е. надо ставить только одну из них).
Диод D1 для установки не обязателен. Он просто защищает схему контроллера от случайной переполюсовки питания.
Через разъем J3 МК программируется по интерфейсу JTAG. Я выбрал нестандартную распиновку JTAG т.к. она упрощает разводку платы. Atmega64 также может программироваться через ISP. Но надо иметь в виду что у нее в  режиме программирования ISP используются другие ноги(не SPI !): MOSI=PE0, MISO=PE1, SCK=PB1(см. даташит, раздел SPI Serial Programming Pin Mapping). FUSE-биты для AVR Studio, CVAVR.
 

Плата разведена в одном слое + 9 перемычек(красный цвет). Все элементы - выводные типа Through Hole. Единственный компонент в корпусе для поверхностного монтажа - МК Atmega64. На плате предусмотрено место под держатели трехвольтовой батарейки CR2032 с вертикальной и горизонтальной установкой. Термодатчик U6 DS18S20(DS1820) и фоторезистор R38 могут быть выносными.

Плата обработана Топором, чем и объясняется нестандартная форма дорожек. Большая часть платы покрыта земляным полигоном. Это позволяет экономно расходовать травящий раствор и уменьшить уровень наводок на компоненты. С другой стороны, такая плата может представлять некоторую трудность при домашнем изготовлении с помощью утюговой технологии. Поэтому в архив также включена плата где земля в виде сеточки.

Светодиодная матрица может быть собрана по нескольким схемам. Соответственно, под каждую схему включения имеется своя прошивка.
Первый вариант. Строки матрицы являются общими анодами. Сборка транзисторных ключей ULN2803 умощняет выходы сдвиговых регистров 74HC595 и позволяет нагрузить до 500мА на каждый выход(т.е. столбец). Резисторы столбцов подбираются исходя из желаемой яркости и характеристик светодиодов. Примерный диапазон сопротивления резисторов: 50...100 Ом. Если предполагается устанавливать в каждый пиксел по несколько светодиодов параллельно, то каждый диод снабжается своим собственным токоограничивающим резистором. Данный вариант обладает достаточно высокой яркостью свечения матрицы и может быть использован на улице.
Если на табло в некоторых местах мерцают точки, то значит сдвиговые регистры ловят наводки. Попробуйте использовать более толстые земляные проводники. Землю от микросхем ключей ULN2803(выводы №9) пустить отдельным проводником, который соединить с землей контроллера на клемме питания.
Второй вариант похож на первый, но здесь вместо дискретных светодиодов используются готовые матрицы FYM-12881. Это матрицы 8*8 точек с общим катодом на строках(столбцы - аноды). Но т.к. матрица квадратная, то эта характеристика условна и она может быть включена в схему как матрица с общим анодом с поворотом на 90 градусов. Производитель выпускает матрицы с различной маркировкой и разным цветом свечения. Например:
FYM-12881ASG-11  - в каждой точке находятся два отдельных светодиода - красный и зеленый;
FYM-12881ASG0-11  - установлены только красные диоды;
FYM-12881AS0G-11  - установлены только зеленые светодиоды.
Здесь используются красные или красно-зеленые матрицы, зеленые светодиоды подключены к другим выводам и могут быть задействованы если переразвести плату под них.

Матрицы поворачивать я не стал т.к. плата бы не развелась в одном слое, поэтому просто изменил в программе алгоритм вывода информации.
Этот вариант я использовал для создания макета и отладки программы.
Третий и самый простой вариант. Матрица с общими катодами на строках, заместо КТ973 на плате контроллера ставятся NPN транзисторы КТ972. Сдвиговые регистры напрямую питают светодиодные столбцы и поэтому яркость может быть невысокая, т.е. годится для использования внутри помещения. Схема матрицы такая же как у STX-1.

Схема подключения контроллера к светодиодным блокам.

Схема подключения если не используется регулировка яркости.

Программа устройства.
Программа написана так, что ненужные функции можно не подключать. Например, одному не нужны часы, другому температура.
На плату можно не устанавливать:
- микросхему памяти 24С64;
- микросхему датчика температуры DS1820;
- микросхему часов DS1307.
Эти функции настраиваются через меню устройства(по умолчанию они отключены).
Также на плату можно не устанавливать:
- фоторезистор/датчик освещенности(см. выше схему подключения если не используется регулировка яркости);
- микросхемы связи с компьютером MAX232 и SN75176.

Через меню настраиваются:
- шрифт температуры, шрифт времени и шрифт даты;
- системный шрифт;
- наличие датчика температуры, микросхемы часов и наличие микросхемы внешней памяти;
- частота регенерации табло(50...100Гц);
- длина табло(64...200 точек).
Высота табло определяется загруженными шрифтами.

Описание режимов работы устройства (PDF)
 
Программа загрузки текстов
Программа загрузки текстов для ПК включает в себя простой редактор для набора текстов с функциями вставки управляющих команд и симулятор бегущей строки.
При загрузке в устройство текст может быть размещен в одном из пяти банков EEPROM, либо во временном банке. При выборе временного банка текст записывается в ОЗУ (RAM) и можно указать количество повторов сообщения(от 1 до бесконечности) после которых устройство начнет воспроизводить текст из EEPROM. Функция временного банка полезна для вывода "быстрых" сообщений, например, "Магазин закрывается через 5 минут."

 Симулятор позволит увидеть текст еще до загрузки в устройство.
*Скорость прокрутки текста в симуляторе может не совпадать со скоростью бега текста на реальном устройстве.

Для связи компьютера с устройством используются следующие интерфейсы:
- RS-232, контроллер табло соединяется с компьютером прямым модемным кабелем(2-2, 3-3, 5-5);
- RS-485. Обычно используется для передачи информации на значительные расстояния и в условиях сильных электромагнитных помех. Кабель на малые расстояния можно скрутить из обычной "лапши", но при работе в тяжелых условиях или на значительные расстояния используйте готовую экранированную витую пару. Для переключения направления передачи данных программа STX4 Control использует линию DTR. Схема преобразователя RS-232 -> RS-485.

Программа редактора шрифтов
Часто бывает так, что пользователь не может на словах объяснить какие именно шрифты хочется увидеть в табло. В таком случае может быть полезна программа редактора шрифтов. Эта утилита позволит самостоятельно подготовить нужный набор шрифтов. Для упрощения этой процедуры имеется возможность захвата шрифтов ОС Windows.

В настоящий момент смена шрифтов в устройстве производится через смену прошивки Atmega64 (требуется перекомпиляция программы контроллера).
 
 

Скачать:

    Архив с принципиальными схемами
 
    Печатные платы(PDF)

    Файлы дизайна для Proteus 7.5.3

    STX4 Control - программа загрузки текстов в табло

    Binary Font Editor V2  - программа создания своих шрифтов. Файлы для обновления программы здесь(добавлена возможность захвата казахских и узбекских шрифтов).
 
    FAQ (PDF) - ответы на часто задаваемые вопросы

    Прошивки микроконтроллера - демонстрационная версия, описание ограничений см. в архиве
 
     Видеоролик с демонстрацией работы системы(залиты шрифты на 16 точек)
 
     Присланные фотографии
 

Ссылки на похожие проекты:

Цветная бегущая строка STX AVR-4RGY

Бегущая строка STX AVR-4R1  -  бесплатная упрощенная версия на ATmega16.

Бегущая строка с интерфейсом USB

БЕГУЩАЯ СТРОКА НА СВЕТОДИОДАХ

Табло бегущая строка

Бегущая строка

Бегущая строка на AT90S2313 
 

На главную

Hosted by uCoz