Low power consumption comparison between STM8L and MSP430
[Copy link]
After comparing actual products, STM8L's low power consumption is far better than MSP430. I'll record it here. Different opinions are welcome.
The test environment is as follows:
1. External crystal oscillator frequency division to 1M
2. A 16-bit timer
3. A key interrupt
4. One serial port baud rate: 115200
5. An LED light
6. Power supply 3.3V
7. Main program running: The key interrupt prints "STM8L PK MSP430" from the serial port, and the timer 500MS interrupt reverses the LED.
The above hardware conditions are run at full speed on STM8L and MSP430 respectively. The results are obtained by comparing the measured currents. Interested friends can try it out.
Discussion Notes:
Low power consumption has always been the focus of competition among major MCU manufacturers. Recently, a video (STMicroelectronics STM8L low-power series MCU technology demonstration) has become very popular online. In the video, ST engineers use two potatoes, an RFID coil, and a cup of hot water to power the STM8L MCU and make the system run normally. This makes me interested in the operating power consumption of STM8. How low power can STM8L work? Which module inside the MCU has the highest power consumption? How can we reduce the power consumption of STM8L as much as possible?
First, let's take a look at the data provided by the manufacturer in the DS:
1. Operating voltage 1.8V to 3.6V
2. 5 low power modes:
wait mode
Low power run mode (about 5.1uA consumption)
Low power wait mode (about 3uA consumption)
Active-halt with full RTC mode (about 1.3uA consumption)
Halt mode (about 350nA consumption)
Of course, this is only the ideal power consumption provided by the manufacturer. In actual use, different applications, different peripherals and even different PCB designs and different software writing will have a significant impact on the power consumption of the system. In the following evaluation, we will use the most basic STM8 discovery development board as the platform to measure the power consumption in STM8 RUN mode. Of course, due to the accuracy of the test instrument and the influence of the test method,
First, let's take a look at how low the STM8-DISCOVERY operating voltage is.
The test circuit is very simple, an external voltage-stabilized power supply, a multimeter in series to measure the current, and a multimeter in parallel to test the current voltage.
When the power supply voltage is 1.8056V, the system does not work and the LCD on the STM8 board does not light up.
When the power supply voltage is 1.8135V, the system is working, the on-chip program is executing, and the current of the IDD test is 1.12mA. According to the STM8L user manual (CD00278045 document), we connect the ammeter in series to pins 2 and 3 of JP1. At this time, the ammeter shows 1.08mA. It is basically consistent with the IDD measurement. Through this measurement, it can be considered that the operating voltage of STM8 is between 1.80V and 1.81V, which basically meets the 1.8V power supply voltage described in the data sheet.
The STM8 DS mentions: Consumption: 195 μA/MHz. What does this mean? Does the system clock frequency have something to do with power consumption?
According to Figure 17 of the user manual, the clock signals used by the STM8 MCU mainly come from four places: HSE (external high-speed crystal), HIS (internal 16M RC oscillator), LSE (external low-speed crystal) and LSI (internal 38KHz low-speed oscillator). These four clocks are selected by the selector and divided by the system divider (1, 2, 4, 8, 16, 32, 64, 128). Since there is no external high-speed crystal on the board, only the 16MHZ RC oscillator provided inside the chip can be used for testing. In order to better show the test results, we tested each frequency division separately. The highest frequency of STM8 is 16MHz and the lowest frequency is 16/128=125KHZ. The following figures are the current consumption in RUN mode measured by the onboard IDD at various frequency division coefficients. (The test program shuts down all modules except the ADC module and LCD module, and the power supply is 3.3V). The frequency divisions are: 1, 2, 4, 8, 16, 32, 64, 128 respectively.
Through testing, we can know that under the same voltage, the current consumed by devices with different operating frequencies is different, and it shows a downward trend in general. However, this decline is not completely linear. When the system frequency division factor changes from 1 to 2, the effect is more obvious. When it changes from 8 to 16 and 32, the system current consumption has only a slight change. If the system frequency division factor changes from 64 to 128, it can basically be said that there is no change. If there is still a 256 frequency division, according to the previous rules, the current consumption will not change much. Is this the limit of STM8L? Of course not. As we said before, STM8 MCU has 4 clock sources. Except for the external high-speed clock that is not welded on the board, we can use the other three. The results of our test above are obtained by using the internal 16Mhz RC clock source as the main clock. In order to make STM8 work at a lower frequency, we can choose the internal 38k low-speed clock (ie LSI) as the main clock. With LSI as the main clock and the frequency division factor of 1, the system current consumption is different.
|