Macros | Functions
PSS

Power Supply System responsible for controlling analog aspects of the device core. More...

Macros

#define PSS_KEY_VALUE   PSS_KEY_KEY_VAL
 
#define PSS_SVSMH   PSS_IE_SVSMHIE
 
#define PSS_FULL_PERFORMANCE_MODE   0x01
 
#define PSS_NORMAL_PERFORMANCE_MODE   0x00
 

Functions

void PSS_enableHighSidePinToggle (bool activeLow)
 
void PSS_disableHighSidePinToggle (void)
 
void PSS_enableHighSide (void)
 
void PSS_disableHighSide (void)
 
void PSS_setHighSidePerformanceMode (uint_fast8_t powerMode)
 
uint_fast8_t PSS_getHighSidePerformanceMode (void)
 
void PSS_enableHighSideMonitor (void)
 
void PSS_disableHighSideMonitor (void)
 
void PSS_setHighSideVoltageTrigger (uint_fast8_t triggerVoltage)
 
uint_fast8_t PSS_getHighSideVoltageTrigger (void)
 
void PSS_enableInterrupt (void)
 
void PSS_disableInterrupt (void)
 
uint32_t PSS_getInterruptStatus (void)
 
void PSS_clearInterruptFlag (void)
 
void PSS_enableForcedDCDCOperation (void)
 
void PSS_disableForcedDCDCOperation (void)
 
void PSS_registerInterrupt (void(*intHandler)(void))
 
void PSS_unregisterInterrupt (void)
 

Detailed Description

Power Supply System responsible for controlling analog aspects of the device core.


Module Operation


The PSS module for the DriverLib allows the user to fully configure/setup the various analog power sources on the MSP432 device. This mainly involves enabling and disabling the high side supervisor/monitor. Performance modes of both the high side power supply can be configured and manipulated in order to optimize power efficiency. Additionally, the PSS interrupt can be configured to fire an interrupt on a power supply violation.


Programming Example


The DriverLib package contains a variety of different code examples that demonstrate the usage of the PSS module. These code examples are accessible under the examples/ folder of the SDK release as well as through TI Resource Explorer if using Code Composer Studio. These code examples provide a comprehensive list of use cases as well as practical applications involving each module.

Below is a very brief code example showing how to disable the high side power supervisor:

Macro Definition Documentation

#define PSS_KEY_VALUE   PSS_KEY_KEY_VAL
#define PSS_SVSMH   PSS_IE_SVSMHIE
#define PSS_FULL_PERFORMANCE_MODE   0x01
#define PSS_NORMAL_PERFORMANCE_MODE   0x00

Function Documentation

void PSS_enableHighSidePinToggle ( bool  activeLow)

Enables output of the High Side interrupt flag on the device SVMHOUT pin

Parameters
activeLowTrue if the signal should be logic low when SVSMHIFG is set. False if signal should be high when SVSMHIFG is set.
Returns
None.
void PSS_disableHighSidePinToggle ( void  )

Disables output of the High Side interrupt flag on the device SVMHOUT pin

Returns
None.
void PSS_enableHighSide ( void  )

Enables high side voltage supervisor/monitor.

Returns
None.
void PSS_disableHighSide ( void  )

Disables high side voltage supervisor/monitor.

Returns
None.
void PSS_setHighSidePerformanceMode ( uint_fast8_t  powerMode)

Sets the performance mode of the high side regulator. Full performance mode allows for the best response times while normal performance mode is optimized for the lowest possible current consumption.

Parameters
powerModeis the performance mode to set. Valid values are one of the following:
  • PSS_FULL_PERFORMANCE_MODE,
  • PSS_NORMAL_PERFORMANCE_MODE
Returns
None.

References PSS_FULL_PERFORMANCE_MODE.

uint_fast8_t PSS_getHighSidePerformanceMode ( void  )

