Бегущая строка на микроконтроллере PIC16F628 » Программирование устройств на PIC микроконтроллерах


Логин:
Пароль:
О сайте:

Pic.Rkniga.ru - Сайт как для начинающих, так и для опытных радиолюбителей, разрабатывающих свои устройства на популярных PIC микроконтроллерах.
Здесь можно обмениваться сообщениями на форуме, а также добавлять на сайт статьи и схемы своих устройств.

Меню сайта
Главная Форум по PIC микроконтроллерам Форум Статьи по PIC микроконтроллерам Статьи Справочная информаци по PIC микроконтроллерам Справочник Литература по PIC микроконтроллерам Литература Схемотехника Схемотехника устройств на PIC микроконтроллерах Микроконтроллеры Программаторы Все по программированию PIC микроконтроллеров Программы, Софт Программы Ссылки
Опрос

Какие микроконтроллеры вы используете?


Atmel
MicroChip
STM
Motorola
Texas Instruments
Другие


Последние материалы
  • Тестовая плата для отладки программ на микроконтроллере PIC18F4550
  • Кнопка On/OFF на PIC12F629.
  • Часы с синхронизацией от китайского будильника
  • ШИМ регулятор на PIC16F628A.
  • Счетчики прямого и обратного счета на PIC16F628A.
  • Таймер отключения питания для мультиметра и не только.
  • Измеритель напряжения и тока
  • Маршрутный компьютер для электровелосипеда
  • Простой двухканальный термометр на PIC16F690 и датчиках DS18B20
  • Электронная "Незабудка" для забывчивых
  • Популярные материалы
    Случайная книга
    Бегущая строка на микроконтроллере PIC16F628
    Автор публикации: alex Просмотров: 14165 Добавлен: 20-08-2012, 22:41 Комментарии: 0

    Это устройство воспроизводит текст на светодиодной матрице 8 Х 80 светодиодов, имеет память текста 128 букв, которые загружаются с компьютера через  COM порт с помощью программы Terminal V1.9.
         Устройство имеет все заглавные и маленькие  буквы русского алфавита, а также цифры и прочие знаки, которые можно увидеть в таблице ниже.
         Микроконтроллер работает на частоте 20 МГц и управляет сдвиговыми регистрами 74HC595D, которые логическим уровнем 1 зажигает светодиодные матрицы строк, а дешифратор К555ИД7 или его полный аналог 74LS138 управляет через усилительные транзисторы 8-мю столбцами всех матриц.
    Бегущая строка на микроконтроллере PIC16F628

         Матрицы подключаются к сдвиговым регистрам 74HC595D через резисторы, которые защищают от перегорания светодиодов, ограничивая ток.
         Микросхемы 74HC595D имеют 8 триггеров фиксации данных на выходах, соединенных с матрицей светодиодов   и  8 сдвиговых триггеров,  в которые через 14 вход загружаются данные и с 9 выхода продолжают сдвиг дальше, на следующие регистры цепочки из 10 штук.
         Для сдвига необходим такт, идущий от процессора  на все входы 11- 74HC595D,  после каждого 80-того такта цепочка регистров продвигается до 80 триггера всех 74HC595D. После этого, как загружена вся строка из 80 триггеров, подается еще один тип такта уже на входы 12 всех 74HC595D, после чего загружаются  за один такт  8 дополнительных  триггеров фиксации данных, на выходах, соединенных с матрицей светодиодов  от сдвиговых триггеров   на всех 74HC595D за один такт, матрица при этом засвечивает одну полосу из 80 светодиодов и засветка эта происходит без изменений логических уровней даже тогда, когда загружаются сдвиговые регистры.
         Так перебираются по очереди 8 строк из 80 светодиодов  с помощью дешифратора К555ИД7 с большой скоростью, что совершенно не видно глазу.
         Такой метод очень удобный и не снижает яркости бегущей строки по причине ухода программы процессора на выполнение других операций, не связанных с отображением.
         При включении с пустой памятью букв отображает внизу полосу говорящую, что память не заполнена, после ввода хотя бы одной буквы. строка начинает свою работу перебирая строки матриц. Советую сильно не нагружать током матрицы низким сопротивлением.  так как при включении с пустой памятью букв, матрицы непрерывно светится нижняя строка.
         Для управлением и вводом данных есть таблица команд.
         После ввода кодировки буквы строка останавливается и показывает веденный текст и набранную букву с добавлением, которой  строка продвигается на один знак, что очень удобно при наборе текста.
         Настройка программы Terminal V1.9 выбрать подключенный СОМ порт выбрать скорость обмена (Baud rate) = 1200
    - (Data bit) = 8
    - (Parity) = none
    - (Stop bits) = 1
    - (Handshaking) = none
    Подключить бегущую строку проводом к компьютеру.
         Нажать в программе кнопку Connect. Вводить цифры из таблицы в строке программы напротив кнопки Send нажимая на неё после каждой цифры кодирующую букву при этом на устройстве начинает отображаться набранный текст.

    Кодировка букв для ввода в терминале

    0-#000
    1-#001
    2-#002
    3-#003
    4-#004
    5-#005
    6-#006
    7-#007
    8-#008
    9-#009
    А-#010
    а-#011
    Б-#012
    б-#013
    В-#014
    в-#015
    Г-#016
    г-#017
    Д-#018
    д-#019
    Е-#020
    е-#021
    Ё-#022
    ё-#023
    Ж-#024
    ж-#025
    З-#026
    з-#027
    И-#028
    и-#029
    Й-#030
    й-#031
    К-#032
    к-#033
    Л-#034
    л-#035
    М-#036
    м-#037
    Н-#038
    н-#039
    О-#040
    о-#041
    П-#042
    п-#043
    Р-#044
    р-#045
    С-#046
    с-#047
    Т-#048
    т-#049
    У-#050
    у-#051
    Ф-#052
    ф-#053
    Х-#054
    х-#055
    Ц-#056
    ц-#057
    Ч-#058
    ч-#059
    Ш-#060
    ш-#061
    Щ-#062
    щ-#063
    Ъ-#064
    Ы-#065
    ы-#066
    Ь-#067
    Э-#068
    э-#069
    Ю- #070
    ю-  #071
    Я-  #072
    я-  #073
    пробел    -#074
    точка      .-#075
    запятая , -#076
    восклиц !-#077
    вопрос ? -#078
    тирэ     -  - #079
    двоеточ: -#080

    Команды бегущей строки для ввода в терминале для ее работы
    #253 – команда замены буквы применяется для исправления ошибки  вода теста.
         Когда вы неправильно ввели букву или несколько, то нужно вести эту команду столько раз, сколько последних букв вы ввели неправильно.
         Потом нужно вести новые правильные буквы  на дисплее, старые буквы при этом не пропадают. они пропадают только когда строка их воспроизведет по новой.
    #254 – Команда запуска сдвига строки после набора текста.
    #255- Команда означающая, что текст строки закончен.
         Нужна для того, чтобы обозначить что текст с этой точки пойдет по новой, применяется до команды  #254
         Если нужно вести текст по новой, то нужно устройство выключить и снова включить.
    Моделирование
         Программу бегущей строки можно проверить в программе моделирования Proteus, файл и программу симулирования СОМ  (Virtual Serial Ports Driver XP4) порта я вложил в архив, она имеет 14 дневной срок бесплатной эксплуатации, после установки нужно перезагрузить компьютер.  
         В Proteus'е можно загружать с программы Terminal V1.9 код букв и команд просматривая на экране результат работы. В Proteus'е работа устройства притормаживает раз в 20 по сравнению с реальным временем, но это зависит уже от компьютера.
         Если вас не устроит скорость движения букв пишите, я могу ее изменить, это просто.
         В архиве есть разведенная плата управления.


    В архиве исходник, прошивка, проект в Proteus, печатная плата в формате LAY и другое ПО

    begush_stroka.rar [2,13 Mb] (cкачиваний: 1363)

    Комментарии