www.kn34pc.com
https://kn34pc.com/forums/

ADC в STM32
https://kn34pc.com/forums/viewtopic.php?f=79&t=1160
Страница 1 от 2

Автор:  LZ2WSG [ 27 Сеп 2023, 07:54 ]
Заглавие:  ADC в STM32

12 bit ADC_IN3, стойността "прескача" единиците, че често и някоя десетица (0..4095).
С други МК това не съм отчитал. Нещо да пропускам? Така ли ще е?

по-долу: STM32 vs PIC16 / ADC 12 bit

Прикачени файлове:
stm32f030.jpg
stm32f030.jpg [ 119.68 KiB | Прегледано 13253 пъти ]
pic16f18426.jpg
pic16f18426.jpg [ 127.04 KiB | Прегледано 13253 пъти ]

Автор:  lz5zi [ 27 Сеп 2023, 10:33 ]
Заглавие:  Re: ADC в STM32

LZ2WSG написа:
...Така ли ще е?....


Общо взето така.
Иска филтрирано захранване.
Лекувам го със софтуерно филтриране.

Автор:  LZ2WSG [ 27 Сеп 2023, 11:50 ]
Заглавие:  Re: ADC в STM32

Условията са едни и същи. Локална филтрация на модулчето, близко до чипа, линеен стабилизатор, трансформаторно захранване. Спрямо AVR (Atmega), PIC (16, 18, 24) при STM32 "плува". Усредняване и други "хитрини" на този етап не разглеждам.

Автор:  lz5zi [ 27 Сеп 2023, 12:22 ]
Заглавие:  Re: ADC в STM32

12-bits.
avr 10 bits

Автор:  LZ2WSG [ 27 Сеп 2023, 13:08 ]
Заглавие:  Re: ADC в STM32

Не. ATtiny1624/1626/1627:
Цитат:
One 12-bit differential 375 ksps Analog-to-Digital Converter (ADC) with Programmable Gain Amplifier (PGA) and up to 15 input channels.

---
Кондензатор 1..100 nF към входа не променя нищо.
---
Наблюдавам показанията 30 мин. "Подскачането е често 8 единици (3 LSB?). 12 бита са се превърнали в 9 :smt048 .
Понякога, рядко: 20 единици "нагоре".

Автор:  lz5zi [ 27 Сеп 2023, 15:58 ]
Заглавие:  Re: ADC в STM32

Колко ти е Sampling time ?
Пробвай да го вдигнеш!

https://www.st.com/content/ccc/resource ... 211314.pdf

Автор:  LZ2WSG [ 27 Сеп 2023, 16:08 ]
Заглавие:  Re: ADC в STM32

Малко помогна, в началото с него започнах. Но малко.
от 1.5 на 239.5 cycles
---
Преместването на контрола от променливата от gebug в печат върху LCD0802 по I2c с PCF8574 не промени нищо.
Очакван резултат е, но пробвах за всеки случай.

Автор:  LZ2WSG [ 27 Сеп 2023, 20:45 ]
Заглавие:  Re: ADC в STM32

Успях да стартирам USART. Тестови данни на ADC 12 bit в STM32F030F4P6, ADC_SAMPLETIME_55CYCLES_5, през 1 сек, има ADC калибровка, 1k/1k делител към 3,3V, скорост 38400, добавих времеви отчет:
Код за потвърждение:
20:39:08.032 -> 2035
20:39:09.019 -> 2056
20:39:10.039 -> 2035
20:39:11.025 -> 2048
20:39:12.044 -> 2062
20:39:13.027 -> 2055
20:39:14.047 -> 2055
20:39:15.033 -> 2059
20:39:16.053 -> 2063
20:39:17.038 -> 2062
20:39:18.058 -> 2048
20:39:19.043 -> 2063
20:39:20.062 -> 2060
...

---
PIC16F18426, 12 bit ADC, делител 1k/1k, на 3.3V.
PIC на 16 или 32 MHz, 20 см свързващи проводиници, на бредборд, без един филтриращ кондензатор: погрешността е от друг порядък: +/- 1 единица, маx 2.
Код за потвърждение:
21:04:15.284 -> VAL = 2115
21:04:16.284 -> VAL = 2115
21:04:17.284 -> VAL = 2115
21:04:18.284 -> VAL = 2116
21:04:19.284 -> VAL = 2116
21:04:20.284 -> VAL = 2116
21:04:21.284 -> VAL = 2116
21:04:22.285 -> VAL = 2116
21:04:23.285 -> VAL = 2116
21:04:24.285 -> VAL = 2116
21:04:25.285 -> VAL = 2116
...

