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

 
 
> STM32: запуск АЦП от TIM1
koyodza
сообщение Jul 24 2011, 13:36
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 213
Регистрация: 28-02-07
Из: Киев
Пользователь №: 25 744



У кого-нибудь получилось запустить преобразование АЦП от TIM1? Хоть по какому-нибудь каналу. По TIM2..TIM4 работает (канал только нужно выбирать, не от всех запуск возможен).
Делаю то же самое от TIM1 - молчит.

И ведь не один проект уже на нём реализовал, а вот с TIM1 постоянно какие-то засады: то OCxN оказывается невозможно отключить, когда он попадает на другую периферию, то вот с запуском АЦП... Все таймера 2..4 сейчас заняты, перебросить запуск АЦП некуда
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Юрий_СВ
сообщение Feb 7 2012, 19:38
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 73
Регистрация: 4-05-08
Пользователь №: 37 272



У меня работает. (Надеюсь, таймер и канал сравнения настроены)
CODE
void delay_y()
{
volatile u32_t i, ty;
for(i=0; i<10000; i++) ty=GPIOA_ODR;
}

void init_adc()
{

// выключаем АЦП и ждём не менее 2-х периодов синхронизации АЦП
ADC1_CR1=0x00000000;
ADC1_CR2=0x00000000;
delay_y();
// включаем (1 мкс) и ждём время установления (1 мкс)
ADC1_CR2=0x00000001;
delay_y();
// выполняем калибровку
ADC1_CR2=0x00000005;
while(ADC1_CR2&0x00000004); // ждём окончания (5,9 мкс)

// настраиваем

// время захвата значения
ADC1_SMPR1=0x00000000;
ADC1_SMPR2=0x0002d000; // используется только 5-й и 6-й каналы
// SMPx[2:0]=101

// последовательность обычных каналов
ADC1_SQR1=0x00000000;
// L - длина последовательность
// SQx - номер канала
ADC1_SQR2=0x00000000;
ADC1_SQR3=0x00000006; // используется только 5-й и 6-й каналы


ADC1_CR1=0x00000020; //
// AWDEN=0; // отслеживание диапазона обычных каналов - не требуется
// JAWDEN=0; // отслеживание диапазона вклинивающихся каналов - не требуется
// DISCNUM=0; // кол-во каналов в прерывистом режиме
// JDISCEN=0; // прерывистый режим для вклинивающихся каналов - не требуется
// DISCEN=; // ??? прерывистый режим для обычных каналов -
// JAUTO=0; // автопреобразование вклинивающейся группы - не требуется
// AWDSGL=0; // отслеживание диапазона в режиме .. просмотра (scan) - не требуется
// SCAN=0; // режим просмотра - не требуется
// JEOCIE=0; // прерывание по вклинивающимся каналам - не требуется
// AWDIE=0; // прерывание по отслеживанию диапазона - не требуется
// EOCIE=1; // прерывание по обычным каналам - разрешено
// AWDCH=0; // номер канала для отслеживания диапазона


ADC1_CR2=0x00100001; //
// TSVREFE=0; // каналы датчика температуры и внутреннего опорного - не требуется
// SWSTART=0; // программный запуск преобразования на обычных каналах
// JSWSTART=0; // программный запуск преобразования на вклинивающихся каналах
// EXTTRIG=1 ; // запуск преобразования обычного канала по внешнему сигналу - разрешен
// EXTSEL=000; // источник внешнего запускающего сигнала для обычного канала - таймер 1, канал 1
// JEXTTRIG=0; // запуск преобразования вклиниваюегося канала по внешнему сигналу - не требуется
// JEXTSEL=0; // источник внешнего запускающего сигнала для вклинивающихся каналов - не требуется
// ALIGN=0; // выравнивание результата - вправо
// RSTCAL=0; // сброс калибровки
// CAL=0; // запуск калибровки
// CONT=0; // непрерывный режим - не требуется
// ADON=1; // включение АЦП / запуск преобразования
// запуск преобразования происходит если выполняется оба условия:
// 1) до этого АЦП уже был включен ADON=1;
// 2) кроме бита ADON другие биты не меняются
}


