module ti.sysbios.family.arm.msp432.init.Boot |
|
MSP432 device Boot Support
The Boot module supports boot initialization for MSP432 devices.
A special boot init function is created based on the configuration
settings for this module. This function is hooked into the
xdc.runtime.Reset.fxns[] array and called very early at boot time.
[
more ... ]
#include <ti/sysbios/family/arm/msp432/init/Boot.h>
Functions common to all target modules |
|
|
Typedefs |
typedef enum | |
Constants |
extern const Bool | |
extern const Bool | |
extern const Bool | |
extern const Bool | |
DETAILS
The Boot module supports boot initialization for MSP432 devices.
A special boot init function is created based on the configuration
settings for this module. This function is hooked into the
xdc.runtime.Reset.fxns[] array and called very early at boot time.
The code to support the boot module is placed in a separate section
named
".text:.bootCodeSection" to allow placement of this section in
the linker .cmd file if necessary. This section is a subsection of the
".text" section so this code will be placed into the .text section unless
explicitly placed, either through
Program.sectMap or through a linker
command file.
enum Boot_SpeedOpt |
|
clock speed setting
typedef enum Boot_SpeedOpt {
Boot_SpeedOpt_Low,
Boot_SpeedOpt_Medium,
Boot_SpeedOpt_High
} Boot_SpeedOpt;
config Boot_bypassHFXT // module-wide |
|
HF crystal bypass flag, default is false
extern const Bool Boot_bypassHFXT;
DETAILS
As an alternative to HFXT-sourced clocks, an external 48-MHz square
wave can be applied to HFXIN, to be used as the MCLK, HSMCLK, and SMCLK
clock sources.
To enable this bypass mode, set Boot.enableHFXT to true to enable the
HFXT pins, and set Boot.bypassHFXT to true to disable the HFXT
oscillator.
config Boot_bypassLFXT // module-wide |
|
LF crystal bypass flag, default is false
extern const Bool Boot_bypassLFXT;
DETAILS
As an alternative to LFXT-sourced clocks, an external 32768-Hz square
wave can be applied to LFXIN, to be used as the ACLK and BCLK clock
sources.
To enable this mode, set Boot.enableLFXT to true to enable the LFXT
pins, and set Boot.bypassLFXT to true to disable the LFXT oscillator.
config Boot_enableHFXT // module-wide |
|
Enable HF crystal (HFXT) flag, default is false
extern const Bool Boot_enableHFXT;
DETAILS
If an external 48-MHz HFXT crystal is available, set this flag to
true to startup and enable the HFXT, for use as the MCLK, HSMCLK, and
SMCLK clock sources.
config Boot_enableLFXT // module-wide |
|
Enable LF crystal (LFXT) flag, default is false
extern const Bool Boot_enableLFXT;
DETAILS
If an external 32768-Hz LF crystal is available, set this flag to
true to startup and enable the LFXT, for use as the ACLK and BCLK
clock sources.
Module-Wide Built-Ins |
|
// Get this module's unique id
Bool Boot_Module_startupDone();
// Test if this module has completed startup
// The heap from which this module allocates memory
Bool Boot_Module_hasMask();
// Test whether this module has a diagnostics mask
Bits16 Boot_Module_getMask();
// Returns the diagnostics mask for this module
Void Boot_Module_setMask(Bits16 mask);
// Set the diagnostics mask for this module
var Boot = xdc.useModule('ti.sysbios.family.arm.msp432.init.Boot');
module-wide constants & types
module-wide config parameters
enum Boot.SpeedOpt |
|
clock speed setting
values of type Boot.SpeedOpt
const Boot.SpeedOpt_Low;
const Boot.SpeedOpt_Medium;
const Boot.SpeedOpt_High;
C SYNOPSIS
metaonly struct Boot.ModuleView |
|
var obj = new Boot.ModuleView;
obj.configureClocks = Bool ...
obj.disableWatchdog = Bool ...
config Boot.bypassHFXT // module-wide |
|
HF crystal bypass flag, default is false
Boot.bypassHFXT = Bool false;
DETAILS
As an alternative to HFXT-sourced clocks, an external 48-MHz square
wave can be applied to HFXIN, to be used as the MCLK, HSMCLK, and SMCLK
clock sources.
To enable this bypass mode, set Boot.enableHFXT to true to enable the
HFXT pins, and set Boot.bypassHFXT to true to disable the HFXT
oscillator.
C SYNOPSIS
config Boot.bypassLFXT // module-wide |
|
LF crystal bypass flag, default is false
Boot.bypassLFXT = Bool false;
DETAILS
As an alternative to LFXT-sourced clocks, an external 32768-Hz square
wave can be applied to LFXIN, to be used as the ACLK and BCLK clock
sources.
To enable this mode, set Boot.enableLFXT to true to enable the LFXT
pins, and set Boot.bypassLFXT to true to disable the LFXT oscillator.
C SYNOPSIS
config Boot.enableHFXT // module-wide |
|
Enable HF crystal (HFXT) flag, default is false
Boot.enableHFXT = Bool false;
DETAILS
If an external 48-MHz HFXT crystal is available, set this flag to
true to startup and enable the HFXT, for use as the MCLK, HSMCLK, and
SMCLK clock sources.
C SYNOPSIS
config Boot.enableLFXT // module-wide |
|
Enable LF crystal (LFXT) flag, default is false
Boot.enableLFXT = Bool false;
DETAILS
If an external 32768-Hz LF crystal is available, set this flag to
true to startup and enable the LFXT, for use as the ACLK and BCLK
clock sources.
C SYNOPSIS
metaonly config Boot.common$ // module-wide |
|
Common module configuration parameters
DETAILS
All modules have this configuration parameter. Its name
contains the '$' character to ensure it does not conflict with
configuration parameters declared by the module. This allows
new configuration parameters to be added in the future without
any chance of breaking existing modules.
metaonly config Boot.configureClocks // module-wide |
|
Clock configuration flag, default is true
Boot.configureClocks = Bool true;
DETAILS
Set to false to disable clock configuration.
Clock configuration will setup the clock system (CS), VCORE, and
Flash wait states appropriately, for one of three different device
speed options, as selected by
speedSelect.
metaonly config Boot.disableWatchdog // module-wide |
|
Watchdog disable configuration flag, default is true
Boot.disableWatchdog = Bool true;
DETAILS
Set to false to disable the disabling of the watchdog.
metaonly config Boot.rovViewInfo // module-wide |
|
metaonly config Boot.speedSelect // module-wide |
|
Clock speed selection, default is SpeedOpt_High
DETAILS
This enumeration is used to select one of three different speed options
that will be configured when
configureClocks is set to
"true".
SpeedOpt_High will configure:
MCLK = 48MHz from DCO, HFXT, or external clock
HSMCLK = 24MHz from DCO, HFXT, or external clock
SMCLK = 12MHz from DCO, HFXT, or external clock
ACLK = 32KHz from REFOCLK, LFXT, or external clock
BCLK = 32KHz from REFOCLK, LFXT, or external clock
VCORE = 1 (AM1_LDO mode)
Flash BNK0 and BNK1 read wait states = 1 (MSP432P401xx)
Flash BNK0 and BNK1 read wait states = 3 (MSP432P4x1xl/MSP432P4x1xT)
SpeedOpt_Medium will configure:
MCLK = 24MHz from DCO, HFXT, or external clock
HSMCLK = 6MHz from DCO, HFXT, or external clock
SMCLK = 6MHz from DCO, HFXT, or external clock
ACLK = 32KHz from REFOCLK, LFXT, or external clock
BCLK = 32KHz from REFOCLK, LFXT, or external clock
VCORE = 1 (AM1_LDO mode)
Flash BNK0 and BNK1 read wait states = 1 (for all device variants)
SpeedOpt_Low will configure:
MCLK = 12MHz from DCO, HFXT, or external clock
HSMCLK = 3MHz from DCO, HFXT, or external clock
SMCLK = 3MHz from DCO, HFXT, or external clock
ACLK = 32KHz from REFOCLK, LFXT, or external clock
BCLK = 32KHz from REFOCLK, LFXT, or external clock
VCORE = 0 (AM0_LDO mode)
Flash BNK0 and BNK1 read wait states = 0 (MSP432P401xx)
Flash BNK0 and BNK1 read wait states = 1 (MSP432P4x1xl/MSP432P4x1xT)
generated on Thu, 25 May 2017 22:09:53 GMT