реклама на сайте
подробности

 
 
> STM32F373 ADC 12 BIT калибровка
Alex_Golubev
сообщение May 9 2018, 02:04
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 280
Регистрация: 18-03-17
Пользователь №: 95 877



Привет.
Столкнулся с проблемой калибровки 12 битного АЦП stm32f373.

Делаю как написано в rm0313.

При выключенном бите ADON = 0;

Пишу следующий код:
Код ADC1->CR2 |= ADC_CR2_CAL; // устанавливаю CAL в 1
while (ADC1->CR2 & ADC_CR2_CAL); // жду сброса CAL в 0

Программа зависает на строчки while (ADC1->CR2 & ADC_CR2_CAL); CAL в нуль не переходит.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Alex_Golubev
сообщение May 9 2018, 03:27
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 280
Регистрация: 18-03-17
Пользователь №: 95 877



Тогда не ясно почему в доки сказано:
Note: It is recommended to perform a calibration after each power-up.
Before starting a calibration the ADC must have been in power-off state (ADON bit = ‘0’) for
at least two ADC clock cycles.

И да при ADON = 1 все работает.
Go to the top of the page
 
+Quote Post
Timmy
сообщение May 10 2018, 06:21
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 835
Регистрация: 9-08-08
Из: Санкт-Петербург
Пользователь №: 39 515



Цитата(Alex_Golubev @ May 9 2018, 06:27) *
Тогда не ясно почему в доки сказано:
Note: It is recommended to perform a calibration after each power-up.
Before starting a calibration the ADC must have been in power-off state (ADON bit = ‘0’) for
at least two ADC clock cycles.

И да при ADON = 1 все работает.

В доке всё чётко сказано. have been - это форма глагола Present Perfect, которая обозначает действие, полностью завершившееся к настоящему времени, то есть во время калибровки АЦП уже не должен быть в power-off.
Go to the top of the page
 
+Quote Post
ViKo
сообщение May 10 2018, 07:15
Сообщение #4


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(Timmy @ May 10 2018, 09:21) *
В доке всё чётко сказано. have been - это форма глагола Present Perfect, которая обозначает действие, полностью завершившееся к настоящему времени, то есть во время калибровки АЦП уже не должен быть в power-off.

Сказано, что АЦП должен пробыть в выключенном состоянии, как минимум, два такта. Но не сказано, что уже надо включить. Хотя, похоже, надо.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 13:05
Рейтинг@Mail.ru


Страница сгенерированна за 0.01425 секунд с 7
ELECTRONIX ©2004-2016