Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ГОСы (МПС).docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
4.53 Mб
Скачать

17. Составить фрагмент программы считывания информации с ацп для контроллера 1816ве51 (Адреса: пуск - 8300н, готов – 8200н, выход данных – 8000н).

Рассмотрим довольно простой пример построения устройства ввода аналоговой информации в УМПК—51. Часть схемы УМПК—51, реализующая ввод аналоговой информации, представлена на рис. 33.

Рис. 33. Ввод аналоговой информации в УМПК—51.

Основой схемы является ИС АЦП 1113ПВ1 (А4), реализующая 10-разрядное аналого — цифровое преобразование напряжения в диапазоне —5...+5В (в УМПК—51 используются только 8 разрядов выходного кода). Аналоговый сигнал с разъема поступает на вход АЦП через делитель R12, R13 и буферный повторитель A3.2. Соотношение R13 и R12 отрегулировано таким образом, чтобы между входным напряжением и выходным кодом АЦП было следующее соответствие:

- 10,24В

00Н

- 0.08В

7FH

0,0В

80Н

+10,16В

FFH

Примечание. Подразумевается, что в промежутках между указанными

точками характеристика код—напряжение является линейной.

Диоды VD6, VD7 ограничивают диапазон сигнала, поступающего с разъема, при этом уровень, поступающий на вход буферного повторителя

A3.2 никогда не выходит за рамки —15 ... + 15В. Буфер D20 служит для считывания кода АЦП и выбирается при чтении из ячейки внешней памяти, с адресом 80ХХН. Триггер D17 осуществляет запуск преобразования АЦП при записи в ячейку с адресом 83ХХН числа с D0="l". Буферный элемент D5.3 служит для считывания сигнала готовности АЦП как состояния разряда D1 ячейки памяти с адресом 82ХХН.

Для того, чтобы измерить внешнее напряжение с помощью описанной схемы, необходимо выполнить следующие действия:

• записать в триггер запуска D17 лог. "1", при этом начинается цикл преобразования длительностью около 30 мкс со сбросом выхода готовности АЦП в "0";

• опрашивать бит готовности через, буфер D5.3 до тех пор, пока он не установится в "1" (преобразование закончено);

• считать код, полученный в результате преобразования;.

• сбросить триггер запуска (подготовка для следующего цикла преобразования);

• интерпретация полученного кода (пересчет в напряжение). Ниже приведена программа, реализующая эту последовательность действий:

1000Н

90 83 00

MOV DPTR,#8300H

Указатель на триггер запуска .

1003Н

7401

MOV A,1

Запуск

1005Н

F0

MOV @DPTR,A

преобразования

1006Н

90 82 00

MOV DPTR,#8200H

Указатель на буфер готовности

1009Н

E0

J1:

MOV A,@DPTR

Ожидание

100АН

20 El FC

JB ACC.1,J1

готовности

100DH

90 80 00

MOV DPTR,#8000H

Указатель на буфер кода АЦП

1010Н

E0

MOV A,@DPTR

Считывание кода в аккумулятор

1011Н

12 02 F3

LCALL STOP

Останов