ВУЗ:
Составители:
Рубрика:
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). Перв оначальное сод ерж имое счет чика перед в ы в од ом перв ого слов а
рав но числу перед ав аемы х слов минус од ин.
Страницы
- « первая
- ‹ предыдущая
- …
- 29
- 30
- 31
- 32
- 33
- …
- следующая ›
- последняя »
