bkp.h

Backup register (BKP) suport.

Types

struct bkp_dev

Backup peripheral device type.

Public Members
bkp_reg_map * regs

Register map.

struct bkp_reg_map

Backup peripheral register map type.

Public Members
const uint32 RESERVED1

Reserved.

__io uint32 DR1

Data register 1.

__io uint32 DR2

Data register 2.

__io uint32 DR3

Data register 3.

__io uint32 DR4

Data register 4.

__io uint32 DR5

Data register 5.

__io uint32 DR6

Data register 6.

__io uint32 DR7

Data register 7.

__io uint32 DR8

Data register 8.

__io uint32 DR9

Data register 9.

__io uint32 DR10

Data register 10.

__io uint32 RTCCR

RTC control register.

__io uint32 CR

Control register.

__io uint32 CSR

Control and status register.

const uint32 RESERVED2

Reserved.

const uint32 RESERVED3

Reserved.

__io uint32 DR11

Data register 11.

__io uint32 DR12

Data register 12.

__io uint32 DR13

Data register 13.

__io uint32 DR14

Data register 14.

__io uint32 DR15

Data register 15.

__io uint32 DR16

Data register 16.

__io uint32 DR17

Data register 17.

__io uint32 DR18

Data register 18.

__io uint32 DR19

Data register 19.

__io uint32 DR20

Data register 20.

__io uint32 DR21

Data register 21.

__io uint32 DR22

Data register 22.

__io uint32 DR23

Data register 23.

__io uint32 DR24

Data register 24.

__io uint32 DR25

Data register 25.

__io uint32 DR26

Data register 26.

__io uint32 DR27

Data register 27.

__io uint32 DR28

Data register 28.

__io uint32 DR29

Data register 29.

__io uint32 DR30

Data register 30.

__io uint32 DR31

Data register 31.

__io uint32 DR32

Data register 32.

__io uint32 DR33

Data register 33.

__io uint32 DR34

Data register 34.

__io uint32 DR35

Data register 35.

__io uint32 DR36

Data register 36.

__io uint32 DR37

Data register 37.

__io uint32 DR38

Data register 38.

__io uint32 DR39

Data register 39.

__io uint32 DR40

Data register 40.

__io uint32 DR41

Data register 41.

__io uint32 DR42

Data register 42.

Devices

const bkp_dev * BKP

Backup device.

Convenience Functions

void bkp_init(void)

Initialize backup interface.

Enables the power and backup interface clocks, and resets the backup device.

void bkp_enable_writes(void)

Enable write access to the backup registers.

Backup interface must be initialized for subsequent register writes to work.

See:bkp_init()

void bkp_disable_writes(void)

Disable write access to the backup registers.

uint16 bkp_read(uint8 reg)

Read a value from given backup data register.

Parameters:
  • reg -

    Data register to read, from 1 to BKP_NR_DATA_REGS (10 on medium-density devices, 42 on high-density devices).

void bkp_write(uint8 reg, uint16 val)

Write a value to given data register.

Write access to backup registers must be enabled.

Parameters:
  • reg -

    Data register to write, from 1 to BKP_NR_DATA_REGS (10 on medium-density devices, 42 on high-density devices).

  • val -

    Value to write into the register.

See:

bkp_enable_writes()

Register Map Base Pointers

BKP_BASE

Backup peripheral register map base pointer.

Register Bit Definitions

Data Registers

BKP_DR_D

RTC Clock Calibration Register

BKP_RTCCR_ASOS_BIT

BKP_RTCCR_ASOE_BIT

BKP_RTCCR_CCO_BIT

BKP_RTCCR_ASOS

BKP_RTCCR_ASOE

BKP_RTCCR_CCO

BKP_RTCCR_CAL

Backup control register

BKP_CR_TPAL_BIT

BKP_CR_TPE_BIT

BKP_CR_TPAL

BKP_CR_TPE

Backup control/status register

BKP_CSR_TIF_BIT

BKP_CSR_TEF_BIT

BKP_CSR_TPIE_BIT

BKP_CSR_CTI_BIT

BKP_CSR_CTE_BIT

BKP_CSR_TIF

BKP_CSR_TEF

BKP_CSR_TPIE

BKP_CSR_CTI

BKP_CSR_CTE