Автор:  LZ2WSG [ 28 Сеп 2023, 09:35 ]
Заглавие:  Re: ADC в STM32

Повторих теста и с ADC 12 bit в модула BluePill с STM32F103C8T6. По-добре е: 8..10 единици, (и по pdf е по-добре от F030), но също е много.
С три стабилизатора, два - близко до модула: 9V линеен стабилизатор, 5V (7805) -> 3,3V (XC6206-P322MR).
Код за потвърждение:
09:24:49.536 -> 1984
09:24:50.521 -> 1987
09:24:51.521 -> 1988
09:24:52.536 -> 1994
09:24:53.536 -> 1994
09:24:54.521 -> 1990
09:24:55.552 -> 1991
09:24:56.536 -> 1991
09:24:57.536 -> 1988
09:24:58.521 -> 1986
...

Автор:  lz5zi [ 28 Сеп 2023, 11:17 ]
Заглавие:  Re: ADC в STM32

От батерия?

Автор:  LZ2WSG [ 28 Сеп 2023, 11:50 ]
Заглавие:  Re: ADC в STM32

На две полуизхабени CR2032: 1986..1993.
GND, RX, TX в модул CH340G към PC USB.

Автор:  LZ2WSG [ 28 Сеп 2023, 14:14 ]
Заглавие:  Re: ADC в STM32

Тест на ADC 12 bit в модул с STM2F401CCU6:
Код за потвърждение:
14:04:35.146 -> 2060
14:04:36.130 -> 2063
14:04:37.161 -> 2064
14:04:38.146 -> 2059
14:04:39.146 -> 2062
14:04:40.161 -> 2058
14:04:41.161 -> 2061
14:04:42.146 -> 2061
14:04:43.177 -> 2067
...

Правя изводи за себе си: ефектът/дефектът в ADC в STM32 е общ за всички типове :| .
След време най-много да тествам ADC в безусловно оригинален микроконтролер, друго не се сещам.

Автор:  LZ2WSG [ 28 Сеп 2023, 17:12 ]
Заглавие:  Re: ADC в STM32

Бързо търсене в нета: много подобни питания има :rolleyes. Успокоих се: не е сaмо при мен проблема на ADC в STM32 :biggrin.
Цитат:
- With an Atmega with 10 bits, I have no problem to get absolutely stable values. With the Atmaga wobbles maximum 1 digit. With the STM32 it is absolutely impossible for me to get stable 10Bit or 12Bit!
- Averaging helps, some ap notes attached.
- No, averaging isn't the way... Again. With AVR a got stable WORD +-1 Digit. With STM32 it doesn't.

Автор:  LZ2WSG [ 30 Сеп 2023, 11:06 ]
Заглавие:  Re: ADC в STM32

STM32F103C8T6, 10 bit ADC по DMA, syn mode /4, 239.5 cycles, без усреднение, с много конденсатори по изводите, през 2 линейни стабилизатора. Снимка на екрана по-долу.
Прикачени файлове:
10b_030f4p6.jpg
10b_030f4p6.jpg [ 91.29 KiB | Прегледано 13207 пъти ]

---
Пробвах да усредня 16 измервания. 3 единицы. 030F ли е зле, моят чип ли е зле? ... :/
---
За сравнение включих Arduino Uno през PC USB 5V (ATmega328, АЦП 10 bit) към същия резисторен делител на 3,3V, измерване всяка секунда.
Коментарът е излишен.
Прикачени файлове:
arduino_uno_adc_10_bit.jpg
arduino_uno_adc_10_bit.jpg [ 31.38 KiB | Прегледано 13207 пъти ]

Автор:  LZ2WSG [ 01 Окт 2023, 09:37 ]
Заглавие:  Re: ADC в STM32

Демоны в АЦП STM32
https://we.easyelectronics.ru/STM32/dem ... stm32.html

Выбросы на ножках АЦП в STM32
https://we.easyelectronics.ru/GYUR22/vy ... stm32.html

Can I avoid buffering an analog sensor to ADC
https://electronics.stackexchange.com/q ... ut-impedan

Намаляване на ефекта/дефекта има, премахване няма :|.

Страница 1 от 2 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/