Пр о ц е с с о р TMS 3 2 0C4 x
68
STI
R0,
∗
+AR0(3)
; загрузка счетчика
LDI
@DESTIN, R0
STI
R0,
∗
+AR0(4)
; загрузка адреса приемника
LDI
@DST_IDX, R0
STI
R0,
∗
+AR0(5)
; загрузка индекса адреса приемника
LDI
@CONTR, R0
STI
R0,
∗
AR0
; старт канала ПДП
LDHI
0010h, DIE
; установка синхронизации от ICRDY порта 4
П р и м е р 2.2.
Канал ПДП инициализируется для вывода данных через
коммуникационный порт. Используется расщепленный режим работы канала
ПДП и автоинициализация 1А. В этом режиме канал ПДП связывается с ком-
муникационным портом, номер которого установлен в соответствующих разря-
дах регистра управления каналом ПДП. Для вывода данных в порт использует-
ся основной канал ПДП. Для автоинициализации подготовлен блок параметров
в секции .data с именем LINK_DMA1.
Канал ПДП сбрасывается с установкой битов TRANSFER MODE = 10 для
автоинициализации по варианту 1А. Затем в регистр указателя связи основного
канала записывается адрес блока параметров LINK_DMA1. После этого осуще-
ствляется запуск канала установкой битов START = 11 и установка синхрони-
зации в регистре DIE.
Пример 2.2. Вывод данных в режиме ПДП с использованием синхронизации передачи
от прерываний OCRDY, расщепленного режима ПДП и автоинициализация 1А
.data
DMA1
.word
001000B0h
; адрес канала ПДП 1
.word
0004C089h
; управляющее слово сброса канала
.word
00C00000h
; биты старта
LINK_DMA1 .word
0004C085h
; управляющее слово
.word
002FFC00h
; адрес источника
.word
1
; индекс адреса источника
.word
200h
; счетчик слов
.word
LINK_DMA1
; указатель связи
.text
START
LDPK
DMA1
; загрузка указателя страницы
LDA
@DMA1, AR0
; загрузка адреса канала ПДП
LDI
@DMA1+1, R0
STI
R0,
∗
AR0
; установка управляющего слова
LDI
@DMA1+7, R1
STI
R1,
∗
+AR0(6)
; запись указателя связи канала ПДП 1
OR
@DMA1+2, R0
STI
R0,
∗
AR0
; старт канала ПДП
; установка синхронизации основного канала от OCRDY порта 1
LDI
4, DIE