Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 27.04.2018, 16:21  
Alex_golubev
Прописка
 
Регистрация: 07.02.2016
Сообщений: 139
Сказал спасибо: 4
Сказали Спасибо 1 раз в 1 сообщении
Alex_golubev на пути к лучшему
По умолчанию stm32f373 16 битный ацп не работает на 50 ksps

Привет.
Столкнулся с особенностью АЦП которая загнала меня в тупик.
За 20 мкс АЦП не может сделать преобразование в регистре RDATAR находится малое число (около 100).
Проверил просто, подавал сигнал прямоугольник на ножку ацп, но не как попало а синхронизируя с ацп. В момент установки N1_SIGNAL_ON на ножки ацп 1 В, в момент N1_SIGNAL_OFF на входе ацп 0 В. Включен режим Fast.
Код:
    adcSD = SDADC1-›RDATAR;
    while( (SDADC1-›ISR&SDADC_ISR_REOCF) != SDADC_ISR_REOCF);
    N1_SIGNAL_ON; // падаю напряжение на ацп 1 Вольт
    adcSD = SDADC1-›RDATAR;
    while( (SDADC1-›ISR&SDADC_ISR_REOCF) != SDADC_ISR_REOCF);
    adcSD = SDADC1-›RDATAR;
    N1_SIGNAL_OFF; // выключаю напряжение ацп 0 вольт
    adcSD = SDADC1-›RDATAR;
Но если выключить режим Fast, то ацп начинает нормально работать, но тогда длительность преобразования увеличивается до 60 мкс. А мне нужно 20 мкс.

инициализация ацп
Код:
static void MX_SDADC1_Init(void)
{

  SDADC_ConfParamTypeDef ConfParamStruct;

    /**Configure the SDADC low power mode, fast conversion mode,
    slow clock mode and SDADC1 reference voltage 
    */
  hsdadc1.Instance = SDADC1;
  hsdadc1.Init.IdleLowPowerMode = SDADC_LOWPOWER_NONE;
  hsdadc1.Init.FastConversionMode = SDADC_FAST_CONV_ENABLE;
  hsdadc1.Init.SlowClockMode = SDADC_SLOW_CLOCK_DISABLE;
  hsdadc1.Init.ReferenceVoltage = SDADC_VREF_EXT;
  if (HAL_SDADC_Init(&hsdadc1) != HAL_OK)
  {
    _Error_Handler(__FILE__, __LINE__);
  }

    /**Set parameters for SDADC configuration 0 Register 
    */
  ConfParamStruct.InputMode = SDADC_INPUT_MODE_SE_OFFSET;
  ConfParamStruct.Gain = SDADC_GAIN_1_2;
  ConfParamStruct.CommonMode = SDADC_COMMON_MODE_VSSA;
  ConfParamStruct.Offset = 0;
  if (HAL_SDADC_PrepareChannelConfig(&hsdadc1, SDADC_CONF_INDEX_0, &ConfParamStruct) != HAL_OK)
  {
    _Error_Handler(__FILE__, __LINE__);
  }

}
Настройка ацп:
Код:
  HAL_SDADC_AssociateChannelConfig(&hsdadc1,  SDADC_CHANNEL_6, SDADC_CONF_INDEX_0); 
  HAL_SDADC_ConfigChannel(&hsdadc1, SDADC_CHANNEL_6 , SDADC_CONTINUOUS_CONV_ON ); 
  HAL_SDADC_SelectRegularTrigger(&hsdadc1, SDADC_SOFTWARE_TRIGGER);
Запуск ацп:
Код:
SDADC1-›CR2 |= SDADC_CR2_RSWSTART;
RCONT установлен в 1.
Реклама:
Alex_golubev вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Видео уроки dosikus Микроконтроллеры, АЦП, память и т.д 61 23.01.2012 21:06
Не работает АЦП mega8 putmannn Микроконтроллеры, АЦП, память и т.д 10 11.07.2011 12:40
Не работает PD4 в ATTINY 4313 HeatSink Микроконтроллеры, АЦП, память и т.д 37 14.06.2011 17:46
АЦП mega8 Proteus не работает AGAT0365 Proteus 16 27.04.2010 19:53
Не работает АЦП dm211 Микроконтроллеры, АЦП, память и т.д 9 01.11.2008 06:58


Часовой пояс GMT +4, время: 11:54.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot