stm32 АЦП, решить проблему с калибровкой

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
peotr
Первый раз сказал Мяу!
Сообщения: 27
Зарегистрирован: Сб мар 02, 2013 16:42:11

stm32 АЦП, решить проблему с калибровкой

Сообщение peotr »

Мяу, уважаемые гуру и др. знатоки! Недавно приступил к изучению STM32.
Мучаю плату NUCLEO-L452RE-P (контроллер STM32L452RE). Использую STM32CubeIDE 1.3.0. и библиотеку HAL. Упёрся, похоже, безнадёжно без посторонней помощи, в следующую проблему.
Пытаюсь заставить АЦП обрабатывать:
- одну пару каналов для дифференциального входа,
- один канал для обычного,
- и три внутренних: Temperature Sensor Chanel, Vbat и Vrefint.
А тут в засаде калибровка!
Для дифференциального входа HAL имеет:
HAL_ADCEx_Calibration_Start(&hadc1, ADC_DIFFERENTIAL_ENDED);
Для обычного:
HAL_ADCEx_Calibration_Start(&hadc1, ADC_SINGLE_ENDED);
Как произвести калибровку, чтобы угодить всем каналам?
Спасибо ответившим и сочувствующим.
Реклама
u37
Сверлит текстолит когтями
Сообщения: 1231
Зарегистрирован: Пн май 01, 2017 20:01:45

Re: stm32 АЦП, решить проблему с калибровкой

Сообщение u37 »

Можно почитать RM и сделать так, как там написано. Правда, неожиданный совет? ))
Нужно делать две калибровки, одну для single, второй для diff.
Процесс запуска ADC семейства F3/L4 должен выглядеть так:
- disable
- включить power
- delay >10us
- запустить калибровку single end каналов
- после выставления флага завершения ЕЩЕ ждать
- запустить калибровку дифф. каналов
- после выставления флага завершения ЕЩЕ ждать. У меня в записях на полях написано следующее -
"После калибровки надо подождать, задержка нужна и 10us иногда не хватает! Без нее ADC не записывает регистры далее и не стартует."
Всё написано в RM и Errata.
Реклама
peotr
Первый раз сказал Мяу!
Сообщения: 27
Зарегистрирован: Сб мар 02, 2013 16:42:11

Re: stm32 АЦП, решить проблему с калибровкой

Сообщение peotr »

[uquote="u37",url="/forum/viewtopic.php?p=3955322#p3955322"]Можно почитать RM и сделать так, как там написано. Правда, неожиданный совет? ))[/uquote]
Совет, как раз, ожиданный. Такие встречаются чаще всего. А вот за то, что продолжили после точки, спасибо.
Ответить

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