Program to demonstrate how to configure the PMIC on the MAX32620HSP (MAXREFDES100#)
Fork of HSP_PMIC_Demo by
main.cpp
- Committer:
- switches
- Date:
- 2016-10-06
- Revision:
- 17:9a467f9a0579
- Parent:
- 14:4c4094890fde
- Child:
- 18:b64938c813dc
File content as of revision 17:9a467f9a0579:
#include "mbed.h" #include "MAX14720.h" // I2C Master 2 I2C i2c2(I2C2_SDA, I2C2_SCL); #define I2C_ADDR_PMIC (0x54) MAX14720 max14720(&i2c2,I2C_ADDR_PMIC); DigitalOut led(LED1); InterruptIn button(SW1); 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); 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); // 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); } }