СХЕМЫ---->
Полезная схемотехника. статьи № 1-50
Микроконтроллерный дешифратор команд компьютера
М. ТКАЧУК, г. Алматы, Казахстан
Предлагаемый простой как в аппаратном, так и в программном смысле узел принимает команды, подаваемые через последовательный порт компьютером, и формирует соответствующие им сигналы управления четырьмя (а при небольшой доработке и более) исполнительными устройствами. Предусмотрены подтверждение приема команды и ее индикация.
Поводом для разработки и изготовления данного устройства послужила необходимость в дистанционном управлении через порт COM компьютера четырьмя высокочастотными переключателями радиосигнала на входе анализатора спектра в системе автоматических измерений земной станции спутниковой связи. Требовалось простое, дешевое устройство, с помощью которого по командам работающей в компьютере программы автоматических измерений можно было бы управлять, по сути дела, четырьмя реле.
Причем весьма желательно было получать обратно информацию о правильности приема команд. Устройство, описанное в [1], не вполне подходило для этой цели. Исходя из поставленной задачи, был разработан предлагаемый микроконтроллерный дешифратор, оснащенный цифровым индикатором принятой команды и обратным каналом связи с компьютером. Для приема и передачи кодовых комбинаций по протоколу RS232 нетрадиционно используется всего один вывод МК. Устройство получилось простым и компактным.
Схема дешифратора изображена на рисунке.

Его основа — микроконтроллер PIC16F84A (DD1), связанный с COM портом компьютера через преобразователь уровней DA2 и разъем Х1. Для отображения принятой команды применен светодиодный семиэлементный индикатор HG1 с общими катодами. Интегральный стабилизатор DA1 обеспечивает все узлы устройства напряжением питания 5 В. Выходные усилители и исполнительные реле, подключаемые к разъему Х2, на схеме не показаны.
Компьютерная система автоматических измерений формирует команды в виде восьмиразрядных двоичных кодов, передаваемых по каналу RS232 со
скоростью 4800 Бод без контроля четности с одним стоповым разрядом. В рассматриваемом случае командами служат ASCII-коды цифр 0—5. Это позволяет при необходимости (например, для проверки) подавать их с помощью не только специализированной, но и любой терминальной программы.
Забиваем Сайты В ТОП КУВАЛДОЙ - Уникальные возможности от SeoHammer
Каждая ссылка анализируется по трем пакетам оценки: SEO, Трафик и SMM.
SeoHammer делает продвижение сайта прозрачным и простым занятием.
Ссылки, вечные ссылки, статьи, упоминания, пресс-релизы - используйте по максимуму потенциал SeoHammer для продвижения вашего сайта.
Что умеет делать SeoHammer
— Продвижение в один клик, интеллектуальный подбор запросов, покупка самых лучших ссылок с высокой степенью качества у лучших бирж ссылок.
— Регулярная проверка качества ссылок по более чем 100 показателям и ежедневный пересчет показателей качества проекта.
— Все известные форматы ссылок: арендные ссылки, вечные ссылки, публикации (упоминания, мнения, отзывы, статьи, пресс-релизы).
— SeoHammer покажет, где рост или падение, а также запросы, на которые нужно обратить внимание.
SeoHammer еще предоставляет технологию Буст, она ускоряет продвижение в десятки раз,
а первые результаты появляются уже в течение первых 7 дней.
Зарегистрироваться и Начать продвижение
Если принята одна из цифр 1—4, она будет выведена на индикатор, а на выходе дешифратора с соответствующим номером будет установлен высокий уровень (на всех остальных он будет низким). Команда 5 установит высокие уровни на всех выходах. В этом случае на индикатор выводится не цифра, а буква Н. Команда 0 установит низкие уровни на всех выходах и ноль на индикаторе. Прием любого другого
символа также делает уровни на всех выходах низкими, однако отмечается на индикаторе буквой Е.
Перед исполнением принятой команды на всех выходах устройства устанавливаются низкие уровни, затем следует выдержка 350 мс. Она необходима для того, чтобы до включения очередного реле предыдущее успело отпустить якорь.
После включения питания и до приема первой команды уровни на всех выходах низкие, а индикатор HG1 погашен. Отсутствие индикации подачи питания может представить некоторое неудобство. Устранить его можно подключением через резистор индикатор
ного светодиода к цепи питания и общему проводу. Можно применить для этого и неиспользуемый элемент Н индикатора HG1. Достаточно подключить резистор сопротивлением 180 Ом между выводом 9 индикатора HG1 и выводом 14 МК DD1.
Передаваемый компьютером по цепи TXD интерфейса RS232 последовательный код поступает на вывод 3 (RA4) МК DD1 через один из приемных преобразователей уровня микросхемы DA2. Резистор R1 устраняет шунтирующее действие выхода преобразователя уровня на вывод RA4, когда последний становится выходом и используется программой МК для передачи ответа компьютеру.
Передача ответа происходит по интерфейсной линии RXD через передающий преобразователь уровня микросхемы DA2. Ответ представляет собой "эхо" — повторение принятого кода. Оно будет двукратным. Первый раз микросхема DA2 просто транслирует принимаемый по линии TXD сигнал в линию RXD. Второе эхо формируется программно с задержкой около 10 мс. Это удобно для более полного контроля работы системы и определения места неисправности.
Программа МК, написанная на версии языка BASIC для компилятора MikroBasic [2], с подробным комментарием приведена в табл. 1,

