Инициализация 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 - необходимо для определения порядка выполнения последующих блоков.
Свойства
Окно свойства блока разделены на две категории:
- Прием данных
- Передача данных
| Название | Имя | Описание | По умолчанию |
| Адрес приемника данных | 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 не будет работать в режиме приема данных!
| Название | Имя | Описание | По умолчанию |
| Адрес источника данных | 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 не будет работать в режиме приема данных!
Параметры
Блок не имеет параметров.