Отговори на тема  [ 56 мнения ]  Отиди на страница Предишна  1, 2, 3, 4
Проблем с АЦП на STM32 Cortex M3 
Автор Съобщение
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Съб Май 27, 2006 12:37 pm
Мнения: 647
Местоположение: с. Згалево
Мнение Re: Проблем с АЦП на STM32 Cortex M3
То не е въпроса да разрешавам периферия която не ползвам, а че остават неизползвани пинове на периферия която ползвам...
Изобщо - доста трудно става за проследяване. Едни таблици правя тука... Едни листа съм разхвърлял...

Не го хващам все още. Дано да излезне това - ако не - остава захранването!

Иначе ползвам:
GPIO A, B C, D
AFIO,
SPI2 (I2S)
DMA1, 2
TIM1, 2, 3, 4, 6, 7
USART 1, 2
ADC 1, 2
PWR,
BKP.
SDIO


Чет Авг 18, 2011 5:17 pm
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Яну 26, 2005 2:01 pm
Мнения: 1952
Местоположение: Варна
Мнение Re: Проблем с АЦП на STM32 Cortex M3
Проблема е че в твоя частен случай ползваш доста периферия и ремапването ще бъде свързано с промяна на проекта и може да се наложи и кълцане по платката. За това най-добре да си създадеш един опростен проект в който бъга все още го има. Оставяш минимума периферия, който ти е необходим за да го пресъздадеш и наблюдаваш(бъга). Махаш компоненти от платката и ако се наложи кълцаш писти.
След това с директно писане по AFIO_MAPR, някъде в началото където инициализираш перифериите, ремапваш и проверяваш имаш ли още бъгави отчети или не.
Иначе така по документация да го хванеш - забрави.
То и както добре и прегледно е описано в документацията... На мен ми уби цял ден в чесане по врата, четене и проби заради това ремапване, докато подкарам един прост SPI. При това не ползвах никаква друга периферия. Мина време и не помня точно но таймерите или UART, които споделят краката с SPI са били undefined и от там става тая каша с едновременното ползване на крака от няколко периферии. Разликата между работещ и неработещ код беше само едно писане по AFIO_MAPR...

_________________
Най-опасният враг на истината и свободата е мнозинството.


Чет Авг 18, 2011 11:11 pm
Профил
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Съб Май 27, 2006 12:37 pm
Мнения: 647
Местоположение: с. Згалево
Мнение Re: Проблем с АЦП на STM32 Cortex M3
Днес направих каквито се сетих тестове с ремапването. Няма да е от него. То в същност се оказа, че изобщо не ползвам никакво ремапване - демек всичко си е по дефолт, с изключение на забраняването на SWхх пиновете за дебъгване, които са включени по подразбиране.

На захранване отива работата...

Още наблюдения:
АЦП-то си мери вградения вътрешен референсен източник - който уж трябва да е стабилен.
Направих да ми помни и показва най-ниския и най-високия резултат.

Пускам и пиша...
После почвам да спирам по някоя периферия - и о чудо...
Стойностите се приближават - и то някак в зависимост от големината на спряната периферия. Под големина разбирам тамер /малко/, I2S голямо. Примерно с колкото ми намалява проблема при изключване на I2S, горе долу с толкова намалява и с изключването на няколко таймера заедно. Ако спра и таймерите и I2S още по добре. Нямаше как да спра SDIO. Сигурен съм че той най-много ток дърпа...

Бе захранване е - няма какво друго да е...

Иначе моето захранване към проца е уж "редовно" до кокото е възможно. Имам си индуктивности - тантали и там каквото си трябва. Освен това преди време помня че пробвах и с линеен стабилизатор, че и с батерийно захранване чак. Явно нещо вътрешния стъбилизатор на проца се дъни /както вече беше нарочен/ и я масичка мърда я нещо друго... Трябвало е по-дебели жици да му сложат вътре. :D


Пет Авг 19, 2011 11:02 am
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Сеп 26, 2004 4:11 pm
Мнения: 3750
Местоположение: София
Мнение Re: Проблем с АЦП на STM32 Cortex M3
Ако чипът сам си се смущава, ефектът от дроселите е отрицателен. По-добре наслагай повечко кондензатори, най-добре X7R, колкото може по-близо до захранващите пинове. Масата я вземай директно от ground plane, ако имаш такъв. Иначе и там ще трябва да гониш къси пътечки. Слагай по 100н до 470н, кондензаторите над 1 микро имат паразитни индуктивности, които за десетките мегахерци се усещат.


