Разработка контроллера на однокристальном микропроцессореРефераты >> Программирование и компьютеры >> Разработка контроллера на однокристальном микропроцессоре
1 Техническое задание на разработку проекта
1.1 Исходные данные для проектирования
1.1.1 Назначение устройства
Устройство, разработка которого проводится в данной работе, - контроллер системы автоматизации. В качестве реализуемых на его основе функций можно назвать следующие: получение данных от датчиков состояния объекта управления, формирование управляющих воздействий согласно решаемым задачам, обмен информацией с другими контроллерами и центральной ЭВМ. Также в этот список можно включить и такие внутренние сервисные функции как самодиагностика и контроль хода выполнения программы – выявление ситуаций «зависания».
В проекте не рассматриваются процессы непосредственного управления объектом. Поэтому основной задачей контроллера будет прием данных от внешнего источника, преобразование их в нужный формат и передача дальше по цепочке. То есть контроллер можно рассматривать как некий «информационный» ретранслятор, снабженный функциями контроля и самодиагностики.
Контроллер принимает данные в виде пакетов в соответствии с протоколом X-Modem, обеспечивающим проверку возникновения ошибок передачи и повторный запрос пакета в случае их возникновения. Реализуемый интерфейс приема – ИРПР-М.
Информация буферизуется и передается дальше по одному байту без контроля ошибок также с использованием интерфейса ИРПР-М. Дополнительно с помощью программируемого таймера контроллер производит проверку состояния ПЗУ (подсчет контрольной суммы) и анализ хода выполнения программы. В случае несовпадения контрольной суммы либо зависания одной из задач выключается индикатор нормальной работы, и процесс останавливается до вмешательства оператора.
1.1.2 Характеристики интерфейса ИРПР-М
Интерфейс ИРПР-М является унифицированной системой связей и сигналов и обеспечивает единые способы обмена информацией при соединении корреспондентов посредством кабеля. Интерфейс ИРПР-М может быть использован при построении сосредоточенных модульных систем обработки данных. По классификационным признакам интерфейс ИРПР-М является межблочным, асинхронным, параллельным, однонаправленным, радиальным интерфейсом. Единицей обмена данными для интерфейса является байт или слово. Максимальное удаление двух взаимодействующих компонент – 15 метров. Максимальное число линий связи – 40. Минимальный набор линий связи приведен в таблице 1.1
Таблица 1.1 - Сигналы интерфейса ИРПР-М
Сигнал |
Активный Уровень |
Инициатор сигнала |
Комментарий |
-ACKNLG |
Низкий | Приемник |
Запрос очередного байта данных |
BUSY |
Высокий |
Приемник |
Высокий уровень на линии сигнализирует о неготовности приемника к обмену |
-STROBE |
Низкий |
Передатчик |
Строб данных |
DATA |
- |
Передатчик |
Восемь (шестнадцать) линий данных |
Временные диаграммы, объясняющие обмен информацией по линиям интерфейса, представлены на рисунке 1.1.
Рисунок 1.1 – Временные диаграммы интерфейса ИРПР-М
1.1.3 Структура сообщений
Прием данных осуществляется в соответствии с протоколом X-Modem. Пакет информации представляет собой последовательность из 132 байт. Структура пакета:
- Заголовок пакета. В качестве заголовка выступает код 01h (SOH).
- Два байта – номер пакета. Первый байт – собственно номер, а второй его дополнение (для контроля ошибок).
- Тело пакета – 128 байт.
- Байт контрольной суммы. Контрольная сумма охватывает номер пакета и тело пакета.
Для сопровождения обмена используются служебные символы, представленные в таблице 1.2.
Таблица 1.2 – Служебные символы протокола X-Modem
Символ |
Шестнадцатиричный код |
Назначение |
SOH |
01h |
Символ начала пакета |
ACK |
06h |
Подтверждение приема |
NAK |
15h |
Отрицание приема |
EOT |
04h |
Завершение обмена |
CAN |
18h |
Аварийное завершение обмена |
Процесс обмена осуществляется следующим образом: Приемник посылает передатчику подряд два сигнала NAK. В ответ передатчик начинает посылку пакетов. После приема каждого пакета приемник анализирует правильность передачи и посылает передатчику символ ACK – подтверждение приема. Если при подсчете контрольной суммы обнаружена ошибка, то вместо сигнала ACK передается NAK – запрос на повторную передачу пакета. Последовательность пакетов передатчик завершает символов EOT, который приемник подтверждает сигналом ACK. Если при установке связи передатчик не ответил на запрос информации (два сигнала NAK), то приемник продолжает посылать запрос NAK с интервалом 10 секунд. Может быть послано до десяти запросов NAK.
Передача информации производится посимвольно. Причем данные посылаются блоками по 256 байт. В начале каждого блока располагается четыре байта, несущие информацию о текущем времени контроллера. Данные блоки формируются в отдельном участке памяти – буфере передатчика и посылаются п мере готовности. За формированием информационных блоков следит специальная задача.
1.2 Структура и алгоритм функционирования контроллера.
1.2.1 Структурная схема контроллера
Структурная схема контроллера представлена на рисунке 1.2.
Элементы, входящие в схему:
- СГ – системный генератор.
- ЦП – центральный процессор.
- ПЗУ – постоянное запоминающее устройство.
- ОЗУ – оперативное запоминающее устройство.
- ПКП – программируемый контроллер прерываний.
- ПТ – программируемый таймер.
- ИГ – индикатор готовности.
- ПВВ – порт ввода-вывода.
Рисунок 1.2 - Структурная схема контроллера
Системная шина контроллера состоит из трех составляющих: шины адреса (AB), шины данных (DB), шины управления (CB).
Индикатор готовности информирует о нормальной работе устройства – в случае возникновения ошибок индикатор гасится.