Gets the performance mode of the high side voltage regulator. Refer to the user's guide for specific information about information about the different performance modes.

Returns
Performance mode of the voltage regulator

References PSS_FULL_PERFORMANCE_MODE, and PSS_NORMAL_PERFORMANCE_MODE.

void PSS_enableHighSideMonitor ( void  )

Sets the high side voltage supervisor to monitor mode

Returns
None.
void PSS_disableHighSideMonitor ( void  )

Switches the high side of the power supply system to be a supervisor instead of a monitor

Returns
None.
void PSS_setHighSideVoltageTrigger ( uint_fast8_t  triggerVoltage)

Sets the voltage level at which the high side of the device voltage regulator triggers a reset. This value is represented as an unsigned eight bit integer where only the lowest three bits are most significant.

Parameters
triggerVoltageVoltage level in which high side supervisor/monitor triggers a reset. See the device specific data sheet for details on these voltage levels.

Typical values will vary from part to part (so it is very important to check the SVSH section of the data sheet. For reference only, the typical MSP432 101 values are listed below:

  • 0 –> 1.57V
  • 1 –> 1.62V
  • 2 –> 1.83V
  • 3 –> 2V
  • 4 –> 2.25V
  • 5 –> 2.4V
  • 6 –> 2.6V
  • 7 –> 2.8V
Returns
None.

References ASSERT.

uint_fast8_t PSS_getHighSideVoltageTrigger ( void  )

Returns the voltage level at which the high side of the device voltage regulator triggers a reset.

Returns
The voltage level that the high side voltage supervisor/monitor triggers a reset. This value is represented as an unsigned eight bit integer where only the lowest three bits are most significant. See PSS_setHighSideVoltageTrigger for information regarding the return value
void PSS_enableInterrupt ( void  )

Enables the power supply system interrupt source.

Returns
None.
void PSS_disableInterrupt ( void  )

Disables the power supply system interrupt source.

Returns
None.
uint32_t PSS_getInterruptStatus ( void  )

Gets the current interrupt status.

Returns
The current interrupt status ( PSS_SVSMH )
void PSS_clearInterruptFlag ( void  )

Clears power supply system interrupt source.

Returns
None.
void PSS_enableForcedDCDCOperation ( void  )

Enables the "forced" mode of the DCDC regulator. In this mode, the fail safe mechanism that disables the regulator to LDO mode when the supply voltage falls below the minimum supply voltage required for DCDC operation is turned off.

Returns
None.
void PSS_disableForcedDCDCOperation ( void  )

Disables the "forced" mode of the DCDC regulator. In this mode, the fail safe mechanism that disables the regulator to LDO mode when the supply voltage falls below the minimum supply voltage required for DCDC operation is turned on.

Returns
None.
void PSS_registerInterrupt ( void(*)(void)  intHandler)

Registers an interrupt handler for the power supply system interrupt.

Parameters
intHandleris a pointer to the function to be called when the power supply system interrupt occurs.

This function registers the handler to be called when a power supply system interrupt occurs. This function enables the global interrupt in the interrupt controller; specific PSS interrupts must be enabled via PSS_enableInterrupt(). It is the interrupt handler's responsibility to clear the interrupt source via PSS_clearInterruptFlag().

See Also
Interrupt_registerInterrupt() for important information about registering interrupt handlers.
Returns
None.

References INT_PSS, Interrupt_enableInterrupt(), and Interrupt_registerInterrupt().

void PSS_unregisterInterrupt ( void  )

Unregisters the interrupt handler for the power supply system

This function unregisters the handler to be called when a power supply system interrupt occurs. This function also masks off the interrupt in the interrupt controller so that the interrupt handler no longer is called.

See Also
Interrupt_registerInterrupt() for important information about registering interrupt handlers.
Returns
None.

References INT_PSS, Interrupt_disableInterrupt(), and Interrupt_unregisterInterrupt().


Copyright 2018, Texas Instruments Incorporated