2024-05-30 08:40 AM
We are using STM32L452CEU6 with 48QFPN package and trying to enable internal voltage buffer (VREFBUF), by using HAL_SYSCFG_EnableVREFBUF(), always timeout happening in this function. Is it because of no internal volatage regulator available on the controller?
Asking because the data sheet saying "The VREF+ pin is double-bonded with VDDA on some packages. In these packages the internal voltage reference buffer is not available". Below showing the schematic and VDDA and VREF+ is on same pin (pin 9).
If the VREFBUF is not available in this package, shall we connect the pin to VDD, to configure external referance voltage?
2024-05-30 08:51 AM
The following sentence appears in section 3.17 Voltage reference buffer (VREFBUF) in the datasheet.
The VREF+ pin is double-bonded with VDDA on some packages. In these packages the internal voltage reference buffer is not available.
VREFBUF is not available in your MCU. don't use it.
2024-05-30 09:09 AM - edited 2024-05-30 09:09 AM
https://community.st.com/t5/stm32-mcus/how-to-configure-vrefbuf-on-my-stm32/ta-p/49594
Don't use it if the pins are bonded together, you'll short the part internally.
2024-05-30 09:42 AM
And connect VDDA/VREF+ to VDD, which should be done via decoupling, e.g. an LC filter or a ferrite bead, if you use analog functions (ADC etc).
However, if you then want to measure with the ADC, you can only measure ratiometrically. To do this, you must always carry out at least one additional measurement on a reference (internal or external), the result of which you can use to convert the actual measured value of the ADC channel you are interested in. Sounds complicated, but it's just a ratio calculation.