IO PIns state during reset or powerup
#1
Posted 11 November 2011 - 10:08 PM
#2
Posted 12 November 2011 - 05:23 AM
#3
Posted 12 November 2011 - 02:33 PM
#4
Posted 12 November 2011 - 03:49 PM
Mario,
Thanks for the reply. It makes no sense to me that the Atmel IO lines are put in the input-with-pullup state during power-up. If they were tri-stated or inputs without pullups, then I could manage the IO states with simple pullups or pulldowns until the program takes control. That's a lot simpler than using external logic to 'fix' the uP IO unmanaged state and it is, I think, the way PICs work. I will change my IO devices to work with active low rather than high. I was mislead down the path of connecting the load to ground by looking at the how the Sparkfun screwsheild connects it's yellow LED between D13 and Ground. It, of course, lights dimly during reset.
I have had good luck pulling an output low with a 1K resistor. That way the voltage stays low enough during reset time, that my output transistor (whose base is driven by the pin) never fires, until the port is changed to an output and driven high. The pullup resistor is not strong enough to overcome the 1K external.
#6
Posted 13 November 2011 - 09:44 PM
#7
Posted 13 November 2011 - 11:22 PM
o 3v3 | .-. | | | | 15k '-' | o-----o GPIO | .-. | | | | 2k2 '-' | o GND(if i remember the pullup value correctly) which will mean that you read about 0.42V at boot, which might not be logic low for everything. Also, in this setup, you waste ~1.5mA when you want to drive the pin high later ...
-- H.L. Mencken, "What I Believe"
#8
Posted 14 November 2011 - 01:12 AM
In that case, a schmitt-trigger or 'master-enable' method as mentioned earlier using gates.
A pulldown is not a good solution, as Mario has explained. I don't know why this keeps getting suggested. What you're having effectively then is
o 3v3 | .-. | | | | 15k '-' | o-----o GPIO | .-. | | | | 2k2 '-' | o GND(if i remember the pullup value correctly) which will mean that you read about 0.42V at boot, which might not be logic low for everything. Also, in this setup, you waste ~1.5mA when you want to drive the pin high later ...
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users