Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Power Management Unit - PMU

I/O Connections

Power I/O diagram showing VDD input and output supply connections

VDD inputs:

  • PMU (2.7 V – 3.6 V): VDD33
  • I/O (3.3 V / 1.8 V):
    • VDD33_BCPAD, VDD33_DPAD, VDD33_QFCPAD: tied to VDDIO in package
    • VDD33_AOPAD, VDD33_TESTPAD, VDD33_EPAD, VDD33_APAD: tied to VDD33 in package.
  • RRAM (2.7 V – 3.6 V): VDDRR0, VDDRR1: tied to VDD33R on stand-alone ball
  • USB:
    • USBVCC33 (2.7 V – 3.6 V) tied to VDD33 in package
    • USBVCCCORE (0.80 V) - tied to VDD85 in package
  • PLL:
    • PLL25VPAD (2.5 V) - Tied to VDD25 ball
    • PLL09VPAD (0.80 V) - tied to VDD85 in package
  • ADC: ADCAVDD (2.5 V) - Tied to VDD25 ball

VDD outputs:

  • VDD85D, VDD85A - ganged to VDD85 inside package
  • VDDAO
  • ANA_VDD25A tied to PLL25VPAD, ADCAVDD 2.5V

GND:

  • All grounds ganged together in package
    • VSS, DVSS, VSSA
    • VSSPLL
    • ADCAVSS

Power Pad Description

I/O Power PadDescription
VDD33_APADI/O power pad for GPIO_PA<7:0> (tied to VDD33)
VDD33_BCPADI/O power pad for GPIO_PB<15:0> and GPIO_PC<15:0> (tied to VDDIO)
VDD33_DPADI/O power pad for GPIO_PD<15:0> (tied to VDDIO)
VDD33_EPADI/O power pad for GPIO_PE<15:0>, XTAL48M_IN, XTAL48M_OUT (tied to VDD33)
VDD33_QFCPADI/O power pad for GPIO_QFCSIO<7:0>, QFC_RSTS0, QFC_RSTM0, QFC_INT, QFC_SS<1:0>, QFC_QDS, QFC_SCKN, QFC_SCK (tied to VDDIO)
VDD33_AOPADI/O power pad for GPIO_PF<9:0>, PAD_AOXRSTn, XTAL32K_IN, XTAL32K_OUT (tied to VDD33)
VDD33_TESTPADI/O power pad for test pads: WMS<2:0>, XRSTn, DUART, SWDIO, SWDCK, JTCK, JTMS, JTDI, JTDO, JTRST (tied to VDD33)
VDDRR03.3 V power pad for RRAM0 (tied to VDD33R)
VDDRR13.3 V power pad for RRAM1 (tied to VDD33R)
VDD333.3 V power pad for PMU (tied to VDD33)
USBVCC333.3 V power pad for USB PHY (3.3 V signalling) (tied to VDD33R)
USBVCCCORE0.8 V power pad for USB PHY (0.8 V core) (tied to VDD85)
ADCAVDD2.5 V analog power supply for temperature/voltage sensor (tied to VDD25)
PLL25VPAD2.5 V analog supply voltage for PLL (tied to VDD25)
PLL09VPAD0.8 V core supply voltage for PLL (tied to VDD85)
ANA_VDD25PMU regulator output at 2.5 V for ADC and PLL (tied to VDD25)
VDD85DPMU regulator output at 0.8 V / 0.95 V for I/O core power, SoC, and OSC32M (tied to VDD85)
VDD85APMU regulator output at 0.8 V / 0.95 V for I/O core power, USB PHY, PLL, ADC, RNG cell (tied to VDD85)
VDDAOPMU regulator output at 0.8 V for I/O core power, AO domain, and OSC32K (tied to VDDAO)

Ground Pad Description

All ground pads tied to common GND bus in package.

I/O Ground PadDescription
VSSGround pad for the whole chip except PMU, RRAM0, RRAM1, ADC, PLL, USB PHY
DVSSGround pad for I/O, PMU, RRAM0, and RRAM1
VSSAGround pad for USB PHY
VSSPLLGround pad for PLL
ADCAVSSGround pad for ADC

I/O Power Domain Groups

There are two I/O power domains. One is fixed at 3.3V (tied to VDD33 internally), and the other is tied to VDDIO.

There are more I/Os on the die than are broken out in the CSP package due to ball count limitation on the package type. For higher-I/O count devices, please consult with Crossbar for an alternative, high-pin count BGA packaged device.

