Цитата(1245 @ Jan 25 2013, 10:18)

Стоит задача померить переменный ток.
По коду похоже, что даже RMS. Вот и начните с измерения длительности периода.
(если (по точности) Вам достаточно считать её константой, можете не измерять)
Потом разбейте период на достаточное (опять же по точности) число интервалов, настройте соответственно таймер,
по прерыванию таймера запускайте преобразование АЦП,
по прерыванию окончания преобразования 'rms1+=(ADC1->DR-3070)*(ADC1->DR-3070);' (если 3070 не название полироля для ручки грабель, а постоянное смещение на выходе датчика, то это значение нужно измерять/считать),
по счётчику преобразований == числу интервалов сохраняйте sqrt(rms1/(число интервалов)) в (кольцевой) буфер,
в свободное от прерываний время занимайтесь удобной формой фильтрации этого буфера.
Цитата
можно ли как-то ускорить процесс измерения?
Меньше одного (полу)периода не получится.
Можно завести кольцевой буфер на число интервалов, складывать в него (ADC1->DR-3070)*(ADC1->DR-3070) и считать RMS по каждому новому измерению.