DMA channel x peripheral address register (DMA_CPARx) (x = 1..7, where x = channel number)

Регистр адреса периферии канала x DMA (x - номер канала = 1..7 / 1..5)

Смещение (Address offset): 0x10 + 0x14 * (x-1)

Reset value: 0x0000'0000

3130292827262524
PA[31:24]
rwrwrwrwrwrwrwrw
00000000
2322212019181716
PA[23:16]
rwrwrwrwrwrwrwrw
00000000


15141312111098
PA[15:8]
rwrwrwrwrwrwrwrw
00000000
76543210
PA[8:0]
rwrwrwrwrwrwrwrw
00000000


Bits 31:0
PA[31:0]
Peripheral address
Базовый адрес периферии с которым будет производиться обмен данными по каналу в режиме DMA

Запись в этот регистр возможна только при отключенном канале.

Если размер данных со стороны периферии 16 бит (PSIZE[1:0] = 01), бит PA[0] игнорируется, доступ автоматически выравнивается по адресу полуслова.

Если размер данных со стороны периферии 32 бит (PSIZE[1:0] = 10), биты PA[1:0] игнорируются, доступ автоматически выравнивается по адресу слова.



/******************  Bit definition for DMA_CPAR1 register  *******************/
#define  DMA_CPAR1_PA                        ((uint32_t)0xFFFFFFFF)        /* Peripheral Address */

Для регистров остальных каналов (CPAR2...CPAR7 для DMA1, CPAR2...CPAR5 для DMA2) изменить цифру в имени соответствующего определения бита (..._CPARx_...)