gr9 0 8 ноября, 2008 Опубликовано 8 ноября, 2008 · Жалоба Наверное что-то не заметил, но как быть в такой ситуации. Например, запущена группа каналов в циклическом режиме с прерыванием от аналогового вотчдога. Если такое прерывание происходит, то как выяснить от какого именно входа АЦП он пришел? Должен же быть регистр, где хранится номер текущего или последнего канала? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
koyodza 0 11 ноября, 2008 Опубликовано 11 ноября, 2008 · Жалоба Наверное что-то не заметил, но как быть в такой ситуации. Например, запущена группа каналов в циклическом режиме с прерыванием от аналогового вотчдога. Если такое прерывание происходит, то как выяснить от какого именно входа АЦП он пришел? Должен же быть регистр, где хранится номер текущего или последнего канала? Похоже, что никак. Прерывание "окончание преобразования" вызывается когда заканчивается преобразование по всем каналам (а зачем чаще?), а вот аналоговый ватчдог один на все каналы, и наиболее логично может применяться для какого-то одного канала. Хотя, имхо, это может иметь смысл только при высоких скоростях преобразования, иначе удобнее это сделать программно. Отдельного же регистра, где можно узнать номер текущего канала, я не нашел. Да и с учетом времени входа в прерывание вероятность переключиться на "следующий" канал за это время довольно высока, т.е. этот способ не гарантировал бы правильность определения номера канала. Сам я стм32 еще не применял (работал с ихним стр911, впечатления положительные), но уже заложил в один проект и примеряюсь к другому. Имеется встречный вопрос: насколько хорош АЦП у стм32? Интересуют шумовые характеристики в первую очередь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gr9 0 13 ноября, 2008 Опубликовано 13 ноября, 2008 (изменено) · Жалоба Спасибо. Значит я не ошибся. Насчет АЦП могу высказать только личные впечатления (специалисты, возможно, поправят и дополнят). Сравнивая с AVR, очень важным оказалось правильная разводка, как можно больше конденсаторов на своих местах и фильтрация входных сигналов, т.к. шумы цифровой части, особенно на высоких частотах, легко ловятся АЦП. В принципе, удалось добиться, что шумы не превышали +-2-3 уровня квантования. Правда рядом работала мощная силовая схема (в идеальных условиях можно и +-1LSB получить)). В общем если расчитывать, что АЦП берется с небольшим запасом, то вполне приемлемо. Правда, если важно быстродействие, то ядро для такого потока данных все-таки слабовато (в AVR в таких случаях можно было уйти в ассемблер)). Изменено 13 ноября, 2008 пользователем gregory812 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Гость MALLOY2 13 ноября, 2008 Опубликовано 13 ноября, 2008 · Жалоба AVR в таких случаях можно было уйти в ассемблер А что мешает в стм32 уйти в асемблер ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gr9 0 14 ноября, 2008 Опубликовано 14 ноября, 2008 (изменено) · Жалоба А что мешает в стм32 уйти в асемблер ? Во-первых, еще не освоенность этой области, а во-вторых, как мне кажется, более запутанный код ассемблера АRM в купе с конвеерами и т.п. может привести к непредсказуемым ошибкам. Хотя здесь все зависит от опыта. Да и была надежда, что на такой мощи можно будет забыть про низкоуровневое программирование )). Изменено 14 ноября, 2008 пользователем gregory812 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
koyodza 0 14 ноября, 2008 Опубликовано 14 ноября, 2008 · Жалоба Всё же интересует чуть более подробная информация об АЦП, если можно. Какую частоту выборки использовали, что было источником сигнала, что опорой, и какой шум был получен. Сравнение с AVR только запутало ситуацию: там АЦП 10-разрядный, здесь 12-разрядный. Так шум, указанный Вами, исходя из 10 или 12 разрядов? И "+-2-3 уровня квантования" - это значит 4-6 ед. от пика до пика? А каков характер этого шума? И спектр случайно не анализировали? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
gr9 0 22 ноября, 2008 Опубликовано 22 ноября, 2008 (изменено) · Жалоба Всё же интересует чуть более подробная информация об АЦП, если можно. Какую частоту выборки использовали, что было источником сигнала, что опорой, и какой шум был получен. Сравнение с AVR только запутало ситуацию: там АЦП 10-разрядный, здесь 12-разрядный. Так шум, указанный Вами, исходя из 10 или 12 разрядов? И "+-2-3 уровня квантования" - это значит 4-6 ед. от пика до пика? А каков характер этого шума? И спектр случайно не анализировали? Для простой проверки АЦП (скорость 1МГц) подавал на один из входов постоянное напряжение взятое с 10кОм потенциометра от 3.3В полученное со стабилизатора IRU1117-3.3. Это же напряжение использовал как опорное. От отсчета к отсчету увидел перепады до 2ед., иногда 3 ед. Форма шума характеризовалась именно тем, что каждое следущее преобразование давало полный размах отклонения. Замечания по поводу AVR относились не к сравнению характеристик в лоб как таковых, а к необходимости приложить больше усилий к качеству разводки и схемотехники (например, у меня в 10 разрядном AVR отклонения были ок. 1ед. и то, если попасть на границу между уровнями квантования). На другом форуме сказали, что АЦП "стоит намертво", поэтому рекомендую испытать самому и решить для себя подходит или нет, а заодно высказать свои впечатления. Изменено 22 ноября, 2008 пользователем gregory812 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MiklPolikov 0 8 апреля, 2012 Опубликовано 8 апреля, 2012 · Жалоба Ни как не могу понять, каким образом выбираются опорные напряжения для ADC ? У меня STM32L151 в 48 пиновом корпуса, соответственно ног Vref+ Vref- нет . Но куда они подключенны внутри и как ими управлять ? Прочитал про ADC в документации , но том ни слова про то что бы опортное напряжение выбиралось в каком-то регистре. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 8 апреля, 2012 Опубликовано 8 апреля, 2012 · Жалоба из CD00277537.pdf VREF+ can be internally connected to VDDA and VREF- can be internally connected to VSSA, depending on the package. Refer to Section 4: Pin descriptions for further details. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться