Рис. 3. Общая граф-схема алгоритма работы системы
с программно-управляемым вводом данных
В результате этих операций на объект циклически выводится заданный тестовый сигнал. Затем формируется временная задержка, осуществляется синхронизированный запуск АЦП с частотой дискретизации нулевого канала таймера и начинается ввод реализации считываемого сигнала. При этом в цикле длиною N проверяется готовность данных, считывается очередной отсчет сигнала и записывается в оперативную память. После завершения ввода производится останов АЦП. Далее следуют обработка данных и вывод результатов на экран, которые программируются на языке высокого уровня. Последующая диалоговая часть алгоритма включает повторение измерения без изменения параметров тестового сигнала, с изменением параметров тестового сигнала или выход, т. е. окончание работы. Во втором случае запрещаются запросы ПДП канала вывода и работа первого канала таймера.
На рис. 4 приведена общая граф-схема алгоритма работы системы, отличающаяся от рис. 3 тем, что как вывод, так и ввод сигнала осуществляются в режиме ПДП. Она включает операции программирования контроллера ПДП канала ввода, разрешения запросов ПДП канала ввода и последующий пуск АЦП. Ввод блока данных канала ввода длиною N осуществляется без участия программы. В это время идет проверка окончания передачи блока данных с канала ввода (сигнала или бита T/C), выполняемая программно или по запросу прерывания. Затем производится останов АЦП, запрет запроса ПДП канала ввода и другие операции, аналогичные рис. 3.
Выбор и описание испоьзуемых процедур программного обеспечения инструментального модуля RD1
В [1] приводится подробное описание процедур и функций программных модулей RD1.ASM, DMA.ASM и RD1.PAS, использование которых существенно упрощает программирование. Программам, создаваемым на основе граф-схем рис. 3, 4, отвечают такие процедуры, как InitBoard (инициализация модуля), Init53 (программирование таймера), SetDRQ1 - разрешает/запрещает запросы ПДП канала ввода, SetDRQ2 - разрешает/запрещает запросы ПДП канала вывода, SetЕТ1 - разрешает/запрещает работу первого канала таймера, SetARunMode - устанавливает режим пуска АЦП и осуществляет его запуск, Meas (измерение) - осуществляет запуск АЦП, программный ввод заданного числа отсчетов сигнала по готовности данных и запись их в память, проверку переполнения буфера при вводе данных, останов АЦП, центрирование (нормировку) считанных данных. Функция MeasDMA (измерение в режиме ПДП) программирует контроллер ПДП канала ввода, разрешает запросы ПДП канала ввода, устанавливает заданный режим пуска АЦП и осуществляет его запуск, проверяет программно завершение передачи блока данных, проверяет переполнение буфера данных, останавливает АЦП, запрещает запросы ПДП канала ввода, нормирует считанные данные.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.