#Pad GroupI/O Power PadDescription
2PB, PCVDDIOGPIO_PB<15:0> and GPIO_PC<15:0>
3PDVDDIOGPIO_PD<15:0>
7QFCVDDIO(unavailable)
1PAVDD33GPIO_PA<7:0> (some I/Os ganged to PF pins)
4PE, TESTVDD33XTAL48M_IN, XTAL48M_OUT. VDD33_TESTPAD: WMS<2:0>, XRSTn, DUART
5RRAM0VDDRR0VDD33R
6RRAM1VDDRR1VDD33R
8PFVDD33GPIO_PF<9:0> (some I/Os ganged to PA pins), PAD_AOXRSTn, XTAL32K_IN, XTAL32K_OUT
9TV / PLL / PHY / PMUVDD333.0 V pad for PMU and USB PHY.

Below is the raw chip floorplan showing the location of the I/O power domains on-die. The power is further routed through an RDL (redistribution layer) and broken out to a limited number of CSP balls.

Chip floorplan showing the location of each I/O power domain group

Power Timing Sequence

The following diagram shows the recommended power-on sequence for VDD33(I/O) and VDD33:

  • VDD33(I/O): VDD33_APAD, VDD33_BCPAD, VDD33_DPAD, VDD33_EPAD, VDD33_AOPAD, VDD33_QFCPAD, VDD33_TESTPAD
  • VDD33: VDD33, VDDRR0, VDDRR1, USBVCC33

Power timing sequence diagram showing recommended power-on ordering for VDD33(I/O) and VDD33

  • Stand-alone VDDIO may rise after VDD33 as the internal VDD33-bound I/O are tied to VDD33 and guaranteed to be valid on VDD33 rise.
  • t2 should be >0.

Power Modes

Besides the regular active mode, the device provides three reduced power modes:

  • Sleep mode
  • Power-down mode

The following modes are listed from maximum to minimum power consumption.

Active Mode

In active mode, all clocks to the CPU cores, memories, and peripherals are enabled. The chip enters active mode after reset, with default power trimming determined by the ReRAM IFR power-on initialization. Power and clocks to selected peripherals and crypto engines can be optimized during runtime. All low-power modes can be entered from active mode.

Sleep Mode

In sleep mode, all clocks to the CPU cores are stopped and instruction execution is suspended until a reset or interrupt occurs. Selected functional blocks (peripherals, crypto engines) can continue operating at normal or reduced frequency and may generate interrupts as wake-up sources. SRAM contents are retained in sleep mode.

Entering sleep mode:

Sleep mode is entered by executing a WFI instruction after optionally configuring lower-frequency clock settings. Crypto engines, peripherals, and memories remain operational.

Waking up from sleep mode:

Any interrupt or RESET wakes the device from sleep mode. GPIO interrupts and selected peripherals (SPI, I2C, etc.) can serve as wake-up sources. The chip resumes using the same power configuration it had before sleep.

Power-Down Mode

In power-down mode, all clocks, the CPU core, and all functional blocks are powered down except the always-on (AO) domain. External power supplies remain on. Most SRAM and register contents are not retained — only AO SRAMs and AO backup registers are preserved.

Entering power-down mode:

Configure AO wake-up sources, then write 0x0000_005A to the PMU_PDAR register. The SoC power domain shuts off; only the AO domain remains powered.

Waking up from power-down mode:

Wake-up from power-down is triggered by asserting RESET, or by asserting PF0 or PF1 pins. On wake-up, the PMU powers on the SoC domain, the ReRAM IFR is re-read, RAMs reset to zero, and the CPU restarts from the beginning. Backup-registers, RTC and AORAM in the AO domain are preserved if the wake-up source is from the PF pins; if external reset is used, then these registers are cleared.

Low-Power Mode Summary

ActiveSleepPower-Down
CPU coresRunningSuspended (clocks stopped)Powered off
Functional blocks (crypto, peripherals)RunningRunning / reduced frequency (configurable)Powered off
Analog blocksRunningRun / sleep / disabled (configurable)Powered off
SRAM (except AO)RunningRetainedPowered off
AO domainRunningRunningRunning

These modes should be activated using the low-power mode library API from the SDK software package. Power usage is primarily controlled by CGU clock settings, PMU regulator settings, and the CPU operating mode.

Low-Power Control API Reference Flow

