2025-03-10 6:25 AM
I am interfacing many 5.2VDC signals with an STM32F103VET6 MCU, using PB0,PB11,PD9,PD10,PD11,PD12,PD14 as input. According to the datasheet these pins are 5V Tolerant. In the past, regardless of a pin's "tolerance" to 5V I have always used a level shifter to change this 5V signal to a 3.3V signal before it gets to the MCU; Just to be a safe voltage. This application I am trying to limit the number of parts on the PCB for small size. Testing on the designed board seems to work and the MCU seems to tolerate this well, but for long term use in the field is it better to run this signal through a level shifter or does it not matter since the pin is "5V Tolerant"? The STM32F103VET6 MCU manual shows "5.2 Absolute maximum ratings Table 7. Voltage characteristics ",and the VIN max can reach 7.3V,because VDD+4=3.3+4=7.3V.
2025-03-10 6:44 AM - edited 2025-03-10 6:44 AM
> is it better to run this signal through a level shifter or does it not matter since the pin is "5V Tolerant"?
If you stay within the recommended operating conditions of the chip, no additional hardware is needed. The "absolute maximum ratings" are NOT the recommended operation conditions.
The max voltage on a 5V tolerant pin is 5.5 V
> using PB0
Note that PB0 is not 5V tolerant. I didn't check them all.