2024-07-06 08:45 AM
I'm the hardware guy on a 32F413 project where we have a lot of impulse noise nearby on the PCB. Because of this I've been on a campaign to make certain that all microcontroller I/O pins are equipped with pull-up or pull-down resistors.
The project has reached the stage where our quality assurance folks get cranky whenever I try to add a resistor to this PCB. So when I find a 32F port pin that is missing a pull up/pull down resistor (as I did this week) it becomes a crisis of meetings and memos.
Remind me to never work again in a medical equipment company.
So I approached our firmware guy and asked him to alter his code to make certain the offending port pin is equipped with either an internal pull-up or a pull-down during his sleep mode,
Firmware guy replies: "No can do, hardware guy. The micro is in its deepest sleep state and the port pins flap in the breeze during deep sleep. You must fix that undefined I/O state with an external resistor. Luv ya, big guy..."
Is this true? Do all port pins go to tri-state mode during deep sleep?
Solved! Go to Solution.
2024-07-06 09:55 AM - edited 2024-07-06 10:04 AM
>The micro is in its deepest sleep state and the port pins flap
Depends on the sleep mode , if its Standby ...then, from ds:
and from rm:
So some pins still working (to wake up cpu) , but all other ... hi Z , off.
So better put a pulldown/-up on every output pin, that would float otherwise.
I do this always on "important" output signals, just because on every start/powerup the cpu is in reset and all (almost all) pins floating anyway.
(Input pins should anyway have some fixed state, from the circuit the signal is coming from.)
2024-07-06 09:55 AM - edited 2024-07-06 10:04 AM
>The micro is in its deepest sleep state and the port pins flap
Depends on the sleep mode , if its Standby ...then, from ds:
and from rm:
So some pins still working (to wake up cpu) , but all other ... hi Z , off.
So better put a pulldown/-up on every output pin, that would float otherwise.
I do this always on "important" output signals, just because on every start/powerup the cpu is in reset and all (almost all) pins floating anyway.
(Input pins should anyway have some fixed state, from the circuit the signal is coming from.)