cancel
Showing results for 
Search instead for 
Did you mean: 

5V Tolerant GPIO pins (STM32F030K6T6)

I am interfacing a 5V PWM signal with an STM32F030K6T6 MCU using PB0. According to the datasheet this pin is 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 safe". This application I am trying to limit the number of parts on the PCB for both size and cost reasons. Testing on a Nucleo 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"?

1 ACCEPTED SOLUTION

Accepted Solutions
Peter BENSCH
ST Employee

As long as you operate the GPIO as a digital input and switch off its pull-up and pull-down, it can process 5V signals.

Does it answer your question?

Regards

/Peter

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

View solution in original post

10 REPLIES 10
Peter BENSCH
ST Employee

As long as you operate the GPIO as a digital input and switch off its pull-up and pull-down, it can process 5V signals.

Does it answer your question?

Regards

/Peter

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
TDK
Guru

The chip needs to be powered in order to be 5V tolerant, but if you can guarantee the chip won't see 5V unless it's powered, there are no issues.

If you feel a post has answered your question, please click "Accept as Solution".

Yes, this answers my question. I am not using any internal pull up or pull down resistor on this pin. It is only being setup as a GPIO Input in external interrupt mode:

0693W00000JQ4AmQAL.png0693W00000JQ4AhQAL.png

the 5V signal won't damage the MCU over time?

No.

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

As long as the device is powered while 5 V applies!

I am totally confused. According to DS5792 Rev 13, page 89, note 1:

FT = Five-volt tolerant. In order to sustain a voltage higher than VDD+0.3 the internal pull-up/pull-down resistors must be disabled.

This is opposite to what you said.

Sorry, you were right by "switch off", which means disable.

Hello @Peter BENSCH & @TDK ,

It may seem redundant - but to confirm can we interface a 5V UART Input signal to the UART Rx pin which is 5V tolerant ie FT? As UART is Push-Pull assuming the Pull-up & Pull-down are disabled by default & the GPIO is configured as input only. Any other things to be aware of? The maximum speed shall be upto 4Mbps.