Enter Sleep Mode

  1. (Optional) Configure PMU_CRLP and PMU_TRMLP* registers with reduced power settings and trimmings for sleep entry.
  2. (Optional) Configure CGUFD_* registers (0x4004_00140x4004_003C) with reduced clock frequencies for sleep entry.
  3. (Optional) Write 0x3 to CGULP (0x4004_0004) to enable low-power frequency division and disable OSC/PLL on sleep entry.
  4. Configure and enable wake-up sources.
  5. Execute WFI / WFE instruction — CPU core clocks stop.
  6. Device remains in sleep mode until a valid wake-up source triggers.
  7. On wake-up, the CPU resumes execution from the next instruction.

As of Xous 0.10.1, the above sequence is already implemented and accessible via an API call to enter suspend via the Suspend/Resume manager:

    let xns = xous_names::XousNames::new().unwrap();
    let susres = susres::Susres::new_without_hook(&xns).unwrap();
    susres.initiate_suspend().unwrap();

To access the xous_names and susres APIs, you will need this in your Cargo.toml:

   susres = { package = "xous-api-susres", version = "0.9.68" }
   xous-names = { package = "xous-api-names", version = "0.9.71" }

Enter Power-Down Mode

  1. (Optional) Configure PMU_CRPD register with power-down settings.
  2. (Optional) Store any important data to AO backup registers or AORAM before entry.
  3. Configure and enable AO wake-up sources.
  4. Write 0x0000_005A to PMU_PDAR — all SoC domain blocks shut off; only the AO domain remains powered.
  5. Device remains in power-down until a valid AO wake-up source triggers.
  6. On wake-up, the PMU powers on the SoC domain. The ReRAM IFR is re-read, RAMs reset to zero, and the CPU restarts from the beginning.

As of Xous 0.10.1, the above sequence is already implemented via an API call to enter power-down mode that requires a PlatformSpecific call:

    use num_traits::ToPrimitive;

    let xns = xous_names::XousNames::new().unwrap();
    let susres_conn =
        xns.request_connection_blocking(susres::api::SERVER_NAME_SUSRES).expect("Can't connect to SUSRES");
    xous::send_message(
        susres_conn,
        xous::Message::new_scalar(
            susres::api::Opcode::PlatformSpecific.to_usize().unwrap(),
            bao1x_hal::ClockOp::DeepSleep.to_usize().unwrap(),
            0,
            0,
            0,
        ),
    )
    .ok();

You’ll need these crates to make the above call:

   xous = "0.9.70"
   susres = { package = "xous-api-susres", version = "0.9.68" }
   xous-names = { package = "xous-api-names", version = "0.9.71" }
   bao1x-hal = { features = [
       "std",
   ], git = "https://github.com/betrusted-io/xous-core", branch = "dev" }
   num-traits = { version = "0.2.14", default-features = false }

PMU Regulator and Trim Block

PMU Introduction

PMU block diagram showing regulators, bandgap, POR/PDR, and current source

  • 2.5 V Regulator (VR25): 2.55 V regulator powered from VDD. Supports power-down enable and ready status indication.
  • 0.85 V Regulators for Analog/Digital (VRCOREA, VRCORED): 0.85 V regulators powered from VDD. Support power-down enable, ready status indication, and overshoot enable.
  • 0.8 V Always-On Regulator (VRAO): 0.77 V regulator powered from VDD.
  • Current Source Output (IOUT): Provides several current sources, including a 10 µA output to a test pin for calibration against an external resistor (enabling absolute-value accuracy rather than tracking integrated resistors).
  • Power On/Down Reset (PORPDR): Provides power-on reset signal. Also triggers when power drops low enough to lose the always-on regulator.
  • Bandgap (BG): Ready status indication. The 1.5 V (VOUT1P5), 1.2 V (VOUT1P2), and 0.6 V (VOUTP60) references are individually trimmable. CTAT and PTAT currents are trimmable.

PMU Main Features

  • Provides regulated supplies: VDD25, VDD85A, VDD85D, VDDAO.
  • Generates power-on and power-down reset signals.
  • Supports power-down mode.
CellPower-Down Mode — On/OffPower-Down Supply (µA)Active Mode — On/OffActive Supply (µA)
VR25Off0.01On10
VR85_A/DOff0.01On10
VR_AOOn1On1
BGOn1.5On1 + current sources
POR/PDROn1On1
VD (four cells)On (2 channels)2On (4 channels)4

PMU & AO Control Registers

Base address: 0x4006_0000

