АЦП и ЦАП в автоматизированных системах научных исследований. Алгазинов Э.К - 31 стр.

UptoLike

31
Функция выключения контроллера ПДП (DMA_OFF8)
procedure DMA_OFF8;
Процедура для выключения контроллера DMA. Её необходимо вы-
зывать , когда работа с контроллером ПДП завершена. Если контроллер
был переведен в режим ввода с автоинициализацией и не был выключен,
то после выхода из программы скорее всего произойдет зависание компь-
ютера.
Функция проверки завершения вывода по ПДП (DMA_TEST8)
function DMA_TEST8 : WORD;
Возвращает ноль, если вывод по ПДП не завершен и единицу - в
противном случае. Данную функцию можно применять только при вводе с
выключенным режимом автоинициализации. При выключенном режиме
автоинициализации счетчик канала ПДП устанавливается в -1 после за-
вершения вывода, DMA_TEST8 проверяет значение счетчика на -1 и, если
оно не равно -1, то возвращает ноль. При включенном режиме автоини-
циализации счетчик ПДП никогда не становится равным -1, поэтому в
этом режиме DMA_TEST8 будет всегда возвращать ноль.
Проверка базового адреса буфера для ПДП
(DMA_ADDRESS_TEST8)
function DMA_ADDRESS_TEST8(Data : pointer; NPoint : WORD) :
WORD;
Функция возвращает ноль, если буфер с базовым адресом Data и
размером NPoint слов не пересекает страницу ПДП.
Параметры
ü Data - проверяемый базовый адрес буфера
ü Npoint - размер буфера
Доступ к счетчику канала ПДП (DMA_COUNTER8)
function DMA_COUNTER8 : INTEGER;
Возвращает число слов , которое осталось вывести по ПДП (при од -
нократном выводе после завершения вывода счетчик ПДП установится в -
1). Первоначальное содержимое счетчика перед выводом первого слова
равно числу передаваемых слов минус один .
                                            31


       Ф ункцияв ы клю ченияконт     роллераПД П (DMA_OFF8)
procedure DMA_OFF8;
       Процед ура д ля в ы клю чения конт  роллера DMA. Е ё необх од имо в ы -
зы в ат
      ь, когд а работ  а с конт  роллером ПД П зав ерш ена. Е сли контроллер
бы л перев ед ен в реж им в в од а с ав т
                                        оинициализацией ине бы л в ы клю чен,
то после в ы х од а из программы скорее в сего произойд етзав исание компь-
ют ера.

       Ф ункцияпров еркизав ерш енияв ы в од апо ПД П (DMA_TEST8)
function      DMA_TEST8 : WORD;
       В озв ращ аетноль, если в ы в од по ПД П не зав ерш ен и ед иницу - в
прот  ив ном случае. Д анную ф ункцию мож но применят      ьтолько прив в од ес
в ы клю ченны м реж имом ав т     оинициализации. При в ы клю ченном реж име
ав тоинициализации счет      чик канала ПД П уст  анав лив ается в -1 после за-
в ерш енияв ы в од а, DMA_TEST8 пров еряетзначениесчет       чика на -1 и, если
оно не рав но -1, т   о в озв ращ аетноль. При в клю ченном реж име ав т оини-
циализации счет     чик ПД П никогд а не ст  анов ит ся рав ны м -1, поэтому в
эт ом реж имеDMA_TEST8 буд етв сегд ав озв ращ ат     ьноль.


      Пров ерка базов огоад ресабуф ерад ляПД П
(DMA_ADDRESS_TEST8)
function    DMA_ADDRESS_TEST8(Data : pointer; NPoint : WORD) :
WORD;
      Ф ункция в озв ращ аетноль, если буф ер с базов ы м ад ресом Data и
размером NPoint слов непересекаетст     раницу ПД П.
      П арам е т ры
   ü Data - пров еряемы й базов ы й ад рес буф ера
   ü Npoint - размер буф ера

      Д ост уп к счетчику каналаПД П (DMA_COUNTER8)
function     DMA_COUNTER8 : INTEGER;
      В озв ращ аетчисло слов , которое ост   алось в ы в ест
                                                            ипо ПД П (приод -
нократ ном в ы в од епослезав ерш ения в ы в од а счетчик ПД П уст
                                                                 анов итсяв -
1). Перв оначальное сод ерж имое счет   чика перед в ы в од ом перв ого слов а
рав но числу перед ав аемы х слов минус од ин.