| ??? 11/20/03 16:34 Read: times |
#59151 - Low power usage advice needed |
I have three questions, but let me give you a little application info first.
I have an P89LPC932 device in which I will need a "soft" onoff such that the device uses only a few uA when off. The device runs off of a battery system. So the goal is to be sure that when this thing is soft-off that everything on the microcontroller is using the smallest amount of current possible. The P89LPC932 has it's own little linear regulator. It's a VERY low quiescent regulator that produces about 1.1uA. The rest of the circuitdesign runs off of another more high power linear regulator that has a built-in MOSFET onoff switch. This 8051 device's (if you check the datasheet) I/O pins are very different than your traditional 8051. Each pin can be configured as one of the following: 1) Quasi-bidirectional 2) Push-Pull 3) Input Only (High Impedance) 4) Open Drain This 8051 device has a 4x4 keypad "pattern" matcher built-in so that when my device is turned off, a Keypad press will wake up the device. This keypad module uses PORT0. So I have each pin configured as Quasi-bidirectional. The high nibble (columns) are inputs "pulled up" by the internals of the pin. The low nibble (rows) are outputting 1's. Then the device is configured such that a keypress triggers this KBI interrupt and I go from there. The rest of the LPC932 pins are used for all sorts of purposes...inputsoutputs and everything in-between. In use, I don't care if this thing uses 500mA of current (example). But when this thing gets switched off, I need to be in the 20uA or lower category (possible on paper). When the user hits my off button, I perform the following: 1) Since the rest of the circuit can be switched off with this MOSFET regulator, I do so by setting a push-pull I/O line as "0". This DOES zap the power off to everything execept the LOW-Q regulator and the LPC932. 2) I then set each remaining i/o pin (except keypad and this onoff driver line) as a high-impedence input. It's my undertanding that in this high-impedenceinput mode, no current should be used. 3) I put the device into "Total Power-Down Mode", which according to the datasheet should put the controller at about 1uA as it turns off all peripherals and the clock. Only the keypad input would wake the device back up (in which case I would reconfigure and turn everything back on). So my questions: 1) Using the keypad in such a configuration (using the quasi pin's internal weak pull-up on the columns and ouputting 1's on the rows. Is this the proper low power solution? Note I have NO external resistors for the columns. Is this going to cause some kind of major extra drain that I'm not seeing? 2) Is setting the unused I/O pins as high-impedence when off the proper setting for low power? 3) The MOSFET onoff to switch the rest of the circuit off... Is push-pull the proper configuration? Setting this line as "0", will this produce any weird current sinking that I should expect? I appologize for the inexperienced questions. I've learned a lot from this forum so far. You guys are real assets. Thanks very much for adviceexperience in advance! Steve B. |



