Инициализация DMA для МК 1986BE1T

|Си|
в палитре на схеме

Блок реализует настройку DMA контроллера микропроцессора. Программная реализация блока, расположена в заголовочном файле dma.h (функция INIT_DMA) файла main.c проекта Test_Driver (в среде разработки Keil), который создается при генерации кода проекта и содержит тексты программ алгоритма на языке СИ. Можно использовать для программирования двух типов микропроцессоров 1986BE1T и 1986BE9X. Основные характеристики контроллера DMA приведены в спецификациях 1986BE1T.pdf и 1986BE9X.pdf.

Входы

  • dev_init - необходим для определения порядка выполнения блока, предполагается, что перед вызовом блока настройки контроллера DMA должен быть инициализирован контроллер устройства совместно работающего с DMA.

Выходы

  • sort_block - необходимо для определения порядка выполнения последующих блоков.

Свойства:

Окно свойства блока разделены на две категории:

Таблица 1. Прием данных
Название Имя Описание По умолчанию
Адрес приемника данных DMA_SourceBaseAddr см. спецификацию 1986BE1T.pdf, 1986BE9X.pdf 0x40088018 (АЦП1)
Канал DMA DMA_Chanal_RX см. спецификацию 1986BE1T.pdf, 1986BE9X.pdf 8
Размер выходного массива DMA_CycleSize_RX В выходной массив заданного размера будет передан контроллером DMA результаты работы устройства 16
Автоувеличение адреса для приемника DMA_DestIncSize_RX см. спецификацию 1986BE1T.pdf, 1986BE9X.pdf DMA_DestIncWord
Размер элемента DMA_MemoryDataSize_RX см. спецификацию 1986BE1T.pdf, 1986BE9X.pdf Word
Арбитраж запросов DMA DMA_NumContinuous_RX см. спецификацию 1986BE1T.pdf, 1986BE9X.pdf 4
Режим работы DMA DMA_Mode_RX

Возможно два режима работы:

- Basic;

- AutoRequest;

см. спецификацию 1986BE1T.pdf, 1986BE9X.pdf

DMA_Mode_Basic

Стоит отметить, что если DMA_CycleSize_RX задано равным 0, то контроллер DMA не будет работать в режиме приема данных!

Таблица 2. Передача данных
Название Имя Описание По умолчанию
Адрес источника данных DMA_DestBaseAddr см. спецификацию 1986BE1T.pdf, 1986BE9X.pdf 0
Канал DMA DMA_Chanal_TX см. спецификацию 1986BE1T.pdf, 1986BE9X.pdf 0
Размер входного массива DMA_CycleSize_TX

Массив для передачи контроллером DMA совместно работающему устройству

см. спецификацию 1986BE1T.pdf, 1986BE9X.pdf

0
Автоувеличение адреса для источника DMA_SourceIncSize_TX см. спецификацию 1986BE1T.pdf, 1986BE9X.pdf DMA_DestIncHalfword
Размер элемента DMA_MemoryDataSize_TX см. спецификацию 1986BE1T.pdf, 1986BE9X.pdf Byte
Арбитраж запросов DMA DMA_NumContinuous_TX см. спецификацию 1986BE1T.pdf, 1986BE9X.pdf 4
Режим работы DMA DMA_Mode_TX

Возможно два режима работы:

- Basic;

- AutoRequest;

см. спецификацию 1986BE1T.pdf, 1986BE9X.pdf

DMA_Mode_AutoRequest

Стоит отметить, что если DMA_CycleSize_TX задано равным 0, то контроллер DMA не будет работать в режиме приема данных!

Параметры

нет