Не могу настроить АЦП по событию

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
fulky
Первый раз сказал Мяу!
Сообщения: 31
Зарегистрирован: Ср сен 13, 2017 05:53:24

Не могу настроить АЦП по событию

Сообщение fulky »

Камень STM32f103
хочу начать преобразование по событию Timer 1 CC1 event. Ножка PA1. Не пойму как настроить таймер1 чтоб отправлялось событие на АЦП. Однократную конверсию настроил легко. По событию не получается. хелп.

Код: Выделить всё

   RCC->APB2ENR |= RCC_APB2ENR_ADC1EN;       
   RCC->APB2ENR |= RCC_APB2ENR_IOPAEN;         
   RCC->APB2ENR |= RCC_APB2ENR_AFIOEN;         
   
   GPIOA->CRL &= ~GPIO_CRL_CNF1;                  //PA1 AI
   GPIOA->CRL &= ~GPIO_CRL_MODE1;               
   
   RCC->CFGR |= RCC_CFGR_ADCPRE_DIV6;           //72/6=12MHz < 14MHz
   
  ADC1->CR2 |= ADC_CR2_CAL;                       //calibration
   while (!(ADC1->CR2 & ADC_CR2_CAL));

//   ADC1->CR2 |= ADC_CR2_CONT;                  //Continuous conversion mode
   ADC1->CR2 &= ~ADC_CR2_EXTSEL_2;               //TIM1_CC1 event
   ADC1->CR2 |= ADC_CR2_EXTTRIG;                  //Conversion on external event enabled
   ADC1->CR2 |= ADC_CR2_ADON;                      //A/D Converter ON / OFF
   ADC1->SMPR2 |= ADC_SMPR2_SMP0;               //PA1 ADC1 ch1  (111: 239.5 cycles)
   ADC1->SQR3 |=ADC_SQR3_SQ1_0;                  //SQ1 - 1ch
   
   RCC->APB2ENR|=RCC_APB2ENR_TIM1EN;          //
   TIM1->PSC=7200-1;                                    // 10000
   TIM1->ARR=400;                                       // 0,04
   TIM1->CCR1=400;
   TIM1->CR2 |= TIM_CR2_MMS_1;                     //
   TIM1->CR1|=TIM_CR1_CEN;
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Не могу настроить АЦП по событию

Сообщение dosikus »

Хоть сэмплирования и по таймеру но первый старт вручную...
fulky
Первый раз сказал Мяу!
Сообщения: 31
Зарегистрирован: Ср сен 13, 2017 05:53:24

Re: Не могу настроить АЦП по событию

Сообщение fulky »

[uquote="dosikus",url="/forum/viewtopic.php?p=3285818#p3285818"]Хоть сэмплирования и по таймеру но первый старт вручную...[/uquote]
т.е. старт преобразования вручную? нужно прописывать единожды ADC1->CR2 |=ADC_CR2_SWSTART;?
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: Не могу настроить АЦП по событию

Сообщение dosikus »

Давно бы запустил уже...
Ответить

Вернуться в «ARM»