AnsweredAssumed Answered

Problem converting 3.3 Volt to 5 volt from STM32F4Discovery Board

Question asked by singh.g.13 on Oct 29, 2013
Latest reply on Oct 30, 2013 by singh.g.13
Hello everyone !! 
i am having some problem interfacing my 3.3 volt gpio pins to a 5 volt device. i am basically a software developer but trying to understand the cause of the problem at electronic level.
here are the details, if anyone can help i will really appreciate it --

Purpose of my program : To generate a PWM on the GPIO with maximum frequency of 200 KiloHertz .

My Setup : I have a STM32F4Discovery board, being powered by the USB from my PC. Whose GPIO pin ( specifically PE15) is connected to the external 5volt device.
The external device is a Stepper Motor Drive i am using for motor control.

Pin configuration : output type = Push Pull
                       speed = 50 Mhz       
                              GPIO_PuPd = GPIO_PuPd_NOPULL

Observations : I am getting around 4.5 Volt from the USB Port on my PC(should be 5 though..)
The board is converting this down to 2.7 - 2.8 volt (which should be 3.3 volt !!) , and providing it to the STM32F407VGT6  microcontroller on the board.
This same voltage is being reflected in the GPIO pins .
Now the PWM voltage levels are -
Low State - 0 volt
High State - 2.7 volt

The problem - The external 5 volt device does not pick up the GPIO voltage level in the high state.

now i do understand that its my mistake to interface a 3.3 volt micro-controller with a 5 volt device but still i wish to connect it as i don't have any other option.
I am trying to change the drive to 3.3 Volt one , but meanwhile i want to look at any other option which can help me use this same microcontroller.

i think if the GPIO high state becomes at around 3.3 volt it will work even with a 5 volt device, but the current 2.7 is not reliable at all.

or otherwise

a mechanism to convert the 3.3 volt signal to 5 volt at high frequency (200KHz) would solve the problem.

Outcomes