[an error occurred while processing this directive]
|
Такая проблема: после настройки SPI хочу передавать с использованием DMA массив:
static const char PDC_header[]={0х23,0x12,0x34,0x56,0x78};
...
AT91C_BASE_SPI->SPI_PTCR |= AT91C_PDC_TXTDIS;
AT91C_BASE_PDC_SPI->PDC_TPR = (unsigned int) PDC_header;
AT91C_BASE_PDC_SPI->PDC_TCR = sizeof(PDC_header);
AT91C_BASE_SPI->SPI_PTCR |= AT91C_PDC_TXTEN;
...
в памяти массив расположен так: 0000498: 23 12 34 56 78
sizeof(PDC_header)=5 (после выполнения соотв строки кода)
вроде все нормально, но передается только 2 байта (2!!!) и причем
0х23 и 0х56 !!!! offset(0x56) = offset(0x23) + 3 !!! не пойму в чем дело... кто знает чем помочь? может где-то ошибка?
E-mail: info@telesys.ru