Register NameOffsetSizeTypeAccessDefaultDescription
AO_CLK32K_SEL0x000032ConfigR/W0x00000006AO 32 kHz clock source selection
AO_CLK1HZ_FD0x000432ConfigR/W0x00003FFF1 Hz clock frequency divider
AO_WKUP_INTEN0x000832ConfigR/W0x00000000Wakeup mask and interrupt enable
AO_RSTCR_MASK0x000C32ConfigR/W0x00000000Reset mask control
PMU_CR0x001032ConfigR/W0x000003F3PMU block control (active mode)
PMU_CRLP0x001432ConfigR/W0x00003FFFPMU block control (sleep / deep-sleep)
PMU_CRPD0x001832ConfigR/W0x00000000PMU block control (power-down)
PMU_DFT0x001C32ConfigR/WPMU default test
PMU_TRM00x002032ConfigR/W0x00000000PMU trimming low 32 bits (active)
PMU_TRM10x002432ConfigR/W0x00003FFFPMU trimming high 32 bits (active)
PMU_TRMLP00x002832ConfigR/W0x00000000PMU trimming low 32 bits (low-power)
PMU_TRMLP10x002C32ConfigR/W0x0000001FPMU trimming high 32 bits (low-power)
AO_OSC_CR0x003432ConfigR/W0x0001 2D2DAO 32 kHz oscillator control
PMU_SR0x003832ConfigR/W0x00000000PMU ready status register
PMU_FR0x003C32ConfigR/W0x00000000PMU error flag register
AO_FR0x004032ConfigR/WAO domain interrupt flag register
PMU_PDAR0x004432ConfigR/WPower-down activation register
AO_PERI_CLR0x005032ConfigR/WWakeup interrupt clear register
AO_IOX0x006032ConfigR/W0x00000000Port F alternate function selection
AO_PADPU0x006432ConfigR/W0x000003FFPort F pull-up configuration

Register Descriptions

AO_CLK32K_SEL — AO 32 kHz Clock Source Selection

  • Address offset: 0x0000
  • Reset value: 0x0000_0006
BitsFieldDescription
[0]clk32k_sel32 kHz clock source: 0 = internal OSC 32 kHz, 1 = external XTAL 32 kHz
[1]pdisoenIsolation control on power-down entry: 0 = isolation disabled, 1 = isolation enabled
[2]pclkicgPCLK gate on power-down entry: 0 = PCLK from SoC domain enabled, 1 = PCLK from SoC domain disabled

AO_CLK1HZ_FD — 1 Hz Clock Frequency Divider

  • Address offset: 0x0004
  • Reset value: 0x0000_3FFF
BitsFieldDescription
[13:0]1Hz fdFrequency divider based on clk32k (OSC32K or XTAL32K). Formula: f_1Hz = f_32kHz / (2 × (fd + 1)). Default produces ≈ 0.976 Hz. For accurate 1 Hz set to 0x3E80.

AO_WKUP_INTEN — Wakeup Mask and Interrupt Enable

  • Address offset: 0x0008
  • Reset value: 0x0000_0000

Interrupt enable bits (0 = disabled, 1 = enabled):

BitsSource
[0]WDT reset source interrupt
[1]RTC event interrupt
[2]ATIMER event interrupt
[3]WDT event interrupt
[4]KPC event interrupt
[5]KPC async source interrupt
[7:6]Reserved

Wakeup mask bits (0 = source can wake system, 1 = source cannot wake system):

BitsSource
[8]WDT reset source wakeup mask
[9]RTC event wakeup mask
[11]WDT event wakeup mask
[12]KPC event wakeup mask
[13]KPC async source wakeup mask
[15:14]Reserved
[16]PF1 pull-down event wakeup mask
[17]PF0 pull-down event wakeup mask

AO_RSTCR_MASK — Reset Mask Control Register

  • Address offset: 0x000C
  • Reset value: 0x0000_001F

Each bit masks a reset source (0 = source can reset system, 1 = source cannot reset system):

BitsReset source
[0]PMU POR ready
[1]PMU 0.8 V digital regulator ready
[2]PMU 0.8 V analog regulator ready
[3]PMU 2.5 V regulator ready
[4]PMU bandgap ready

PMU_CR — PMU Block Control Register (Active Mode)

  • Address offset: 0x0010
  • Reset value: 0x0000_007C
