Kinetis SDK v.1.2 Demo Applications User's Guide  Rev. 0
Freescale Semiconductor, Inc.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
demo_apps/power_manager_hal_demo/main.c File Reference
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <stdio.h>
#include "fsl_os_abstraction.h"
#include "fsl_interrupt_manager.h"
#include "fsl_power_manager.h"
#include "fsl_llwu_hal.h"
#include "fsl_smc_hal.h"
#include "fsl_clock_manager.h"
#include "fsl_debug_console.h"
#include "fsl_sim_hal.h"
#include "board.h"
#include "fsl_misc_utilities.h"
#include "fsl_uart_driver.h"
#include "fsl_device_registers.h"

Data Structures

struct  callback_data_t
 
struct  user_callback_data_t
 

Macros

#define CHECK_RET_VAL(ret, mode)
 

Enumerations

enum  demo_power_modes_t {
  kDemoMin,
  kDemoRun,
  kDemoWait,
  kDemoStop,
  kDemoVlpr,
  kDemoVlpw,
  kDemoVlps,
  kDemoVlls1,
  kDemoVlls3,
  kDemoCM0,
  kDemoCM1,
  kDemoMax,
  kDemoMin,
  kDemoRun,
  kDemoWait,
  kDemoStop,
  kDemoVlpr,
  kDemoVlpw,
  kDemoVlps,
  kDemoVlls1,
  kDemoVlls3,
  kDemoCM0,
  kDemoCM1,
  KDemoADC,
  kDemoMax
}
 

Functions

void dbg_uart_reinit (void)
 
clock_manager_error_code_t debugCallback (clock_notify_struct_t *notify, void *callbackData)
 
void LLWU_IRQHandler (void)
 override the RTC IRQ handler More...
 
void BOARD_SW_LLWU_IRQ_HANDLER (void)
 IRQ handler for switch/button. More...
 
power_manager_error_code_t callback0 (power_manager_notify_struct_t *notify, power_manager_callback_data_t *dataPtr)
 Power manager user callback. More...
 
void printWakeUpSourceText (void)
 Print on debug console the available wakeup source memu. More...
 
uint8_t selectWakeUpSource (demo_power_modes_t mode)
 Get the wakeup source choice from user. More...
 
void gpioDisableWakeUp (void)
 disable gpio switch. More...
 
void gpioEnableWakeUp (void)
 set gpio switch as wakeup source. More...
 
void setWakeUpSource (uint8_t source, char *textMode)
 
void displayPowerMode (void)
 display current power mode. More...
 
void updateClockManagerToRunMode (uint8_t cmConfigMode)
 update clock manager to run mode. More...
 
void updateClockManagerToVlprMode (uint8_t cmConfigMode)
 update clock manager to vlpr mode. More...
 
void update_clock_mode (uint8_t cmConfigMode)
 
int main (void)
 Function prototype for main function. More...
 

Variables

static volatile bool gSecsFlag
 
const clock_manager_user_config_t g_defaultClockConfigRun
 
const clock_manager_user_config_t g_defaultClockConfigVlpr
 
const clock_manager_user_config_t * g_defaultClockConfigurations []
 
clock_manager_callback_user_config_t debugConsoleCalback
 
static
clock_manager_callback_user_config_t * 
clockCallbackTable []
 

Data Structure Documentation

struct callback_data_t
Data Fields
uint32_t counter
uint32_t err
uint32_t status
struct user_callback_data_t
Data Fields
callback_data_t after
callback_data_t before
uint32_t err
power_manager_notify_t lastType

Macro Definition Documentation

#define CHECK_RET_VAL (   ret,
  mode 
)

Enumeration Type Documentation

Enumerator
kDemoMin 
kDemoRun 
kDemoWait 
kDemoStop 
kDemoVlpr 
kDemoVlpw 
kDemoVlps 
kDemoVlls1 
kDemoVlls3 
kDemoCM0 
kDemoCM1 
kDemoMax 
kDemoMin 
kDemoRun 
kDemoWait 
kDemoStop 
kDemoVlpr 
kDemoVlpw 
kDemoVlps 
kDemoVlls1 
kDemoVlls3 
kDemoCM0 
kDemoCM1 
KDemoADC 
kDemoMax 

Function Documentation

void BOARD_SW_LLWU_IRQ_HANDLER ( void  )
power_manager_error_code_t callback0 ( power_manager_notify_struct_t *  notify,
power_manager_callback_data_t *  dataPtr 
)
void dbg_uart_reinit ( void  )
clock_manager_error_code_t debugCallback ( clock_notify_struct_t *  notify,
void *  callbackData 
)
void displayPowerMode ( void  )
void gpioDisableWakeUp ( void  )
void gpioEnableWakeUp ( void  )
void LLWU_IRQHandler ( void  )

LLW_IRQHandler that would cover the same name's APIs in startup code

int main ( void  )

Function prototype for main function.

Parameters
receiveBuffBuffer used to hold received data
void printWakeUpSourceText ( void  )
uint8_t selectWakeUpSource ( demo_power_modes_t  mode)

select wakeup source.

TWR_K60D100M doesn't have switch pins connected to LLWU. It's not possible to wake up by SWx buttons from some modes. returns 0 when RTC is selected as wake up source returns 1 when sw pins are selected as wake up source

void setWakeUpSource ( uint8_t  source,
char *  textMode 
)
void update_clock_mode ( uint8_t  cmConfigMode)
void updateClockManagerToRunMode ( uint8_t  cmConfigMode)
void updateClockManagerToVlprMode ( uint8_t  cmConfigMode)

Variable Documentation

clock_manager_callback_user_config_t* clockCallbackTable[]
static
clock_manager_callback_user_config_t debugConsoleCalback
const clock_manager_user_config_t g_defaultClockConfigRun
const clock_manager_user_config_t* g_defaultClockConfigurations[]
const clock_manager_user_config_t g_defaultClockConfigVlpr
volatile bool gSecsFlag
static