As we all know, MSP430 is famous for its ultra-low power consumption. However, many users have reported that in actual applications, when measuring the power consumption of MSP430, the measurement results are far from the MSP430 data sheet. In fact, there are two main aspects involved here:
1. How to use MSP430 to properly design hardware and software to maximize the low power consumption of the entire application?
2. How to measure the power consumption of MSP430?
Let me share my personal experience on how to measure the power consumption of MSP430.
1. Processing of unused GPIO
In order to achieve the lowest power consumption of MSP430, the unused GPIO of MSP430 should be set as output; or set as input, but fix the pin level. You can connect the pin to Vcc or GND through an external circuit, or enable the internal pull-up and pull-down resistors to fix the pin level.
For MSP430, in most cases, the discrepancy between the measured power consumption and the datasheet is caused by improper handling of the unused GPIO of MSP430. By default, the GPIO of MSP430 is used as input, and its equivalent circuit is shown in the figure below, which is push-pull mode:
When the GPIO pin is configured as an input pin and the external level is in a floating state (0 < Vin < Vcc), the on-current of the internal MOSFETs is itself at an unstable value, which will lead to an increase in overall power consumption. See the right half of the above figure for a schematic diagram. In addition, excessively high or low temperatures will further aggravate this instability, and when the power supply voltage increases, the on-current of the MOSFETs will also increase. Therefore, under the dual effects of high voltage and low temperature, power consumption will increase.
2. Determination of prerequisites
The MSP430 data sheet provides power consumption in various modes, and all related prerequisites are noted, including: measuring temperature, supply voltage, system clock source, system clock size, CPU main frequency, MSP430 working mode and active modules (such as Brownout: BOR, WDT), etc. Therefore, when verifying the power consumption of MSP430 in a specific mode, you must pay attention to these prerequisites.
If you want to compare power consumption with other MCUs, remember that the comparison must be made under the same conditions. The BOR function of MSP430 is turned on in all 7 LPM modes, and the power consumption is almost zero.
3. Measure the power consumption of MSP430 in LPM4/LPM3 mode
In order to more accurately measure the power consumption of the entire user application and minimize the power consumption of the entire application, it is recommended to first measure the overall power consumption of the board when the MSP430 is in LPM4/LPM3 mode. In LPM4 and LPM3 modes, adjust the MSP430 power consumption to be consistent with the data sheet, and then measure the power consumption in other situations on this basis.
1. Writing of low power consumption test program
a. LPM4 low power test program writing
For LPM4 low power test program writing, it is recommended to refer to Wolverine MSP430FR5969 LPM4 code example, as shown in the figure below. The main points to note are: when used as input, fix the GPIO state to prevent it from being affected by the external floating level. In the example, GPIO is set as input, but the internal pull-down resistor is enabled to fix the GPIO state. Of course, GPIO can also be configured as output directly. In addition, pay attention to turning off unnecessary modules to avoid unnecessary power consumption. For example: MSP430FR5739, under LPM4, remember to turn off the reference source REF.
REFCTL0 |= REFTCOFF;
REFCTL0 &= ~REFON;
b. LPM3 low power test program writing
First of all, it is necessary to understand that for the power consumption test in LPM3 mode, the clock source of ACLK needs to be selected, whether it is internal VLO or LFXT1. Because in LPM3, only ACLK is available as the system clock of MSP430, and MCLK and SMCLK are not available. When the clock source of ACLK is selected differently, the power consumption of MSP430 in LPM3 mode is different. Taking MSP430G2553 as an example, its data sheet states that in LPM3, when ACLK=LFXT1, the power consumption is about 0.7uA; and in LPM3, when ACLK=VLO, the power consumption is about 0.5uA.
In addition, when measuring, to ensure that the program successfully runs into LPM3 mode. It is best to have an indication before entering LPM3, such as turning on an LED for 0.5s and then turning it off. Remember to turn off the LED when entering LPM3, because a lit LED consumes a lot of power, sometimes up to 2mA. Why is there an indication? Because when LFXT1 is used as the ACLK clock source, it is necessary to check whether LFXT1 is successfully started in the program. In case the user forgets to solder LFXT1, or the low-frequency crystal does not start, the program will always be in the check flag and will not enter LPM3. In these cases, if there is no indication, when measuring the power consumption, it will be found that the measurement results do not match the power consumption under LPM3 in the data sheet.
In addition, remember to judge whether LFXT1 is oscillating or not, and never use an oscilloscope to measure the pins of the low-frequency crystal directly, because LFXT1 itself is very fragile and will stop oscillating once there is external fluctuation. It is recommended to use LFXT1 as the ACLK clock source, and then output ACLK from the corresponding switch and observe it with an oscilloscope.
2. MSP430 low power measurement hardware considerations
To ensure the accuracy of power consumption test, please connect as few peripheral circuits as possible, unless you want to measure the power consumption of a specific peripheral. If you use the launchpad of the MSP430 value line for measurement, remember to remove the 5 jumpers of the EMULATION part and directly power and measure the power consumption from the Vcc and GND at the bottom of the board. If you do not remove them, the circuit of the EMULATION part will also consume power.
If the hardware circuit is designed by the user, it is best not to solder other MSP430 related circuits when measuring the power consumption under LPM3 and LPM4. If soldering has been done, the state configuration of the MSP430 GPIO must be configured according to the design of the external hardware circuit. If the power consumption is greater than the power consumption of LPMx in the MSP430 data sheet, you can try to change the GPIO configuration to minimize the system power consumption.
4. Measurement of MSP430 power consumption
Regardless of the circumstances, when measuring the power consumption of the MSP430, you must pay attention to the prerequisites. Plan the working state of the MSP430 you want to test, determine the supply voltage, temperature, main frequency, available resources, etc. of the MSP430 at this time, and then measure it. Use the Power Supply to output a fixed voltage to the test board, such as 3V.
1. Fixed operating mode (fixed power consumption measurement)
If the user program is written and the MSP430 is always in a certain fixed mode, that is, its power consumption is fixed, the multimeter can be adjusted to the test current range and directly connected in series to the power supply circuit to directly observe the current value at this time.
I have used instruments with 6.5-digit measurement accuracy: Agilent 34401A Digit Multimeter and RIGOL DM3061 Digital Multimeter, both of which can accurately measure the 0.7uA current of the MSP430FR5969 in LPM3.
2. Measurement of power consumption when switching between active and LPMx modes and power-on initialization of MSP430
Although advanced multimeters have the function of accumulating and averaging the current, the measurement results are still not accurate enough. In general, the user's program usually has an initialization process at the beginning, and sometimes the initialization process is divided into many sections. When the user wants to measure the power consumption corresponding to different time periods of the initialization process, the multimeter cannot be connected in series to the power supply line to complete this function. At this time, it is recommended that the user use an oscilloscope to measure the voltage across the precision resistor connected in series to the power supply line, so as to have a more intuitive, accurate and convincing measurement of the power consumption of the system. The specific method is to use a precision resistor of about 10~20 ohms (with an error of 1% or even lower) in series to the power supply line, and then use an oscilloscope to directly observe the change of the voltage across the resistor, measure the voltage value across the resistor in each stage and each working mode, and then get the corresponding working current at the resistance value.
Previous article:How to drive a low-power 16-bit ADC using multiple single-ended signals
Next article:10 Steps to Selecting the Best Microcontroller
- Popular Resources
- Popular amplifiers
- High signal-to-noise ratio MEMS microphone drives artificial intelligence interaction
- Advantages of using a differential-to-single-ended RF amplifier in a transmit signal chain design
- ON Semiconductor CEO Appears at Munich Electronica Show and Launches Treo Platform
- ON Semiconductor Launches Industry-Leading Analog and Mixed-Signal Platform
- Analog Devices ADAQ7767-1 μModule DAQ Solution for Rapid Development of Precision Data Acquisition Systems Now Available at Mouser
- Domestic high-precision, high-speed ADC chips are on the rise
- Microcontrollers that combine Hi-Fi, intelligence and USB multi-channel features – ushering in a new era of digital audio
- Using capacitive PGA, Naxin Micro launches high-precision multi-channel 24/16-bit Δ-Σ ADC
- Fully Differential Amplifier Provides High Voltage, Low Noise Signals for Precision Data Acquisition Signal Chain
- LED chemical incompatibility test to see which chemicals LEDs can be used with
- Application of ARM9 hardware coprocessor on WinCE embedded motherboard
- What are the key points for selecting rotor flowmeter?
- LM317 high power charger circuit
- A brief analysis of Embest's application and development of embedded medical devices
- Single-phase RC protection circuit
- stm32 PVD programmable voltage monitor
- Introduction and measurement of edge trigger and level trigger of 51 single chip microcomputer
- Improved design of Linux system software shell protection technology
- What to do if the ABB robot protection device stops
- Learn ARM development(14)
- Learn ARM development(15)
- Analysis of the application of several common contact parts in high-voltage connectors of new energy vehicles
- Wiring harness durability test and contact voltage drop test method
- From probes to power supplies, Tektronix is leading the way in comprehensive innovation in power electronics testing
- From probes to power supplies, Tektronix is leading the way in comprehensive innovation in power electronics testing
- Sn-doped CuO nanostructure-based ethanol gas sensor for real-time drunk driving detection in vehicles
- Design considerations for automotive battery wiring harness
- Do you know all the various motors commonly used in automotive electronics?
- What are the functions of the Internet of Vehicles? What are the uses and benefits of the Internet of Vehicles?
- GD32E230C Test 3: Is the MCU running memory insufficient in this case?
- Two classic circuit examples of serial port power supply
- EEWORLD University Hall----Live Replay: How to use Infineon IGBT7 to design high-performance servo drives
- Can cc2530 turn off NV?
- 【TGF4042 Signal Generator】+ Bandwidth Test
- [ATmega4809 Curiosity Nano Review] Using the printf function
- [Raspberry Pi Pico Review] ADC Acquisition
- Help, find a foreign literature
- Review Weekly 20220913: Infineon's revolutionary photoacoustic spectroscopy (PAS) CO2 sensor, free application~
- Micro ESP8266 Temperature and Humidity Sensor