BitsFieldDescription
[0]VR85D voltage0.8 V digital regulator voltage: 0 = 0.8 V, 1 = 0.95 V (higher performance)
[1]VR85A voltage0.8 V analog regulator voltage: 0 = 0.8 V, 1 = 0.95 V (higher performance)
[2]POCPower-on control: 0 = disabled (forces POC_IO = 0), 1 = enabled
[3]ioutReference current circuit (ibias / test_top): 0 = disabled, 1 = enabled
[4]VR85D enable0.8 V digital regulator: 0 = disabled, 1 = enabled
[5]VR85A enable0.8 V analog regulator: 0 = disabled, 1 = enabled
[6]VR25 enable2.5 V regulator: 0 = disabled, 1 = enabled

PMU_CRLP — PMU Block Control Register (Sleep / Deep-Sleep)

  • Address offset: 0x0014
  • Reset value: 0x0000_007C

Same bit definition as PMU_CR. These are separate configuration values applied when entering sleep or deep-sleep mode.

PMU_CRPD — PMU Block Control Register (Power-Down)

  • Address offset: 0x0018
  • Reset value: 0x0000_007C

Same bit definition as PMU_CR. These are separate configuration values applied when entering power-down mode.

PMU_DFT — PMU Default Test Register

  • Address offset: 0x001C
  • Reset value: 0x0000_0002
BitsFieldDescription
[2:0]test modeOutput selection on PMU_ANA_TEST pin: 010 = disabled (default), 000 = monitor VDD25, 001 = monitor SOURCE_10UA, 1xx = monitor selection from PMU_TEST_SEL (bits [5:3])
[5:3]PMU_TEST_SELReference bias selection when bits [2:0] = 1xx: 000 = VSS, 001 = VP60V (0.6 V), 010 = VDD_AO (0.8 V), 011 = VP60A (0.6 V), 100 = VP60D (0.6 V), 101 = VOLT1 (1.0 V), 110 = VOUT1P2 (1.2 V), 111 = VDD2 (2.0 V)

PMU_TRM0 — PMU Trimming Low 32-bit Register (Active Mode)

  • Address offset: 0x0020
  • Reset value: 0x0842_1080
BitsFieldDescription
[2:0]VDDAO trimVDDAO voltage: 000 = 0.8 V, 001 = 0.75 V, 010 = 0.7 V, 011 = 0.65 V, 1xx = 0.6 V
[7:3]VR85D bias trim0.6 V reference for 0.8 V digital regulator. 10000 = 0.8 V (default). See VDD85 Trim Table below.
[12:8]VR85A bias trim0.6 V reference for 0.8 V analog regulator. 10000 = 0.8 V (default).
[17:13]VR25 bias trim0.6 V reference for 2.5 V regulator. 10000 = 0.8 V (default).
[22:18]BG CTAT trimBandgap CTAT parameter. 10000 = 0.8 V (default).
[27:23]BG PTAT trimBandgap PTAT parameter. 10000 = 0.8 V (default).
[31:28]IREF trim [3:0]Bits [3:0] of reference current trim for SINK_1uA / SOURCE_10uA. Must be combined with PMU_TRM1[1:0] for the full 6-bit value.

PMU_TRM1 — PMU Trimming High 32-bit Register (Active Mode)

  • Address offset: 0x0024
  • Reset value: 0x0000_0002
BitsFieldDescription
[1:0]IREF trim [5:4]Bits [5:4] of reference current trim. Full value = {PMU_TRM1[1:0], PMU_TRM0[31:28]}. 100000 = 10.002 µA (default). This value is set by chip test and should not be adjusted.

PMU_TRMLP0 — PMU Trimming Low 32-bit Register (Low-Power)

  • Address offset: 0x0028
  • Reset value: 0x0842_1080

Same bit definition as PMU_TRM0. Applied during sleep and deep-sleep mode.

PMU_TRMLP1 — PMU Trimming High 32-bit Register (Low-Power)

  • Address offset: 0x002C
  • Reset value: 0x0000_001F

Same bit definition as PMU_TRM1. Applied during sleep and deep-sleep mode.

AO_OSC_CR — AO 32 kHz Oscillator Control Register

  • Address offset: 0x0034
  • Reset value: 0x0001_2D2D
BitsFieldDescription
[0]Active mode enableOSC32K enable for active mode: 0 = disabled, 1 = enabled
[7:1]Active mode trimOSC32K trimming for active mode. 0100110 = 33 kHz (default). This value is set by chip test and should not be adjusted.
[8]Sleep/deep-sleep enableOSC32K enable for sleep and deep-sleep: 0 = disabled, 1 = enabled
[15:9]Sleep/deep-sleep trimOSC32K trimming for sleep and deep-sleep. 0100110 = 33 kHz (default).
[16]Power-down enableOSC32K enable for power-down mode: 0 = disabled, 1 = enabled

