COM терминал

Хотя COM порт в компьютерах и отжил свой срок, но в радиолюбительской практике он очень распространён, т.к. многие контроллеры оснащены UART и он является простым в программировании. Для отладки различных устройств с COM портом или списывание с них какой-либо диагностической информации требуется компьютер, но не всегда компьютер может быть под рукой, чтобы решить эту проблему был разработан портативный асинхронный COM терминал. Данное устройство компактно, имеет небольшой, но вместительный дисплей на 84 символа, от nokia 3310, и к нему можно подключать RS-232 или RS-485 интерфейсы, для ввода информации подходит почти любая PS/2 клавиатура (было проверено множество клавиатур, из проверенных не подружился только BTC’шными).

COM терминал

COM терминал

Схема

Схема

Устройство построено на микроконтроллере PIC16F648A, он был выбран т.к. имеет 4К flash памяти и UART. Дисплей – китайский дисплей от nokia 3310 (с оригинальным не проверялось). Применены 2 преобразователя интерфейса UART-RS232 – MAX232 и UART-RS485 – MAX1483. Диоды VD1-VD4 – шотки – MBR0540T1, служат для согласования лини RS-485, для коротких линий можно не устанавливать. HL1 – светодиод наличия питания.

Плата

Плата

Плата подогнана под корпус Z55K. Большинство элементов платы поверхностного монтажа. У разъёма DB9F удалён 4 вывод, т.к. под ним проходит дорожка. Микроконтроллер устанавливается на подложку, у которой удалён 3 вывод. Стабилизатор в корпусе SOT-89. Конденсатор C3 – чип тантал типоразмера C на 47мкФ 10В, C5 – тоже чип тантал, но размера A, 4,7 мкФ. Конденсаторы C1-C2, C4-C6, C8-C10 – типоразмера 0805, остальные конденсаторы размера 1206. Резисторы R1, R3, R6-R9, R11 – типоразмера 0805, R2, R4, R10, R12 – 1206, также применены резисторные перемычки 2 шт. типоразмеров 1206 и 3 шт. 2010. Разъёмы: DRB-9M, PS/2, телефонная 6 контактная розетка TP6P4C, разъём питания или можно припаять клемму для 9В кроны. Предусмотрено место под установку выключателя, светодиода питания.

Пример работы терминала

Пример работы терминала

Входящие символы отображаются чёрным на белом фоне, а исходящие белым на чёрном фоне. Переключение языка – левый ALT, переключение регистра – левый SHIFT. Очистка экрана и буфера – ESC. Были реализованы все ASCII символы. На клавиатуре поддерживаются ENTER, Backspace и TAB. Терминал содержит небольшой буфер для входящих и исходящих сообщений на 160 символов.

Были реализованы следующие функции, которые располагаются в различных меню, вызываемые клавишами F1-F5.

Выбор скорости

Терминал поддерживает скорости от 1200 до 115200 бод, выбор скорости 1 – вверх, 2 – вниз, ESC – выход из меню, меню вызывается нажатием клавиши F1.

Вставка символа

Можно отправлять произвольный ASCII символ, код символа задаётся в десятичной системе, вызов меню – F2, выход из меню – ESC, вставить символ — ENTER.

Настройки

Неизвестные символы можно отображать в виде HEX кода символа, отображать только наличие неизвестного символа или игнорировать. Также реализована поддержка канонического вида. Реализованы 4 вида проверки чётности: чётный, нечётный и два маркера – 1 и 0. Вызов меню – F3, выход из меню – ESC, переключение параметра — соответствующие им цифры.

Настройки

Есть контроль потока передачи, как по линиям CTS и RTS, так и пакетами XON и XOFF, вызов меню F4, выход из меню – ESC, смена контроля потока передачи – цифра 1.
Ручное управление линией RTS возможно с помощью клавиш F9 – включить и F10 – выключить. И ручная отправка пакетов XON – F11, XOFF – F12.

Использование RS-485: F7 — включить на приём (только чтение из порта, по умолчанию), F8 – включить на передачу (только запись в порт).

Об устройстве

И меню о программе и авторе, вызов меню – F5, выход из меню — ESC.

Вот ещё фотографии испытания терминалки:

Тестирование COM (RS-232) порта Тестирование COM (RS-232) порта

Тестирование COM (RS-232) порта

Тестирование порта RS-485 Тестирование порта RS-485

Тестирование порта RS-485

Экран терминалки при тестировании RS-485

Экран терминалки при тестировании RS-485

Скачать файл в формате Sprint Layout и прошивку

Данный проект принимал участие в конкурсе «Поздравь Кота по-человечески 2010» на сайте radiokot.ru .

Статья обновлена 28 марта 2011 года

2 комментария »

Alex_EXE | 21.12.2010 | Микроконтроллеры | 23 871 просмотров

2 комментария на « COM терминал»

  1. Дмитрий пишет 09.06.2011 в 10:21 #

    классно, надо попробовать сделать

  2. Дракончик пишет 13.04.2012 в 17:28 #

    Неплохо бы увидеть исходный текст программы — 648-й достать не могу, но по объёму памяти подойдёт 873-й.

Комментарии RSS

Оставьте отзыв