diff --git a/data/registers/bkp_v1.yaml b/data/registers/bkp_v1.yaml new file mode 100644 index 0000000..f02d004 --- /dev/null +++ b/data/registers/bkp_v1.yaml @@ -0,0 +1,158 @@ +--- +block/BKP: + description: Backup registers + items: + - name: DR + description: Data register + array: + offsets: + - 0 + - 4 + - 8 + - 12 + - 16 + - 20 + - 24 + - 28 + - 32 + - 36 + - 60 + - 64 + - 68 + - 72 + - 76 + - 80 + - 84 + - 88 + - 92 + - 96 + - 100 + - 104 + - 108 + - 112 + - 116 + - 120 + - 124 + - 128 + - 132 + - 136 + - 140 + - 144 + - 148 + - 152 + - 156 + - 160 + - 164 + - 168 + - 172 + - 176 + - 180 + - 184 + byte_offset: 0 + fieldset: DR + - name: RTCCR + description: RTC clock calibration register + byte_offset: 40 + fieldset: RTCCR + - name: CR + description: Control register + byte_offset: 44 + fieldset: CR + - name: CSR + description: Control/status register + byte_offset: 48 + fieldset: CSR +fieldset/DR: + description: Data register + fields: + - name: D + description: Backup data + bit_offset: 0 + bit_size: 16 +fieldset/CR: + description: Control register + fields: + - name: TPE + description: Tamper pin enable + bit_offset: 0 + bit_size: 1 + - name: TPAL + description: Tamper pin active level + bit_offset: 1 + bit_size: 1 + enum: TPAL +fieldset/CSR: + description: Control/status register + fields: + - name: CTE + description: Clear Tamper event + bit_offset: 0 + bit_size: 1 + enum_write: CTEW + - name: CTI + description: Clear Tamper Interrupt + bit_offset: 1 + bit_size: 1 + enum_write: CTIW + - name: TPIE + description: Tamper Pin interrupt enable + bit_offset: 2 + bit_size: 1 + - name: TEF + description: Tamper Event Flag + bit_offset: 8 + bit_size: 1 + - name: TIF + description: Tamper Interrupt Flag + bit_offset: 9 + bit_size: 1 +fieldset/RTCCR: + description: RTC clock calibration register + fields: + - name: CAL + description: Calibration value + bit_offset: 0 + bit_size: 7 + - name: CCO + description: Calibration Clock Output + bit_offset: 7 + bit_size: 1 + - name: ASOE + description: Alarm or second output enable + bit_offset: 8 + bit_size: 1 + - name: ASOS + description: Alarm or second output selection + bit_offset: 9 + bit_size: 1 + enum: ASOS +enum/ASOS: + bit_size: 1 + variants: + - name: Alarm + description: RTC Alarm pulse output selected + value: 0 + - name: Second + description: RTC Second pulse output selected + value: 1 +enum/CTEW: + bit_size: 1 + variants: + - name: Reset + description: Reset the TEF Tamper event flag (and the Tamper detector) + value: 1 +enum/CTIW: + bit_size: 1 + variants: + - name: Clear + description: Clear the Tamper interrupt and the TIF Tamper interrupt flag + value: 1 +enum/TPAL: + bit_size: 1 + variants: + - name: High + description: A high level on the TAMPER pin resets all data backup registers (if TPE bit is set) + value: 0 + - name: Low + description: A low level on the TAMPER pin resets all data backup registers (if TPE bit is set) + value: 1 diff --git a/stm32data/__main__.py b/stm32data/__main__.py index da5284e..d8856ca 100755 --- a/stm32data/__main__.py +++ b/stm32data/__main__.py @@ -162,6 +162,7 @@ perimap = [ ('.*:LTDC:lcdtft1_v1_1', ('ltdc', 'v1', 'LTDC')), ('.*:MDIOS:mdios1_v1_0', ('mdios', 'v1', 'MDIOS')), ('.*:QUADSPI:quadspi1_v1_0', ('quadspi', 'v1', 'QUADSPI')), + ('STM32F1.*:BKP.*', ('bkp', 'v1', 'BKP')), ('.*:RTC:rtc2_v2_6', ('rtc', 'v2', 'RTC')), ('.*:RTC:rtc2_v2_WB', ('rtc', 'wb', 'RTC')), ('.*:SAI:sai1_v1_1', ('sai', 'v1', 'SAI')), @@ -327,7 +328,7 @@ peri_rename = { ghost_peris = [ 'GPIOA', 'GPIOB', 'GPIOC', 'GPIOD', 'GPIOE', 'GPIOF', 'GPIOG', 'GPIOH', 'GPIOI', 'GPIOJ', 'GPIOK', 'GPIOL', 'GPIOM', 'GPION', 'GPIOO', 'GPIOP', 'GPIOQ', 'GPIOR', 'GPIOS', 'GPIOT', 'DMA1', 'DMA2', 'BDMA', 'DMAMUX', 'DMAMUX1', 'DMAMUX2', - 'SYSCFG', 'EXTI', 'FLASH', 'DBGMCU', 'CRS', 'PWR', 'AFIO', + 'SYSCFG', 'EXTI', 'FLASH', 'DBGMCU', 'CRS', 'PWR', 'AFIO', 'BKP', ] alt_peri_defines = {