Functions | |
static void | AONIOCDriveStrengthSet (uint32_t ui32DriveLevel, uint32_t ui32DriveStrength) |
Configure drive strength values for the manual drive strength options. More... | |
static uint32_t | AONIOCDriveStrengthGet (uint32_t ui32DriveLevel) |
Get a specific drive level setting for all IOs. More... | |
static void | AONIOCFreezeEnable (void) |
Freeze the IOs. More... | |
static void | AONIOCFreezeDisable (void) |
Un-freeze the IOs. More... | |
static void | AONIOC32kHzOutputDisable (void) |
Disable the 32kHz clock output. More... | |
static void | AONIOC32kHzOutputEnable (void) |
Enable the 32kHz clock output. More... | |
The Input/Output Controller (IOC) controls the functionality of the pins (called DIO). The IOC consists of two APIs:
For more information on the MCU IOC see the IOC API.
The API functions can be grouped like this:
Freeze IOs while MCU domain is powered down:
Output LF clock to a DIO:
Configure the value of drive strength for the three manual MCU IOC settings (MIN, MED, MAX):
|
inlinestatic |
Disable the 32kHz clock output.
When outputting a 32 kHz clock on an IO, the output enable/disable functionality in the IOC is bypassed. Therefore, the programmer needs to call this function to disable the clock output.
|
inlinestatic |
Enable the 32kHz clock output.
When outputting a 32 kHz clock on an IO, the output enable/disable functionality in the IOC is bypassed. Therefore, the programmer needs to call this function to enable the clock output.
|
inlinestatic |
Get a specific drive level setting for all IOs.
Use this function to read the drive strength setting for a specific IO drive level.
ui32DriveLevel | is the specific drive level to get the setting for.
|
|
inlinestatic |
Configure drive strength values for the manual drive strength options.
This function defines the general drive strength settings for the non-AUTO drive strength options in the MCU IOC. Consequently, if all IOs are using the automatic drive strength option this function has no effect.
Changing the drive strength values affects all current modes (Low-Current, High-Current, and Extended-Current). Current mode for individual IOs is set in MCU IOC by IOCIODrvStrengthSet().
ui32DriveLevel |
|
ui32DriveStrength | sets the value used by IOs configured as non-AUTO drive strength in MCU IOC.
|
|
inlinestatic |
Un-freeze the IOs.
When rebooting the chip after it has entered powerdown/shutdown mode, the software can regain control of the IOs by setting the IO latches as transparent. The IOs should not be unfrozen before software has restored the functionality of the IO.
|
inlinestatic |
Freeze the IOs.
To retain the values of the output IOs during a powerdown/shutdown of the device all IO latches in the AON domain should be frozen in their current state. This ensures that software can regain control of the IOs after a reboot without the IOs first falling back to the default values (i.e. input and no pull).
#define AONIOC_DRV_LVL_MAX (AON_IOC_O_IOSTRMAX) |
Referenced by AONIOCDriveStrengthGet(), and AONIOCDriveStrengthSet().
#define AONIOC_DRV_LVL_MED (AON_IOC_O_IOSTRMED) |
Referenced by AONIOCDriveStrengthGet(), and AONIOCDriveStrengthSet().
#define AONIOC_DRV_LVL_MIN (AON_IOC_O_IOSTRMIN) |
Referenced by AONIOCDriveStrengthGet(), and AONIOCDriveStrengthSet().
#define AONIOC_DRV_STR_1 0x00000000 |
Referenced by AONIOCDriveStrengthSet().
#define AONIOC_DRV_STR_2 0x00000001 |
Referenced by AONIOCDriveStrengthSet().
#define AONIOC_DRV_STR_3 0x00000003 |
Referenced by AONIOCDriveStrengthSet().
#define AONIOC_DRV_STR_4 0x00000002 |
Referenced by AONIOCDriveStrengthSet().
#define AONIOC_DRV_STR_5 0x00000006 |
Referenced by AONIOCDriveStrengthSet().
#define AONIOC_DRV_STR_6 0x00000007 |
Referenced by AONIOCDriveStrengthSet().
#define AONIOC_DRV_STR_7 0x00000005 |
Referenced by AONIOCDriveStrengthSet().
#define AONIOC_DRV_STR_8 0x00000004 |
Referenced by AONIOCDriveStrengthSet().