Всем доброго дня! Подскажите, что я мог сделать неправильно?
Хочу настроить АЦП так что бы он передавал измеряемые данные в буфер, с использованием ДМА(ПДП)!
АЦП все измеряет, но данные так и не попадают в буфер(((
Код
uint32_t BUFF[100];
RCC->APB2ENR |= RCC_APB2ENR_ADC1EN;
//********************DMA***************************
RCC->AHB1ENR |= RCC_AHB1ENR_DMA2EN;
DMA2_Stream0->CR&=~ DMA_SxCR_CHSEL; // 000: channel 0 selected
DMA2_Stream0->PAR= (uint32_t)&ADC1->JDR1; //
DMA2_Stream0->M0AR=(uint32_t)&BUFF[0]; // Массив
DMA2_Stream0->NDTR=10; // Длина буфера
DMA2_Stream0->CR|= DMA_SxCR_MINC; // Инкремент адреса
DMA2_Stream0->CR|= DMA_SxCR_MSIZE_0; // 16 бит
DMA2_Stream0->CR|= DMA_SxCR_PSIZE_0; // 16 бит
DMA2_Stream0->CR|= DMA_SxCR_CIRC; // Непрерывный режим
DMA2_Stream0->CR&=~ DMA_SxCR_DIR; // 01: peripheral-to-Memory
DMA2_Stream0->CR|= DMA_SxCR_PL; // 11: Very high приоритет
DMA2_Stream0->CR|= DMA_SxCR_EN; // Вкл. передачу
GPIOA->MODER |= GPIO_MODER_MODER6; //ADC1 CH6 PA6
GPIOA->MODER |= GPIO_MODER_MODER1; //ADC1 CH2 PA1
ADC1->CR1 |= ADC_CR1_DISCNUM_0; //Discontinuous mode channel count 001: 2 channels
ADC1->CR1 |= ADC_CR1_JDISCEN; //1: Discontinuous mode on injected channels enabled
ADC1->CR1 |= ADC_CR1_SCAN;
ADC1->CR2 |= (ADC_CR2_JEXTSEL_3|ADC_CR2_JEXTSEL_0);//tim 4 (TRGO)
ADC1->CR1 |=ADC_CR1_JAUTO; //автоматическое преобразование для каналов в инжектированной группе после каналов регулярной группы.
ADC1->JSQR |=ADC_JSQR_JL_0; //выбор кол-ва каналов для преобразования (2 каналa инжектированной группы)
ADC1->CR2 |=ADC_CR2_DMA; //разрешаем рабуту DMA
// ADC1->CR2 |=ADC_CR2_DDS;
ADC1->CR1 |=ADC_CR1_JEOCIE;
ADC1->CR2 |=ADC_CR2_CONT;
// ADC->CCR |= ADC_CCR_DMA_0; //01: DMA mode 1 enabled (2 / 3 half-words one by one - 1 then 2 then 3)
// ADC->CCR |= ADC_CCR_DDS;
ADC1->JSQR |=(ADC_JSQR_JSQ3_1|ADC_JSQR_JSQ3_2);// CH6 PA6
ADC1->JSQR |= ADC_JSQR_JSQ4_0; // CH1 PA1
ADC1->CR2 |=ADC_CR2_JEXTEN_0; //01: Запуск обнаружения по фронту
ADC1->CR2 |=ADC_CR2_JSWSTART;
ADC1->CR2 |=ADC_CR2_ADON;
Сообщение отредактировал stm32f4 - Apr 12 2013, 13:49