а результат ее компиляции (коды для загрузки во FLASH-память МК) — в табл. 2.

Демонстрационная версия компилятора распространяется бесплатно и имеет ограничение лишь по размеру программного кода — не более 2 Кслов, что для МК PIC16F84A несущественно. К компилятору прилагается большое число библиотек, содержащих множество готовых под
программ для работы с различными периферийными устройствами, в том числе с распространенными датчиками и индикаторами. Например, поскольку МК PIC16F84A не имеет встроенного аппаратного адаптера последовательного интерфейса (UART), в рассматриваемой программе прием и повторение команд организованы с помощью программного UART из библиотеки компилятора. Длительности задержек эхо и исполнения команд заданы в программе исходя из конкретного применения устройства. При необходимости их можно изменить или исключить вовсе.
Устройство можно немного упростить, исключив из него индикатор HG1 и резисторы R7—R13. Освободившиеся выводы МК можно использовать для формирования любых необходимых сигналов, например, увеличить число выходов для подключения исполнительных устройств до 12. Естественно, для управления ими потребуется доработка программы МК.
Дешифратор был собран на макетной плате размерами 55x90 мм, печатная же плата для него не разрабатывалась.
ЛИТЕРАТУРА
1. Using PicBasic with the PIC16F84 PIC Microcontroller. — http://www.rentron.com/PIC16F84.htm
2. MikroBasic for PIC. — http://www.mikroe.com/zip/mikrobasic/mikrobasic_5002_setup.zip
От редакции. Программа МК этого устройства в электронном виде имеется на нашем FTP-сервере по адресу ftp://ftp.radio.ru/pub/2007/08/p4.rar
Радио №8 2007 г
Сервис онлайн-записи на собственном Telegram-боте
Попробуйте сервис онлайн-записи VisitTime на основе вашего собственного Telegram-бота:
— Разгрузит мастера, специалиста или компанию;
— Позволит гибко управлять расписанием и загрузкой;
— Разошлет оповещения о новых услугах или акциях;
— Позволит принять оплату на карту/кошелек/счет;
— Позволит записываться на групповые и персональные посещения;
— Поможет получить от клиента отзывы о визите к вам;
— Включает в себя сервис чаевых.
Для новых пользователей первый месяц бесплатно.
Зарегистрироваться в сервисе
|