- •Оглавление
- •Лекция № 1 Введение в проблемы построения автоматизированных систем.
- •Основные вопросы курса:
- •1.1. Функциональные компоненты, необходимые для построения автоматизированного комплекса.
- •1.2. Особенности проектирования и основные требования к автоматизированным системам для научных исследований (асни).
- •1.3. Принципы построения автоматизированных систем.
- •Лекция №2 Средства управления объектами автоматизации.
- •2.1. Архитектурные возможности эвм.
- •Центральный процессор
- •Основные регистры процессора эвм семейства Macintosh.
- •Основные регистры процессора эвм семейства ibm pc.
- •2.2. Основная память.
- •Форматы представления чисел в озу.
- •2.3. Каналы ввода-вывода информации.
- •Общая структура магистрали эвм
- •Передача информации по системной магистрали
- •Вывод данных Ввод данных
- •Лекция №3 Принципы организации обмена данными между эвм и внешними устройствами.
- •3.1 Режимы обмена данными
- •3.2 Безусловная передача данных.
- •Лекция №4 Техническая реализация усо в эвм семейства ibm и методика управления обменом.
- •Карта регистров усо
- •4.1. Программные средства реализации безусловного обмена данными в среде BorlandPascal
- •4.2. Обмен данными между эвм и ву по готовности ву
- •4.2.1. Функциональная схема интерфейса ввода данных в эвм по готовности ву.
- •Техническая реализация интерфейса в ас на основе эвм семейства ibmpc
- •Лекция №5 Технические характеристики ацп, усилитель, мультиплексор.
- •5.1 Программная модель интерфейса
- •5.2 Алгоритм одноканальных измерений входного сигнала
- •5.3. Методика управления и оценки состояния внешних устройств
- •5.4. Проверка, установка, сброс отдельных разрядов регистра ву
- •Лекция №6 Обмен данными между эвм и внешними устройствами с прерыванием текущей программы.
- •6.1 Принцип организации обмена данными
- •6.2 Алгоритм обслуживания ву с прерыванием.
- •1. Опрос ву.
- •3. Комбинированный способ идентификации ву.
- •6.3 Блок-схема алгоритма обслуживания ву с прерыванием.
- •6.4 Механизм приоритетов. Вложенные прерывания.
- •6.5 Принципы построения интерфейса обмена данных с прерыванием программы.
- •6.6 Техническая реализация интерфейса обмена данными с прерыванием программы.
- •1. Приоритетная цепочка:
- •2. Реализация многоуровневых вп в эвм семейства ibm.
- •Технические характеристики бис Intel 8259a.
- •6.7 Программируемые режимы обслуживания ву.
- •6.8 Схема включения пкп к системной шине ву.
- •6.9 Аппаратные прерывания в порядке их приоритетов и назначения.
- •6.12 Схема каскадирования контроллеров прерывания.
- •Методика программирования контроллера прерываний.
- •6.13 Программирование пкп в процессе обслуживания ву и работы системы.
- •6.14 Методика программирования обмена данными с прерыванием программы.
- •6.15 Реализация методики обмена данными с прерыванием программы между в эвм в автоматизированных системах на основе эвм семейства ibm pc в средеBorland Pascal. Установка вп.
- •6.16 Техническая реализация обмена данными с прерыванием программы.
- •6.17 Категории прерываний эвм семейства ibmpc.
- •Основные черты программных прерываний.
- •Краткий обзор функций bios.
- •Лекция №7. Программируемые интервальные таймеры-счетчики (пит).
- •7.1 Схема включения пит к автоматизированной системе (ас).
- •Карта программно доступных регистров пит
- •7.2 Состав и назначение регистров каналов.
- •7.3 Формат регистров таймера.
- •7.3 Режимы работы таймера.
- •1 Группа.
- •2 Группа.
- •3 Группа.
- •7.4 Методика программирования таймера.
- •1. Инициализация пит.
- •2. Чтение текущего содержимого ce.
- •7.5 Синхронизация операций реального времени. Системный таймер эвм семейства ibmpcIntel8254.
- •7.6 Реализация методики программирования таймера в среде BorlandPascal.
- •7.7 Пит Intel 8253 на интерфейсной плате l-154.
- •7.8 Многоканальное измерение сигналов.
- •Лекция №8 Автоматизированные системы на основе стандартных магистрально-модульных интерфейсов.
- •Лекция №9 Интерфейс камак (camac).
- •9.1 Конструктивная совместимость элементов системы.
- •9.2 Магистраль крейта камак.
- •9.3 Пространственно-временные диаграммы на магистрали крейта.
- •9.4 Виды и назначение адресных операций на магистрали крейта.
- •Операции интерфейса камак
- •Лекция №10 Технические средства на основе интерфейса камак. Модули интерфейса камак.
- •10.1 Схемы формирования статусных сигналов.
- •10.2 Управляющие модули камак.
- •Управляющая часть кк.
- •10.3 Программная модель кк типа ккп3 для эвм семейства ibmpc.
- •10.4 Методика управления контроллером крейта и модулями камак.
- •10.5 Методика построения программного обеспечения в ас на основе унифицированных магистрально-модульных интерфейсных систем.
- •Лекция №11 Разработка интерфейсно-ориентированной библиотеки процедур для управления крейтом камак.
- •Лекция №12 Методика контроля состояния модулей в интерфейсе камак.
- •Лекция№13 Компоненты ас на основе интерфейса камак.
- •13.1 Разработка схемы прибора генератора с заданными амплитудно-частотными характеристиками.
- •13.2 Измерение временных параметров импульсных сигналов.
- •13.3 Схема соединения модулей.
- •Программная реализация алгоритма измерения частоты fвх или периода Tвх.
- •Программная реализация алгоритма измерения длительности одиночного импульса.
- •13.4 Реализация прерываний от модуля камак в автоматизированных системах.
- •Лекция №14 Обмен данными между эвм и ву в режиме пдп.
- •14.1 Алгоритм обмена в режиме пдп.
- •14.2 Программная модель интерфейса ву и кпдп (минимальная конфигурация).
- •Программная модель кпдп.
- •Методика запуска обмена данными по каналу пдп.
- •14.3 Реализация пдп в эвм на основе единого магистрального канала.
- •14.4 Реализация пдп в эвм на основе изолированного магистрального канала.
- •14.5 Назначение каналов контроллера пдп и адреса регистров страниц.
- •Лекция №15 Функциональный состав и программная модель кпдп.
- •15.1 Блок управления.
- •15.2 Каналы контроллера пдп.
- •15.3 Каскадирование контроллеров пдп.
- •Лекция №16 Методика программирования контроллера пдп.
- •Лекция№17 Реализация пдп в ас на основе камак.
- •17.1 Алгоритм выполнения кк операции пдп.
6.14 Методика программирования обмена данными с прерыванием программы.
Содержит две части:
Подготовка к обмену с прерываниями выполняется в фоновой программе.
Обслуживание ВУ в режиме прерывания фоновой программы.
Подготовка к обмену с прерываниями включает:
Резервирование памяти для совместного использования фоновой и оперативной программ:
Память для хранения данных. Оперативная программа использует её для ввода данных в ВУ или вывода данных из ВУ. Фоновая программа – для подготовки данных ВУ или обработки данных.
Программный счетчик. Содержит текущее количество слов, переданное между фоновой и оперативной программами в том или ином направлении. Оперативная программа модифицирует программный счетчик в каждом цикле обмена. Фоновая – использует программный счетчик для проверки завершения обмена.
Указатель длины массива данных. Оперативная программа в этой переменной указывает общее количество слов, предназначенных для передачи. Фоновая программа должна запретить прерывание при передаче установленного объема данных.
Установка ВП на оперативную программу. В
Разрешение прерывания ВУ. Определяет момент начала совместной работы фоновой и оперативной программ.
Обслуживание ВУ в режиме прерываний (вторая часть) выполняется оперативной программой, она в каждом цикле обмена данными должна выполнять следующие действия:
1. Сохранение регистров процессора, которые будут модифицированы.
2. Инкремент (декремент) программного счетчика.
3. Обмен данными с памятью.
4. Сброс ЗП в интерфейсе ВУ, если он не сбрасывается аппаратными средствами.
5. Восстановление регистров ЦП: СК, РСП.
6. При передаче установленного фоновой программой обмена данных оперативная программа должна запретить прерывание ВУ.
Для ЭВМ семейства IBM PC:
В регистре флагов IF=1, чтобы восстановить режим вложенных прерываний и разрешить прерывание от устройств с большими приоритетами. Оперативная программа должна сбрасывать битISi=0, чтобы разрешить прерывание от данного устройства и устройств с меньшими приоритетами.
6.15 Реализация методики обмена данными с прерыванием программы между в эвм в автоматизированных системах на основе эвм семейства ibm pc в средеBorland Pascal. Установка вп.
Выполняется с помощью процедуры Borland Pascalиз модуляDOS.*(* - т.к. могут быть различные режимы памяти; дляWindows– WinDOS.*).Для установки ВП в модулях имеется следующая процедура:
ProcedureSetIntVec(IntNo:byte; IntProcAddr: pointer);
Как только установили новый ВП, старый будет утерян, используем следующую процедуру, чтобы сохранить его: ProcedureGetIntVec(IntNo:byte; var OldIntProcAddr: pointer);
Процедура обслуживания прерываний: Сохранение регистров ЦП, которые будут модифицированы оперативной программой.
Procedure IntDC; interrupt;
IRET.
IRET восстанавливает СК, Flags.
6.16 Техническая реализация обмена данными с прерыванием программы.
Рис. 6.10 Схема реализации обмена данными с прерыванием программы.
За время Tдолжна завершить работу оперативная программа. Программа, обслуживающая ЗП может закончиться раньше, но не позже. Сигнал ЗП устанавливается фронтом.
Пример. Обмен с прерыванием от таймера, ввод в ОЗУ 100 точек.
Канал 32, диапазон ±5 В; режим подключения сигналов с общей землей.
Program Demo_interrupt;
Uses Dos, timer154;
Const BA=$300; {базовый адрес}
Nmas=100; {длина массива}
count: word = 0;{программный счетчик}
var U: array [0..Nmas] of integer; T: word; OldIntVec: pointer; T: word; i: integer;
Procedure IntADC; interrupt;
Begin asm sti end; {IF=1}
Inc(count);
Port[BA+4]:=$FF; {запуск АЦП на измерение}
Asm nop end;
While (port[BA+2] and 8) <> 0 do;
U[count]:=PortW[BA];
Port[$20]:=$20; {OCW2, сброс битаIR3, разрешение прерываний от этого входа и входов с высшим приоритетом}
If count=Nmas then port [$21]:=port[$21] or 8;
End;
Begin
Port[BA+$F]:=0; {ФРП=0}
Port[$21]:=Port[$21] or 8; {запрет прерывания ПКП}
Port[BA+2]:=$FF; {режим}
Wait ({задержка ≈4мкс});
GetIntVec($B, OldIntVec);
SetIntVec($B, IntADC);
Writeln(‘Укажите интервал дискретизации сигнала’); readln(T);
Set_Time(T);
Port[BA+$F]:=1; {ФРП=1}
Port[$21]:=Port[$21] and NOT 8; {IM3=0}
{Фоновая программа}
Port[BA+$F]:=0; {}
SetIntVec($B,OldIntVec);
{ Вывод данных и обработка данных }
End.