Program to demonstrate how to configure the PMIC on the MAX32620HSP (MAXREFDES100#)
Fork of HSP_PMIC_Demo by
Diff: main.cpp
- Revision:
- 17:9a467f9a0579
- Parent:
- 14:4c4094890fde
- Child:
- 18:b64938c813dc
diff -r f5ef654b08f0 -r 9a467f9a0579 main.cpp
--- a/main.cpp Tue Oct 04 23:57:03 2016 +0000
+++ b/main.cpp Thu Oct 06 17:11:37 2016 +0000
@@ -12,24 +12,46 @@
void turnOff()
{
+ // Write the power down command to the PMIC
max14720.shutdown();
}
int main()
{
int result;
+
+ // Assign turnOff function to falling edge of button
button.fall(&turnOff);
+
+ // Turn LED signal on to make buck-boost output visible
led = 0;
+
+ // Override the default value of boostEn to BOOST_ENABLED
max14720.boostEn = MAX14720::BOOST_ENABLED;
+ // Note that writing the local value does directly affect the part
+ // The buck-boost regulator will remain off until init is called
+
+ // Call init to apply all settings to the PMIC
result = max14720.init();
if (result == MAX14720_ERROR) printf("Error initializing MAX14720");
+
+ // Wait 1 second to see the buck-boost regulator turn on
wait(1);
+
while(1) {
+ // Turn off the buck-boost regulators
max14720.boostSetMode(MAX14720::BOOST_DISABLED);
- max14720.boostEn = MAX14720::BOOST_ENABLED;
+ wait(0.5);
+
+ // Change the voltage of the buck-boost regulator and enable it
+ max14720.boostSetVoltage(2500);
+ max14720.boostSetMode(MAX14720::BOOST_ENABLED);
wait(0.5);
- max14720.boostSetVoltage(2500);
- wait(0.5);
+
+ // Change the voltage of the buck-boost regulator
+ // Note that the MAX14720 cannot change the buck-boost voltage while
+ // it is enabled so if boostEn is set to BOOST_ENABLED, this
+ // function will disable it, change the voltage, and re-enable it.
max14720.boostSetVoltage(5000);
wait(0.5);
}

PMIC with buck-boost/buck regulator, switches and LDO for wearable watches MAX14720