ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 19.03.2025
Просмотров: 1885
Скачиваний: 1
СОДЕРЖАНИЕ
Лекция № 1 Введение в проблемы построения автоматизированных систем.
1.1. Функциональные компоненты, необходимые для построения автоматизированного комплекса.
1.3. Принципы построения автоматизированных систем.
Лекция №2 Средства управления объектами автоматизации.
2.1. Архитектурные возможности эвм.
Основные регистры процессора эвм семейства Macintosh.
Основные регистры процессора эвм семейства ibm pc.
Форматы представления чисел в озу.
2.3. Каналы ввода-вывода информации.
Общая структура магистрали эвм
Передача информации по системной магистрали
Лекция №3 Принципы организации обмена данными между эвм и внешними устройствами.
3.2 Безусловная передача данных.
Лекция №4 Техническая реализация усо в эвм семейства ibm и методика управления обменом.
4.1. Программные средства реализации безусловного обмена данными в среде BorlandPascal
4.2. Обмен данными между эвм и ву по готовности ву
4.2.1. Функциональная схема интерфейса ввода данных в эвм по готовности ву.
Лекция №5 Технические характеристики ацп, усилитель, мультиплексор.
5.1 Программная модель интерфейса
5.2 Алгоритм одноканальных измерений входного сигнала
5.3. Методика управления и оценки состояния внешних устройств
5.4. Проверка, установка, сброс отдельных разрядов регистра ву
Лекция №6 Обмен данными между эвм и внешними устройствами с прерыванием текущей программы.
6.1 Принцип организации обмена данными
6.2 Алгоритм обслуживания ву с прерыванием.
3. Комбинированный способ идентификации ву.
6.3 Блок-схема алгоритма обслуживания ву с прерыванием.
6.4 Механизм приоритетов. Вложенные прерывания.
6.5 Принципы построения интерфейса обмена данных с прерыванием программы.
6.6 Техническая реализация интерфейса обмена данными с прерыванием программы.
2. Реализация многоуровневых вп в эвм семейства ibm.
Технические характеристики бис Intel 8259a.
6.7 Программируемые режимы обслуживания ву.
6.8 Схема включения пкп к системной шине ву.
6.9 Аппаратные прерывания в порядке их приоритетов и назначения.
6.12 Схема каскадирования контроллеров прерывания.
Методика программирования контроллера прерываний.
6.13 Программирование пкп в процессе обслуживания ву и работы системы.
6.14 Методика программирования обмена данными с прерыванием программы.
6.16 Техническая реализация обмена данными с прерыванием программы.
6.17 Категории прерываний эвм семейства ibmpc.
Основные черты программных прерываний.
Лекция №7. Программируемые интервальные таймеры-счетчики (пит).
7.1 Схема включения пит к автоматизированной системе (ас).
Карта программно доступных регистров пит
7.2 Состав и назначение регистров каналов.
7.4 Методика программирования таймера.
2. Чтение текущего содержимого ce.
7.5 Синхронизация операций реального времени. Системный таймер эвм семейства ibmpcIntel8254.
7.6 Реализация методики программирования таймера в среде BorlandPascal.
7.7 Пит Intel 8253 на интерфейсной плате l-154.
7.8 Многоканальное измерение сигналов.
Лекция №8 Автоматизированные системы на основе стандартных магистрально-модульных интерфейсов.
Лекция №9 Интерфейс камак (camac).
9.1 Конструктивная совместимость элементов системы.
9.3 Пространственно-временные диаграммы на магистрали крейта.
9.4 Виды и назначение адресных операций на магистрали крейта.
Лекция №10 Технические средства на основе интерфейса камак. Модули интерфейса камак.
10.1 Схемы формирования статусных сигналов.
10.2 Управляющие модули камак.
10.3 Программная модель кк типа ккп3 для эвм семейства ibmpc.
10.4 Методика управления контроллером крейта и модулями камак.
Лекция №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.3 Каскадирование контроллеров пдп.
Лекция №16 Методика программирования контроллера пдп.
7.5 Синхронизация операций реального времени. Системный таймер эвм семейства ibmpcIntel8254.
Рис. 7.3 Схема включения ПИТ Intel8254 в ЭВМ семействаIBMPC.
Базовый адрес ПИТ в пространстве адресов ввода-вывода ЭВМ равен 40h. Адреса регистров каналов ПИТ принимают значения: 40h – канал 0 , 41h– канал 1, 42h– канал 2, 43h–CBR.
На входы GATEканалов 0 и 1 подан разрешающий потенциал – разрешен счет:GATE0=1,GATE1=1. СигналGATE2 управляется битом 0 управляющего регистра 61h.
Входы
CLKвсех каналов
подсоединены к выходу генератора
импульсов
.
Канал
0 таймера используется для отсчета
текущего времени в системных часах
времени суток, а также для синхронизации
некоторых дисковых операций. При
инициализации канала он программируется
BIOSдля работы в режиме 3 (или 2)
с двухбайтовым начальным значением
счетчика равнымN=0,
на выходе он вырабатывает импульсы с
частотой
.
При таком режиме период таймера составляетТ0~55мс. ВыходOUTнулевого
канала посылает ЗП наIR0 программируемого
контроллера прерываний и вырабатывает
прерывание таймера (номер типа прерывания
8 –IntNo=8). Это прерывание
вырабатывается всегда, если разрешены
аппаратные прерывания (еслиIF=1).
BIOS выполняет следующие действия:
Увеличивает значение четырехбайтовой переменной на 1, расположенной по адресу [40h..60h]. Когда выполняется переход с 12 часов ночи, происходит обновление переменной и ее установка в адрес [40h..70h].
Уменьшает значение переменной на 1 по адресу [0000:440h]. Переменная содержит время, которое осталось до выключения мотора накопителя на гибких магнитных дисках.
Вызывает прерывание с номером типа IntNo=1Ch.
После инициализации системы он указывает на команду IRET. Программа пользователя может установить собственную обработку этих прерываний, чтобы выполнять какие-либо периодические действия.
Канал 0 может программироваться на более конкретные интервалы времени.
Канал 1 используется для регенерации памяти. BIOSпрограммирует его в режиме 2 с однобайтным значением счетчика (только младший байт), начальное значениеN = 18. Такой счетчик обеспечивает интервал чуть больший:T1=18/1.193182~15мкс.
Не рекомендуется перепрограммировать канал, так как может нарушиться цикл регенерации памяти. Можно его использовать для отсчета коротких интервалов времени. Бит 4 управляющего регистра 61hизменяется каждые 15 мс.
Канал 2 таймера используется для генерации звука – соединен с динамиком. Программируется в режиме 3. Сигнал GATEуправляется битом 0 управляющего регистра 61h. ВыходOUT2 соединен с динамиком. Соединение/разъединение с динамиком управляется битом 1 порта 61h. Канал 2 может использоваться для целей отсчета времени в автоматизированной системе. Его можно программировать в любом режиме. Для контроля выходаOUTможно проверять бит 5 управляющего регистра 61h.
7.6 Реализация методики программирования таймера в среде BorlandPascal.
Инициализация 2 канала таймера для генерации импульсов с частотой F2~100 Гц в режиме 3 (генератор меандра):
N2:= 1193182 div100; - вычисление константы пересчета (должна быть объявлена как типbyte).
Port [$61]:= Port [$61] and not 3; Сброс в 0 сигнала на входеGATE2, выходOUT2 отключаем от динамика через управляющий регистр с адресом 61h.
Port [$43] := $B6; {10 11 011 0} - Установка режима работы 2 канала.
Port[$42] :=Lo(N2); - Запись младшего байта константы пересчета.
Port[$42] :=Hi(N2); - Запись старшего байта константы пересчета.
Port [$61] := Port [$61] or 1; - Установка разрешающего потенциала на входе GATE2=1: канал начинает генерацию импульсов типа меандр на выходе OUT2.
Чтение содержимого счетного элемента CE (2 канал):
Чтение без остановки счета.
Считываются последовательно младший, затем старший байты счетного элемента в переменную Count:
Count2:= Port [$42]; - Запись младшего байта выходного регистра счетчика.
Count2:= (Port [$42] shl 8) + Count2- Запись старшего байта выходного регистра счетчика, сдвиг на 8 разрядов байта.
Чтение с приостановкой работы канала.
Port [$61] := Port [$61] and not 1; - Сброс в 0 сигнала GATE 2-го канала.
Чтение младшего, затем старшего байтов регистра счетчика (см. п. 1). Разрешение работы канала – установка на входе GATEвторого канала разрешающего потенциала:
Port[$61] :=Port[$61]or1;
Чтение по команде "Защелка".
Port [$43] := $80; - Защелкивание содержимого 2 канала ПИТ.
Чтение младшего, затем старшего байтов регистра счетчика (см. п. 1).
Чтение состояния 2 канала таймера:
Запись в регистр управляющего байта кода команды – защелкнуть содержимое статусного регистра в выходном регистре состояния и содержимое счетного элемента в выходном регистре счетчика 2 канала:
Port [$43]:= $C8;
Status2 := Port [$42]; - Чтение содержимое выходного регистра состояния 2 канала.
Чтение младшего, затем старшего байт регистра счетчика в переменную Count(см. п. 1).
Чтение статусного регистра:
Port[$43]:=$EE; {11 1 0 1 1 1 0}.
Status0:=port[$40];
Status1:=port[$41];
Status2:=port[$42];
Чтение счетного элемента и статусного регистра 2 канала:
Port[$43]:=$C8;{11 0 0 1 0 0 0}.
Status:=port[$42];
CE2:=port[$42] + (port[$42] shl 8); {Чтение младшего байта и старшего байта}
Определение начала очередного периода 2 канала таймера:
Procedure waitTimerPC
Begin while (port[$61] and $20)<>0 do;
While ((port[$61] and $20)=0 do;
7.7 Пит Intel 8253 на интерфейсной плате l-154.
Рис. 7.4 Схема включения ПИТ Intel8253 на интерфейсной платеL-154.
На управляющие входы всех каналов GATEподан разрешающий потенциалGATE0=GATE1=GATE2=1. На входCLK0-го канала подсоединен генераторFCLK0=1 МГц. ВыходOUT0-го канала соединен с входомCLK1-го канала, что позволяет работать с временными интервалами:TOUT=4 мкс÷65536 мкс. ВыходOUT1-го канала соединен сIRiПКП через схему формирования ЗП.
У схемы Intel8253 нет выходного регистра состояния; выходыOUTвсех каналов подсоединены к регистру состояния. Можем прочитать из адреса 302hсостояния входа:
|
3 |
2 |
1 |
0 |
|
OUT2 |
OUT1 |
OUT0 |
308h– канал 0, 309h– канал 1, 30Ah– канал 2, 30Bh–CBR.
Пример: режимы 0,1 каналов 3(меандр).
TOUT0=100 мкс,TOUT1=5000 мкс = 5 мс.
TOUT0=N0*TCLK; N0=100;
TOUT1=N1*TCLK1= TOUT0*N1; N1=50;
Program PIT_imt;
Const N0=100; N1=50;
Begin
Port [$30B]:=$16; {00 01 011 0 – 00: 0-й канал, 01: RW – младший байт, 011: MODE – меандр, 0: BCD - двоичный формат счета}
Port [$30B]$56; {01 01 011 0 – 01: 1-й канал, 01: RW – младший байт, 011: MODE – меандр, 0: BCD - двоичный формат счета}
{Запись констант пересчета:}
Port[$308]:=N0;Port[$309]:=N1;
End.
7.8 Многоканальное измерение сигналов.
Временные диаграммы будут иметь следующий вид:
(Считывается информация не с одного канала, а с нескольких)
Выборке из каждого канала присваивается индекс. Время считывания данных в канале будет одним и тем же. TСК(N-1) – время изменения в одном канале.
Реальное время всех выборок для каждого следующего канала сдвинуто на интервал TКАНпо сравнению с выборками предыдущего канала.
Реализация обмена по готовности.
При такой реализации канал 0 можно использовать для установки канального интерфейса, а канал 1 для установки ТСК: TOUT0использовать для установки канального интервала,TOUT1 для установкиTСК.