Andreas (22.03.2018 11:10 - 11:13, просмотров: 97) ответил il-2 на Код в студию, тогда и разговор будет. Я конечно могу присоединиться к предыдущим телепатамораторам:
NSS отключен, да и на передачу весь пакет уходит, прерывание по концу дма срабатывает.Код примерно такой:
SPI1->CR1 = SPI_CR1_SSM | SPI_CR1_SSI | SPI_CR1_MSTR;
RCC->AHBENR |= RCC_AHBENR_DMA1EN;
DMA1_Channel2->CPAR = (uint32_t)&SPI1->DR;
DMA1_Channel3->CPAR = (uint32_t)&SPI1->DR;
SPI1->CR2 = SPI_CR2_TXDMAEN | SPI_CR2_RXDMAEN ;//| SPI_CR2_SSOE;
__SPI_REGS[port]->CR1 |= SPI_CR1_SPE;
//при запуске
DMA1_Channel2->CCR = DMA_CCR1_MINC | DMA_CCR1_TCIE;
DMA1_Channel3->CCR = DMA_CCR1_DIR | DMA_CCR1_MINC;
DMA1_Channel2->CMAR = DMA1_Channel3->CMAR = (uint32_t)bufer;
DMA1_Channel2->CNDTR = DMA1_Channel3->CNDTR = data_size;
DMA1_Channel2->CCR |= DMA_CCR1_EN;
DMA1_Channel3->CCR |= DMA_CCR1_EN;