Пет Авг 19, 2011 11:49 am
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Яну 26, 2005 2:01 pm
Мнения: 1952
Местоположение: Варна
Мнение Re: Проблем с АЦП на STM32 Cortex M3
juzisound написа:
...То в същност се оказа, че изобщо не ползвам никакво ремапване - демек всичко си е по дефолт, ...

Е точно за този случай говорим де. Когато всичко си е по дефоулт няколко периферии споделят един и същ пин. За да не се разбозява работата трябва едната периферия да се ремапне на друго място.
Но каква е връзката с бъгавите отчети на АЦП-то можем само да предполагаме. Все пак ако си опитал всичко друго ти остават и най-невъзможните на пръв и втори поглед предположения.

_________________
Най-опасният враг на истината и свободата е мнозинството.


Пет Авг 19, 2011 1:06 pm
Профил
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Съб Май 27, 2006 12:37 pm
Мнения: 647
Местоположение: с. Згалево
Мнение Re: Проблем с АЦП на STM32 Cortex M3
Zdrav написа:
juzisound написа:
...То в същност се оказа, че изобщо не ползвам никакво ремапване - демек всичко си е по дефолт, ...

Е точно за този случай говорим де. Когато всичко си е по дефоулт няколко периферии споделят един и същ пин. За да не се разбозява работата трябва едната периферия да се ремапне на друго място.


Е точно това правих цяла сутрин. Една по една ремапвах всички. Няма промяна!


Пет Авг 19, 2011 1:14 pm
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Яну 26, 2005 2:01 pm
Мнения: 1952
Местоположение: Варна
Мнение Re: Проблем с АЦП на STM32 Cortex M3
Тези дни пак ударих греда в тоя STM32 и се сетих за тази тема.
Писането по AFIO_MAPR дава резултат само ако е включен клока за този регистър. Включва се от бит 0 в регистър RCC->APB2ENR. Този бит по дефоулт е свален след RESET.
Ако няма клок за AFIO_MAPR, писането по него минава, но без ефект - няма ремапване.

_________________
Най-опасният враг на истината и свободата е мнозинството.


Сря Май 16, 2012 9:33 am
Профил
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Съб Май 27, 2006 12:37 pm
Мнения: 647
Местоположение: с. Згалево
Мнение Re: Проблем с АЦП на STM32 Cortex M3
Да да. Знам го туй за клока. Пускам клок когато ремапвам. Не е от това явно...
Нямам време да стигна до F2 и F4, да видя там как е...


Сря Май 16, 2012 11:20 am
Профил WWW
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Съб Май 27, 2006 12:37 pm
Мнения: 647
Местоположение: с. Згалево
Мнение Re: Проблем с АЦП на STM32 Cortex M3
Малко закъсняло признание - и това е за F4...
За F1 не съм търсил

Документа е: STM32F40x and STM32F41x Errata sheet

2.1.15
Internal noise impacting the ADC accuracy
Description
An internal noise generated on VDD supplies and propagated internally may impact the ADC
accuracy.
This noise is always active whatever the power mode of the MCU (RUN or Sleep).
Workarounds
Two steps could be followed to adapt the accuracy level to the application requirements:
1. Configure the Flash ART as Prefetch OFF and (Data + Instruction) cache ON.
2. Use averaging and filtering algorithms on ADC output codes.
For more workaround details of this limitation, refer to AN4073.


Вто Юни 18, 2013 7:33 pm
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Юни 10, 2007 2:22 pm
Мнения: 6492
Местоположение: София
Мнение Re: Проблем с АЦП на STM32 Cortex M3
Е добре сме, няма що - две години им отнема да признаят нещо, което е очевидно
за човек никога не ползвал и дори не чел чипа им:

viewtopic.php?f=3&t=7587&start=21

viewtopic.php?f=3&t=7587&start=35

_________________
-------------------
www.tgi-sci.com
-------------------
http://www.flickr.com/photos/didi_tgi/


Вто Юни 18, 2013 7:51 pm
Профил WWW
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Чет Яну 04, 2007 12:43 am
Мнения: 178
Мнение Re: Проблем с АЦП на STM32 Cortex M3
При F4 (а и при F2) наистина има проблем с шумовете на АЦП-то. И си го признават честно в ератата. Явно заради повишаването на бързодействието са жертвали стабилността.
При F1 такъв проблем няма. Не съм правил специални измервания, но по груби впечатления там "мърдането" е единици на младшия разряд.


Вто Юни 18, 2013 9:33 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 56 мнения ]  Отиди на страница Предишна  1, 2, 3, 4

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 1 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни