astronomerroyal
New Member
Hello,
I am making an 18F2520-based device designed for long uninterrupted usage, powered by 4 AA batteries (~2000mAhr). Currently (no pun intended) my time-averaged current consumption is 10mA -> about 200hr runtime. I'm already using SLEEP mode but I'd like to do better.
I'm using no fewer than 16 external pull-up resistors, each 10K, with my 2x8 DIP switches. The current through these resistors (when connected to GND), 5v/10^4 * 16 =8mA, accounts for most (80%) of my power consumption. Can I *safely* increase the resistance above 10K? Looking at the datasheet reveals that the inputs (PORT A and B mostly) are almost all TTL. Wikipedia 'pull-up resistor' states,
In bipolar logic families operating at 5 VDC, a typical pull-up resistor value will be 1000–5000 Ω, based on the requirement to provide the required logic level current over the full operating range of temperature and supply voltage. For CMOS and MOS logic, much higher values of resistor can be used, several thousand to a million ohms, since the required leakage current at a logic input is small.
...suggesting 10K is already a fairly large value. Is that a correct interpretation?
Q) Is there any reason to believe that using the internal pull-ups on PORT B would reduce current consumption?
Q) Should I be considering flipping things around and using something weird like pull-downs, depending on whether a pin is likely to spend more time HIGH or LOW? I'm assuming that a input pin held high by a pull-up draws a significantly different current than flows through the resistor when things are taken low.
Thanks.
I am making an 18F2520-based device designed for long uninterrupted usage, powered by 4 AA batteries (~2000mAhr). Currently (no pun intended) my time-averaged current consumption is 10mA -> about 200hr runtime. I'm already using SLEEP mode but I'd like to do better.
I'm using no fewer than 16 external pull-up resistors, each 10K, with my 2x8 DIP switches. The current through these resistors (when connected to GND), 5v/10^4 * 16 =8mA, accounts for most (80%) of my power consumption. Can I *safely* increase the resistance above 10K? Looking at the datasheet reveals that the inputs (PORT A and B mostly) are almost all TTL. Wikipedia 'pull-up resistor' states,
In bipolar logic families operating at 5 VDC, a typical pull-up resistor value will be 1000–5000 Ω, based on the requirement to provide the required logic level current over the full operating range of temperature and supply voltage. For CMOS and MOS logic, much higher values of resistor can be used, several thousand to a million ohms, since the required leakage current at a logic input is small.
...suggesting 10K is already a fairly large value. Is that a correct interpretation?
Q) Is there any reason to believe that using the internal pull-ups on PORT B would reduce current consumption?
Q) Should I be considering flipping things around and using something weird like pull-downs, depending on whether a pin is likely to spend more time HIGH or LOW? I'm assuming that a input pin held high by a pull-up draws a significantly different current than flows through the resistor when things are taken low.
Thanks.
Last edited: