ВУЗ:
Составители:
Рубрика:
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
- …
- следующая ›
- последняя »