PMU_SR — PMU Ready Status Register

  • Address offset: 0x0038
  • Reset value: 0x0000_001F
  • Access: Read-only (real-time status)
BitsFieldDescription
[0]POR ready0 = VDD below 1.3 V, 1 = VDD above 1.3 V
[1]VR85D ready0 = VR85D below target, 1 = VR85D ready (≥ 0.8 V default)
[2]VR85A ready0 = VR85A below target, 1 = VR85A ready (≥ 0.8 V default)
[3]VR25 ready0 = VR25 below target, 1 = VR25 ready (≥ 2.5 V default)
[4]BG ready0 = bandgap below target, 1 = bandgap ready

PMU_FR — PMU Error Flag Register

  • Address offset: 0x003C
  • Reset value: 0x0000_0000

Bits are set if the corresponding supply was below its threshold after power-on. Write 1 to a bit to clear it.

BitsFieldDescription
[0]POR error1 = VDD was below 1.3 V after power-on
[1]VR85D error1 = VR85D was below 0.8 V target after power-on
[2]VR85A error1 = VR85A was below 0.8 V target after power-on
[3]VR25 error1 = VR25 was below 2.5 V target after power-on
[4]BG error1 = bandgap was below 0.6 V target after power-on

AO_FR — AO Domain Interrupt Flag Register

  • Address offset: 0x0040
  • Reset value: 0x0000_0000

Write 1 to a bit to clear it.

BitsFieldDescription
[0]WDT reset flag1 = WDT reset interrupt occurred
[1]RTC event flag1 = RTC event interrupt occurred
[2]ATIMER event flag1 = ATIMER event interrupt occurred
[3]WDT event flag1 = WDT event interrupt occurred
[4]KPC event flag1 = KPC event interrupt occurred
[5]KPC async flag1 = KPC async source interrupt occurred
[7:6]Reserved
[8]PF1 pull-down flag1 = PF1 pull-down event occurred
[9]PF0 pull-down flag1 = PF0 pull-down event occurred

PMU_PDAR — Power-Down Activation Register

  • Address offset: 0x0044
  • Type: AR (action register)
  • Reset value: 0x0000_0000 (always reads zero)
BitsFieldDescription
[31:0]Write 0x0000_005A to enter power-down mode

AO_PERI_CLR — Wakeup Interrupt Clear Register

  • Address offset: 0x0050
  • Type: AR (action register, always reads zero)
BitsFieldDescription
[31:0]Write 0x0000_00AA to clear all wakeup interrupt flags

AO_IOX — Port F Alternate Function Selection Register

  • Address offset: 0x0060
  • Reset value: 0x0000_0000
BitsFieldDescription
[0]AF select0 = GPIO (AF0, default) for Port F, 1 = Keypad (AF1): PF[5:2] as KPI[3:0], PF[9:6] as KPO[3:0]

Note: Use AO_IOX to configure Port F alternate function selection. The AFSEL registers for Port F (0x5012_F028, 0x5012_F02C) are not used.

AO_PADPU — Port F Pull-Up Configuration Register

  • Address offset: 0x0064
  • Reset value: 0x0000_03FF (all pull-ups enabled by default)

Each bit controls pull-up for the corresponding Port F pin (0 = floating when undriven, 1 = weak pull-up when undriven):

BitsPin
[0]PF0
[1]PF1
[2]PF2
[3]PF3
[4]PF4
[5]PF5
[6]PF6
[7]PF7
[8]PF8
[9]PF9

Note: Use AO_PADPU to configure Port F pull-ups. The GPIOPU register for Port F (0x5012_F174) is not used.

VDD85 Trim Table

pmu_TRM_DP60[4]pmu_TRM_DP60[3]pmu_TRM_DP60[2]pmu_TRM_DP60[1]pmu_TRM_DP60[0]VOUTP60 (mV)VDD85A (800 mV)VDD85A (950 mV)
00000520693823
00001525700831
00010530706839
00011535713847
00100540720855
00101545726862
00110550733870
00111555740878
01000560746886
01001565753894
01010570760902
01011575766910
01100580773918
01101585780926
01110590786934
01111595793942
10000600800950
10001605806957
10010610813965
10011615820973
10100620826981
10101625833989
10110630840997
101116358461005
110006408531013
110016458601021
110106508661029
110116558731037
111006608801045
111016658861052
111106708931060
111116759001068