Сообщение отредактировал IgorKossak - Feb 7 2012, 20:10
Причина редактирования: [codebox]
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Feb 8 2012, 03:16
Сообщение #3


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(Юрий_СВ @ Feb 8 2012, 01:38) *
У меня работает. (Надеюсь, таймер и канал сравнения настроены)
Код
// последовательность обычных каналов
ADC1_SQR1=0x00000000;

Я правильно понимаю, что у вас длина последовательности равна нулю? Почему так?


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
Юрий_СВ
сообщение Feb 8 2012, 09:08
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 73
Регистрация: 4-05-08
Пользователь №: 37 272



Цитата(AHTOXA @ Feb 8 2012, 06:16) *
Я правильно понимаю, что у вас длина последовательности равна нулю? Почему так?

Нет вы понимаете неправильно. Она равна 1.
Цитата
Bits 23:20 L[3:0]: Regular channel sequence length
These bits are written by software to define the total number of conversions in the regular
channel conversion sequence.
0000: 1 conversion


Сообщение отредактировал Юрий_СВ - Feb 8 2012, 09:09
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- koyodza   STM32: запуск АЦП от TIM1   Jul 24 2011, 13:36
- - AHTOXA   TIM_BDTR_MOE?   Jul 25 2011, 09:12
|- - koyodza   Цитата(AHTOXA @ Jul 25 2011, 12:12) TIM_B...   Jul 28 2011, 15:25
- - Huston007   Цитата(koyodza @ Jul 24 2011, 20:36) У ко...   Aug 18 2011, 13:03
|- - Михаил Черепанов   Цитата(Huston007 @ Aug 18 2011, 19:03) По...   Feb 7 2012, 03:19
- - sevastianovd   koyodza, попробуйте пример из стандартной библиоте...   Feb 7 2012, 08:51
|- - AHTOXA   Цитата(Юрий_СВ @ Feb 8 2012, 15:08) Нет в...   Feb 8 2012, 11:05
|- - Юрий_СВ   Цитата(AHTOXA @ Feb 8 2012, 14:05) Я не о...   Feb 8 2012, 11:33
|- - AHTOXA   Дык, надо ж сразу обо всём этом писать. А то получ...   Feb 8 2012, 11:41
|- - Юрий_СВ   Цитата(AHTOXA @ Feb 8 2012, 14:41) Дык, н...   Feb 8 2012, 12:10
|- - AHTOXA   Цитата(Юрий_СВ @ Feb 8 2012, 18:10) Надею...   Feb 8 2012, 12:53
|- - Юрий_СВ   Цитата(AHTOXA @ Feb 8 2012, 15:53) вопрос...   Feb 8 2012, 14:37
- - koyodza   Цитата(Юрий_СВ @ Feb 7 2012, 21:38) У мен...   Feb 8 2012, 20:41
- - Юрий_СВ   Цитата(koyodza @ Feb 8 2012, 23:41) Ну и ...   Feb 9 2012, 12:13
- - koyodza   Цитата(Юрий_СВ @ Feb 9 2012, 14:13) // EX...   Feb 9 2012, 15:28
- - MiklPolikov   Пытаюсь запустить АЦП от события TIM6_TRGO Не п...   Apr 13 2012, 22:00
- - scifi   Цитата(MiklPolikov @ Apr 14 2012, 02:00) ...   Apr 14 2012, 08:24
- - MiklPolikov   Цитата(scifi @ Apr 14 2012, 11:24) Тут ну...   Apr 14 2012, 10:53
- - MiklPolikov   Разобрался. Оказалось что АЦП не хочет запускатся...   Apr 14 2012, 21:20
- - koyodza   Цитата(MiklPolikov @ Apr 14 2012, 23:20) ...   Apr 15 2012, 13:29


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 02:42
Рейтинг@Mail.ru


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