Программирование MAX32620FTHR L0 |
На текущий момент (середина 2019 года) MAX32620FTHR поддерживает только две официальные библиотеки от Maxim Integrated: SPI & Wire.
Для использования дополнительных возможностей
MAX32620FTHR
создадим библиотеку
MAX32620FTHRM\MAX32620FTHRM.cpp
и продемонстрируем работу ее функций
энергосбережения на простом
примере //=============================================================================> // 1. Project - start /********************************************************************** * Author: * MagSem * * Revisions: * 1.0.0 06.05.2019 initial code * **********************************************************************/ // 1. Project - finish //=============================================================================< //=============================================================================> // 2. Includes - start #include <MAX32620FTHRM.h> // MAX32620FTHRM MagSem Lib // 2. Includes - finish //=============================================================================< //=============================================================================> // 3. Definitions - start // 3. Definitions - finish //=============================================================================< //=============================================================================> // 4. Globals - start uint8_t LED_Status[] = {0, 0, 0, 0}; // 4. Globals - finish //=============================================================================< //=============================================================================> // 5. Functions - start // 5. Functions - finish //=============================================================================< //=============================================================================> // 6. SetUp - start void setup(void) { // Prepare the User LEDs pinMode(MAX32620FTHR_RLED, OUTPUT); pinMode(MAX32620FTHR_GLED, OUTPUT); pinMode(MAX32620FTHR_BLED, OUTPUT); //--------------------------------------------------------------- // Initialize and setup watchdog wake-up and reset times // WDT2_Setup_Mod(int WakeUp, int WakeUp_Clks, int Reset, int Reset_Clks) // WakeUp {0,1}, WakeUp_Clks {0,..., 15}, Reset {0,1}, Reset_Clks {0,..., 15} // Example: // WDT2_Setup_Mod(1, 11, 0, 0); // SetUp WakeUp Time 2.048s without Reset WDT2_Setup_Mod(1, 11, 0, 0); } // 6. SetUp - finish //=============================================================================< //=============================================================================> // 7. Loop - start void loop(void) { LED_On(2); delayMaxim(1000); LED_Off(2); delayMaxim(1000); LED_Toggle(0); delayMaxim(1000); LED_Toggle(0); delayMaxim(1000); LED_On(1); Freq_04MHz_Nms(1000); LED_Off(1); Freq_96MHz(); delayMaxim(1000); LED_On(2); delayMaxim(1000); LED_Off(2); delayMaxim(1000); LED_On(3); delayMaxim(1000); LED_Off(3); delayMaxim(1000); WDT2_WakupFromLP1(); } // 7. Loop - finish //=============================================================================<
|
Второй пример демонстрирует
использование функций инициализации зарядного
устройства и управления PMIC светодиодами //=============================================================================> // 1. Project - start /********************************************************************** * Author: * MagSem * * Revisions: * 1.0.0 07.05.2019 initial code * * Working with battery and PMIC Leds: * Leds off - Charger dont connect * Led Red - Battery charging * Led Gre - Battery full **********************************************************************/ // 1. Project - finish //=============================================================================< //=============================================================================> // 2. Includes - start #include <MAX32620FTHRM.h> // MAX32620FTHRM MagSem Lib // 2. Includes - finish //=============================================================================< //=============================================================================> // 3. Definitions - start #define MAX77650_setCHG_CC_Acc 0b010101 // 165.0 mA for AA 800 mAh Li-Ion 3.7 V // 3. Definitions - finish //=============================================================================< //=============================================================================> // 4. Globals - start uint8_t LED_Status[] = {0, 0, 0, 0}; // MAX77650 Globals boolean PMIC_INT = false; boolean LED_setup = false; int MAX77650_GLBL_INT_REG = 0; int MAX77650_CHG_INT_REG = 0; // 4. Globals - finish //=============================================================================< //=============================================================================> // 5. Functions - start // 5. Functions - finish //=============================================================================< //=============================================================================> // 6. SetUp - start void setup(void) { // Configure the MAX77650 Power-Management: // Pins, PMIC Leds, Charger and others MAX77650_Global_Setup(MAX77650_setCHG_CC_Acc); // Prepare the User LEDs pinMode(MAX32620FTHR_RLED, OUTPUT); pinMode(MAX32620FTHR_GLED, OUTPUT); pinMode(MAX32620FTHR_BLED, OUTPUT); } // 6. SetUp - finish //=============================================================================< //=============================================================================> // 7. Loop - start void loop(void) { LED_On(0); delayMaxim(1000); PMIC_LED_CH(); // Output PMIC LED LED_Off(0); delayMaxim(1000); } // 7. Loop - finish //=============================================================================< |
Дата последнего изменения: 24.10.2019 |