Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник ИнфТиСисУпрТезПр.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
11.24 Mб
Скачать

Устройство ввода-вывода

ЦП при обмене информацией с внешними устройствами не имеет непосредственного контакта с ША и ШД микропроцессо­ра, который подключается к ШД на очень малое время (до 1 мкс). При этом надежная передача информации осуществляет­ся путем ее временного запоминания (фиксации, • «защелкива­ния»), при использовании буферных регистров. Буфер — это уст­ройство, обеспечивающее соединение двух несхожих систем в це­лях согласования их характеристик и совместной работы.

МПС имеет множество внешних устройств, и для согласова­ния их работы вводят устройство — контроллер ввода-вывода, ко­торый определяет необходимый источник при вводе информации и приемник для ее вывода. Буферный регистр с контроллером образует соответственно порт ввода и порт вывода.

Порты — это входные и выходные устройства связи для со­единения ЦП с внешними устройствами. В качестве портов вво­да-вывода используют специально программируемые БИС.

6.2. Языки программирования

Работа МПС организуется согласно заданной программе, ко­торая состоит из последовательности инструкций, выполняющих­ся шаг за шагом. Этот шаг последовательности называется ко­мандой. Для каждого МП прилагается описание, в котором ука­заны все команды и даны пояснения их функций.

Программы управления технологическими процессами можно записать в машинных кодах с использованием двоичной системы (последовательности нулей и единиц). Программирование выпол­няется в два этапа: сначала программа пишется на символьном (входном) языке, а затем переводится вручную или с помощью ЭВМ в машинный код. Входной язык состоит из определенного набора команд. Мнемокод — простейший из входных языков. Операторы мнемокода — это условные сокращения названий опе­раций на естественном языке, что значительно облегчает запоми­нание и употребление команд программы. Мнемокоды ускоряют программирование и являются базой для создания алгоритмиче­ских языков более высокого уровня. Их можно применить для кодирования не только команд, но и адресов. Условные обозна­чения (метки) применяются при написании программы, а также отдельных ее частей. В качестве метки удобно использовать сим­вольное обозначение (адрес) части программы, например «СТАРТ», «ЗАДЕРЖКА» и т. д. Метка ставится перед кодом опе­рации, а после нее — двоеточие. При трансляции программы ка­ждой метке присваивается текущее значение счетчика команд, этим фиксируется определенное место в программе, что упроща­ет переход в нужную точку программы, а также многократное повторение ее отдельных частей.

Широкое применение для технологических объектов управле­ния имеет язык программирования ассемблер. Его основу состав­ляет мнемоника машинных команд МП, а также специальные команды для управления трансляцией исходной программы на машинный язык. Эти команды называются директивами ассемб­лера, или псевдокомандами. Директивы ассемблера содержат ин­формацию о начале «и конце программы и другие сведения, не­обходимые для формирования данных и размещения их в памя­ти. Для записи директив применяют и мнемонические сокращения. В метке директивы обязательно должно находиться символьное наименование без заключительного двоеточия. Наи­более распространенными директивами ассемблера являются «ПРИСВОИТЬ» (приравнять) и «МАССИВ» (таблица). Первая директива задает начальные числовые значения всем условным наименованиям, а вторая определяет последовательность упоря­доченных чисел.

Перевод программы с ассемблера на машинный язык можно выполнять вручную с помощью специальных кодирующих уст­ройств или программно при помощи ЭВМ и специальной про­граммы — транслятора. Для записи программы следует придержи­ваться формата, необходимого при машинной трансляции, для получения распечатки или листинга. В последнее время большое применение имеют языки Visual Basic (VB) и Visual Basic for Applications (VBA), Си, Си++, а также языки технологического программирования IEC 1131-3 (SFC, FBD, LD, IL, ST).

Системы команд МП

Формируя систему управления, программист обязан сделать предварительное распределение памяти (основную программу разместить в ПЗУ) и последовательно записать все команды управления.

По формату, образующему команды, их можно подразделить на две категории: безадресные (без ссылок на данные) и с обра­щением к памяти (со ссылкой на данные). Безадресные команды содержат лишь код операции и состоят из одного из машинных слов: «ОСТАНОВ», «ВОЗВРАТ» и т. д. Команды с обращением к памяти должны содержать адрес данных в памяти либо сам опе­ранд.

По назначению команды МП подразделяют на следующие ос­новные типы: перемещение данных; преобразование данных; управление программой; ввод-вывод и специальные.

Команды перемещения данных реализуют обмен данными ме­жду различными регистрами ЦП или между аккумулятором и устройствами.

Команды преобразования данных используются для выпол­нения арифметических и логических операций и проверки ус­ловий переходов, указанных в командах управления.- Команда управления изменяет содержание программного счетчика, оп­ределяющего адрес следующей команды. Команды управления подразделяют на условные и безусловные. Условные команды обеспечивают программирование процедуры состояния, кото­рая должна предшествовать выполнению следующей програм­мы. Наличие условных команд позволяет разрабатывать про­граммы управления технологическими процессами, которые учитывают виды и качество сырья и материалов, загрузку обо­рудования, параметры энергоносителей, требования технологи­ческого регламента.

Команды ввода-вывода осуществляют обмен информацией с внешними устройствами МПС. Эти команды определяют эффек­тивность применения МП в системах контроля и управления технологическими процессами.

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

При использовании МП в системах управления следует согла­совывать время, необходимое для выполнения команд управле­ния, с режимом работы технологического оборудования.

Время выполнения каждой программы определяется тактовой частотой МП и числом переходов его из одного состояния в дру­гое, что должно быть достаточным для выполнения реализуемой программы. Число переходов для каждой команды указывается в спецификациях МП. Машинный такт равен продолжительности в один период тактовой частоты (например, при тактовой частоте в 1 МГц период равен 1 мкс). Переход МП из одного состояния в другое определяется микрокомандой (например, считывание, запись информации, выполнение арифметической или логиче­ской команды и т. п.). Упорядоченный набор микрокоманд, не­обходимых для выполнения одной команды, требует 4 + 20 ма­шинных тактов.