Многоканальная система формирования аналоговых сигналов
- Добавлен: 26.04.2026
- Размер: 709 KB
- Закачек: 0
Подписаться на ежедневные обновления каталога:
Описание
Многоканальная система формирования аналоговых сигналов
Состав проекта
|
|
|
|
|
|
Материал представляет собой zip архив с файлами, которые открываются в программах:
- AutoCAD или DWG TrueView
- Microsoft Word
Дополнительная информация
Контент чертежей
А31.dwg
ЕКМН.466453.017-17 СА
Электротехническая часть
ПС 11010 кВ "Пашковская
блоке клеммных колодок
- Проволоку (начало) продеть сверху вниз через отв.№1 на защитной этикетке
На DIN-рейке просверлить отверстия на вертикальных и горизонтальных полочках
клеммных колодок. На защитной этикетке (на карточке
как можно ближе к блоку
этикеток) просверлить отверстия в углах. Диаметры отверстий определяются
в зависимости от диаметра гибкой проволоки.
(карточке этикеток) оставив конец длиной 20-25 см далее продеть сквозь:
вертикальная полочка
горизонтальная полочка
- отв.№1d на вертикальной полочке DIN-рейки;
- отв.№2d на горизонтальной полочке DIN-рейки;
- отв.№4d на горизонтальной полочке DIN-рейки;
- отв.№3d на вертикальной полочке DIN-рейки;
- отв.№2 на защитной этикетке (карточке этикеток);
- отв.№5d на вертикальной полочке DIN-рейки;
- отв.№4 на защитной этикетке (карточке этикеток);
- отв.№6d на горизонтальной полочке DIN-рейки;
- отв.№8d на горизонтальной полочке DIN-рейки;
- отв.№7d на вертикальной полочке DIN-рейки;
- отв.№3 на защитной этикетке (карточке этикеток);
- отв.№1 на защитной этикетке (карточке этикеток).
- Один из концов проволоки например "начало" продеть сквозь петлю гибкой проволоки
- Другой конец проволоки продеть через петлю гибкой проволоки в отв.№4.
- Оба конца проволоки продеть в пломбу и запломбировать.
Очередность продевания проволоки через отверстия и пломбирование:
Описание I способа пломбирования блока клеммных колодок.
I способ пломбирования
блока клеммных колодок
На вертикальных полочках DIN-рейки: отв.№1d отв.№3d отв.№5d отв.№7d.
На горизонтальных полочках DIN-рейки: отв.№2d отв.№4d отв.№6d отв.№8d.
На защитной этикетке (карточке этикеток): отв.№1 отв.№2 отв.№3 отв.№4.
- Гибкая проволока должна быть натянута чтобы не было возможности её сместить.
Описание II способа пломбирования блока клеммных колодок.
Просверлить отверстия в стенках торцевых фиксаторов как показано на рисунке.
в отв.№3 и сквозь петлю гибкой проволоки в отв.№2.
На защитной этикетке (карточке этикеток) просверлить отверстия в углах.
Диаметры отверстий определяются в зависимости от диаметра гибкой проволоки.
Гибкую проволоку продеть сверху вниз сквозь отверстие в защитной этикетке (карточке этикеток) продеть
сквозь отверстие в торцевом фиксаторе затем продеть сквозь отверстие в вертикальной полочке DIN-рейки.
II способ пломбирования блока клеммных колодок
Условные обозначения
На торцевых фиксаторах: отв.№1ф отв.№2ф отв.№3ф отв.№4ф.
На вертикальной полочке DIN-рейки: отв.№1d отв.№2d отв.№3d отв.№4d.
На вертикальных полочках DIN-рейки просверлить отверстия как можно ближе к блоку клеммных колодок.
Для предотвращения смещения гибкой проволоки
рекомендуется выполнить гибкой проволокой
петли в отверстиях. Гибкую проволоку необходимо
- На защитной этикетке (карточке этикеток) рекомендуется переплести гибкую проволоку
рекомендуется гибкую проволоку
Оба конца проволоки продеть в пломбу
ЕКМН.466453.022-7 ВД
Туапсинские городские электрические сети
Автоматизированная информационно-измерительная система
выделено утолщёнными линиями.
Оборудование для АИИС КУЭ на чертеже
Направление отдачи электроэнергии.
ЕКМН.466453.017-28 Э1
ПС 356 кВ "Центральная
Направление приема электроэнергии.
Граница балансовой принадлежности между
- Счетчики электроэнергии СЭТ-4ТМ.03.01
- Счетчики электроэнергии СЭТ-4ТМ.03.09
Переферийное процессорное
электрическая принципиальная
Тема: "Формирование аналоговой информации
УрФУ им. первого Президента России Б.Н. ЕльцинаnКафедра ИТnгруппа РИВ-500212С
Текст.doc
ФГАОУ ВПО «Уральский федеральный университет имени первого Президента
России Б. Н. Ельцина»
Кафедра информационных технологий
МНОГОКАНАЛЬНАЯ СИСТЕМА ФОРМИРОВАНИЯ АНАЛОГОВЫХ СИГНАЛОВ
Пояснительная записка к курсовому проекту
по дисциплине “Организация ЭВМ и систем”
Руководитель: И.В. Хмелевский
канд. техн. наук доц.
Н.контр. И.В. Хмелевский
канд. техн. наук доц
Студент: Д.Л. Данилов
ТЕХНИЧЕСКОЕ ЗАДАНИЕ 4
СХЕМЫ ППУ И ОПИСАНИЕ РАБОТЫ 6
ОПИСАНИЕ ИМС ИСПОЛЬЗОВАННЫХ В ППУ. 8
1 Микропроцессор К580ВМ80 8
2. Генератор тактовых импульсов КР580ГФ24 9
3. Шинный формирователь КР580ВА86 9
4. Системный контроллер КР580ВК28 10
5. Таймер КР580ВИ53 10
6. Универсальный приёмопередатчик К580ВВ51А 12
7. D-регистр защелка КР580ИР82. 14
ОПИСАНИЕ ИНТЕРФЕЙСА RS-232. 16
РАСПРЕДЕЛЕНИЕ АДРЕСНОГО ПРОСТРАНСТВА ППУ 17
ОПИСАНИЕ РАБОТЫ ППУ 19
Блок-схемы алгоритмов работы устройства 19
1. Основная программа выполняемая в ППУ 23
2. Подпрограмма инициализации УСАПП 24
3. Подпрограмма инициализации таймеров 24
4. Подпрограмма принятия 2-го и последующих байт командной посылки 25
5. Подпрограмма сброса признаков ошибки и отправки запроса на повторную
6. Подпрограмма инициализации ЦАП 25
7. Подпрограмма инициализации таймера 26
8. Подпрограмма отправки посылки с масштабным коэффициентом 27
9. Подпрограмма переинициализации таймеров 28
10. Подпрограмма обновления масштабных коэффициентов ЦАП 29
11. Подпрограмма предназначенная для обмена с ППУ (выполняется на ЦПУ)
12. Подпрограмма отправки байта в ППУ 30
13. Подпрограмма получения байта от ППУ 30
14. Подпрограмма инициализации УСАПП в ЦПУ 30
СПИСОК ИСПОЛЬЗОВАННЫХ СОКРАЩЕНИЙ 32
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 33
Разработать на базе микропроцессорного комплекта КР580 комплекс из
центрального и периферийного процессорных устройств связанных параллельным
интерфейсом. В качестве контроллеров интерфейса использовать БИС КР580ВВ55
с адресацией к ним как к внешним устройствам. Комплекс предназначен для
формирования аналоговых напряжений и содержит 5 ЦАП К572ПА2 с адресацией к
ним как к ячейкам памяти лежащим в поле адресов периферийного процессора.
Значения напряжений и номера ЦАП подлежащих инициализации а также время
в течение которого аналоговое напряжение должно присутствовать на выходе
данного канала (период инициализации Т) определяются программой
выполняемой в центральном процессорном устройстве и передаются
периферийной стороне в виде единого блока. Период инициализации любого ЦАП
составляет Т секунд и может быть различным для всех ЦАП. Численные значения
Т лежат в пределах 15-83 сек. с точностью 05 с. После завершения
инициализации любого ЦАП напряжение на его выходе должно равняться нулю.
Масштаб выходного напряжения любого ЦАП К=1 и остается постоянным в
течение всего периода инициализации Т но может изменяться от периода к
периоду. Его конкретное значение зависит от программы выполняемой
периферийным процессором при этом значения всех масштабных коэффициентов в
каждый период инициализации передаются в фиксированные ячейки ОЗУ
центрального процессорного устройства. Процедура инициализации всех ЦАП
полностью организуется периферийным процессором. Наличие в блоке данных Т=0
для каких-либо ЦАП означает что период инициализации продолжается до
поступления новых данных от центрального процессорного устройства.
Периодичность обращения центрального процессорного устройства к
периферийному не менее 2-х минут. В качестве времязадающего устройства
использовать БИС таймера КР580ВИ53 с адресацией к ней как к внешнему
устройству лежащему в поле адресов периферийного процессора.
Сигнал определяется как напряжение или ток который может быть
передан как сообщение или как информация. По своей природе все сигналы
являются аналоговыми будь то сигнал постоянного или переменного тока
цифровой или импульсный. Тем не менее принято делать различие между
аналоговыми и цифровыми сигналами. Цифровым сигналом называется сигнал
определённым образом обработанный и преобразованный в цифры. Обычно эти
цифровые сигналы связаны с реальными аналоговыми сигналами но иногда между
ними и нет связи. В качестве примера можно привести передачу данных в
локальных вычислительных сетях (LAN) или в других высокоскоростных сетях .В
случае цифровой обработки сигнала (ЦОС) аналоговый сигнал преобразуется в
двоичную форму устройством которое называется аналого-цифровым
преобразователем (АЦП). На выходе АЦП получается двоичное представление
аналогового сигнала которое затем обрабатывается арифметическим цифровым
сигнальным процессором (DSP). После обработки содержащаяся в сигнале
информация может быть преобразована обратно в аналоговую форму с
использованием цифро-аналогового преобразователя (ЦАП). Другой ключевой
концепцией в определении сигнала является тот факт что сигнал всегда
несет некоторую информацию. Это ведет нас к ключевой проблеме обработки
физических аналоговых сигналов – проблеме извлечения информации.
СХЕМЫ ППУ И ОПИСАНИЕ РАБОТЫ
Комплекс состоит из центрального и периферийного процессорных устройств
соединённых интерфейсом RS-232. На следующих двух страницах приведены
структурные схемы центрального и периферийного процессорных устройств.
В ППУ используются следующие БИС:
К580ВМ80 - однокристальный центральный процессор.
К580ГФ24 - генератор тактовых последовательностей с кварцевой
стабилизацией частоты.
К580ВК28 -системный контроллер.
К580ВВ51 - контроллер последовательного интерфейса совместимого с RS-
К580ВА86 - шинные формирователи. Введены для повышения нагрузочной
К580ВИ53 -трёхканальные программируемые таймеры.
К580ИР82 - регистры-защёлки введённые для фиксации данных на входах ЦАП.
К572ПА1 - 10-разрядные ЦАП.
К573РФ41 - ИМС ПЗУ 64кбит с организацией 4к*8
К565РУ2 - ИМС статического ОЗУ.
Также в ППУ использовано несколько ИМС малой степени интеграции - К155ЛАЗ
(4 двухвходовых элемента И-НЕ) ОУ К153УДЗ дешифратор К155ИД10.
Функциональная схема ППУ приведена на рис.3. Принципиальная схема
устройства прилагается.
Центральное процессорное устройство может быть реализовано аналогично
его отличие состоит в отсутствии дешифратора адреса т.к. достаточно
использовать 4 старших линии ША для идентификации ИМС к которой требуется
обратиться а также отсутствием двух таймеров задающих интервалы времени
для блоков ЦАП и самих блоков ЦАП.
Рис. 1. Структурная схема ППУ
Рис. 2. Простейшая структурная схема ППУ
Рис. 3. Функциональная схема ППУ
ОПИСАНИЕ ИМС ИСПОЛЬЗОВАННЫХ В ППУ.
1 Микропроцессор К580ВМ80
ИМС КР580ВМ80А - функционально-законченный однокристальный параллельный 8-
разрядный микропроцессор с фиксированной системой команд применяется в
качестве центрально процессора в устройствах обработки данных и управления.
Микропроцессор имеет разделенные 16-разрядный канал адреса и 8-разрядный
канал данных. Канал адреса обеспечивает прямую адресацию внешней памяти
объемом до 65536 байт 256 устройств вводавывода.
Таблица 1 Назначение выводов микропроцессора
Вывод Обозначение Тип вывода Функциональное назначение
25-27А10 АО-А2 Выходы Канал адреса
-10 D4-D7 D3-DO Входывыходы Шина данных
Uo Напряжения источника смещения
Reset Вход Устан. в исходное состояние
INT Вход Запрос прерывания
22 С2 С1 Входы Тактовые сигналы
INTE Выход Разрешение прерывания
RC Выход Прием информации
TR Выход Выдача информации
SYN Выход Сигнал синхронизации
Ucci - Напряжение питания +5В
HLDA Выход Подтверждение захвата
RDY Вход Сигнал «Готовность»
WI Выход Сигнал «Ожидание»
UCC2 - Напряжение питания +12В.
2. Генератор тактовых импульсов КР580ГФ24
Микросхема КР580ГФ24 - генератор тактовых сигналов С1 С2 предназначен
для синхронизации работы микропроцессора КР580ВМ80А.
Генератор формирует:
две фазы С1 С2 с положительными импульсами сдвинутыми во времени
амплитудой 12В и частотой 05-30 МГц;
тактовые сигналы опорной частоты амплитудой напряжения уровня ТТЛ;
стробирующий сигнал состояния
тактовые сигналы С синхронные с фазой С2 амплитудой напряжения уровня
Таблица 2 Назначение выводов микросхемы
Вывод Обозначение Тип выводаФункциональное назначение выводов
SR Выход Установка в исходное состояние
микропроцессора и системы
RESIN Вход Установка 0
RDYIN Вход Сигнал «Готовность»
RDY Выход Сигнал «Готовность»
SYN Вход Сигнал синхронизации
С Выход Тактовый сигнал синхронный с фазой С2
STB Выход Стробирующий сигнал состояния
Ucft Вход Напряжение питания +12В
С2 Выход Тактовые сигналя - фаза С2
С1 Выход Тактовые сигналя - фаза С1
OSR Выход Тактовый сигнал опорной частоты
TANK Вход Вывод для подключения колебательного
15 XTAL1 XTAL2 Вход Вывод для подключения резонатора
Use Вход Напряжение питания +5В
3. Шинный формирователь КР580ВА86
Микросхема КР580ВА86 - двунаправленный 8-разрядный шинный формирователь
предназначенный для обмена данными между микропроцессором и системной
шиной; обладают повышенной нагрузочной способностью имеет третье состояние
Таблица 3 Назначение выводов микросхемы
Вывод Обозначение Тип вывода Функциональное назначение выводов
-8 АО-А7 Входвыход Информационная шина
ОЕ Вход Разрешение передачи (управление 3-м
Т Вход Выбор направления передачи
-19 В7-ВО Выходвход Информационная шина
Ucc - Напряжение питания 5В±5%
4. Системный контроллер КР580ВК28
Микросхема КР580ВК28 - системный контроллер и буферный регистр данных
применяемых в микропроцессорных системах на базе микропроцессора КР580ВМ80А
для формирования управляющих сигналов и как буферный регистр данных.
Системный контроллер формирует управляющие сигналы RD WR RDIO WRIO INTA
по сигналам состояния микропроцессора а также обеспечивает прием и
передачу 8-разрядной информации между каналом данных микропроцессора по
выводам D7-DO и системным каналом по выводам DB7-DBO.
Таблица 4 Назначение выводов микросхемы
STB Вход Стробирующий сигнал состояния
HLDA Вход Подтверждение захвата
TR Вход Выдача информации
RC Вход Прием информации
9 DB4 DB7 Выход вход Канал данных системы
101D4 D7 Выход вход Канал данных микропроцессора
BUSEN Вход Управление передачей данных и выдачей
INTA Выход Подтверждение запроса прерывания
RD Выход Чтение из ЗУ
RDIO Выход Чтение из УВВ
WR Выход Запись в ЗУ
WRIO Выход Запись в УВВ
Ucc Вход Напряжение питания +5В
Микросхема КР580ВИ53 - трехканальное программируемое устройство
(таймер) предназначено для организации работы микропроцессорных систем в
режиме реального времени для организации времязависимых процессов.
Программируемый таймер реализован в виде трех независимых 16-разрядных
каналов с общей системой управления. Каждый из трех каналов может быть
независимо настроен на работу в одном из шести режимов. Обмен информацией с
микропроцессором осуществляется по 8-
разрядному двунаправленному каналу данных. Максимальное значение счета в
В данном устройстве используется 3 ИМС таймеров - две (DD17 DD21) для
управления шестью каналами ЦАП и одна (DD26) для формирования тактовых
последовательностей для контроллера последовательного интерфейса К580ВВ51А
и также для формирования тактовых последовательностей для всех каналов
Каналы 0 и 1 микросхемы DD26 работают в режиме 2 (временная диаграмма
работы приведена на рис.4.) Коэффициент деления при тактовой частоте
системы 2МГц (кварцевый резонатор 18МГц) для канала О N=6667 (для скорости
передачи по последовательному интерфейсу. ЗООбод) Для канала 1: получить
коэффициент деления достаточный для получения на выходе частоты 5Гц (=10)
с помощью данного таймера невозможно однако можно получить частоту 40 Гц
(коэффициент деления N=200000040=50000) после чего и записывать в
регистры таймеров DD17 DD21 значения побитно сдвинутые влево на 3 бита
(что равноценно увеличению записываемого числе в 8 раз) и умноженные на 5
(это возлагается на программное обеспечение ЦПУ и не описывается т.к.
такая реализация несколько повышает универсальность устройства). При этом
возможности таймеров DD17 DD21 используются не полностью (максимальное
значение записываемое в регистры составит Nmax=98*40=3290 что почти в 20
раз меньше максимально возможного). Минимальное значение записываемое в
регистры составит Nmin=10*40=400
Все каналы таймеров DD17 DD21 работают в режиме 0. Временная диаграмма
работы таймера в этом режиме приведена на рис.5
Рис.4 Временная диаграмма работы таймера в режиме 2
Назначение выводов микросхемы КР580ВИ53
-8 D7-DO ВходывыходыКанал данных
518 СОС1С2 Входы Синхронизация каналов 0-2
13 17 OUTO OUT1 OUT2 Выходы Сигналы каналов 0 1 2
14 16 CEO CE1.CE2 Входы Сигналы каналов 0 1 2
20 АО.А1 Входы Сигналы выбора каналов 0 1
CS Вход Выбор микросхемы
Ucc - Напряжение питания 5В ±5%
6. Универсальный приёмопередатчик К580ВВ51А
Микросхема КР580ВВ51 - универсальный синхронно-асинхронный
приёмопередатчик (УСАПП) предназначен для аппаратной реализации
последовательного протокола обмена между микропроцессором К580ВМ80А и или
другим устройством способным запрограммировать данную микросхему на
требуемый режим работы и каналами передачи последовательной дискретной
ИМС преобразует параллельный код получаемый через ШД от центрального
процессора в последовательный поток символов со служебными битами и выдаёт
этот поток в последовательный канал связи с различной скоростью а также
выполняет обратное преобразование: последовательный поток символов - в
параллельное 8-разрядное слово. Передаваемая и получаемая информация при
необходимости может контролироваться на чётностьнечётность.
ИМС УСАПП может быть применена для реализации различных
последовательных интерфейсов (в т.ч. RS-232). Возможна работа ИМС в режимах
синхронного или асинхронного приёмапередачи.
Максимальная скорость передачиприёма информации 64Кбод минимальная не
В описываемом устройстве ИМС работает в режиме асинхронного
приёмапередачи на скорости ЗООбод (внутренний делитель частоты
синхронизации равен единице). Временные диаграммы работы УСАПП в названных
режимах приведены на рис.6 и рис.7. Для того чтобы запрограммировать ИМС
для работы в асинхронном режиме необходимо после сброса (сигналом SR или
программного) занести в ИМС инструкцию режима работы. В описываемом
устройстве это код 11111101 b=FDh (соответствует работе с двумя стоп-
битами с контролем по чётности длиной слова 8 бит в асинхронном режиме с
Асинхронный режим избран т.к. при обмене данными между ЦПУ и ППУ
пакеты имеют малую длину а также потому что это позволяет уменьшить
количество линий связывающих устройства (не требуется отдельная линия для
сигнала синхронизации). Два стоп-бита и контроль чётности используются для
повышения надёжности обмена. Длина слова в 8 бит выбрана потому что это
совпадает с разрядностью ШД процессора К580ВМ80.
После инициализации УСАПП управление работой ИМС осуществляется записью
командных инструкций и чтением слова состояния.
Рис.5 Временная диаграмма работы таймера в режиме 0
Рис.6 Временная диаграмма работы УСАПП К580ВВ51А в режиме асинхронной
Рис.7 Временная диаграмма работы УСАПП К580ВВ51А в режиме
асинхронного приёма.
7. D-регистр защелка КР580ИР82.
Микросхема КР580ИР82 - 8-разрядный адресный D-регистр-защёлка без
инверсии с тремя состояниями на выходе предназначен для связи
микропроцессора с системной шиной; обладает повышенной нагрузочной
ИМС состоит из восьми функционально одинаковых блоков и схемы
управления. Блок содержит D-триггер - «защёлку» и мощный выходной вентиль.
При помощи схемы управления производится опробирование записываемой
информации и управление третьим состоянием выходных вентилей. В зависимости
от состояния стробирующего сигнала STB ИМС может работать в двух режимах: в
режиме шинного формирователя и в режиме хранения (при высоком уровне
сигнала STB ИМС работает в режиме формирователя при низком - в режиме
Назначение выводов ИМС КР580ИР82
Вывод Обозначение Тип вывода Функционально назначение выводов
-8 DO-D7 Вход Информационная шина
ОЕ Вход Разрешение передачи (управление
STB Вход Стробирующий сигнал
-19 Q7-QO Выходвход Информационная шина
Микросхема К572ПА1 - умножающий 10-разрядный ЦАП. Предназначен для
преобразования входного кода в выходной ток пропорциональный значению
входного кода и опорному напряжению подаваемому на вывод 15. В описываемом
устройстве применяется в типовом включении.
Назначение выводов ИМС К572ПА1
li Выход Аналоговый выход (прямой)
2 Выход Аналоговый выход (инверсный)
-13 DO-D9 Вход Цифровые входы
Uo6p Вход Образцовое напряжение
Ucc - Напряжение питания (+15В)
Roc Вход Вход для резистора обратной связи
ОПИСАНИЕ ИНТЕРФЕЙСА RS-232.
Интерфейс RS232 - последовательный интерфейс предназначенный для
обмена информацией между различными цифровыми устройствами на скоростях от
до 9600 бод. В простейшей реализации интерфейса устройства соединяются
трёхжильным кабелем («Земля» «Входящие данные» «Исходящие
данные»).Возможно использование 4-й жилы -«Подтверждение готовности».
Логические уровни представляются напряжением ±12В.
К устройствам кабель подключается с использованием стандартного 25-
контактного разъёма. Используются контакты 0 («Земля») 2 («Исходящие
данные») 3 («Входящие данные»)
РАСПРЕДЕЛЕНИЕ АДРЕСНОГО ПРОСТРАНСТВА ППУ
Карта адресов памяти (в скобках приведены условные обозначения
которые применены на
блок-схемах алгоритмов и в программах):
00h-23FFh Диапазон адресов для вывода на ЦАПО (DACO)
00h-27FFh Диапазон адресов для задания масштабного
коэффициента ЦАПО (DACOC)
00h-33FFh Диапазон адресов для вывода на ЦАП1 (DAC1)
00h-37FFh Диапазон адресов для задания масштабного
коэффициента ЦАП1 (DAC1C)
00h-43FFh Диапазон адресов для вывода на ЦАП2 (DAC2)
00h-47FFh Диапазон адресов для задания масштабного
коэффициента ЦАП2 (DAC2C)
00h-53FFh Диапазон адресов для вывода на ЦАПЗ (DAC3)
00h-57FFh Диапазон адресов для задания масштабного
коэффициента ЦАПЗ (DAC3C)
00h-63FFh Диапазон адресов для вывода на ЦАП4 (DAC4)
00h-67FFh Диапазон адресов для задания масштабного
коэффициента ЦАП4 (DAC4C)
00h-73FFh Диапазон адресов для вывода на ЦАП5 (DAC5)
00h-77FFh Диапазон адресов для задания масштабного
коэффициента ЦАП5 (DAC5C)
00h Регистр данных 0-го канала таймера DD17
(соответствует ЦАПО) (TIMODO)
10h Регистр данных 1-го канала таймера DD17
(соответствует ЦАП1) (TIMOD1)
20h Регистр данных 2-го канала таймера DD17
(соответствует ЦАП2) (TIMOD2)
30h Регистр управляющего слова таймера DD17
00h Регистр данных 0-го канала таймера DD21
(соответствует ЦАПЗ) (TIM1 DO)
08h Регистр данных 1-го канала таймера DD21
(соответствует ЦАП4) (TIM1D1)
10h Регистр данных 2-го канала таймера DD2
(соответствует ЦАП5) (TIM 1D2)
18h Регистр управляющего слова таймера DD21 (TIM1CW)
Карта адресов устройств вводавывода:
C0h Регистр данных УСАПП. (COMD)
h Регистр управления УСАПП. (СОМС)
h Регистр данных 0-го канала таймера DD26 (TIM2DO)
h Регистр данных 1-го канала таймера DD26 (программирование
частота для таймеров DD17.DD21) (TIM2D1)
h Регистр данных 2-го канала таймера DD26
З0h Регистр управляющего слова таймера DD26 (TIM2CW)
При распределении адресного пространства использован метод
частичной дешифрации.
После включения ЦПУ и ППУ в ППУ происходит инициализация таймеров
затем сброс всех ЦАП и в последнюю очередь инициализация контроллера
последовательного интерфейса (К580ВВ51А) .После этого ППУ готово к работе и
воспринимает посылки от ЦПУ.
Посылки из ЦПУ в ППУ могут быть двух типов - командные или сообщения об
ошибке передачи. Сообщения об ошибке передачи имеют длину 1 байт (его
значение FFh) командные посылки имеют длину 4 байта:
Команда инициализации ЦАП:
-й байт: ООп - признак команды нициализации. 2-й байт: номер
-й байт: младший байт кода для ЦАП
-й байт: старший байт кода для ЦАП
-й байт: младший байт кода периода инициализации.
-й байт: старший байт кода периода инициализации.
Подпрограмма передачи управляющей посылки из ЦПУ считывает данные из
массива (в нём по порядку должны быть записаны 2-6 байты командной
посылки) который должен быть заполнен программой выполняющейся на ЦПУ.
Сообщения об ошибке передачи передаются когда при передаче информации
от ППУ в ЦПУ или обратно происходят ошибки передачи данных: ошибка формата
ошибка чётности или ошибка переполнения. Такие сообщения состоят из
единственного байта FFh. Более надёжные (и сложные) способы контроля
передачи данных не используются т.к. появление ошибок при передаче на
скорости 300 бод маловероятно вероятность же ошибок не корректируемых
применёнными средствами исчезающе мала.
После успешного получения командной посылки ППУ выполняет команду
(происходит фиктивное обращение к ячейке из области адресов одного из ЦАП
затем запускается соответствующий канал таймера) после чего отправляет в
ЦПУ пакет состоящий из четырёх байт. Формат пакета следующий:
-й байт: 00h- признак пакета с масштабным коэффициентом
-й байт: младший байт кода масштабного коэффициента.
-й байт: старший байт кода масштабного коэффициента.
Принятые данные записываются в массив в порядке поступления.
Блок-схемы алгоритмов работы устройства
В блок-схемах алгоритмов работы ППУ и в программах используются
следующие обозначения:
FlagAddr - начальный адрес области памяти из 6 байт в которой хранятся
флаги постоянной инициализации таймеров.
AppDataAddr - начальный адрес массива из пяти байт в который
записываются принимаемые от ЦПУ данные.
CoeffsAddr - начальный адрес области памяти из 12 байт В которой
подряд записаны двухбайтные коды масштабных коэффициентов ЦАП в порядке
возрастания номера ЦАП (запись в этот массив должна выполняться
подпрограммой обновления масштабных коэффициентов)
StackPtr -адрес вершины стека
В подпрограмме обновления масштабных коэффициентов ЦАП может быть
использован канал 2 таймера DD26 - для отслеживания временных интервалов
т.к. использованные ИМС таймеров позволяют программно считывать значения
счётчиков во время работы.
Рис. 9 Алгоритм отправки байта в ППУ
Рис. 10 Алгоритм принятия байта из ППУ
Рис. 8. Алгоритм программы выполняющейся в ППУ
Рис. 9. Алгоритм программы отправки байта в ППУ
Рис. 10. Алгоритм программы принятия байта из ППУ
1. Основная программа выполняемая в ППУ
Метка Команда Комментарий
MainBeginCALL Timerlnit Вызов подпрограммы инициализации таймеров
CALL COMInit Вызов подпрограммы инициализации УСАПП
CALL Вызов подпрограммы обновления масштабных
TimersRefresh коэффициентов ЦАП
MainLoop CALL DACReinit Вызов подпрограммы обновления масштабных
IN COMC Считывание слова состояния УСАПП
MOV BA Сохранение слова состояния в per. В
ANI 02h Выделение бита D1
JNZ Mainl Если байт поступил переход к обработке.
JMP MainLoop Возврат на начало
ANI 38h Выделение из слова состояния бит признаков
JZ Main2 Если флаги ошибок не взведены продолжается
CALL Retry Вызов подпрограммы сброса признака ошибки и
отправления запроса повторной передачи
Main2 IN COMD Считывание принятого байта
JZ MainS Если принятый байт - начало командной
посылки программа продолжается
CALL Send Иначе вызов подпрограммы передачи посылки с
масштабным коэффициентом
MainS CALL ReceiveAII Вызов подпрограммы получения остальных байт
JZ Main4 Если не было ошибок продолжение
CALL SendErReq Вызов подпрограммы передачи запроса о
повторной передаче команды
Main4 CALL DACReinit Вызов подпрограммы обновления масштабных
CALL DACInit Инициализация нужного ЦАП
CALL Timerlnit Инициализация соответствующего таймера
CALL Send Вызов подпрограммы повторной передачи
посылки с масштабным коэффициентом
JMP MainLoop Вызов подпрограммы передачи посылки с
2. Подпрограмма инициализации УСАПП
COM Init MVI A FDh Запись в аккумулятор байта FDh
OUT СОМС Вывод управляющего слова в регистр команд
LHLD StackPtr Загрузка в HL адреса вершины стека
SPHL Копирование его в SP
RET Возврат из подпрограммы
3. Подпрограмма инициализации таймеров
TimerlnitMVI A 34h Занесение в аккумулятор байта 34h
OUT TIM2CW Занесение управляющего слова в управляющий
OUT TIM2DO Занесение в РД 0-го канала таймера младшего
OUT TIM2DO Занесение в РД 0-го канала таймера старшего
MVI A74h Начало инициализации 1-го канала таймера
MVIA30h Начало инициализации 0-х каналов таймеров
MVI A70h Начало инициализации 1-х каналов таймеров
MVI ABOh Начало инициализации 1-х каналов таймеров
STA FlagAddr Обнуление флагов
4. Подпрограмма принятия 2-го и последующих байт командной посылки
ReceiveAIMVI B0 Обнуление счётчика полученных байт
LHLD AppDataAddr Загрузка в HL начального адреса области
памяти в которой будут сохраняться принятые
RecLoop IN COMC Считывание слова состояния УСАПП
AMI 02h Выделение признака поступления нового байта
JNZ Red Если байт поступил программа переход к
CALL Вызов подпрограммы переинициализации
TimersRefresh таймеров
JMP RecLoop Переход на начало цикла
Red IN COMD Считывание поступившего байта
STAXHL Сохранение принятого байта в ячейке памяти
INXHL Инкремент адреса по которому будет
записываться следующий байт
INRB Увеличение счётчика полученных байт
MVI A 05h Занесение в аккумулятор числа для сравнения
JNZ RecLoop Если В не равен 5 продолжение цикла
5. Подпрограмма сброса признаков ошибки и отправки запроса на
SendErReq IN COMD Считывание принятого байта из регистра
MVIA 15h Занесение управляющего слова для
сброса признаков ошибки в аккумулятор.
OUT COMC Занесение управляющего слова в упр. регистр
SndLoop IN COMC Считывание состояния УСАПП
ANIOIh Выделение признака готовности к передаче
JNZ Snd1 Если УСАПП готов продолжение
JMP SndLoop Переход на начало цикла
OUT COMD Занесение в РД УСАПП байта
сигнализирующего о необходимости повторной
6. Подпрограмма инициализации ЦАП
DACInit LHLD DACO Загрузка в HL адреса начала диапазона
адресов относящихся к ЦАПО
LXI DE 1000И Занесение в РП ВС числа 1000h
LDA AppDataAddr Загрузка в аккумулятор номера ЦАП
CMP В Сравнить содержимое аккумулятора с номером
JZ DACI1 Если они равны закончить цикл
DADDE Сложение DE и HL
INRB Инкремент регистра В
DACI1 LDA AppDataAddr+1Загрузка в аккумулятор младшего байта кода
MOV EA Занесение его в Рг. Е
LDA AppDataAddr+2Загрузка в аккумулятор старшего байта кода
MOV DA Занесение его в Рг. D
DADDE Сложение DE и HL (рез-т помещается в HL)
MVI M OOh Фиктивное обращение к ячейке памяти
7. Подпрограмма инициализации таймера
TimerlnitIDA AppDataAddr+4Считывание младшего байта кода периода
инициализации в аккумулятор
JNZ Timlni Если байт был ненулевым продолжается
LDA AppDataAddr+5Считывание младшего байта кода периода
JNC Timlni Если байт был ненулевым продолжается
LHLD FlagAddr Загрузка в HL адреса начала массива флагов
ADDH А складывается с Н рез-т записывается в А
MOV HA Рез-т копируется в Н
MVI M1 Запись флага
Timlni LHLD TIMODO Загрузка в HL адреса РД 0-го канала ЦАПО
JC Timlni2 Переход если номер ЦАП больше 2
Timlni2 MVI B8h Mult=8h
SUI3 Уменьшить содержимое аккумулятора на 3
MOV DA Копирование аккумулятора в D
RLC Циклический сдвиг содержимого аккумулятора
ADI 30h Добавление 30h к содержимому аккумулятора
MOV LC В L копируется младшая часть адреса регистра
MOV M A Запись в регистр управления таймера
MVI L.OOh Обнуление L
DCRD Цикл в котором Addr=Mult*Num
LDA AppDataAddr+4Загрузка в аккумулятор младшего байта кода
периода инициализации
MOV MA Запись младшего байта кода периода
инициализации в РД таймера
LDA AppDataAddr+5Загрузка в аккумулятор старшего байта кода
MOV M A Запись старшего байта кода периода
ADDL Сложение L с аккумулятором
MOV LA Запись результата в L
MVI M 0 Сброс флага постоянной инициализации
8. Подпрограмма отправки посылки с масштабным коэффициентом
Send IN COMC Считывание слова состояния УСАПП
AMI 01 h Выделение признака готовности передатчика
JNZ Sendl Если передатчик готов - выход из цикла
CALL Переинициализация таймеров
JMP Send Переход на начало цикла
Sendl OUT COMD Запись в РД УСАПП байта признака начала передачи
JNZ SendS Цикл ожидания готовности передатчика
SendS LDA AppDataAddr Загрузка в аккумулятор номера ЦАП
SendS LHLD CoeffsAddr Загрузка в HL начального адреса массива
ADDA.L Сложение аккумулятора и L
ADDA.L Сложение аккумулятора и L (Требовалось умножить на
MOV LA Копирование результата в L
MOVA.M Загрузка в аккумулятор младшего байта коэффициента
OUT COMD Передача младшего байта коэффициента
JNZ Send? Цикл ожидания готовности передатчика
Send? INX HL Увеличение адреса из которого будет читаться
i старший байт масштабного коэффициента
MOVA.M Загрузка в аккумулятор старшего байта масштабного
OUT COMD Передача старшего байта коэффициента
JNZ Send9 Цикл ожидания готовности передатчика
9. Подпрограмма переинициализации таймеров
TimersRefresLHLD FlagAddr Загрузка в HL адреса массива флагов
MVI E.OOh Сброс счётчика
TimRefd MOVA.M Загрузка очередного аккумулятор
JZ TimeRefrS Если флаг не установлен переход к концу цикла
PUSH HL Сохранить адрес в стеке
LHLD TIMODO Загрузка в HL адреса РД канала таймера DD17
CPI2 Сравнение счётчика с 2
RLC Сдвиг А влево на 6 бит
ADI 30h Увеличение аккумулятора ЗОН
MVI B.OOh Подготовка к записи Byte в РУ таймера
MOV MA Запись управляющего в РУ таймера
ADDL Цикл умножения
TimeRefrS MVI MFFh Запись максимальных значений в РД таймера
JNZ TimeRefrl Возврат на начало цикла
10. Подпрограмма обновления масштабных коэффициентов ЦАП
DACReinit MVI C5 Обнуление счётчика
LHLD DACOC Загрузка в HL адреса начала области адресов
отведённых для задания масштабного коэффициента
DACRel CALL GetNewCoeff Вызов подпрограммы определения нового
масштабного коэффициента для ЦАП номер
которого занесён в С (код этой подпрограммы на
приводится т.к. не задан алгоритм по которому
определяются масштабные коэффициенты.
Подпрограмма не должна модифицировать HL
возвращаемое значение должно находиться в
регистровой паре DE
PUSH HL Сохранение в стеке пары HL
DADDE Сложение DE и HL (Рез-т в HL)
MVI M.OOh Фиктивное обращение к ячейке
ADDH Увеличение HL на ЮООп
JNZ DACRel Если счётчик не нуль продолжение цикла
Обозначения применённые в тексте подпрограммы:
СОМС - адрес УВВ соответствующего РД УСАПП (предполагается что УСАПП
COMD - адрес УВВ соответствующего РУ УСАПП (предполагается что УСАПП
Предполагается также что прерывания от УСАПП не используются.
Data - адрес начала массива в котором по порядку находятся следующие
данные: номер ЦАП подлежащего инициализации младший байт кода выходного
напряжения ЦАП старший байт кода выходного напряжения ЦАП (его старшие 4
бита должны быть нулевыми)младший и старший байты кода периода
инициализации умноженного на 40 (т.к. за секунду таймером отсчитывается 40
InData - адрес начала массива в который будут помещены (по
порядку):номер ЦАП младший байт масштабного коэффициента старший байт
масштабного коэффициента
BeginExchangeMVI A00h Занесение в аккумулятор байта который
CALL SendByte Вызов подпрограммы отправки байта в ППУ
(в аккумуляторе находится сам байт)
MVI E.OOh Обнуление счётчика
ЕхсМ LHLD Data Загрузка в HL адреса по которому
находятся данные которые надо послать
DADDE HL=HL+C4eT4HK
MOV AM Загрузка в аккумулятор очередного
байта который надо отправить
INRE Инкремент счётчика
MOVA.E Счётчик копируется в аккумулятор
CPI5 Сравнение с количеством байт которые
JNZ ExcM Возврат на начало цикла если не все
MVI E00h Обнуление счётчика
Ехсп2 CALL ReceiveByte Вызов подпрограммы получения байта из
ППУ (полученный байт находится в
AMI 38h Выделение из слова состояния признаков
JZ Exch3 Если ошибок не было переход дальше
IN COMD Считывание байта принятого с ошибкой
MVI A.FFh Занесение в аккумулятор кода признака
JMP Exch2 Переход к повторному приёму
JNZ BeginExchangeЕсли принят признак запроса на
повторную передачу переход
LHLD InData Загрузка в HL адреса начиная с
которого будут размещены получаемые
MVI E3h Обнуление счётчика
Exch4 CALL ReceiveByte Получение очередного байта
MOV MA Сохранение его в ячейке памяти
INXHL Инкремент адреса
DCRE Декремент счётчика
JNZ Exch4 Продолжение цикла если не все байты
ANI 38h Выделение признаков ошибок
OUT COMC Сброс признаков ошибок
CALL SendByte Отправка запроса на повторную передачу
12. Подпрограмма отправки байта в ППУ
ANI 01h Цикл ожидания передатчика
OUT COMD Запись байта в РД УСАПП
13. Подпрограмма получения байта от ППУ
ReceiveByte IN COMC
ANI 02h Цикл ожидания готовности приёмника
IN COMD Считывание принятого байта в
14. Подпрограмма инициализации УСАПП в ЦПУ
OUT СОМС Сброс УСАПП
OUT СОМС Запись в РУ УСАПП слова режима
В этом курсовом проекте было разработано устройство которое может быть
использовано для формирования аналоговых сигналов с достаточно точным
уровнем и заданной длительностью по некоторой программе. Одно из применений
такого устройства - формирование управляющих сигналов для различных
устройств (например управление включением и мощностью электродвигателей
при подключении выходов устройства к достаточно мощным усилителям).
Возможны также другие применения.
В ходе проектирования был более детально изучен микропроцессорный
комплект К580 возможные схемотехнические решения на его основе а также
программирование на языке Ассемблер для процессора К580ВМ80.
СПИСОК ИСПОЛЬЗОВАННЫХ СОКРАЩЕНИЙ
УСАПП - универсальный синхронно-асинхронный приёмопередатчик
РД - регистр данных.
РУ - регистр управления
ИМС - интегральная микросхема
ЦАП - цифроаналоговый преобразователь
ОУ - операционный усилитель
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
Мокрецов В.П. «Микропроцессоры и МПС». Учебное пособие. Часть 1.
Екатеринбург: УГТУ-УПИ 1999. 125с.
«Микропроцессоры и микропроцессорные комплекты интегральных микросхем» в
Справочник в 2 т В.-Б.Б. Абрайтис Н.Н. Аверьянов А.И. Белоус и др. Под
Шахнова. - М:Радио и связь 19*88 Т.1 -386с. ил.
Майоров В.Г.Гаврилов А.И. «Практический курс программирования
сорных систем» -М.Машиностроение. 1989. -272с.:ил.
Рекомендуемые чертежи
- 04.11.2022
Свободное скачивание на сегодня
Обновление через: 21 час 13 минут