<!DOCTYPE Register_Definition_File>
<Processor name="STM32F103xx" description="STM32F103xx">
  <RegisterGroup name="FSMC" description="Flexible static memory controller" start="0xA0000000">
    <Register name="BCR1" description="SRAM/NOR-Flash chip-select control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x000030D0" reset_mask="0xFFFFFFFF">
      <BitField name="CBURSTRW" description="CBURSTRW" start="19" size="1" />
      <BitField name="ASYNCWAIT" description="ASYNCWAIT" start="15" size="1" />
      <BitField name="EXTMOD" description="EXTMOD" start="14" size="1" />
      <BitField name="WAITEN" description="WAITEN" start="13" size="1" />
      <BitField name="WREN" description="WREN" start="12" size="1" />
      <BitField name="WAITCFG" description="WAITCFG" start="11" size="1" />
      <BitField name="WAITPOL" description="WAITPOL" start="9" size="1" />
      <BitField name="BURSTEN" description="BURSTEN" start="8" size="1" />
      <BitField name="FACCEN" description="FACCEN" start="6" size="1" />
      <BitField name="MWID" description="MWID" start="4" size="2" />
      <BitField name="MTYP" description="MTYP" start="2" size="2" />
      <BitField name="MUXEN" description="MUXEN" start="1" size="1" />
      <BitField name="MBKEN" description="MBKEN" start="0" size="1" />
    </Register>
    <Register name="BTR1" description="SRAM/NOR-Flash chip-select timing register 1" start="+0x4" size="4" access="Read/Write" reset_value="0xFFFFFFFF" reset_mask="0xFFFFFFFF">
      <BitField name="ACCMOD" description="ACCMOD" start="28" size="2" />
      <BitField name="DATLAT" description="DATLAT" start="24" size="4" />
      <BitField name="CLKDIV" description="CLKDIV" start="20" size="4" />
      <BitField name="BUSTURN" description="BUSTURN" start="16" size="4" />
      <BitField name="DATAST" description="DATAST" start="8" size="8" />
      <BitField name="ADDHLD" description="ADDHLD" start="4" size="4" />
      <BitField name="ADDSET" description="ADDSET" start="0" size="4" />
    </Register>
    <Register name="BCR2" description="SRAM/NOR-Flash chip-select control register 2" start="+0x8" size="4" access="Read/Write" reset_value="0x000030D0" reset_mask="0xFFFFFFFF">
      <BitField name="CBURSTRW" description="CBURSTRW" start="19" size="1" />
      <BitField name="ASYNCWAIT" description="ASYNCWAIT" start="15" size="1" />
      <BitField name="EXTMOD" description="EXTMOD" start="14" size="1" />
      <BitField name="WAITEN" description="WAITEN" start="13" size="1" />
      <BitField name="WREN" description="WREN" start="12" size="1" />
      <BitField name="WAITCFG" description="WAITCFG" start="11" size="1" />
      <BitField name="WRAPMOD" description="WRAPMOD" start="10" size="1" />
      <BitField name="WAITPOL" description="WAITPOL" start="9" size="1" />
      <BitField name="BURSTEN" description="BURSTEN" start="8" size="1" />
      <BitField name="FACCEN" description="FACCEN" start="6" size="1" />
      <BitField name="MWID" description="MWID" start="4" size="2" />
      <BitField name="MTYP" description="MTYP" start="2" size="2" />
      <BitField name="MUXEN" description="MUXEN" start="1" size="1" />
      <BitField name="MBKEN" description="MBKEN" start="0" size="1" />
    </Register>
    <Register name="BTR2" description="SRAM/NOR-Flash chip-select timing register 2" start="+0xC" size="4" access="Read/Write" reset_value="0xFFFFFFFF" reset_mask="0xFFFFFFFF">
      <BitField name="ACCMOD" description="ACCMOD" start="28" size="2" />
      <BitField name="DATLAT" description="DATLAT" start="24" size="4" />
      <BitField name="CLKDIV" description="CLKDIV" start="20" size="4" />
      <BitField name="BUSTURN" description="BUSTURN" start="16" size="4" />
      <BitField name="DATAST" description="DATAST" start="8" size="8" />
      <BitField name="ADDHLD" description="ADDHLD" start="4" size="4" />
      <BitField name="ADDSET" description="ADDSET" start="0" size="4" />
    </Register>
    <Register name="BCR3" description="SRAM/NOR-Flash chip-select control register 3" start="+0x10" size="4" access="Read/Write" reset_value="0x000030D0" reset_mask="0xFFFFFFFF">
      <BitField name="CBURSTRW" description="CBURSTRW" start="19" size="1" />
      <BitField name="ASYNCWAIT" description="ASYNCWAIT" start="15" size="1" />
      <BitField name="EXTMOD" description="EXTMOD" start="14" size="1" />
      <BitField name="WAITEN" description="WAITEN" start="13" size="1" />
      <BitField name="WREN" description="WREN" start="12" size="1" />
      <BitField name="WAITCFG" description="WAITCFG" start="11" size="1" />
      <BitField name="WRAPMOD" description="WRAPMOD" start="10" size="1" />
      <BitField name="WAITPOL" description="WAITPOL" start="9" size="1" />
      <BitField name="BURSTEN" description="BURSTEN" start="8" size="1" />
      <BitField name="FACCEN" description="FACCEN" start="6" size="1" />
      <BitField name="MWID" description="MWID" start="4" size="2" />
      <BitField name="MTYP" description="MTYP" start="2" size="2" />
      <BitField name="MUXEN" description="MUXEN" start="1" size="1" />
      <BitField name="MBKEN" description="MBKEN" start="0" size="1" />
    </Register>
    <Register name="BTR3" description="SRAM/NOR-Flash chip-select timing register 3" start="+0x14" size="4" access="Read/Write" reset_value="0xFFFFFFFF" reset_mask="0xFFFFFFFF">
      <BitField name="ACCMOD" description="ACCMOD" start="28" size="2" />
      <BitField name="DATLAT" description="DATLAT" start="24" size="4" />
      <BitField name="CLKDIV" description="CLKDIV" start="20" size="4" />
      <BitField name="BUSTURN" description="BUSTURN" start="16" size="4" />
      <BitField name="DATAST" description="DATAST" start="8" size="8" />
      <BitField name="ADDHLD" description="ADDHLD" start="4" size="4" />
      <BitField name="ADDSET" description="ADDSET" start="0" size="4" />
    </Register>
    <Register name="BCR4" description="SRAM/NOR-Flash chip-select control register 4" start="+0x18" size="4" access="Read/Write" reset_value="0x000030D0" reset_mask="0xFFFFFFFF">
      <BitField name="CBURSTRW" description="CBURSTRW" start="19" size="1" />
      <BitField name="ASYNCWAIT" description="ASYNCWAIT" start="15" size="1" />
      <BitField name="EXTMOD" description="EXTMOD" start="14" size="1" />
      <BitField name="WAITEN" description="WAITEN" start="13" size="1" />
      <BitField name="WREN" description="WREN" start="12" size="1" />
      <BitField name="WAITCFG" description="WAITCFG" start="11" size="1" />
      <BitField name="WRAPMOD" description="WRAPMOD" start="10" size="1" />
      <BitField name="WAITPOL" description="WAITPOL" start="9" size="1" />
      <BitField name="BURSTEN" description="BURSTEN" start="8" size="1" />
      <BitField name="FACCEN" description="FACCEN" start="6" size="1" />
      <BitField name="MWID" description="MWID" start="4" size="2" />
      <BitField name="MTYP" description="MTYP" start="2" size="2" />
      <BitField name="MUXEN" description="MUXEN" start="1" size="1" />
      <BitField name="MBKEN" description="MBKEN" start="0" size="1" />
    </Register>
    <Register name="BTR4" description="SRAM/NOR-Flash chip-select timing register 4" start="+0x1C" size="4" access="Read/Write" reset_value="0xFFFFFFFF" reset_mask="0xFFFFFFFF">
      <BitField name="ACCMOD" description="ACCMOD" start="28" size="2" />
      <BitField name="DATLAT" description="DATLAT" start="24" size="4" />
      <BitField name="CLKDIV" description="CLKDIV" start="20" size="4" />
      <BitField name="BUSTURN" description="BUSTURN" start="16" size="4" />
      <BitField name="DATAST" description="DATAST" start="8" size="8" />
      <BitField name="ADDHLD" description="ADDHLD" start="4" size="4" />
      <BitField name="ADDSET" description="ADDSET" start="0" size="4" />
    </Register>
    <Register name="PCR2" description="PC Card/NAND Flash control register 2" start="+0x60" size="4" access="Read/Write" reset_value="0x00000018" reset_mask="0xFFFFFFFF">
      <BitField name="ECCPS" description="ECCPS" start="17" size="3" />
      <BitField name="TAR" description="TAR" start="13" size="4" />
      <BitField name="TCLR" description="TCLR" start="9" size="4" />
      <BitField name="ECCEN" description="ECCEN" start="6" size="1" />
      <BitField name="PWID" description="PWID" start="4" size="2" />
      <BitField name="PTYP" description="PTYP" start="3" size="1" />
      <BitField name="PBKEN" description="PBKEN" start="2" size="1" />
      <BitField name="PWAITEN" description="PWAITEN" start="1" size="1" />
    </Register>
    <Register name="SR2" description="FIFO status and interrupt register 2" start="+0x64" size="4" reset_value="0x00000040" reset_mask="0xFFFFFFFF">
      <BitField name="FEMPT" description="FEMPT" start="6" size="1" access="ReadOnly" />
      <BitField name="IFEN" description="IFEN" start="5" size="1" access="Read/Write" />
      <BitField name="ILEN" description="ILEN" start="4" size="1" access="Read/Write" />
      <BitField name="IREN" description="IREN" start="3" size="1" access="Read/Write" />
      <BitField name="IFS" description="IFS" start="2" size="1" access="Read/Write" />
      <BitField name="ILS" description="ILS" start="1" size="1" access="Read/Write" />
      <BitField name="IRS" description="IRS" start="0" size="1" access="Read/Write" />
    </Register>
    <Register name="PMEM2" description="Common memory space timing register 2" start="+0x68" size="4" access="Read/Write" reset_value="0xFCFCFCFC" reset_mask="0xFFFFFFFF">
      <BitField name="MEMHIZx" description="MEMHIZx" start="24" size="8" />
      <BitField name="MEMHOLDx" description="MEMHOLDx" start="16" size="8" />
      <BitField name="MEMWAITx" description="MEMWAITx" start="8" size="8" />
      <BitField name="MEMSETx" description="MEMSETx" start="0" size="8" />
    </Register>
    <Register name="PATT2" description="Attribute memory space timing register 2" start="+0x6C" size="4" access="Read/Write" reset_value="0xFCFCFCFC" reset_mask="0xFFFFFFFF">
      <BitField name="ATTHIZx" description="Attribute memory x databus HiZ time" start="24" size="8" />
      <BitField name="ATTHOLDx" description="Attribute memory x hold time" start="16" size="8" />
      <BitField name="ATTWAITx" description="Attribute memory x wait time" start="8" size="8" />
      <BitField name="ATTSETx" description="Attribute memory x setup time" start="0" size="8" />
    </Register>
    <Register name="ECCR2" description="ECC result register 2" start="+0x74" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ECCx" description="ECC result" start="0" size="32" />
    </Register>
    <Register name="PCR3" description="PC Card/NAND Flash control register 3" start="+0x80" size="4" access="Read/Write" reset_value="0x00000018" reset_mask="0xFFFFFFFF">
      <BitField name="ECCPS" description="ECCPS" start="17" size="3" />
      <BitField name="TAR" description="TAR" start="13" size="4" />
      <BitField name="TCLR" description="TCLR" start="9" size="4" />
      <BitField name="ECCEN" description="ECCEN" start="6" size="1" />
      <BitField name="PWID" description="PWID" start="4" size="2" />
      <BitField name="PTYP" description="PTYP" start="3" size="1" />
      <BitField name="PBKEN" description="PBKEN" start="2" size="1" />
      <BitField name="PWAITEN" description="PWAITEN" start="1" size="1" />
    </Register>
    <Register name="SR3" description="FIFO status and interrupt register 3" start="+0x84" size="4" reset_value="0x00000040" reset_mask="0xFFFFFFFF">
      <BitField name="FEMPT" description="FEMPT" start="6" size="1" access="ReadOnly" />
      <BitField name="IFEN" description="IFEN" start="5" size="1" access="Read/Write" />
      <BitField name="ILEN" description="ILEN" start="4" size="1" access="Read/Write" />
      <BitField name="IREN" description="IREN" start="3" size="1" access="Read/Write" />
      <BitField name="IFS" description="IFS" start="2" size="1" access="Read/Write" />
      <BitField name="ILS" description="ILS" start="1" size="1" access="Read/Write" />
      <BitField name="IRS" description="IRS" start="0" size="1" access="Read/Write" />
    </Register>
    <Register name="PMEM3" description="Common memory space timing register 3" start="+0x88" size="4" access="Read/Write" reset_value="0xFCFCFCFC" reset_mask="0xFFFFFFFF">
      <BitField name="MEMHIZx" description="MEMHIZx" start="24" size="8" />
      <BitField name="MEMHOLDx" description="MEMHOLDx" start="16" size="8" />
      <BitField name="MEMWAITx" description="MEMWAITx" start="8" size="8" />
      <BitField name="MEMSETx" description="MEMSETx" start="0" size="8" />
    </Register>
    <Register name="PATT3" description="Attribute memory space timing register 3" start="+0x8C" size="4" access="Read/Write" reset_value="0xFCFCFCFC" reset_mask="0xFFFFFFFF">
      <BitField name="ATTHIZx" description="ATTHIZx" start="24" size="8" />
      <BitField name="ATTHOLDx" description="ATTHOLDx" start="16" size="8" />
      <BitField name="ATTWAITx" description="ATTWAITx" start="8" size="8" />
      <BitField name="ATTSETx" description="ATTSETx" start="0" size="8" />
    </Register>
    <Register name="ECCR3" description="ECC result register 3" start="+0x94" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ECCx" description="ECCx" start="0" size="32" />
    </Register>
    <Register name="PCR4" description="PC Card/NAND Flash control register 4" start="+0xA0" size="4" access="Read/Write" reset_value="0x00000018" reset_mask="0xFFFFFFFF">
      <BitField name="ECCPS" description="ECCPS" start="17" size="3" />
      <BitField name="TAR" description="TAR" start="13" size="4" />
      <BitField name="TCLR" description="TCLR" start="9" size="4" />
      <BitField name="ECCEN" description="ECCEN" start="6" size="1" />
      <BitField name="PWID" description="PWID" start="4" size="2" />
      <BitField name="PTYP" description="PTYP" start="3" size="1" />
      <BitField name="PBKEN" description="PBKEN" start="2" size="1" />
      <BitField name="PWAITEN" description="PWAITEN" start="1" size="1" />
    </Register>
    <Register name="SR4" description="FIFO status and interrupt register 4" start="+0xA4" size="4" reset_value="0x00000040" reset_mask="0xFFFFFFFF">
      <BitField name="FEMPT" description="FEMPT" start="6" size="1" access="ReadOnly" />
      <BitField name="IFEN" description="IFEN" start="5" size="1" access="Read/Write" />
      <BitField name="ILEN" description="ILEN" start="4" size="1" access="Read/Write" />
      <BitField name="IREN" description="IREN" start="3" size="1" access="Read/Write" />
      <BitField name="IFS" description="IFS" start="2" size="1" access="Read/Write" />
      <BitField name="ILS" description="ILS" start="1" size="1" access="Read/Write" />
      <BitField name="IRS" description="IRS" start="0" size="1" access="Read/Write" />
    </Register>
    <Register name="PMEM4" description="Common memory space timing register 4" start="+0xA8" size="4" access="Read/Write" reset_value="0xFCFCFCFC" reset_mask="0xFFFFFFFF">
      <BitField name="MEMHIZx" description="MEMHIZx" start="24" size="8" />
      <BitField name="MEMHOLDx" description="MEMHOLDx" start="16" size="8" />
      <BitField name="MEMWAITx" description="MEMWAITx" start="8" size="8" />
      <BitField name="MEMSETx" description="MEMSETx" start="0" size="8" />
    </Register>
    <Register name="PATT4" description="Attribute memory space timing register 4" start="+0xAC" size="4" access="Read/Write" reset_value="0xFCFCFCFC" reset_mask="0xFFFFFFFF">
      <BitField name="ATTHIZx" description="ATTHIZx" start="24" size="8" />
      <BitField name="ATTHOLDx" description="ATTHOLDx" start="16" size="8" />
      <BitField name="ATTWAITx" description="ATTWAITx" start="8" size="8" />
      <BitField name="ATTSETx" description="ATTSETx" start="0" size="8" />
    </Register>
    <Register name="PIO4" description="I/O space timing register 4" start="+0xB0" size="4" access="Read/Write" reset_value="0xFCFCFCFC" reset_mask="0xFFFFFFFF">
      <BitField name="IOHIZx" description="IOHIZx" start="24" size="8" />
      <BitField name="IOHOLDx" description="IOHOLDx" start="16" size="8" />
      <BitField name="IOWAITx" description="IOWAITx" start="8" size="8" />
      <BitField name="IOSETx" description="IOSETx" start="0" size="8" />
    </Register>
    <Register name="BWTR1" description="SRAM/NOR-Flash write timing registers 1" start="+0x104" size="4" access="Read/Write" reset_value="0x0FFFFFFF" reset_mask="0xFFFFFFFF">
      <BitField name="ACCMOD" description="ACCMOD" start="28" size="2" />
      <BitField name="DATLAT" description="DATLAT" start="24" size="4" />
      <BitField name="CLKDIV" description="CLKDIV" start="20" size="4" />
      <BitField name="DATAST" description="DATAST" start="8" size="8" />
      <BitField name="ADDHLD" description="ADDHLD" start="4" size="4" />
      <BitField name="ADDSET" description="ADDSET" start="0" size="4" />
    </Register>
    <Register name="BWTR2" description="SRAM/NOR-Flash write timing registers 2" start="+0x10C" size="4" access="Read/Write" reset_value="0x0FFFFFFF" reset_mask="0xFFFFFFFF">
      <BitField name="ACCMOD" description="ACCMOD" start="28" size="2" />
      <BitField name="DATLAT" description="DATLAT" start="24" size="4" />
      <BitField name="CLKDIV" description="CLKDIV" start="20" size="4" />
      <BitField name="DATAST" description="DATAST" start="8" size="8" />
      <BitField name="ADDHLD" description="ADDHLD" start="4" size="4" />
      <BitField name="ADDSET" description="ADDSET" start="0" size="4" />
    </Register>
    <Register name="BWTR3" description="SRAM/NOR-Flash write timing registers 3" start="+0x114" size="4" access="Read/Write" reset_value="0x0FFFFFFF" reset_mask="0xFFFFFFFF">
      <BitField name="ACCMOD" description="ACCMOD" start="28" size="2" />
      <BitField name="DATLAT" description="DATLAT" start="24" size="4" />
      <BitField name="CLKDIV" description="CLKDIV" start="20" size="4" />
      <BitField name="DATAST" description="DATAST" start="8" size="8" />
      <BitField name="ADDHLD" description="ADDHLD" start="4" size="4" />
      <BitField name="ADDSET" description="ADDSET" start="0" size="4" />
    </Register>
    <Register name="BWTR4" description="SRAM/NOR-Flash write timing registers 4" start="+0x11C" size="4" access="Read/Write" reset_value="0x0FFFFFFF" reset_mask="0xFFFFFFFF">
      <BitField name="ACCMOD" description="ACCMOD" start="28" size="2" />
      <BitField name="DATLAT" description="DATLAT" start="24" size="4" />
      <BitField name="CLKDIV" description="CLKDIV" start="20" size="4" />
      <BitField name="DATAST" description="DATAST" start="8" size="8" />
      <BitField name="ADDHLD" description="ADDHLD" start="4" size="4" />
      <BitField name="ADDSET" description="ADDSET" start="0" size="4" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="PWR" description="Power control" start="0x40007000">
    <Register name="CR" description="Power control register (PWR_CR)" start="+0x0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LPDS" description="Low Power Deep Sleep" start="0" size="1" />
      <BitField name="PDDS" description="Power Down Deep Sleep" start="1" size="1" />
      <BitField name="CWUF" description="Clear Wake-up Flag" start="2" size="1" />
      <BitField name="CSBF" description="Clear STANDBY Flag" start="3" size="1" />
      <BitField name="PVDE" description="Power Voltage Detector Enable" start="4" size="1" />
      <BitField name="PLS" description="PVD Level Selection" start="5" size="3" />
      <BitField name="DBP" description="Disable Backup Domain write protection" start="8" size="1" />
    </Register>
    <Register name="CSR" description="Power control register (PWR_CR)" start="+0x4" size="4" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="WUF" description="Wake-Up Flag" start="0" size="1" access="ReadOnly" />
      <BitField name="SBF" description="STANDBY Flag" start="1" size="1" access="ReadOnly" />
      <BitField name="PVDO" description="PVD Output" start="2" size="1" access="ReadOnly" />
      <BitField name="EWUP" description="Enable WKUP pin" start="8" size="1" access="Read/Write" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="RCC" description="Reset and clock control" start="0x40021000">
    <Register name="CR" description="Clock control register" start="+0x0" size="4" reset_value="0x00000083" reset_mask="0xFFFFFFFF">
      <BitField name="HSION" description="Internal High Speed clock enable" start="0" size="1" access="Read/Write" />
      <BitField name="HSIRDY" description="Internal High Speed clock ready flag" start="1" size="1" access="ReadOnly" />
      <BitField name="HSITRIM" description="Internal High Speed clock trimming" start="3" size="5" access="Read/Write" />
      <BitField name="HSICAL" description="Internal High Speed clock Calibration" start="8" size="8" access="ReadOnly" />
      <BitField name="HSEON" description="External High Speed clock enable" start="16" size="1" access="Read/Write" />
      <BitField name="HSERDY" description="External High Speed clock ready flag" start="17" size="1" access="ReadOnly" />
      <BitField name="HSEBYP" description="External High Speed clock Bypass" start="18" size="1" access="Read/Write" />
      <BitField name="CSSON" description="Clock Security System enable" start="19" size="1" access="Read/Write" />
      <BitField name="PLLON" description="PLL enable" start="24" size="1" access="Read/Write" />
      <BitField name="PLLRDY" description="PLL clock ready flag" start="25" size="1" access="ReadOnly" />
    </Register>
    <Register name="CFGR" description="Clock configuration register (RCC_CFGR)" start="+0x4" size="4" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SW" description="System clock Switch" start="0" size="2" access="Read/Write" />
      <BitField name="SWS" description="System Clock Switch Status" start="2" size="2" access="ReadOnly" />
      <BitField name="HPRE" description="AHB prescaler" start="4" size="4" access="Read/Write" />
      <BitField name="PPRE1" description="APB Low speed prescaler (APB1)" start="8" size="3" access="Read/Write" />
      <BitField name="PPRE2" description="APB High speed prescaler (APB2)" start="11" size="3" access="Read/Write" />
      <BitField name="ADCPRE" description="ADC prescaler" start="14" size="2" access="Read/Write" />
      <BitField name="PLLSRC" description="PLL entry clock source" start="16" size="1" access="Read/Write" />
      <BitField name="PLLXTPRE" description="HSE divider for PLL entry" start="17" size="1" access="Read/Write" />
      <BitField name="PLLMUL" description="PLL Multiplication Factor" start="18" size="4" access="Read/Write" />
      <BitField name="OTGFSPRE" description="USB OTG FS prescaler" start="22" size="1" access="Read/Write" />
      <BitField name="MCO" description="Microcontroller clock output" start="24" size="3" access="Read/Write" />
    </Register>
    <Register name="CIR" description="Clock interrupt register (RCC_CIR)" start="+0x8" size="4" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LSIRDYF" description="LSI Ready Interrupt flag" start="0" size="1" access="ReadOnly" />
      <BitField name="LSERDYF" description="LSE Ready Interrupt flag" start="1" size="1" access="ReadOnly" />
      <BitField name="HSIRDYF" description="HSI Ready Interrupt flag" start="2" size="1" access="ReadOnly" />
      <BitField name="HSERDYF" description="HSE Ready Interrupt flag" start="3" size="1" access="ReadOnly" />
      <BitField name="PLLRDYF" description="PLL Ready Interrupt flag" start="4" size="1" access="ReadOnly" />
      <BitField name="CSSF" description="Clock Security System Interrupt flag" start="7" size="1" access="ReadOnly" />
      <BitField name="LSIRDYIE" description="LSI Ready Interrupt Enable" start="8" size="1" access="Read/Write" />
      <BitField name="LSERDYIE" description="LSE Ready Interrupt Enable" start="9" size="1" access="Read/Write" />
      <BitField name="HSIRDYIE" description="HSI Ready Interrupt Enable" start="10" size="1" access="Read/Write" />
      <BitField name="HSERDYIE" description="HSE Ready Interrupt Enable" start="11" size="1" access="Read/Write" />
      <BitField name="PLLRDYIE" description="PLL Ready Interrupt Enable" start="12" size="1" access="Read/Write" />
      <BitField name="LSIRDYC" description="LSI Ready Interrupt Clear" start="16" size="1" access="WriteOnly" />
      <BitField name="LSERDYC" description="LSE Ready Interrupt Clear" start="17" size="1" access="WriteOnly" />
      <BitField name="HSIRDYC" description="HSI Ready Interrupt Clear" start="18" size="1" access="WriteOnly" />
      <BitField name="HSERDYC" description="HSE Ready Interrupt Clear" start="19" size="1" access="WriteOnly" />
      <BitField name="PLLRDYC" description="PLL Ready Interrupt Clear" start="20" size="1" access="WriteOnly" />
      <BitField name="CSSC" description="Clock security system interrupt clear" start="23" size="1" access="WriteOnly" />
    </Register>
    <Register name="APB2RSTR" description="APB2 peripheral reset register (RCC_APB2RSTR)" start="+0xC" size="4" access="Read/Write" reset_value="0x000000000" reset_mask="0xFFFFFFFF">
      <BitField name="AFIORST" description="Alternate function I/O reset" start="0" size="1" />
      <BitField name="IOPARST" description="IO port A reset" start="2" size="1" />
      <BitField name="IOPBRST" description="IO port B reset" start="3" size="1" />
      <BitField name="IOPCRST" description="IO port C reset" start="4" size="1" />
      <BitField name="IOPDRST" description="IO port D reset" start="5" size="1" />
      <BitField name="IOPERST" description="IO port E reset" start="6" size="1" />
      <BitField name="IOPFRST" description="IO port F reset" start="7" size="1" />
      <BitField name="IOPGRST" description="IO port G reset" start="8" size="1" />
      <BitField name="ADC1RST" description="ADC 1 interface reset" start="9" size="1" />
      <BitField name="ADC2RST" description="ADC 2 interface reset" start="10" size="1" />
      <BitField name="TIM1RST" description="TIM1 timer reset" start="11" size="1" />
      <BitField name="SPI1RST" description="SPI 1 reset" start="12" size="1" />
      <BitField name="TIM8RST" description="TIM8 timer reset" start="13" size="1" />
      <BitField name="USART1RST" description="USART1 reset" start="14" size="1" />
      <BitField name="ADC3RST" description="ADC 3 interface reset" start="15" size="1" />
      <BitField name="TIM9RST" description="TIM9 timer reset" start="19" size="1" />
      <BitField name="TIM10RST" description="TIM10 timer reset" start="20" size="1" />
      <BitField name="TIM11RST" description="TIM11 timer reset" start="21" size="1" />
    </Register>
    <Register name="APB1RSTR" description="APB1 peripheral reset register (RCC_APB1RSTR)" start="+0x10" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TIM2RST" description="Timer 2 reset" start="0" size="1" />
      <BitField name="TIM3RST" description="Timer 3 reset" start="1" size="1" />
      <BitField name="TIM4RST" description="Timer 4 reset" start="2" size="1" />
      <BitField name="TIM5RST" description="Timer 5 reset" start="3" size="1" />
      <BitField name="TIM6RST" description="Timer 6 reset" start="4" size="1" />
      <BitField name="TIM7RST" description="Timer 7 reset" start="5" size="1" />
      <BitField name="TIM12RST" description="Timer 12 reset" start="6" size="1" />
      <BitField name="TIM13RST" description="Timer 13 reset" start="7" size="1" />
      <BitField name="TIM14RST" description="Timer 14 reset" start="8" size="1" />
      <BitField name="WWDGRST" description="Window watchdog reset" start="11" size="1" />
      <BitField name="SPI2RST" description="SPI2 reset" start="14" size="1" />
      <BitField name="SPI3RST" description="SPI3 reset" start="15" size="1" />
      <BitField name="USART2RST" description="USART 2 reset" start="17" size="1" />
      <BitField name="USART3RST" description="USART 3 reset" start="18" size="1" />
      <BitField name="UART4RST" description="UART 4 reset" start="19" size="1" />
      <BitField name="UART5RST" description="UART 5 reset" start="20" size="1" />
      <BitField name="I2C1RST" description="I2C1 reset" start="21" size="1" />
      <BitField name="I2C2RST" description="I2C2 reset" start="22" size="1" />
      <BitField name="USBRST" description="USB reset" start="23" size="1" />
      <BitField name="CANRST" description="CAN reset" start="25" size="1" />
      <BitField name="BKPRST" description="Backup interface reset" start="27" size="1" />
      <BitField name="PWRRST" description="Power interface reset" start="28" size="1" />
      <BitField name="DACRST" description="DAC interface reset" start="29" size="1" />
    </Register>
    <Register name="AHBENR" description="AHB Peripheral Clock enable register (RCC_AHBENR)" start="+0x14" size="4" access="Read/Write" reset_value="0x00000014" reset_mask="0xFFFFFFFF">
      <BitField name="DMA1EN" description="DMA1 clock enable" start="0" size="1" />
      <BitField name="DMA2EN" description="DMA2 clock enable" start="1" size="1" />
      <BitField name="SRAMEN" description="SRAM interface clock enable" start="2" size="1" />
      <BitField name="FLITFEN" description="FLITF clock enable" start="4" size="1" />
      <BitField name="CRCEN" description="CRC clock enable" start="6" size="1" />
      <BitField name="FSMCEN" description="FSMC clock enable" start="8" size="1" />
      <BitField name="SDIOEN" description="SDIO clock enable" start="10" size="1" />
    </Register>
    <Register name="APB2ENR" description="APB2 peripheral clock enable register (RCC_APB2ENR)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="AFIOEN" description="Alternate function I/O clock enable" start="0" size="1" />
      <BitField name="IOPAEN" description="I/O port A clock enable" start="2" size="1" />
      <BitField name="IOPBEN" description="I/O port B clock enable" start="3" size="1" />
      <BitField name="IOPCEN" description="I/O port C clock enable" start="4" size="1" />
      <BitField name="IOPDEN" description="I/O port D clock enable" start="5" size="1" />
      <BitField name="IOPEEN" description="I/O port E clock enable" start="6" size="1" />
      <BitField name="IOPFEN" description="I/O port F clock enable" start="7" size="1" />
      <BitField name="IOPGEN" description="I/O port G clock enable" start="8" size="1" />
      <BitField name="ADC1EN" description="ADC 1 interface clock enable" start="9" size="1" />
      <BitField name="ADC2EN" description="ADC 2 interface clock enable" start="10" size="1" />
      <BitField name="TIM1EN" description="TIM1 Timer clock enable" start="11" size="1" />
      <BitField name="SPI1EN" description="SPI 1 clock enable" start="12" size="1" />
      <BitField name="TIM8EN" description="TIM8 Timer clock enable" start="13" size="1" />
      <BitField name="USART1EN" description="USART1 clock enable" start="14" size="1" />
      <BitField name="ADC3EN" description="ADC3 interface clock enable" start="15" size="1" />
      <BitField name="TIM9EN" description="TIM9 Timer clock enable" start="19" size="1" />
      <BitField name="TIM10EN" description="TIM10 Timer clock enable" start="20" size="1" />
      <BitField name="TIM11EN" description="TIM11 Timer clock enable" start="21" size="1" />
    </Register>
    <Register name="APB1ENR" description="APB1 peripheral clock enable register (RCC_APB1ENR)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TIM2EN" description="Timer 2 clock enable" start="0" size="1" />
      <BitField name="TIM3EN" description="Timer 3 clock enable" start="1" size="1" />
      <BitField name="TIM4EN" description="Timer 4 clock enable" start="2" size="1" />
      <BitField name="TIM5EN" description="Timer 5 clock enable" start="3" size="1" />
      <BitField name="TIM6EN" description="Timer 6 clock enable" start="4" size="1" />
      <BitField name="TIM7EN" description="Timer 7 clock enable" start="5" size="1" />
      <BitField name="TIM12EN" description="Timer 12 clock enable" start="6" size="1" />
      <BitField name="TIM13EN" description="Timer 13 clock enable" start="7" size="1" />
      <BitField name="TIM14EN" description="Timer 14 clock enable" start="8" size="1" />
      <BitField name="WWDGEN" description="Window watchdog clock enable" start="11" size="1" />
      <BitField name="SPI2EN" description="SPI 2 clock enable" start="14" size="1" />
      <BitField name="SPI3EN" description="SPI 3 clock enable" start="15" size="1" />
      <BitField name="USART2EN" description="USART 2 clock enable" start="17" size="1" />
      <BitField name="USART3EN" description="USART 3 clock enable" start="18" size="1" />
      <BitField name="UART4EN" description="UART 4 clock enable" start="19" size="1" />
      <BitField name="UART5EN" description="UART 5 clock enable" start="20" size="1" />
      <BitField name="I2C1EN" description="I2C 1 clock enable" start="21" size="1" />
      <BitField name="I2C2EN" description="I2C 2 clock enable" start="22" size="1" />
      <BitField name="USBEN" description="USB clock enable" start="23" size="1" />
      <BitField name="CANEN" description="CAN clock enable" start="25" size="1" />
      <BitField name="BKPEN" description="Backup interface clock enable" start="27" size="1" />
      <BitField name="PWREN" description="Power interface clock enable" start="28" size="1" />
      <BitField name="DACEN" description="DAC interface clock enable" start="29" size="1" />
    </Register>
    <Register name="BDCR" description="Backup domain control register (RCC_BDCR)" start="+0x20" size="4" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LSEON" description="External Low Speed oscillator enable" start="0" size="1" access="Read/Write" />
      <BitField name="LSERDY" description="External Low Speed oscillator ready" start="1" size="1" access="ReadOnly" />
      <BitField name="LSEBYP" description="External Low Speed oscillator bypass" start="2" size="1" access="Read/Write" />
      <BitField name="RTCSEL" description="RTC clock source selection" start="8" size="2" access="Read/Write" />
      <BitField name="RTCEN" description="RTC clock enable" start="15" size="1" access="Read/Write" />
      <BitField name="BDRST" description="Backup domain software reset" start="16" size="1" access="Read/Write" />
    </Register>
    <Register name="CSR" description="Control/status register (RCC_CSR)" start="+0x24" size="4" reset_value="0x0C000000" reset_mask="0xFFFFFFFF">
      <BitField name="LSION" description="Internal low speed oscillator enable" start="0" size="1" access="Read/Write" />
      <BitField name="LSIRDY" description="Internal low speed oscillator ready" start="1" size="1" access="ReadOnly" />
      <BitField name="RMVF" description="Remove reset flag" start="24" size="1" access="Read/Write" />
      <BitField name="PINRSTF" description="PIN reset flag" start="26" size="1" access="Read/Write" />
      <BitField name="PORRSTF" description="POR/PDR reset flag" start="27" size="1" access="Read/Write" />
      <BitField name="SFTRSTF" description="Software reset flag" start="28" size="1" access="Read/Write" />
      <BitField name="IWDGRSTF" description="Independent watchdog reset flag" start="29" size="1" access="Read/Write" />
      <BitField name="WWDGRSTF" description="Window watchdog reset flag" start="30" size="1" access="Read/Write" />
      <BitField name="LPWRRSTF" description="Low-power reset flag" start="31" size="1" access="Read/Write" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="GPIOA" description="General purpose I/O" start="0x40010800">
    <Register name="CRL" description="Port configuration register low (GPIOn_CRL)" start="+0x0" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE0" description="Port n.0 mode bits" start="0" size="2" />
      <BitField name="CNF0" description="Port n.0 configuration bits" start="2" size="2" />
      <BitField name="MODE1" description="Port n.1 mode bits" start="4" size="2" />
      <BitField name="CNF1" description="Port n.1 configuration bits" start="6" size="2" />
      <BitField name="MODE2" description="Port n.2 mode bits" start="8" size="2" />
      <BitField name="CNF2" description="Port n.2 configuration bits" start="10" size="2" />
      <BitField name="MODE3" description="Port n.3 mode bits" start="12" size="2" />
      <BitField name="CNF3" description="Port n.3 configuration bits" start="14" size="2" />
      <BitField name="MODE4" description="Port n.4 mode bits" start="16" size="2" />
      <BitField name="CNF4" description="Port n.4 configuration bits" start="18" size="2" />
      <BitField name="MODE5" description="Port n.5 mode bits" start="20" size="2" />
      <BitField name="CNF5" description="Port n.5 configuration bits" start="22" size="2" />
      <BitField name="MODE6" description="Port n.6 mode bits" start="24" size="2" />
      <BitField name="CNF6" description="Port n.6 configuration bits" start="26" size="2" />
      <BitField name="MODE7" description="Port n.7 mode bits" start="28" size="2" />
      <BitField name="CNF7" description="Port n.7 configuration bits" start="30" size="2" />
    </Register>
    <Register name="CRH" description="Port configuration register high (GPIOn_CRL)" start="+0x4" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE8" description="Port n.8 mode bits" start="0" size="2" />
      <BitField name="CNF8" description="Port n.8 configuration bits" start="2" size="2" />
      <BitField name="MODE9" description="Port n.9 mode bits" start="4" size="2" />
      <BitField name="CNF9" description="Port n.9 configuration bits" start="6" size="2" />
      <BitField name="MODE10" description="Port n.10 mode bits" start="8" size="2" />
      <BitField name="CNF10" description="Port n.10 configuration bits" start="10" size="2" />
      <BitField name="MODE11" description="Port n.11 mode bits" start="12" size="2" />
      <BitField name="CNF11" description="Port n.11 configuration bits" start="14" size="2" />
      <BitField name="MODE12" description="Port n.12 mode bits" start="16" size="2" />
      <BitField name="CNF12" description="Port n.12 configuration bits" start="18" size="2" />
      <BitField name="MODE13" description="Port n.13 mode bits" start="20" size="2" />
      <BitField name="CNF13" description="Port n.13 configuration bits" start="22" size="2" />
      <BitField name="MODE14" description="Port n.14 mode bits" start="24" size="2" />
      <BitField name="CNF14" description="Port n.14 configuration bits" start="26" size="2" />
      <BitField name="MODE15" description="Port n.15 mode bits" start="28" size="2" />
      <BitField name="CNF15" description="Port n.15 configuration bits" start="30" size="2" />
    </Register>
    <Register name="IDR" description="Port input data register (GPIOn_IDR)" start="+0x8" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IDR0" description="Port input data" start="0" size="1" />
      <BitField name="IDR1" description="Port input data" start="1" size="1" />
      <BitField name="IDR2" description="Port input data" start="2" size="1" />
      <BitField name="IDR3" description="Port input data" start="3" size="1" />
      <BitField name="IDR4" description="Port input data" start="4" size="1" />
      <BitField name="IDR5" description="Port input data" start="5" size="1" />
      <BitField name="IDR6" description="Port input data" start="6" size="1" />
      <BitField name="IDR7" description="Port input data" start="7" size="1" />
      <BitField name="IDR8" description="Port input data" start="8" size="1" />
      <BitField name="IDR9" description="Port input data" start="9" size="1" />
      <BitField name="IDR10" description="Port input data" start="10" size="1" />
      <BitField name="IDR11" description="Port input data" start="11" size="1" />
      <BitField name="IDR12" description="Port input data" start="12" size="1" />
      <BitField name="IDR13" description="Port input data" start="13" size="1" />
      <BitField name="IDR14" description="Port input data" start="14" size="1" />
      <BitField name="IDR15" description="Port input data" start="15" size="1" />
    </Register>
    <Register name="ODR" description="Port output data register (GPIOn_ODR)" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ODR0" description="Port output data" start="0" size="1" />
      <BitField name="ODR1" description="Port output data" start="1" size="1" />
      <BitField name="ODR2" description="Port output data" start="2" size="1" />
      <BitField name="ODR3" description="Port output data" start="3" size="1" />
      <BitField name="ODR4" description="Port output data" start="4" size="1" />
      <BitField name="ODR5" description="Port output data" start="5" size="1" />
      <BitField name="ODR6" description="Port output data" start="6" size="1" />
      <BitField name="ODR7" description="Port output data" start="7" size="1" />
      <BitField name="ODR8" description="Port output data" start="8" size="1" />
      <BitField name="ODR9" description="Port output data" start="9" size="1" />
      <BitField name="ODR10" description="Port output data" start="10" size="1" />
      <BitField name="ODR11" description="Port output data" start="11" size="1" />
      <BitField name="ODR12" description="Port output data" start="12" size="1" />
      <BitField name="ODR13" description="Port output data" start="13" size="1" />
      <BitField name="ODR14" description="Port output data" start="14" size="1" />
      <BitField name="ODR15" description="Port output data" start="15" size="1" />
    </Register>
    <Register name="BSRR" description="Port bit set/reset register (GPIOn_BSRR)" start="+0x10" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BS0" description="Set bit 0" start="0" size="1" />
      <BitField name="BS1" description="Set bit 1" start="1" size="1" />
      <BitField name="BS2" description="Set bit 1" start="2" size="1" />
      <BitField name="BS3" description="Set bit 3" start="3" size="1" />
      <BitField name="BS4" description="Set bit 4" start="4" size="1" />
      <BitField name="BS5" description="Set bit 5" start="5" size="1" />
      <BitField name="BS6" description="Set bit 6" start="6" size="1" />
      <BitField name="BS7" description="Set bit 7" start="7" size="1" />
      <BitField name="BS8" description="Set bit 8" start="8" size="1" />
      <BitField name="BS9" description="Set bit 9" start="9" size="1" />
      <BitField name="BS10" description="Set bit 10" start="10" size="1" />
      <BitField name="BS11" description="Set bit 11" start="11" size="1" />
      <BitField name="BS12" description="Set bit 12" start="12" size="1" />
      <BitField name="BS13" description="Set bit 13" start="13" size="1" />
      <BitField name="BS14" description="Set bit 14" start="14" size="1" />
      <BitField name="BS15" description="Set bit 15" start="15" size="1" />
      <BitField name="BR0" description="Reset bit 0" start="16" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="17" size="1" />
      <BitField name="BR2" description="Reset bit 2" start="18" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="19" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="20" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="21" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="22" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="23" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="24" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="25" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="26" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="27" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="28" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="29" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="30" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="31" size="1" />
    </Register>
    <Register name="BRR" description="Port bit reset register (GPIOn_BRR)" start="+0x14" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BR0" description="Reset bit 0" start="0" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="1" size="1" />
      <BitField name="BR2" description="Reset bit 1" start="2" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="3" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="4" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="5" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="6" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="7" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="8" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="9" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="10" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="11" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="12" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="13" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="14" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="15" size="1" />
    </Register>
    <Register name="LCKR" description="Port configuration lock register" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LCK0" description="Port A Lock bit 0" start="0" size="1" />
      <BitField name="LCK1" description="Port A Lock bit 1" start="1" size="1" />
      <BitField name="LCK2" description="Port A Lock bit 2" start="2" size="1" />
      <BitField name="LCK3" description="Port A Lock bit 3" start="3" size="1" />
      <BitField name="LCK4" description="Port A Lock bit 4" start="4" size="1" />
      <BitField name="LCK5" description="Port A Lock bit 5" start="5" size="1" />
      <BitField name="LCK6" description="Port A Lock bit 6" start="6" size="1" />
      <BitField name="LCK7" description="Port A Lock bit 7" start="7" size="1" />
      <BitField name="LCK8" description="Port A Lock bit 8" start="8" size="1" />
      <BitField name="LCK9" description="Port A Lock bit 9" start="9" size="1" />
      <BitField name="LCK10" description="Port A Lock bit 10" start="10" size="1" />
      <BitField name="LCK11" description="Port A Lock bit 11" start="11" size="1" />
      <BitField name="LCK12" description="Port A Lock bit 12" start="12" size="1" />
      <BitField name="LCK13" description="Port A Lock bit 13" start="13" size="1" />
      <BitField name="LCK14" description="Port A Lock bit 14" start="14" size="1" />
      <BitField name="LCK15" description="Port A Lock bit 15" start="15" size="1" />
      <BitField name="LCKK" description="Lock key" start="16" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="GPIOB" description="General purpose I/O" start="0x40010C00">
    <Register name="CRL" description="Port configuration register low (GPIOn_CRL)" start="+0x0" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE0" description="Port n.0 mode bits" start="0" size="2" />
      <BitField name="CNF0" description="Port n.0 configuration bits" start="2" size="2" />
      <BitField name="MODE1" description="Port n.1 mode bits" start="4" size="2" />
      <BitField name="CNF1" description="Port n.1 configuration bits" start="6" size="2" />
      <BitField name="MODE2" description="Port n.2 mode bits" start="8" size="2" />
      <BitField name="CNF2" description="Port n.2 configuration bits" start="10" size="2" />
      <BitField name="MODE3" description="Port n.3 mode bits" start="12" size="2" />
      <BitField name="CNF3" description="Port n.3 configuration bits" start="14" size="2" />
      <BitField name="MODE4" description="Port n.4 mode bits" start="16" size="2" />
      <BitField name="CNF4" description="Port n.4 configuration bits" start="18" size="2" />
      <BitField name="MODE5" description="Port n.5 mode bits" start="20" size="2" />
      <BitField name="CNF5" description="Port n.5 configuration bits" start="22" size="2" />
      <BitField name="MODE6" description="Port n.6 mode bits" start="24" size="2" />
      <BitField name="CNF6" description="Port n.6 configuration bits" start="26" size="2" />
      <BitField name="MODE7" description="Port n.7 mode bits" start="28" size="2" />
      <BitField name="CNF7" description="Port n.7 configuration bits" start="30" size="2" />
    </Register>
    <Register name="CRH" description="Port configuration register high (GPIOn_CRL)" start="+0x4" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE8" description="Port n.8 mode bits" start="0" size="2" />
      <BitField name="CNF8" description="Port n.8 configuration bits" start="2" size="2" />
      <BitField name="MODE9" description="Port n.9 mode bits" start="4" size="2" />
      <BitField name="CNF9" description="Port n.9 configuration bits" start="6" size="2" />
      <BitField name="MODE10" description="Port n.10 mode bits" start="8" size="2" />
      <BitField name="CNF10" description="Port n.10 configuration bits" start="10" size="2" />
      <BitField name="MODE11" description="Port n.11 mode bits" start="12" size="2" />
      <BitField name="CNF11" description="Port n.11 configuration bits" start="14" size="2" />
      <BitField name="MODE12" description="Port n.12 mode bits" start="16" size="2" />
      <BitField name="CNF12" description="Port n.12 configuration bits" start="18" size="2" />
      <BitField name="MODE13" description="Port n.13 mode bits" start="20" size="2" />
      <BitField name="CNF13" description="Port n.13 configuration bits" start="22" size="2" />
      <BitField name="MODE14" description="Port n.14 mode bits" start="24" size="2" />
      <BitField name="CNF14" description="Port n.14 configuration bits" start="26" size="2" />
      <BitField name="MODE15" description="Port n.15 mode bits" start="28" size="2" />
      <BitField name="CNF15" description="Port n.15 configuration bits" start="30" size="2" />
    </Register>
    <Register name="IDR" description="Port input data register (GPIOn_IDR)" start="+0x8" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IDR0" description="Port input data" start="0" size="1" />
      <BitField name="IDR1" description="Port input data" start="1" size="1" />
      <BitField name="IDR2" description="Port input data" start="2" size="1" />
      <BitField name="IDR3" description="Port input data" start="3" size="1" />
      <BitField name="IDR4" description="Port input data" start="4" size="1" />
      <BitField name="IDR5" description="Port input data" start="5" size="1" />
      <BitField name="IDR6" description="Port input data" start="6" size="1" />
      <BitField name="IDR7" description="Port input data" start="7" size="1" />
      <BitField name="IDR8" description="Port input data" start="8" size="1" />
      <BitField name="IDR9" description="Port input data" start="9" size="1" />
      <BitField name="IDR10" description="Port input data" start="10" size="1" />
      <BitField name="IDR11" description="Port input data" start="11" size="1" />
      <BitField name="IDR12" description="Port input data" start="12" size="1" />
      <BitField name="IDR13" description="Port input data" start="13" size="1" />
      <BitField name="IDR14" description="Port input data" start="14" size="1" />
      <BitField name="IDR15" description="Port input data" start="15" size="1" />
    </Register>
    <Register name="ODR" description="Port output data register (GPIOn_ODR)" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ODR0" description="Port output data" start="0" size="1" />
      <BitField name="ODR1" description="Port output data" start="1" size="1" />
      <BitField name="ODR2" description="Port output data" start="2" size="1" />
      <BitField name="ODR3" description="Port output data" start="3" size="1" />
      <BitField name="ODR4" description="Port output data" start="4" size="1" />
      <BitField name="ODR5" description="Port output data" start="5" size="1" />
      <BitField name="ODR6" description="Port output data" start="6" size="1" />
      <BitField name="ODR7" description="Port output data" start="7" size="1" />
      <BitField name="ODR8" description="Port output data" start="8" size="1" />
      <BitField name="ODR9" description="Port output data" start="9" size="1" />
      <BitField name="ODR10" description="Port output data" start="10" size="1" />
      <BitField name="ODR11" description="Port output data" start="11" size="1" />
      <BitField name="ODR12" description="Port output data" start="12" size="1" />
      <BitField name="ODR13" description="Port output data" start="13" size="1" />
      <BitField name="ODR14" description="Port output data" start="14" size="1" />
      <BitField name="ODR15" description="Port output data" start="15" size="1" />
    </Register>
    <Register name="BSRR" description="Port bit set/reset register (GPIOn_BSRR)" start="+0x10" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BS0" description="Set bit 0" start="0" size="1" />
      <BitField name="BS1" description="Set bit 1" start="1" size="1" />
      <BitField name="BS2" description="Set bit 1" start="2" size="1" />
      <BitField name="BS3" description="Set bit 3" start="3" size="1" />
      <BitField name="BS4" description="Set bit 4" start="4" size="1" />
      <BitField name="BS5" description="Set bit 5" start="5" size="1" />
      <BitField name="BS6" description="Set bit 6" start="6" size="1" />
      <BitField name="BS7" description="Set bit 7" start="7" size="1" />
      <BitField name="BS8" description="Set bit 8" start="8" size="1" />
      <BitField name="BS9" description="Set bit 9" start="9" size="1" />
      <BitField name="BS10" description="Set bit 10" start="10" size="1" />
      <BitField name="BS11" description="Set bit 11" start="11" size="1" />
      <BitField name="BS12" description="Set bit 12" start="12" size="1" />
      <BitField name="BS13" description="Set bit 13" start="13" size="1" />
      <BitField name="BS14" description="Set bit 14" start="14" size="1" />
      <BitField name="BS15" description="Set bit 15" start="15" size="1" />
      <BitField name="BR0" description="Reset bit 0" start="16" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="17" size="1" />
      <BitField name="BR2" description="Reset bit 2" start="18" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="19" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="20" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="21" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="22" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="23" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="24" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="25" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="26" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="27" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="28" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="29" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="30" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="31" size="1" />
    </Register>
    <Register name="BRR" description="Port bit reset register (GPIOn_BRR)" start="+0x14" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BR0" description="Reset bit 0" start="0" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="1" size="1" />
      <BitField name="BR2" description="Reset bit 1" start="2" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="3" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="4" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="5" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="6" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="7" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="8" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="9" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="10" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="11" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="12" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="13" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="14" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="15" size="1" />
    </Register>
    <Register name="LCKR" description="Port configuration lock register" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LCK0" description="Port A Lock bit 0" start="0" size="1" />
      <BitField name="LCK1" description="Port A Lock bit 1" start="1" size="1" />
      <BitField name="LCK2" description="Port A Lock bit 2" start="2" size="1" />
      <BitField name="LCK3" description="Port A Lock bit 3" start="3" size="1" />
      <BitField name="LCK4" description="Port A Lock bit 4" start="4" size="1" />
      <BitField name="LCK5" description="Port A Lock bit 5" start="5" size="1" />
      <BitField name="LCK6" description="Port A Lock bit 6" start="6" size="1" />
      <BitField name="LCK7" description="Port A Lock bit 7" start="7" size="1" />
      <BitField name="LCK8" description="Port A Lock bit 8" start="8" size="1" />
      <BitField name="LCK9" description="Port A Lock bit 9" start="9" size="1" />
      <BitField name="LCK10" description="Port A Lock bit 10" start="10" size="1" />
      <BitField name="LCK11" description="Port A Lock bit 11" start="11" size="1" />
      <BitField name="LCK12" description="Port A Lock bit 12" start="12" size="1" />
      <BitField name="LCK13" description="Port A Lock bit 13" start="13" size="1" />
      <BitField name="LCK14" description="Port A Lock bit 14" start="14" size="1" />
      <BitField name="LCK15" description="Port A Lock bit 15" start="15" size="1" />
      <BitField name="LCKK" description="Lock key" start="16" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="GPIOC" description="General purpose I/O" start="0x40011000">
    <Register name="CRL" description="Port configuration register low (GPIOn_CRL)" start="+0x0" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE0" description="Port n.0 mode bits" start="0" size="2" />
      <BitField name="CNF0" description="Port n.0 configuration bits" start="2" size="2" />
      <BitField name="MODE1" description="Port n.1 mode bits" start="4" size="2" />
      <BitField name="CNF1" description="Port n.1 configuration bits" start="6" size="2" />
      <BitField name="MODE2" description="Port n.2 mode bits" start="8" size="2" />
      <BitField name="CNF2" description="Port n.2 configuration bits" start="10" size="2" />
      <BitField name="MODE3" description="Port n.3 mode bits" start="12" size="2" />
      <BitField name="CNF3" description="Port n.3 configuration bits" start="14" size="2" />
      <BitField name="MODE4" description="Port n.4 mode bits" start="16" size="2" />
      <BitField name="CNF4" description="Port n.4 configuration bits" start="18" size="2" />
      <BitField name="MODE5" description="Port n.5 mode bits" start="20" size="2" />
      <BitField name="CNF5" description="Port n.5 configuration bits" start="22" size="2" />
      <BitField name="MODE6" description="Port n.6 mode bits" start="24" size="2" />
      <BitField name="CNF6" description="Port n.6 configuration bits" start="26" size="2" />
      <BitField name="MODE7" description="Port n.7 mode bits" start="28" size="2" />
      <BitField name="CNF7" description="Port n.7 configuration bits" start="30" size="2" />
    </Register>
    <Register name="CRH" description="Port configuration register high (GPIOn_CRL)" start="+0x4" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE8" description="Port n.8 mode bits" start="0" size="2" />
      <BitField name="CNF8" description="Port n.8 configuration bits" start="2" size="2" />
      <BitField name="MODE9" description="Port n.9 mode bits" start="4" size="2" />
      <BitField name="CNF9" description="Port n.9 configuration bits" start="6" size="2" />
      <BitField name="MODE10" description="Port n.10 mode bits" start="8" size="2" />
      <BitField name="CNF10" description="Port n.10 configuration bits" start="10" size="2" />
      <BitField name="MODE11" description="Port n.11 mode bits" start="12" size="2" />
      <BitField name="CNF11" description="Port n.11 configuration bits" start="14" size="2" />
      <BitField name="MODE12" description="Port n.12 mode bits" start="16" size="2" />
      <BitField name="CNF12" description="Port n.12 configuration bits" start="18" size="2" />
      <BitField name="MODE13" description="Port n.13 mode bits" start="20" size="2" />
      <BitField name="CNF13" description="Port n.13 configuration bits" start="22" size="2" />
      <BitField name="MODE14" description="Port n.14 mode bits" start="24" size="2" />
      <BitField name="CNF14" description="Port n.14 configuration bits" start="26" size="2" />
      <BitField name="MODE15" description="Port n.15 mode bits" start="28" size="2" />
      <BitField name="CNF15" description="Port n.15 configuration bits" start="30" size="2" />
    </Register>
    <Register name="IDR" description="Port input data register (GPIOn_IDR)" start="+0x8" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IDR0" description="Port input data" start="0" size="1" />
      <BitField name="IDR1" description="Port input data" start="1" size="1" />
      <BitField name="IDR2" description="Port input data" start="2" size="1" />
      <BitField name="IDR3" description="Port input data" start="3" size="1" />
      <BitField name="IDR4" description="Port input data" start="4" size="1" />
      <BitField name="IDR5" description="Port input data" start="5" size="1" />
      <BitField name="IDR6" description="Port input data" start="6" size="1" />
      <BitField name="IDR7" description="Port input data" start="7" size="1" />
      <BitField name="IDR8" description="Port input data" start="8" size="1" />
      <BitField name="IDR9" description="Port input data" start="9" size="1" />
      <BitField name="IDR10" description="Port input data" start="10" size="1" />
      <BitField name="IDR11" description="Port input data" start="11" size="1" />
      <BitField name="IDR12" description="Port input data" start="12" size="1" />
      <BitField name="IDR13" description="Port input data" start="13" size="1" />
      <BitField name="IDR14" description="Port input data" start="14" size="1" />
      <BitField name="IDR15" description="Port input data" start="15" size="1" />
    </Register>
    <Register name="ODR" description="Port output data register (GPIOn_ODR)" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ODR0" description="Port output data" start="0" size="1" />
      <BitField name="ODR1" description="Port output data" start="1" size="1" />
      <BitField name="ODR2" description="Port output data" start="2" size="1" />
      <BitField name="ODR3" description="Port output data" start="3" size="1" />
      <BitField name="ODR4" description="Port output data" start="4" size="1" />
      <BitField name="ODR5" description="Port output data" start="5" size="1" />
      <BitField name="ODR6" description="Port output data" start="6" size="1" />
      <BitField name="ODR7" description="Port output data" start="7" size="1" />
      <BitField name="ODR8" description="Port output data" start="8" size="1" />
      <BitField name="ODR9" description="Port output data" start="9" size="1" />
      <BitField name="ODR10" description="Port output data" start="10" size="1" />
      <BitField name="ODR11" description="Port output data" start="11" size="1" />
      <BitField name="ODR12" description="Port output data" start="12" size="1" />
      <BitField name="ODR13" description="Port output data" start="13" size="1" />
      <BitField name="ODR14" description="Port output data" start="14" size="1" />
      <BitField name="ODR15" description="Port output data" start="15" size="1" />
    </Register>
    <Register name="BSRR" description="Port bit set/reset register (GPIOn_BSRR)" start="+0x10" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BS0" description="Set bit 0" start="0" size="1" />
      <BitField name="BS1" description="Set bit 1" start="1" size="1" />
      <BitField name="BS2" description="Set bit 1" start="2" size="1" />
      <BitField name="BS3" description="Set bit 3" start="3" size="1" />
      <BitField name="BS4" description="Set bit 4" start="4" size="1" />
      <BitField name="BS5" description="Set bit 5" start="5" size="1" />
      <BitField name="BS6" description="Set bit 6" start="6" size="1" />
      <BitField name="BS7" description="Set bit 7" start="7" size="1" />
      <BitField name="BS8" description="Set bit 8" start="8" size="1" />
      <BitField name="BS9" description="Set bit 9" start="9" size="1" />
      <BitField name="BS10" description="Set bit 10" start="10" size="1" />
      <BitField name="BS11" description="Set bit 11" start="11" size="1" />
      <BitField name="BS12" description="Set bit 12" start="12" size="1" />
      <BitField name="BS13" description="Set bit 13" start="13" size="1" />
      <BitField name="BS14" description="Set bit 14" start="14" size="1" />
      <BitField name="BS15" description="Set bit 15" start="15" size="1" />
      <BitField name="BR0" description="Reset bit 0" start="16" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="17" size="1" />
      <BitField name="BR2" description="Reset bit 2" start="18" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="19" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="20" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="21" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="22" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="23" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="24" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="25" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="26" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="27" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="28" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="29" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="30" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="31" size="1" />
    </Register>
    <Register name="BRR" description="Port bit reset register (GPIOn_BRR)" start="+0x14" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BR0" description="Reset bit 0" start="0" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="1" size="1" />
      <BitField name="BR2" description="Reset bit 1" start="2" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="3" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="4" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="5" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="6" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="7" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="8" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="9" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="10" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="11" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="12" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="13" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="14" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="15" size="1" />
    </Register>
    <Register name="LCKR" description="Port configuration lock register" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LCK0" description="Port A Lock bit 0" start="0" size="1" />
      <BitField name="LCK1" description="Port A Lock bit 1" start="1" size="1" />
      <BitField name="LCK2" description="Port A Lock bit 2" start="2" size="1" />
      <BitField name="LCK3" description="Port A Lock bit 3" start="3" size="1" />
      <BitField name="LCK4" description="Port A Lock bit 4" start="4" size="1" />
      <BitField name="LCK5" description="Port A Lock bit 5" start="5" size="1" />
      <BitField name="LCK6" description="Port A Lock bit 6" start="6" size="1" />
      <BitField name="LCK7" description="Port A Lock bit 7" start="7" size="1" />
      <BitField name="LCK8" description="Port A Lock bit 8" start="8" size="1" />
      <BitField name="LCK9" description="Port A Lock bit 9" start="9" size="1" />
      <BitField name="LCK10" description="Port A Lock bit 10" start="10" size="1" />
      <BitField name="LCK11" description="Port A Lock bit 11" start="11" size="1" />
      <BitField name="LCK12" description="Port A Lock bit 12" start="12" size="1" />
      <BitField name="LCK13" description="Port A Lock bit 13" start="13" size="1" />
      <BitField name="LCK14" description="Port A Lock bit 14" start="14" size="1" />
      <BitField name="LCK15" description="Port A Lock bit 15" start="15" size="1" />
      <BitField name="LCKK" description="Lock key" start="16" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="GPIOD" description="General purpose I/O" start="0x40011400">
    <Register name="CRL" description="Port configuration register low (GPIOn_CRL)" start="+0x0" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE0" description="Port n.0 mode bits" start="0" size="2" />
      <BitField name="CNF0" description="Port n.0 configuration bits" start="2" size="2" />
      <BitField name="MODE1" description="Port n.1 mode bits" start="4" size="2" />
      <BitField name="CNF1" description="Port n.1 configuration bits" start="6" size="2" />
      <BitField name="MODE2" description="Port n.2 mode bits" start="8" size="2" />
      <BitField name="CNF2" description="Port n.2 configuration bits" start="10" size="2" />
      <BitField name="MODE3" description="Port n.3 mode bits" start="12" size="2" />
      <BitField name="CNF3" description="Port n.3 configuration bits" start="14" size="2" />
      <BitField name="MODE4" description="Port n.4 mode bits" start="16" size="2" />
      <BitField name="CNF4" description="Port n.4 configuration bits" start="18" size="2" />
      <BitField name="MODE5" description="Port n.5 mode bits" start="20" size="2" />
      <BitField name="CNF5" description="Port n.5 configuration bits" start="22" size="2" />
      <BitField name="MODE6" description="Port n.6 mode bits" start="24" size="2" />
      <BitField name="CNF6" description="Port n.6 configuration bits" start="26" size="2" />
      <BitField name="MODE7" description="Port n.7 mode bits" start="28" size="2" />
      <BitField name="CNF7" description="Port n.7 configuration bits" start="30" size="2" />
    </Register>
    <Register name="CRH" description="Port configuration register high (GPIOn_CRL)" start="+0x4" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE8" description="Port n.8 mode bits" start="0" size="2" />
      <BitField name="CNF8" description="Port n.8 configuration bits" start="2" size="2" />
      <BitField name="MODE9" description="Port n.9 mode bits" start="4" size="2" />
      <BitField name="CNF9" description="Port n.9 configuration bits" start="6" size="2" />
      <BitField name="MODE10" description="Port n.10 mode bits" start="8" size="2" />
      <BitField name="CNF10" description="Port n.10 configuration bits" start="10" size="2" />
      <BitField name="MODE11" description="Port n.11 mode bits" start="12" size="2" />
      <BitField name="CNF11" description="Port n.11 configuration bits" start="14" size="2" />
      <BitField name="MODE12" description="Port n.12 mode bits" start="16" size="2" />
      <BitField name="CNF12" description="Port n.12 configuration bits" start="18" size="2" />
      <BitField name="MODE13" description="Port n.13 mode bits" start="20" size="2" />
      <BitField name="CNF13" description="Port n.13 configuration bits" start="22" size="2" />
      <BitField name="MODE14" description="Port n.14 mode bits" start="24" size="2" />
      <BitField name="CNF14" description="Port n.14 configuration bits" start="26" size="2" />
      <BitField name="MODE15" description="Port n.15 mode bits" start="28" size="2" />
      <BitField name="CNF15" description="Port n.15 configuration bits" start="30" size="2" />
    </Register>
    <Register name="IDR" description="Port input data register (GPIOn_IDR)" start="+0x8" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IDR0" description="Port input data" start="0" size="1" />
      <BitField name="IDR1" description="Port input data" start="1" size="1" />
      <BitField name="IDR2" description="Port input data" start="2" size="1" />
      <BitField name="IDR3" description="Port input data" start="3" size="1" />
      <BitField name="IDR4" description="Port input data" start="4" size="1" />
      <BitField name="IDR5" description="Port input data" start="5" size="1" />
      <BitField name="IDR6" description="Port input data" start="6" size="1" />
      <BitField name="IDR7" description="Port input data" start="7" size="1" />
      <BitField name="IDR8" description="Port input data" start="8" size="1" />
      <BitField name="IDR9" description="Port input data" start="9" size="1" />
      <BitField name="IDR10" description="Port input data" start="10" size="1" />
      <BitField name="IDR11" description="Port input data" start="11" size="1" />
      <BitField name="IDR12" description="Port input data" start="12" size="1" />
      <BitField name="IDR13" description="Port input data" start="13" size="1" />
      <BitField name="IDR14" description="Port input data" start="14" size="1" />
      <BitField name="IDR15" description="Port input data" start="15" size="1" />
    </Register>
    <Register name="ODR" description="Port output data register (GPIOn_ODR)" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ODR0" description="Port output data" start="0" size="1" />
      <BitField name="ODR1" description="Port output data" start="1" size="1" />
      <BitField name="ODR2" description="Port output data" start="2" size="1" />
      <BitField name="ODR3" description="Port output data" start="3" size="1" />
      <BitField name="ODR4" description="Port output data" start="4" size="1" />
      <BitField name="ODR5" description="Port output data" start="5" size="1" />
      <BitField name="ODR6" description="Port output data" start="6" size="1" />
      <BitField name="ODR7" description="Port output data" start="7" size="1" />
      <BitField name="ODR8" description="Port output data" start="8" size="1" />
      <BitField name="ODR9" description="Port output data" start="9" size="1" />
      <BitField name="ODR10" description="Port output data" start="10" size="1" />
      <BitField name="ODR11" description="Port output data" start="11" size="1" />
      <BitField name="ODR12" description="Port output data" start="12" size="1" />
      <BitField name="ODR13" description="Port output data" start="13" size="1" />
      <BitField name="ODR14" description="Port output data" start="14" size="1" />
      <BitField name="ODR15" description="Port output data" start="15" size="1" />
    </Register>
    <Register name="BSRR" description="Port bit set/reset register (GPIOn_BSRR)" start="+0x10" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BS0" description="Set bit 0" start="0" size="1" />
      <BitField name="BS1" description="Set bit 1" start="1" size="1" />
      <BitField name="BS2" description="Set bit 1" start="2" size="1" />
      <BitField name="BS3" description="Set bit 3" start="3" size="1" />
      <BitField name="BS4" description="Set bit 4" start="4" size="1" />
      <BitField name="BS5" description="Set bit 5" start="5" size="1" />
      <BitField name="BS6" description="Set bit 6" start="6" size="1" />
      <BitField name="BS7" description="Set bit 7" start="7" size="1" />
      <BitField name="BS8" description="Set bit 8" start="8" size="1" />
      <BitField name="BS9" description="Set bit 9" start="9" size="1" />
      <BitField name="BS10" description="Set bit 10" start="10" size="1" />
      <BitField name="BS11" description="Set bit 11" start="11" size="1" />
      <BitField name="BS12" description="Set bit 12" start="12" size="1" />
      <BitField name="BS13" description="Set bit 13" start="13" size="1" />
      <BitField name="BS14" description="Set bit 14" start="14" size="1" />
      <BitField name="BS15" description="Set bit 15" start="15" size="1" />
      <BitField name="BR0" description="Reset bit 0" start="16" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="17" size="1" />
      <BitField name="BR2" description="Reset bit 2" start="18" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="19" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="20" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="21" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="22" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="23" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="24" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="25" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="26" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="27" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="28" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="29" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="30" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="31" size="1" />
    </Register>
    <Register name="BRR" description="Port bit reset register (GPIOn_BRR)" start="+0x14" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BR0" description="Reset bit 0" start="0" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="1" size="1" />
      <BitField name="BR2" description="Reset bit 1" start="2" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="3" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="4" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="5" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="6" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="7" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="8" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="9" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="10" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="11" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="12" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="13" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="14" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="15" size="1" />
    </Register>
    <Register name="LCKR" description="Port configuration lock register" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LCK0" description="Port A Lock bit 0" start="0" size="1" />
      <BitField name="LCK1" description="Port A Lock bit 1" start="1" size="1" />
      <BitField name="LCK2" description="Port A Lock bit 2" start="2" size="1" />
      <BitField name="LCK3" description="Port A Lock bit 3" start="3" size="1" />
      <BitField name="LCK4" description="Port A Lock bit 4" start="4" size="1" />
      <BitField name="LCK5" description="Port A Lock bit 5" start="5" size="1" />
      <BitField name="LCK6" description="Port A Lock bit 6" start="6" size="1" />
      <BitField name="LCK7" description="Port A Lock bit 7" start="7" size="1" />
      <BitField name="LCK8" description="Port A Lock bit 8" start="8" size="1" />
      <BitField name="LCK9" description="Port A Lock bit 9" start="9" size="1" />
      <BitField name="LCK10" description="Port A Lock bit 10" start="10" size="1" />
      <BitField name="LCK11" description="Port A Lock bit 11" start="11" size="1" />
      <BitField name="LCK12" description="Port A Lock bit 12" start="12" size="1" />
      <BitField name="LCK13" description="Port A Lock bit 13" start="13" size="1" />
      <BitField name="LCK14" description="Port A Lock bit 14" start="14" size="1" />
      <BitField name="LCK15" description="Port A Lock bit 15" start="15" size="1" />
      <BitField name="LCKK" description="Lock key" start="16" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="GPIOE" description="General purpose I/O" start="0x40011800">
    <Register name="CRL" description="Port configuration register low (GPIOn_CRL)" start="+0x0" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE0" description="Port n.0 mode bits" start="0" size="2" />
      <BitField name="CNF0" description="Port n.0 configuration bits" start="2" size="2" />
      <BitField name="MODE1" description="Port n.1 mode bits" start="4" size="2" />
      <BitField name="CNF1" description="Port n.1 configuration bits" start="6" size="2" />
      <BitField name="MODE2" description="Port n.2 mode bits" start="8" size="2" />
      <BitField name="CNF2" description="Port n.2 configuration bits" start="10" size="2" />
      <BitField name="MODE3" description="Port n.3 mode bits" start="12" size="2" />
      <BitField name="CNF3" description="Port n.3 configuration bits" start="14" size="2" />
      <BitField name="MODE4" description="Port n.4 mode bits" start="16" size="2" />
      <BitField name="CNF4" description="Port n.4 configuration bits" start="18" size="2" />
      <BitField name="MODE5" description="Port n.5 mode bits" start="20" size="2" />
      <BitField name="CNF5" description="Port n.5 configuration bits" start="22" size="2" />
      <BitField name="MODE6" description="Port n.6 mode bits" start="24" size="2" />
      <BitField name="CNF6" description="Port n.6 configuration bits" start="26" size="2" />
      <BitField name="MODE7" description="Port n.7 mode bits" start="28" size="2" />
      <BitField name="CNF7" description="Port n.7 configuration bits" start="30" size="2" />
    </Register>
    <Register name="CRH" description="Port configuration register high (GPIOn_CRL)" start="+0x4" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE8" description="Port n.8 mode bits" start="0" size="2" />
      <BitField name="CNF8" description="Port n.8 configuration bits" start="2" size="2" />
      <BitField name="MODE9" description="Port n.9 mode bits" start="4" size="2" />
      <BitField name="CNF9" description="Port n.9 configuration bits" start="6" size="2" />
      <BitField name="MODE10" description="Port n.10 mode bits" start="8" size="2" />
      <BitField name="CNF10" description="Port n.10 configuration bits" start="10" size="2" />
      <BitField name="MODE11" description="Port n.11 mode bits" start="12" size="2" />
      <BitField name="CNF11" description="Port n.11 configuration bits" start="14" size="2" />
      <BitField name="MODE12" description="Port n.12 mode bits" start="16" size="2" />
      <BitField name="CNF12" description="Port n.12 configuration bits" start="18" size="2" />
      <BitField name="MODE13" description="Port n.13 mode bits" start="20" size="2" />
      <BitField name="CNF13" description="Port n.13 configuration bits" start="22" size="2" />
      <BitField name="MODE14" description="Port n.14 mode bits" start="24" size="2" />
      <BitField name="CNF14" description="Port n.14 configuration bits" start="26" size="2" />
      <BitField name="MODE15" description="Port n.15 mode bits" start="28" size="2" />
      <BitField name="CNF15" description="Port n.15 configuration bits" start="30" size="2" />
    </Register>
    <Register name="IDR" description="Port input data register (GPIOn_IDR)" start="+0x8" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IDR0" description="Port input data" start="0" size="1" />
      <BitField name="IDR1" description="Port input data" start="1" size="1" />
      <BitField name="IDR2" description="Port input data" start="2" size="1" />
      <BitField name="IDR3" description="Port input data" start="3" size="1" />
      <BitField name="IDR4" description="Port input data" start="4" size="1" />
      <BitField name="IDR5" description="Port input data" start="5" size="1" />
      <BitField name="IDR6" description="Port input data" start="6" size="1" />
      <BitField name="IDR7" description="Port input data" start="7" size="1" />
      <BitField name="IDR8" description="Port input data" start="8" size="1" />
      <BitField name="IDR9" description="Port input data" start="9" size="1" />
      <BitField name="IDR10" description="Port input data" start="10" size="1" />
      <BitField name="IDR11" description="Port input data" start="11" size="1" />
      <BitField name="IDR12" description="Port input data" start="12" size="1" />
      <BitField name="IDR13" description="Port input data" start="13" size="1" />
      <BitField name="IDR14" description="Port input data" start="14" size="1" />
      <BitField name="IDR15" description="Port input data" start="15" size="1" />
    </Register>
    <Register name="ODR" description="Port output data register (GPIOn_ODR)" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ODR0" description="Port output data" start="0" size="1" />
      <BitField name="ODR1" description="Port output data" start="1" size="1" />
      <BitField name="ODR2" description="Port output data" start="2" size="1" />
      <BitField name="ODR3" description="Port output data" start="3" size="1" />
      <BitField name="ODR4" description="Port output data" start="4" size="1" />
      <BitField name="ODR5" description="Port output data" start="5" size="1" />
      <BitField name="ODR6" description="Port output data" start="6" size="1" />
      <BitField name="ODR7" description="Port output data" start="7" size="1" />
      <BitField name="ODR8" description="Port output data" start="8" size="1" />
      <BitField name="ODR9" description="Port output data" start="9" size="1" />
      <BitField name="ODR10" description="Port output data" start="10" size="1" />
      <BitField name="ODR11" description="Port output data" start="11" size="1" />
      <BitField name="ODR12" description="Port output data" start="12" size="1" />
      <BitField name="ODR13" description="Port output data" start="13" size="1" />
      <BitField name="ODR14" description="Port output data" start="14" size="1" />
      <BitField name="ODR15" description="Port output data" start="15" size="1" />
    </Register>
    <Register name="BSRR" description="Port bit set/reset register (GPIOn_BSRR)" start="+0x10" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BS0" description="Set bit 0" start="0" size="1" />
      <BitField name="BS1" description="Set bit 1" start="1" size="1" />
      <BitField name="BS2" description="Set bit 1" start="2" size="1" />
      <BitField name="BS3" description="Set bit 3" start="3" size="1" />
      <BitField name="BS4" description="Set bit 4" start="4" size="1" />
      <BitField name="BS5" description="Set bit 5" start="5" size="1" />
      <BitField name="BS6" description="Set bit 6" start="6" size="1" />
      <BitField name="BS7" description="Set bit 7" start="7" size="1" />
      <BitField name="BS8" description="Set bit 8" start="8" size="1" />
      <BitField name="BS9" description="Set bit 9" start="9" size="1" />
      <BitField name="BS10" description="Set bit 10" start="10" size="1" />
      <BitField name="BS11" description="Set bit 11" start="11" size="1" />
      <BitField name="BS12" description="Set bit 12" start="12" size="1" />
      <BitField name="BS13" description="Set bit 13" start="13" size="1" />
      <BitField name="BS14" description="Set bit 14" start="14" size="1" />
      <BitField name="BS15" description="Set bit 15" start="15" size="1" />
      <BitField name="BR0" description="Reset bit 0" start="16" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="17" size="1" />
      <BitField name="BR2" description="Reset bit 2" start="18" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="19" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="20" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="21" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="22" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="23" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="24" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="25" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="26" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="27" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="28" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="29" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="30" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="31" size="1" />
    </Register>
    <Register name="BRR" description="Port bit reset register (GPIOn_BRR)" start="+0x14" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BR0" description="Reset bit 0" start="0" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="1" size="1" />
      <BitField name="BR2" description="Reset bit 1" start="2" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="3" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="4" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="5" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="6" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="7" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="8" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="9" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="10" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="11" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="12" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="13" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="14" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="15" size="1" />
    </Register>
    <Register name="LCKR" description="Port configuration lock register" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LCK0" description="Port A Lock bit 0" start="0" size="1" />
      <BitField name="LCK1" description="Port A Lock bit 1" start="1" size="1" />
      <BitField name="LCK2" description="Port A Lock bit 2" start="2" size="1" />
      <BitField name="LCK3" description="Port A Lock bit 3" start="3" size="1" />
      <BitField name="LCK4" description="Port A Lock bit 4" start="4" size="1" />
      <BitField name="LCK5" description="Port A Lock bit 5" start="5" size="1" />
      <BitField name="LCK6" description="Port A Lock bit 6" start="6" size="1" />
      <BitField name="LCK7" description="Port A Lock bit 7" start="7" size="1" />
      <BitField name="LCK8" description="Port A Lock bit 8" start="8" size="1" />
      <BitField name="LCK9" description="Port A Lock bit 9" start="9" size="1" />
      <BitField name="LCK10" description="Port A Lock bit 10" start="10" size="1" />
      <BitField name="LCK11" description="Port A Lock bit 11" start="11" size="1" />
      <BitField name="LCK12" description="Port A Lock bit 12" start="12" size="1" />
      <BitField name="LCK13" description="Port A Lock bit 13" start="13" size="1" />
      <BitField name="LCK14" description="Port A Lock bit 14" start="14" size="1" />
      <BitField name="LCK15" description="Port A Lock bit 15" start="15" size="1" />
      <BitField name="LCKK" description="Lock key" start="16" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="GPIOF" description="General purpose I/O" start="0x40011C00">
    <Register name="CRL" description="Port configuration register low (GPIOn_CRL)" start="+0x0" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE0" description="Port n.0 mode bits" start="0" size="2" />
      <BitField name="CNF0" description="Port n.0 configuration bits" start="2" size="2" />
      <BitField name="MODE1" description="Port n.1 mode bits" start="4" size="2" />
      <BitField name="CNF1" description="Port n.1 configuration bits" start="6" size="2" />
      <BitField name="MODE2" description="Port n.2 mode bits" start="8" size="2" />
      <BitField name="CNF2" description="Port n.2 configuration bits" start="10" size="2" />
      <BitField name="MODE3" description="Port n.3 mode bits" start="12" size="2" />
      <BitField name="CNF3" description="Port n.3 configuration bits" start="14" size="2" />
      <BitField name="MODE4" description="Port n.4 mode bits" start="16" size="2" />
      <BitField name="CNF4" description="Port n.4 configuration bits" start="18" size="2" />
      <BitField name="MODE5" description="Port n.5 mode bits" start="20" size="2" />
      <BitField name="CNF5" description="Port n.5 configuration bits" start="22" size="2" />
      <BitField name="MODE6" description="Port n.6 mode bits" start="24" size="2" />
      <BitField name="CNF6" description="Port n.6 configuration bits" start="26" size="2" />
      <BitField name="MODE7" description="Port n.7 mode bits" start="28" size="2" />
      <BitField name="CNF7" description="Port n.7 configuration bits" start="30" size="2" />
    </Register>
    <Register name="CRH" description="Port configuration register high (GPIOn_CRL)" start="+0x4" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE8" description="Port n.8 mode bits" start="0" size="2" />
      <BitField name="CNF8" description="Port n.8 configuration bits" start="2" size="2" />
      <BitField name="MODE9" description="Port n.9 mode bits" start="4" size="2" />
      <BitField name="CNF9" description="Port n.9 configuration bits" start="6" size="2" />
      <BitField name="MODE10" description="Port n.10 mode bits" start="8" size="2" />
      <BitField name="CNF10" description="Port n.10 configuration bits" start="10" size="2" />
      <BitField name="MODE11" description="Port n.11 mode bits" start="12" size="2" />
      <BitField name="CNF11" description="Port n.11 configuration bits" start="14" size="2" />
      <BitField name="MODE12" description="Port n.12 mode bits" start="16" size="2" />
      <BitField name="CNF12" description="Port n.12 configuration bits" start="18" size="2" />
      <BitField name="MODE13" description="Port n.13 mode bits" start="20" size="2" />
      <BitField name="CNF13" description="Port n.13 configuration bits" start="22" size="2" />
      <BitField name="MODE14" description="Port n.14 mode bits" start="24" size="2" />
      <BitField name="CNF14" description="Port n.14 configuration bits" start="26" size="2" />
      <BitField name="MODE15" description="Port n.15 mode bits" start="28" size="2" />
      <BitField name="CNF15" description="Port n.15 configuration bits" start="30" size="2" />
    </Register>
    <Register name="IDR" description="Port input data register (GPIOn_IDR)" start="+0x8" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IDR0" description="Port input data" start="0" size="1" />
      <BitField name="IDR1" description="Port input data" start="1" size="1" />
      <BitField name="IDR2" description="Port input data" start="2" size="1" />
      <BitField name="IDR3" description="Port input data" start="3" size="1" />
      <BitField name="IDR4" description="Port input data" start="4" size="1" />
      <BitField name="IDR5" description="Port input data" start="5" size="1" />
      <BitField name="IDR6" description="Port input data" start="6" size="1" />
      <BitField name="IDR7" description="Port input data" start="7" size="1" />
      <BitField name="IDR8" description="Port input data" start="8" size="1" />
      <BitField name="IDR9" description="Port input data" start="9" size="1" />
      <BitField name="IDR10" description="Port input data" start="10" size="1" />
      <BitField name="IDR11" description="Port input data" start="11" size="1" />
      <BitField name="IDR12" description="Port input data" start="12" size="1" />
      <BitField name="IDR13" description="Port input data" start="13" size="1" />
      <BitField name="IDR14" description="Port input data" start="14" size="1" />
      <BitField name="IDR15" description="Port input data" start="15" size="1" />
    </Register>
    <Register name="ODR" description="Port output data register (GPIOn_ODR)" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ODR0" description="Port output data" start="0" size="1" />
      <BitField name="ODR1" description="Port output data" start="1" size="1" />
      <BitField name="ODR2" description="Port output data" start="2" size="1" />
      <BitField name="ODR3" description="Port output data" start="3" size="1" />
      <BitField name="ODR4" description="Port output data" start="4" size="1" />
      <BitField name="ODR5" description="Port output data" start="5" size="1" />
      <BitField name="ODR6" description="Port output data" start="6" size="1" />
      <BitField name="ODR7" description="Port output data" start="7" size="1" />
      <BitField name="ODR8" description="Port output data" start="8" size="1" />
      <BitField name="ODR9" description="Port output data" start="9" size="1" />
      <BitField name="ODR10" description="Port output data" start="10" size="1" />
      <BitField name="ODR11" description="Port output data" start="11" size="1" />
      <BitField name="ODR12" description="Port output data" start="12" size="1" />
      <BitField name="ODR13" description="Port output data" start="13" size="1" />
      <BitField name="ODR14" description="Port output data" start="14" size="1" />
      <BitField name="ODR15" description="Port output data" start="15" size="1" />
    </Register>
    <Register name="BSRR" description="Port bit set/reset register (GPIOn_BSRR)" start="+0x10" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BS0" description="Set bit 0" start="0" size="1" />
      <BitField name="BS1" description="Set bit 1" start="1" size="1" />
      <BitField name="BS2" description="Set bit 1" start="2" size="1" />
      <BitField name="BS3" description="Set bit 3" start="3" size="1" />
      <BitField name="BS4" description="Set bit 4" start="4" size="1" />
      <BitField name="BS5" description="Set bit 5" start="5" size="1" />
      <BitField name="BS6" description="Set bit 6" start="6" size="1" />
      <BitField name="BS7" description="Set bit 7" start="7" size="1" />
      <BitField name="BS8" description="Set bit 8" start="8" size="1" />
      <BitField name="BS9" description="Set bit 9" start="9" size="1" />
      <BitField name="BS10" description="Set bit 10" start="10" size="1" />
      <BitField name="BS11" description="Set bit 11" start="11" size="1" />
      <BitField name="BS12" description="Set bit 12" start="12" size="1" />
      <BitField name="BS13" description="Set bit 13" start="13" size="1" />
      <BitField name="BS14" description="Set bit 14" start="14" size="1" />
      <BitField name="BS15" description="Set bit 15" start="15" size="1" />
      <BitField name="BR0" description="Reset bit 0" start="16" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="17" size="1" />
      <BitField name="BR2" description="Reset bit 2" start="18" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="19" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="20" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="21" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="22" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="23" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="24" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="25" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="26" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="27" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="28" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="29" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="30" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="31" size="1" />
    </Register>
    <Register name="BRR" description="Port bit reset register (GPIOn_BRR)" start="+0x14" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BR0" description="Reset bit 0" start="0" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="1" size="1" />
      <BitField name="BR2" description="Reset bit 1" start="2" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="3" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="4" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="5" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="6" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="7" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="8" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="9" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="10" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="11" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="12" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="13" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="14" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="15" size="1" />
    </Register>
    <Register name="LCKR" description="Port configuration lock register" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LCK0" description="Port A Lock bit 0" start="0" size="1" />
      <BitField name="LCK1" description="Port A Lock bit 1" start="1" size="1" />
      <BitField name="LCK2" description="Port A Lock bit 2" start="2" size="1" />
      <BitField name="LCK3" description="Port A Lock bit 3" start="3" size="1" />
      <BitField name="LCK4" description="Port A Lock bit 4" start="4" size="1" />
      <BitField name="LCK5" description="Port A Lock bit 5" start="5" size="1" />
      <BitField name="LCK6" description="Port A Lock bit 6" start="6" size="1" />
      <BitField name="LCK7" description="Port A Lock bit 7" start="7" size="1" />
      <BitField name="LCK8" description="Port A Lock bit 8" start="8" size="1" />
      <BitField name="LCK9" description="Port A Lock bit 9" start="9" size="1" />
      <BitField name="LCK10" description="Port A Lock bit 10" start="10" size="1" />
      <BitField name="LCK11" description="Port A Lock bit 11" start="11" size="1" />
      <BitField name="LCK12" description="Port A Lock bit 12" start="12" size="1" />
      <BitField name="LCK13" description="Port A Lock bit 13" start="13" size="1" />
      <BitField name="LCK14" description="Port A Lock bit 14" start="14" size="1" />
      <BitField name="LCK15" description="Port A Lock bit 15" start="15" size="1" />
      <BitField name="LCKK" description="Lock key" start="16" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="GPIOG" description="General purpose I/O" start="0x40012000">
    <Register name="CRL" description="Port configuration register low (GPIOn_CRL)" start="+0x0" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE0" description="Port n.0 mode bits" start="0" size="2" />
      <BitField name="CNF0" description="Port n.0 configuration bits" start="2" size="2" />
      <BitField name="MODE1" description="Port n.1 mode bits" start="4" size="2" />
      <BitField name="CNF1" description="Port n.1 configuration bits" start="6" size="2" />
      <BitField name="MODE2" description="Port n.2 mode bits" start="8" size="2" />
      <BitField name="CNF2" description="Port n.2 configuration bits" start="10" size="2" />
      <BitField name="MODE3" description="Port n.3 mode bits" start="12" size="2" />
      <BitField name="CNF3" description="Port n.3 configuration bits" start="14" size="2" />
      <BitField name="MODE4" description="Port n.4 mode bits" start="16" size="2" />
      <BitField name="CNF4" description="Port n.4 configuration bits" start="18" size="2" />
      <BitField name="MODE5" description="Port n.5 mode bits" start="20" size="2" />
      <BitField name="CNF5" description="Port n.5 configuration bits" start="22" size="2" />
      <BitField name="MODE6" description="Port n.6 mode bits" start="24" size="2" />
      <BitField name="CNF6" description="Port n.6 configuration bits" start="26" size="2" />
      <BitField name="MODE7" description="Port n.7 mode bits" start="28" size="2" />
      <BitField name="CNF7" description="Port n.7 configuration bits" start="30" size="2" />
    </Register>
    <Register name="CRH" description="Port configuration register high (GPIOn_CRL)" start="+0x4" size="4" access="Read/Write" reset_value="0x44444444" reset_mask="0xFFFFFFFF">
      <BitField name="MODE8" description="Port n.8 mode bits" start="0" size="2" />
      <BitField name="CNF8" description="Port n.8 configuration bits" start="2" size="2" />
      <BitField name="MODE9" description="Port n.9 mode bits" start="4" size="2" />
      <BitField name="CNF9" description="Port n.9 configuration bits" start="6" size="2" />
      <BitField name="MODE10" description="Port n.10 mode bits" start="8" size="2" />
      <BitField name="CNF10" description="Port n.10 configuration bits" start="10" size="2" />
      <BitField name="MODE11" description="Port n.11 mode bits" start="12" size="2" />
      <BitField name="CNF11" description="Port n.11 configuration bits" start="14" size="2" />
      <BitField name="MODE12" description="Port n.12 mode bits" start="16" size="2" />
      <BitField name="CNF12" description="Port n.12 configuration bits" start="18" size="2" />
      <BitField name="MODE13" description="Port n.13 mode bits" start="20" size="2" />
      <BitField name="CNF13" description="Port n.13 configuration bits" start="22" size="2" />
      <BitField name="MODE14" description="Port n.14 mode bits" start="24" size="2" />
      <BitField name="CNF14" description="Port n.14 configuration bits" start="26" size="2" />
      <BitField name="MODE15" description="Port n.15 mode bits" start="28" size="2" />
      <BitField name="CNF15" description="Port n.15 configuration bits" start="30" size="2" />
    </Register>
    <Register name="IDR" description="Port input data register (GPIOn_IDR)" start="+0x8" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IDR0" description="Port input data" start="0" size="1" />
      <BitField name="IDR1" description="Port input data" start="1" size="1" />
      <BitField name="IDR2" description="Port input data" start="2" size="1" />
      <BitField name="IDR3" description="Port input data" start="3" size="1" />
      <BitField name="IDR4" description="Port input data" start="4" size="1" />
      <BitField name="IDR5" description="Port input data" start="5" size="1" />
      <BitField name="IDR6" description="Port input data" start="6" size="1" />
      <BitField name="IDR7" description="Port input data" start="7" size="1" />
      <BitField name="IDR8" description="Port input data" start="8" size="1" />
      <BitField name="IDR9" description="Port input data" start="9" size="1" />
      <BitField name="IDR10" description="Port input data" start="10" size="1" />
      <BitField name="IDR11" description="Port input data" start="11" size="1" />
      <BitField name="IDR12" description="Port input data" start="12" size="1" />
      <BitField name="IDR13" description="Port input data" start="13" size="1" />
      <BitField name="IDR14" description="Port input data" start="14" size="1" />
      <BitField name="IDR15" description="Port input data" start="15" size="1" />
    </Register>
    <Register name="ODR" description="Port output data register (GPIOn_ODR)" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ODR0" description="Port output data" start="0" size="1" />
      <BitField name="ODR1" description="Port output data" start="1" size="1" />
      <BitField name="ODR2" description="Port output data" start="2" size="1" />
      <BitField name="ODR3" description="Port output data" start="3" size="1" />
      <BitField name="ODR4" description="Port output data" start="4" size="1" />
      <BitField name="ODR5" description="Port output data" start="5" size="1" />
      <BitField name="ODR6" description="Port output data" start="6" size="1" />
      <BitField name="ODR7" description="Port output data" start="7" size="1" />
      <BitField name="ODR8" description="Port output data" start="8" size="1" />
      <BitField name="ODR9" description="Port output data" start="9" size="1" />
      <BitField name="ODR10" description="Port output data" start="10" size="1" />
      <BitField name="ODR11" description="Port output data" start="11" size="1" />
      <BitField name="ODR12" description="Port output data" start="12" size="1" />
      <BitField name="ODR13" description="Port output data" start="13" size="1" />
      <BitField name="ODR14" description="Port output data" start="14" size="1" />
      <BitField name="ODR15" description="Port output data" start="15" size="1" />
    </Register>
    <Register name="BSRR" description="Port bit set/reset register (GPIOn_BSRR)" start="+0x10" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BS0" description="Set bit 0" start="0" size="1" />
      <BitField name="BS1" description="Set bit 1" start="1" size="1" />
      <BitField name="BS2" description="Set bit 1" start="2" size="1" />
      <BitField name="BS3" description="Set bit 3" start="3" size="1" />
      <BitField name="BS4" description="Set bit 4" start="4" size="1" />
      <BitField name="BS5" description="Set bit 5" start="5" size="1" />
      <BitField name="BS6" description="Set bit 6" start="6" size="1" />
      <BitField name="BS7" description="Set bit 7" start="7" size="1" />
      <BitField name="BS8" description="Set bit 8" start="8" size="1" />
      <BitField name="BS9" description="Set bit 9" start="9" size="1" />
      <BitField name="BS10" description="Set bit 10" start="10" size="1" />
      <BitField name="BS11" description="Set bit 11" start="11" size="1" />
      <BitField name="BS12" description="Set bit 12" start="12" size="1" />
      <BitField name="BS13" description="Set bit 13" start="13" size="1" />
      <BitField name="BS14" description="Set bit 14" start="14" size="1" />
      <BitField name="BS15" description="Set bit 15" start="15" size="1" />
      <BitField name="BR0" description="Reset bit 0" start="16" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="17" size="1" />
      <BitField name="BR2" description="Reset bit 2" start="18" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="19" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="20" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="21" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="22" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="23" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="24" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="25" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="26" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="27" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="28" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="29" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="30" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="31" size="1" />
    </Register>
    <Register name="BRR" description="Port bit reset register (GPIOn_BRR)" start="+0x14" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="BR0" description="Reset bit 0" start="0" size="1" />
      <BitField name="BR1" description="Reset bit 1" start="1" size="1" />
      <BitField name="BR2" description="Reset bit 1" start="2" size="1" />
      <BitField name="BR3" description="Reset bit 3" start="3" size="1" />
      <BitField name="BR4" description="Reset bit 4" start="4" size="1" />
      <BitField name="BR5" description="Reset bit 5" start="5" size="1" />
      <BitField name="BR6" description="Reset bit 6" start="6" size="1" />
      <BitField name="BR7" description="Reset bit 7" start="7" size="1" />
      <BitField name="BR8" description="Reset bit 8" start="8" size="1" />
      <BitField name="BR9" description="Reset bit 9" start="9" size="1" />
      <BitField name="BR10" description="Reset bit 10" start="10" size="1" />
      <BitField name="BR11" description="Reset bit 11" start="11" size="1" />
      <BitField name="BR12" description="Reset bit 12" start="12" size="1" />
      <BitField name="BR13" description="Reset bit 13" start="13" size="1" />
      <BitField name="BR14" description="Reset bit 14" start="14" size="1" />
      <BitField name="BR15" description="Reset bit 15" start="15" size="1" />
    </Register>
    <Register name="LCKR" description="Port configuration lock register" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LCK0" description="Port A Lock bit 0" start="0" size="1" />
      <BitField name="LCK1" description="Port A Lock bit 1" start="1" size="1" />
      <BitField name="LCK2" description="Port A Lock bit 2" start="2" size="1" />
      <BitField name="LCK3" description="Port A Lock bit 3" start="3" size="1" />
      <BitField name="LCK4" description="Port A Lock bit 4" start="4" size="1" />
      <BitField name="LCK5" description="Port A Lock bit 5" start="5" size="1" />
      <BitField name="LCK6" description="Port A Lock bit 6" start="6" size="1" />
      <BitField name="LCK7" description="Port A Lock bit 7" start="7" size="1" />
      <BitField name="LCK8" description="Port A Lock bit 8" start="8" size="1" />
      <BitField name="LCK9" description="Port A Lock bit 9" start="9" size="1" />
      <BitField name="LCK10" description="Port A Lock bit 10" start="10" size="1" />
      <BitField name="LCK11" description="Port A Lock bit 11" start="11" size="1" />
      <BitField name="LCK12" description="Port A Lock bit 12" start="12" size="1" />
      <BitField name="LCK13" description="Port A Lock bit 13" start="13" size="1" />
      <BitField name="LCK14" description="Port A Lock bit 14" start="14" size="1" />
      <BitField name="LCK15" description="Port A Lock bit 15" start="15" size="1" />
      <BitField name="LCKK" description="Lock key" start="16" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="AFIO" description="Alternate function I/O" start="0x40010000">
    <Register name="EVCR" description="Event Control Register (AFIO_EVCR)" start="+0x0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PIN" description="Pin selection" start="0" size="4" />
      <BitField name="PORT" description="Port selection" start="4" size="3" />
      <BitField name="EVOE" description="Event Output Enable" start="7" size="1" />
    </Register>
    <Register name="MAPR" description="AF remap and debug I/O configuration register (AFIO_MAPR)" start="+0x4" size="4" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SPI1_REMAP" description="SPI1 remapping" start="0" size="1" access="Read/Write" />
      <BitField name="I2C1_REMAP" description="I2C1 remapping" start="1" size="1" access="Read/Write" />
      <BitField name="USART1_REMAP" description="USART1 remapping" start="2" size="1" access="Read/Write" />
      <BitField name="USART2_REMAP" description="USART2 remapping" start="3" size="1" access="Read/Write" />
      <BitField name="USART3_REMAP" description="USART3 remapping" start="4" size="2" access="Read/Write" />
      <BitField name="TIM1_REMAP" description="TIM1 remapping" start="6" size="2" access="Read/Write" />
      <BitField name="TIM2_REMAP" description="TIM2 remapping" start="8" size="2" access="Read/Write" />
      <BitField name="TIM3_REMAP" description="TIM3 remapping" start="10" size="2" access="Read/Write" />
      <BitField name="TIM4_REMAP" description="TIM4 remapping" start="12" size="1" access="Read/Write" />
      <BitField name="CAN_REMAP" description="CAN1 remapping" start="13" size="2" access="Read/Write" />
      <BitField name="PD01_REMAP" description="Port D0/Port D1 mapping on OSCIN/OSCOUT" start="15" size="1" access="Read/Write" />
      <BitField name="TIM5CH4_IREMAP" description="Set and cleared by software" start="16" size="1" access="Read/Write" />
      <BitField name="ADC1_ETRGINJ_REMAP" description="ADC 1 External trigger injected conversion remapping" start="17" size="1" access="Read/Write" />
      <BitField name="ADC1_ETRGREG_REMAP" description="ADC 1 external trigger regular conversion remapping" start="18" size="1" access="Read/Write" />
      <BitField name="ADC2_ETRGINJ_REMAP" description="ADC 2 external trigger injected conversion remapping" start="19" size="1" access="Read/Write" />
      <BitField name="ADC2_ETRGREG_REMAP" description="ADC 2 external trigger regular conversion remapping" start="20" size="1" access="Read/Write" />
      <BitField name="SWJ_CFG" description="Serial wire JTAG configuration" start="24" size="3" access="WriteOnly" />
    </Register>
    <Register name="EXTICR1" description="External interrupt configuration register 1 (AFIO_EXTICR1)" start="+0x8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EXTI0" description="EXTI0 configuration" start="0" size="4" />
      <BitField name="EXTI1" description="EXTI1 configuration" start="4" size="4" />
      <BitField name="EXTI2" description="EXTI2 configuration" start="8" size="4" />
      <BitField name="EXTI3" description="EXTI3 configuration" start="12" size="4" />
    </Register>
    <Register name="EXTICR2" description="External interrupt configuration register 2 (AFIO_EXTICR2)" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EXTI4" description="EXTI4 configuration" start="0" size="4" />
      <BitField name="EXTI5" description="EXTI5 configuration" start="4" size="4" />
      <BitField name="EXTI6" description="EXTI6 configuration" start="8" size="4" />
      <BitField name="EXTI7" description="EXTI7 configuration" start="12" size="4" />
    </Register>
    <Register name="EXTICR3" description="External interrupt configuration register 3 (AFIO_EXTICR3)" start="+0x10" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EXTI8" description="EXTI8 configuration" start="0" size="4" />
      <BitField name="EXTI9" description="EXTI9 configuration" start="4" size="4" />
      <BitField name="EXTI10" description="EXTI10 configuration" start="8" size="4" />
      <BitField name="EXTI11" description="EXTI11 configuration" start="12" size="4" />
    </Register>
    <Register name="EXTICR4" description="External interrupt configuration register 4 (AFIO_EXTICR4)" start="+0x14" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EXTI12" description="EXTI12 configuration" start="0" size="4" />
      <BitField name="EXTI13" description="EXTI13 configuration" start="4" size="4" />
      <BitField name="EXTI14" description="EXTI14 configuration" start="8" size="4" />
      <BitField name="EXTI15" description="EXTI15 configuration" start="12" size="4" />
    </Register>
    <Register name="MAPR2" description="AF remap and debug I/O configuration register" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TIM9_REMAP" description="TIM9 remapping" start="5" size="1" />
      <BitField name="TIM10_REMAP" description="TIM10 remapping" start="6" size="1" />
      <BitField name="TIM11_REMAP" description="TIM11 remapping" start="7" size="1" />
      <BitField name="TIM13_REMAP" description="TIM13 remapping" start="8" size="1" />
      <BitField name="TIM14_REMAP" description="TIM14 remapping" start="9" size="1" />
      <BitField name="FSMC_NADV" description="NADV connect/disconnect" start="10" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="EXTI" description="EXTI" start="0x40010400">
    <Register name="IMR" description="Interrupt mask register (EXTI_IMR)" start="+0x0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MR0" description="Interrupt Mask on line 0" start="0" size="1" />
      <BitField name="MR1" description="Interrupt Mask on line 1" start="1" size="1" />
      <BitField name="MR2" description="Interrupt Mask on line 2" start="2" size="1" />
      <BitField name="MR3" description="Interrupt Mask on line 3" start="3" size="1" />
      <BitField name="MR4" description="Interrupt Mask on line 4" start="4" size="1" />
      <BitField name="MR5" description="Interrupt Mask on line 5" start="5" size="1" />
      <BitField name="MR6" description="Interrupt Mask on line 6" start="6" size="1" />
      <BitField name="MR7" description="Interrupt Mask on line 7" start="7" size="1" />
      <BitField name="MR8" description="Interrupt Mask on line 8" start="8" size="1" />
      <BitField name="MR9" description="Interrupt Mask on line 9" start="9" size="1" />
      <BitField name="MR10" description="Interrupt Mask on line 10" start="10" size="1" />
      <BitField name="MR11" description="Interrupt Mask on line 11" start="11" size="1" />
      <BitField name="MR12" description="Interrupt Mask on line 12" start="12" size="1" />
      <BitField name="MR13" description="Interrupt Mask on line 13" start="13" size="1" />
      <BitField name="MR14" description="Interrupt Mask on line 14" start="14" size="1" />
      <BitField name="MR15" description="Interrupt Mask on line 15" start="15" size="1" />
      <BitField name="MR16" description="Interrupt Mask on line 16" start="16" size="1" />
      <BitField name="MR17" description="Interrupt Mask on line 17" start="17" size="1" />
      <BitField name="MR18" description="Interrupt Mask on line 18" start="18" size="1" />
    </Register>
    <Register name="EMR" description="Event mask register (EXTI_EMR)" start="+0x4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MR0" description="Event Mask on line 0" start="0" size="1" />
      <BitField name="MR1" description="Event Mask on line 1" start="1" size="1" />
      <BitField name="MR2" description="Event Mask on line 2" start="2" size="1" />
      <BitField name="MR3" description="Event Mask on line 3" start="3" size="1" />
      <BitField name="MR4" description="Event Mask on line 4" start="4" size="1" />
      <BitField name="MR5" description="Event Mask on line 5" start="5" size="1" />
      <BitField name="MR6" description="Event Mask on line 6" start="6" size="1" />
      <BitField name="MR7" description="Event Mask on line 7" start="7" size="1" />
      <BitField name="MR8" description="Event Mask on line 8" start="8" size="1" />
      <BitField name="MR9" description="Event Mask on line 9" start="9" size="1" />
      <BitField name="MR10" description="Event Mask on line 10" start="10" size="1" />
      <BitField name="MR11" description="Event Mask on line 11" start="11" size="1" />
      <BitField name="MR12" description="Event Mask on line 12" start="12" size="1" />
      <BitField name="MR13" description="Event Mask on line 13" start="13" size="1" />
      <BitField name="MR14" description="Event Mask on line 14" start="14" size="1" />
      <BitField name="MR15" description="Event Mask on line 15" start="15" size="1" />
      <BitField name="MR16" description="Event Mask on line 16" start="16" size="1" />
      <BitField name="MR17" description="Event Mask on line 17" start="17" size="1" />
      <BitField name="MR18" description="Event Mask on line 18" start="18" size="1" />
    </Register>
    <Register name="RTSR" description="Rising Trigger selection register (EXTI_RTSR)" start="+0x8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TR0" description="Rising trigger event configuration of line 0" start="0" size="1" />
      <BitField name="TR1" description="Rising trigger event configuration of line 1" start="1" size="1" />
      <BitField name="TR2" description="Rising trigger event configuration of line 2" start="2" size="1" />
      <BitField name="TR3" description="Rising trigger event configuration of line 3" start="3" size="1" />
      <BitField name="TR4" description="Rising trigger event configuration of line 4" start="4" size="1" />
      <BitField name="TR5" description="Rising trigger event configuration of line 5" start="5" size="1" />
      <BitField name="TR6" description="Rising trigger event configuration of line 6" start="6" size="1" />
      <BitField name="TR7" description="Rising trigger event configuration of line 7" start="7" size="1" />
      <BitField name="TR8" description="Rising trigger event configuration of line 8" start="8" size="1" />
      <BitField name="TR9" description="Rising trigger event configuration of line 9" start="9" size="1" />
      <BitField name="TR10" description="Rising trigger event configuration of line 10" start="10" size="1" />
      <BitField name="TR11" description="Rising trigger event configuration of line 11" start="11" size="1" />
      <BitField name="TR12" description="Rising trigger event configuration of line 12" start="12" size="1" />
      <BitField name="TR13" description="Rising trigger event configuration of line 13" start="13" size="1" />
      <BitField name="TR14" description="Rising trigger event configuration of line 14" start="14" size="1" />
      <BitField name="TR15" description="Rising trigger event configuration of line 15" start="15" size="1" />
      <BitField name="TR16" description="Rising trigger event configuration of line 16" start="16" size="1" />
      <BitField name="TR17" description="Rising trigger event configuration of line 17" start="17" size="1" />
      <BitField name="TR18" description="Rising trigger event configuration of line 18" start="18" size="1" />
    </Register>
    <Register name="FTSR" description="Falling Trigger selection register (EXTI_FTSR)" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TR0" description="Falling trigger event configuration of line 0" start="0" size="1" />
      <BitField name="TR1" description="Falling trigger event configuration of line 1" start="1" size="1" />
      <BitField name="TR2" description="Falling trigger event configuration of line 2" start="2" size="1" />
      <BitField name="TR3" description="Falling trigger event configuration of line 3" start="3" size="1" />
      <BitField name="TR4" description="Falling trigger event configuration of line 4" start="4" size="1" />
      <BitField name="TR5" description="Falling trigger event configuration of line 5" start="5" size="1" />
      <BitField name="TR6" description="Falling trigger event configuration of line 6" start="6" size="1" />
      <BitField name="TR7" description="Falling trigger event configuration of line 7" start="7" size="1" />
      <BitField name="TR8" description="Falling trigger event configuration of line 8" start="8" size="1" />
      <BitField name="TR9" description="Falling trigger event configuration of line 9" start="9" size="1" />
      <BitField name="TR10" description="Falling trigger event configuration of line 10" start="10" size="1" />
      <BitField name="TR11" description="Falling trigger event configuration of line 11" start="11" size="1" />
      <BitField name="TR12" description="Falling trigger event configuration of line 12" start="12" size="1" />
      <BitField name="TR13" description="Falling trigger event configuration of line 13" start="13" size="1" />
      <BitField name="TR14" description="Falling trigger event configuration of line 14" start="14" size="1" />
      <BitField name="TR15" description="Falling trigger event configuration of line 15" start="15" size="1" />
      <BitField name="TR16" description="Falling trigger event configuration of line 16" start="16" size="1" />
      <BitField name="TR17" description="Falling trigger event configuration of line 17" start="17" size="1" />
      <BitField name="TR18" description="Falling trigger event configuration of line 18" start="18" size="1" />
    </Register>
    <Register name="SWIER" description="Software interrupt event register (EXTI_SWIER)" start="+0x10" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SWIER0" description="Software Interrupt on line 0" start="0" size="1" />
      <BitField name="SWIER1" description="Software Interrupt on line 1" start="1" size="1" />
      <BitField name="SWIER2" description="Software Interrupt on line 2" start="2" size="1" />
      <BitField name="SWIER3" description="Software Interrupt on line 3" start="3" size="1" />
      <BitField name="SWIER4" description="Software Interrupt on line 4" start="4" size="1" />
      <BitField name="SWIER5" description="Software Interrupt on line 5" start="5" size="1" />
      <BitField name="SWIER6" description="Software Interrupt on line 6" start="6" size="1" />
      <BitField name="SWIER7" description="Software Interrupt on line 7" start="7" size="1" />
      <BitField name="SWIER8" description="Software Interrupt on line 8" start="8" size="1" />
      <BitField name="SWIER9" description="Software Interrupt on line 9" start="9" size="1" />
      <BitField name="SWIER10" description="Software Interrupt on line 10" start="10" size="1" />
      <BitField name="SWIER11" description="Software Interrupt on line 11" start="11" size="1" />
      <BitField name="SWIER12" description="Software Interrupt on line 12" start="12" size="1" />
      <BitField name="SWIER13" description="Software Interrupt on line 13" start="13" size="1" />
      <BitField name="SWIER14" description="Software Interrupt on line 14" start="14" size="1" />
      <BitField name="SWIER15" description="Software Interrupt on line 15" start="15" size="1" />
      <BitField name="SWIER16" description="Software Interrupt on line 16" start="16" size="1" />
      <BitField name="SWIER17" description="Software Interrupt on line 17" start="17" size="1" />
      <BitField name="SWIER18" description="Software Interrupt on line 18" start="18" size="1" />
    </Register>
    <Register name="PR" description="Pending register (EXTI_PR)" start="+0x14" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PR0" description="Pending bit 0" start="0" size="1" />
      <BitField name="PR1" description="Pending bit 1" start="1" size="1" />
      <BitField name="PR2" description="Pending bit 2" start="2" size="1" />
      <BitField name="PR3" description="Pending bit 3" start="3" size="1" />
      <BitField name="PR4" description="Pending bit 4" start="4" size="1" />
      <BitField name="PR5" description="Pending bit 5" start="5" size="1" />
      <BitField name="PR6" description="Pending bit 6" start="6" size="1" />
      <BitField name="PR7" description="Pending bit 7" start="7" size="1" />
      <BitField name="PR8" description="Pending bit 8" start="8" size="1" />
      <BitField name="PR9" description="Pending bit 9" start="9" size="1" />
      <BitField name="PR10" description="Pending bit 10" start="10" size="1" />
      <BitField name="PR11" description="Pending bit 11" start="11" size="1" />
      <BitField name="PR12" description="Pending bit 12" start="12" size="1" />
      <BitField name="PR13" description="Pending bit 13" start="13" size="1" />
      <BitField name="PR14" description="Pending bit 14" start="14" size="1" />
      <BitField name="PR15" description="Pending bit 15" start="15" size="1" />
      <BitField name="PR16" description="Pending bit 16" start="16" size="1" />
      <BitField name="PR17" description="Pending bit 17" start="17" size="1" />
      <BitField name="PR18" description="Pending bit 18" start="18" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="DMA1" description="DMA controller" start="0x40020000">
    <Register name="ISR" description="DMA interrupt status register (DMA_ISR)" start="+0x0" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="GIF1" description="Channel 1 Global interrupt flag" start="0" size="1" />
      <BitField name="TCIF1" description="Channel 1 Transfer Complete flag" start="1" size="1" />
      <BitField name="HTIF1" description="Channel 1 Half Transfer Complete flag" start="2" size="1" />
      <BitField name="TEIF1" description="Channel 1 Transfer Error flag" start="3" size="1" />
      <BitField name="GIF2" description="Channel 2 Global interrupt flag" start="4" size="1" />
      <BitField name="TCIF2" description="Channel 2 Transfer Complete flag" start="5" size="1" />
      <BitField name="HTIF2" description="Channel 2 Half Transfer Complete flag" start="6" size="1" />
      <BitField name="TEIF2" description="Channel 2 Transfer Error flag" start="7" size="1" />
      <BitField name="GIF3" description="Channel 3 Global interrupt flag" start="8" size="1" />
      <BitField name="TCIF3" description="Channel 3 Transfer Complete flag" start="9" size="1" />
      <BitField name="HTIF3" description="Channel 3 Half Transfer Complete flag" start="10" size="1" />
      <BitField name="TEIF3" description="Channel 3 Transfer Error flag" start="11" size="1" />
      <BitField name="GIF4" description="Channel 4 Global interrupt flag" start="12" size="1" />
      <BitField name="TCIF4" description="Channel 4 Transfer Complete flag" start="13" size="1" />
      <BitField name="HTIF4" description="Channel 4 Half Transfer Complete flag" start="14" size="1" />
      <BitField name="TEIF4" description="Channel 4 Transfer Error flag" start="15" size="1" />
      <BitField name="GIF5" description="Channel 5 Global interrupt flag" start="16" size="1" />
      <BitField name="TCIF5" description="Channel 5 Transfer Complete flag" start="17" size="1" />
      <BitField name="HTIF5" description="Channel 5 Half Transfer Complete flag" start="18" size="1" />
      <BitField name="TEIF5" description="Channel 5 Transfer Error flag" start="19" size="1" />
      <BitField name="GIF6" description="Channel 6 Global interrupt flag" start="20" size="1" />
      <BitField name="TCIF6" description="Channel 6 Transfer Complete flag" start="21" size="1" />
      <BitField name="HTIF6" description="Channel 6 Half Transfer Complete flag" start="22" size="1" />
      <BitField name="TEIF6" description="Channel 6 Transfer Error flag" start="23" size="1" />
      <BitField name="GIF7" description="Channel 7 Global interrupt flag" start="24" size="1" />
      <BitField name="TCIF7" description="Channel 7 Transfer Complete flag" start="25" size="1" />
      <BitField name="HTIF7" description="Channel 7 Half Transfer Complete flag" start="26" size="1" />
      <BitField name="TEIF7" description="Channel 7 Transfer Error flag" start="27" size="1" />
    </Register>
    <Register name="IFCR" description="DMA interrupt flag clear register (DMA_IFCR)" start="+0x4" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CGIF1" description="Channel 1 Global interrupt clear" start="0" size="1" />
      <BitField name="CGIF2" description="Channel 2 Global interrupt clear" start="4" size="1" />
      <BitField name="CGIF3" description="Channel 3 Global interrupt clear" start="8" size="1" />
      <BitField name="CGIF4" description="Channel 4 Global interrupt clear" start="12" size="1" />
      <BitField name="CGIF5" description="Channel 5 Global interrupt clear" start="16" size="1" />
      <BitField name="CGIF6" description="Channel 6 Global interrupt clear" start="20" size="1" />
      <BitField name="CGIF7" description="Channel 7 Global interrupt clear" start="24" size="1" />
      <BitField name="CTCIF1" description="Channel 1 Transfer Complete clear" start="1" size="1" />
      <BitField name="CTCIF2" description="Channel 2 Transfer Complete clear" start="5" size="1" />
      <BitField name="CTCIF3" description="Channel 3 Transfer Complete clear" start="9" size="1" />
      <BitField name="CTCIF4" description="Channel 4 Transfer Complete clear" start="13" size="1" />
      <BitField name="CTCIF5" description="Channel 5 Transfer Complete clear" start="17" size="1" />
      <BitField name="CTCIF6" description="Channel 6 Transfer Complete clear" start="21" size="1" />
      <BitField name="CTCIF7" description="Channel 7 Transfer Complete clear" start="25" size="1" />
      <BitField name="CHTIF1" description="Channel 1 Half Transfer clear" start="2" size="1" />
      <BitField name="CHTIF2" description="Channel 2 Half Transfer clear" start="6" size="1" />
      <BitField name="CHTIF3" description="Channel 3 Half Transfer clear" start="10" size="1" />
      <BitField name="CHTIF4" description="Channel 4 Half Transfer clear" start="14" size="1" />
      <BitField name="CHTIF5" description="Channel 5 Half Transfer clear" start="18" size="1" />
      <BitField name="CHTIF6" description="Channel 6 Half Transfer clear" start="22" size="1" />
      <BitField name="CHTIF7" description="Channel 7 Half Transfer clear" start="26" size="1" />
      <BitField name="CTEIF1" description="Channel 1 Transfer Error clear" start="3" size="1" />
      <BitField name="CTEIF2" description="Channel 2 Transfer Error clear" start="7" size="1" />
      <BitField name="CTEIF3" description="Channel 3 Transfer Error clear" start="11" size="1" />
      <BitField name="CTEIF4" description="Channel 4 Transfer Error clear" start="15" size="1" />
      <BitField name="CTEIF5" description="Channel 5 Transfer Error clear" start="19" size="1" />
      <BitField name="CTEIF6" description="Channel 6 Transfer Error clear" start="23" size="1" />
      <BitField name="CTEIF7" description="Channel 7 Transfer Error clear" start="27" size="1" />
    </Register>
    <Register name="CCR1" description="DMA channel configuration register (DMA_CCR)" start="+0x8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR1" description="DMA channel 1 number of data register" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR1" description="DMA channel 1 peripheral address register" start="+0x10" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR1" description="DMA channel 1 memory address register" start="+0x14" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
    <Register name="CCR2" description="DMA channel configuration register (DMA_CCR)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR2" description="DMA channel 2 number of data register" start="+0x20" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR2" description="DMA channel 2 peripheral address register" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR2" description="DMA channel 2 memory address register" start="+0x28" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
    <Register name="CCR3" description="DMA channel configuration register (DMA_CCR)" start="+0x30" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR3" description="DMA channel 3 number of data register" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR3" description="DMA channel 3 peripheral address register" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR3" description="DMA channel 3 memory address register" start="+0x3C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
    <Register name="CCR4" description="DMA channel configuration register (DMA_CCR)" start="+0x44" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR4" description="DMA channel 4 number of data register" start="+0x48" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR4" description="DMA channel 4 peripheral address register" start="+0x4C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR4" description="DMA channel 4 memory address register" start="+0x50" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
    <Register name="CCR5" description="DMA channel configuration register (DMA_CCR)" start="+0x58" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR5" description="DMA channel 5 number of data register" start="+0x5C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR5" description="DMA channel 5 peripheral address register" start="+0x60" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR5" description="DMA channel 5 memory address register" start="+0x64" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
    <Register name="CCR6" description="DMA channel configuration register (DMA_CCR)" start="+0x6C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR6" description="DMA channel 6 number of data register" start="+0x70" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR6" description="DMA channel 6 peripheral address register" start="+0x74" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR6" description="DMA channel 6 memory address register" start="+0x78" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
    <Register name="CCR7" description="DMA channel configuration register (DMA_CCR)" start="+0x80" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR7" description="DMA channel 7 number of data register" start="+0x84" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR7" description="DMA channel 7 peripheral address register" start="+0x88" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR7" description="DMA channel 7 memory address register" start="+0x8C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="DMA2" description="DMA controller" start="0x40020400">
    <Register name="ISR" description="DMA interrupt status register (DMA_ISR)" start="+0x0" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="GIF1" description="Channel 1 Global interrupt flag" start="0" size="1" />
      <BitField name="TCIF1" description="Channel 1 Transfer Complete flag" start="1" size="1" />
      <BitField name="HTIF1" description="Channel 1 Half Transfer Complete flag" start="2" size="1" />
      <BitField name="TEIF1" description="Channel 1 Transfer Error flag" start="3" size="1" />
      <BitField name="GIF2" description="Channel 2 Global interrupt flag" start="4" size="1" />
      <BitField name="TCIF2" description="Channel 2 Transfer Complete flag" start="5" size="1" />
      <BitField name="HTIF2" description="Channel 2 Half Transfer Complete flag" start="6" size="1" />
      <BitField name="TEIF2" description="Channel 2 Transfer Error flag" start="7" size="1" />
      <BitField name="GIF3" description="Channel 3 Global interrupt flag" start="8" size="1" />
      <BitField name="TCIF3" description="Channel 3 Transfer Complete flag" start="9" size="1" />
      <BitField name="HTIF3" description="Channel 3 Half Transfer Complete flag" start="10" size="1" />
      <BitField name="TEIF3" description="Channel 3 Transfer Error flag" start="11" size="1" />
      <BitField name="GIF4" description="Channel 4 Global interrupt flag" start="12" size="1" />
      <BitField name="TCIF4" description="Channel 4 Transfer Complete flag" start="13" size="1" />
      <BitField name="HTIF4" description="Channel 4 Half Transfer Complete flag" start="14" size="1" />
      <BitField name="TEIF4" description="Channel 4 Transfer Error flag" start="15" size="1" />
      <BitField name="GIF5" description="Channel 5 Global interrupt flag" start="16" size="1" />
      <BitField name="TCIF5" description="Channel 5 Transfer Complete flag" start="17" size="1" />
      <BitField name="HTIF5" description="Channel 5 Half Transfer Complete flag" start="18" size="1" />
      <BitField name="TEIF5" description="Channel 5 Transfer Error flag" start="19" size="1" />
      <BitField name="GIF6" description="Channel 6 Global interrupt flag" start="20" size="1" />
      <BitField name="TCIF6" description="Channel 6 Transfer Complete flag" start="21" size="1" />
      <BitField name="HTIF6" description="Channel 6 Half Transfer Complete flag" start="22" size="1" />
      <BitField name="TEIF6" description="Channel 6 Transfer Error flag" start="23" size="1" />
      <BitField name="GIF7" description="Channel 7 Global interrupt flag" start="24" size="1" />
      <BitField name="TCIF7" description="Channel 7 Transfer Complete flag" start="25" size="1" />
      <BitField name="HTIF7" description="Channel 7 Half Transfer Complete flag" start="26" size="1" />
      <BitField name="TEIF7" description="Channel 7 Transfer Error flag" start="27" size="1" />
    </Register>
    <Register name="IFCR" description="DMA interrupt flag clear register (DMA_IFCR)" start="+0x4" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CGIF1" description="Channel 1 Global interrupt clear" start="0" size="1" />
      <BitField name="CGIF2" description="Channel 2 Global interrupt clear" start="4" size="1" />
      <BitField name="CGIF3" description="Channel 3 Global interrupt clear" start="8" size="1" />
      <BitField name="CGIF4" description="Channel 4 Global interrupt clear" start="12" size="1" />
      <BitField name="CGIF5" description="Channel 5 Global interrupt clear" start="16" size="1" />
      <BitField name="CGIF6" description="Channel 6 Global interrupt clear" start="20" size="1" />
      <BitField name="CGIF7" description="Channel 7 Global interrupt clear" start="24" size="1" />
      <BitField name="CTCIF1" description="Channel 1 Transfer Complete clear" start="1" size="1" />
      <BitField name="CTCIF2" description="Channel 2 Transfer Complete clear" start="5" size="1" />
      <BitField name="CTCIF3" description="Channel 3 Transfer Complete clear" start="9" size="1" />
      <BitField name="CTCIF4" description="Channel 4 Transfer Complete clear" start="13" size="1" />
      <BitField name="CTCIF5" description="Channel 5 Transfer Complete clear" start="17" size="1" />
      <BitField name="CTCIF6" description="Channel 6 Transfer Complete clear" start="21" size="1" />
      <BitField name="CTCIF7" description="Channel 7 Transfer Complete clear" start="25" size="1" />
      <BitField name="CHTIF1" description="Channel 1 Half Transfer clear" start="2" size="1" />
      <BitField name="CHTIF2" description="Channel 2 Half Transfer clear" start="6" size="1" />
      <BitField name="CHTIF3" description="Channel 3 Half Transfer clear" start="10" size="1" />
      <BitField name="CHTIF4" description="Channel 4 Half Transfer clear" start="14" size="1" />
      <BitField name="CHTIF5" description="Channel 5 Half Transfer clear" start="18" size="1" />
      <BitField name="CHTIF6" description="Channel 6 Half Transfer clear" start="22" size="1" />
      <BitField name="CHTIF7" description="Channel 7 Half Transfer clear" start="26" size="1" />
      <BitField name="CTEIF1" description="Channel 1 Transfer Error clear" start="3" size="1" />
      <BitField name="CTEIF2" description="Channel 2 Transfer Error clear" start="7" size="1" />
      <BitField name="CTEIF3" description="Channel 3 Transfer Error clear" start="11" size="1" />
      <BitField name="CTEIF4" description="Channel 4 Transfer Error clear" start="15" size="1" />
      <BitField name="CTEIF5" description="Channel 5 Transfer Error clear" start="19" size="1" />
      <BitField name="CTEIF6" description="Channel 6 Transfer Error clear" start="23" size="1" />
      <BitField name="CTEIF7" description="Channel 7 Transfer Error clear" start="27" size="1" />
    </Register>
    <Register name="CCR1" description="DMA channel configuration register (DMA_CCR)" start="+0x8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR1" description="DMA channel 1 number of data register" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR1" description="DMA channel 1 peripheral address register" start="+0x10" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR1" description="DMA channel 1 memory address register" start="+0x14" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
    <Register name="CCR2" description="DMA channel configuration register (DMA_CCR)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR2" description="DMA channel 2 number of data register" start="+0x20" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR2" description="DMA channel 2 peripheral address register" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR2" description="DMA channel 2 memory address register" start="+0x28" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
    <Register name="CCR3" description="DMA channel configuration register (DMA_CCR)" start="+0x30" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR3" description="DMA channel 3 number of data register" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR3" description="DMA channel 3 peripheral address register" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR3" description="DMA channel 3 memory address register" start="+0x3C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
    <Register name="CCR4" description="DMA channel configuration register (DMA_CCR)" start="+0x44" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR4" description="DMA channel 4 number of data register" start="+0x48" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR4" description="DMA channel 4 peripheral address register" start="+0x4C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR4" description="DMA channel 4 memory address register" start="+0x50" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
    <Register name="CCR5" description="DMA channel configuration register (DMA_CCR)" start="+0x58" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR5" description="DMA channel 5 number of data register" start="+0x5C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR5" description="DMA channel 5 peripheral address register" start="+0x60" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR5" description="DMA channel 5 memory address register" start="+0x64" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
    <Register name="CCR6" description="DMA channel configuration register (DMA_CCR)" start="+0x6C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR6" description="DMA channel 6 number of data register" start="+0x70" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR6" description="DMA channel 6 peripheral address register" start="+0x74" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR6" description="DMA channel 6 memory address register" start="+0x78" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
    <Register name="CCR7" description="DMA channel configuration register (DMA_CCR)" start="+0x80" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN" description="Channel enable" start="0" size="1" />
      <BitField name="TCIE" description="Transfer complete interrupt enable" start="1" size="1" />
      <BitField name="HTIE" description="Half Transfer interrupt enable" start="2" size="1" />
      <BitField name="TEIE" description="Transfer error interrupt enable" start="3" size="1" />
      <BitField name="DIR" description="Data transfer direction" start="4" size="1" />
      <BitField name="CIRC" description="Circular mode" start="5" size="1" />
      <BitField name="PINC" description="Peripheral increment mode" start="6" size="1" />
      <BitField name="MINC" description="Memory increment mode" start="7" size="1" />
      <BitField name="PSIZE" description="Peripheral size" start="8" size="2" />
      <BitField name="MSIZE" description="Memory size" start="10" size="2" />
      <BitField name="PL" description="Channel Priority level" start="12" size="2" />
      <BitField name="MEM2MEM" description="Memory to memory mode" start="14" size="1" />
    </Register>
    <Register name="CNDTR7" description="DMA channel 7 number of data register" start="+0x84" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="NDT" description="Number of data to transfer" start="0" size="16" />
    </Register>
    <Register name="CPAR7" description="DMA channel 7 peripheral address register" start="+0x88" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PA" description="Peripheral address" start="0" size="32" />
    </Register>
    <Register name="CMAR7" description="DMA channel 7 memory address register" start="+0x8C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="MA" description="Memory address" start="0" size="32" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="SDIO" description="Secure digital input/output interface" start="0x40018000">
    <Register name="POWER" description="Bits 1:0 = PWRCTRL: Power supply control bits" start="+0x0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PWRCTRL" description="PWRCTRL" start="0" size="2" />
    </Register>
    <Register name="CLKCR" description="SDI clock control register (SDIO_CLKCR)" start="+0x4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CLKDIV" description="Clock divide factor" start="0" size="8" />
      <BitField name="CLKEN" description="Clock enable bit" start="8" size="1" />
      <BitField name="PWRSAV" description="Power saving configuration bit" start="9" size="1" />
      <BitField name="BYPASS" description="Clock divider bypass enable bit" start="10" size="1" />
      <BitField name="WIDBUS" description="Wide bus mode enable bit" start="11" size="2" />
      <BitField name="NEGEDGE" description="SDIO_CK dephasing selection bit" start="13" size="1" />
      <BitField name="HWFC_EN" description="HW Flow Control enable" start="14" size="1" />
    </Register>
    <Register name="ARG" description="Bits 31:0 = : Command argument" start="+0x8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CMDARG" description="Command argument" start="0" size="32" />
    </Register>
    <Register name="CMD" description="SDIO command register (SDIO_CMD)" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CMDINDEX" description="CMDINDEX" start="0" size="6" />
      <BitField name="WAITRESP" description="WAITRESP" start="6" size="2" />
      <BitField name="WAITINT" description="WAITINT" start="8" size="1" />
      <BitField name="WAITPEND" description="WAITPEND" start="9" size="1" />
      <BitField name="CPSMEN" description="CPSMEN" start="10" size="1" />
      <BitField name="SDIOSuspend" description="SDIOSuspend" start="11" size="1" />
      <BitField name="ENCMDcompl" description="ENCMDcompl" start="12" size="1" />
      <BitField name="nIEN" description="nIEN" start="13" size="1" />
      <BitField name="CE_ATACMD" description="CE_ATACMD" start="14" size="1" />
    </Register>
    <Register name="RESPCMD" description="SDIO command register" start="+0x10" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="RESPCMD" description="RESPCMD" start="0" size="6" />
    </Register>
    <Register name="RESPI1" description="Bits 31:0 = CARDSTATUS1" start="+0x14" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CARDSTATUS1" description="CARDSTATUS1" start="0" size="32" />
    </Register>
    <Register name="RESP2" description="Bits 31:0 = CARDSTATUS2" start="+0x18" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CARDSTATUS2" description="CARDSTATUS2" start="0" size="32" />
    </Register>
    <Register name="RESP3" description="Bits 31:0 = CARDSTATUS3" start="+0x1C" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CARDSTATUS3" description="CARDSTATUS3" start="0" size="32" />
    </Register>
    <Register name="RESP4" description="Bits 31:0 = CARDSTATUS4" start="+0x20" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CARDSTATUS4" description="CARDSTATUS4" start="0" size="32" />
    </Register>
    <Register name="DTIMER" description="Bits 31:0 = DATATIME: Data timeout period" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATATIME" description="Data timeout period" start="0" size="32" />
    </Register>
    <Register name="DLEN" description="Bits 24:0 = DATALENGTH: Data length value" start="+0x28" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATALENGTH" description="Data length value" start="0" size="25" />
    </Register>
    <Register name="DCTRL" description="SDIO data control register (SDIO_DCTRL)" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DTEN" description="DTEN" start="0" size="1" />
      <BitField name="DTDIR" description="DTDIR" start="1" size="1" />
      <BitField name="DTMODE" description="DTMODE" start="2" size="1" />
      <BitField name="DMAEN" description="DMAEN" start="3" size="1" />
      <BitField name="DBLOCKSIZE" description="DBLOCKSIZE" start="4" size="4" />
      <BitField name="PWSTART" description="PWSTART" start="8" size="1" />
      <BitField name="PWSTOP" description="PWSTOP" start="9" size="1" />
      <BitField name="RWMOD" description="RWMOD" start="10" size="1" />
      <BitField name="SDIOEN" description="SDIOEN" start="11" size="1" />
    </Register>
    <Register name="DCOUNT" description="Bits 24:0 = DATACOUNT: Data count value" start="+0x30" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATACOUNT" description="Data count value" start="0" size="25" />
    </Register>
    <Register name="STA" description="SDIO status register (SDIO_STA)" start="+0x34" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCRCFAIL" description="CCRCFAIL" start="0" size="1" />
      <BitField name="DCRCFAIL" description="DCRCFAIL" start="1" size="1" />
      <BitField name="CTIMEOUT" description="CTIMEOUT" start="2" size="1" />
      <BitField name="DTIMEOUT" description="DTIMEOUT" start="3" size="1" />
      <BitField name="TXUNDERR" description="TXUNDERR" start="4" size="1" />
      <BitField name="RXOVERR" description="RXOVERR" start="5" size="1" />
      <BitField name="CMDREND" description="CMDREND" start="6" size="1" />
      <BitField name="CMDSENT" description="CMDSENT" start="7" size="1" />
      <BitField name="DATAEND" description="DATAEND" start="8" size="1" />
      <BitField name="STBITERR" description="STBITERR" start="9" size="1" />
      <BitField name="DBCKEND" description="DBCKEND" start="10" size="1" />
      <BitField name="CMDACT" description="CMDACT" start="11" size="1" />
      <BitField name="TXACT" description="TXACT" start="12" size="1" />
      <BitField name="RXACT" description="RXACT" start="13" size="1" />
      <BitField name="TXFIFOHE" description="TXFIFOHE" start="14" size="1" />
      <BitField name="RXFIFOHF" description="RXFIFOHF" start="15" size="1" />
      <BitField name="TXFIFOF" description="TXFIFOF" start="16" size="1" />
      <BitField name="RXFIFOF" description="RXFIFOF" start="17" size="1" />
      <BitField name="TXFIFOE" description="TXFIFOE" start="18" size="1" />
      <BitField name="RXFIFOE" description="RXFIFOE" start="19" size="1" />
      <BitField name="TXDAVL" description="TXDAVL" start="20" size="1" />
      <BitField name="RXDAVL" description="RXDAVL" start="21" size="1" />
      <BitField name="SDIOIT" description="SDIOIT" start="22" size="1" />
      <BitField name="CEATAEND" description="CEATAEND" start="23" size="1" />
    </Register>
    <Register name="ICR" description="SDIO interrupt clear register (SDIO_ICR)" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCRCFAILC" description="CCRCFAILC" start="0" size="1" />
      <BitField name="DCRCFAILC" description="DCRCFAILC" start="1" size="1" />
      <BitField name="CTIMEOUTC" description="CTIMEOUTC" start="2" size="1" />
      <BitField name="DTIMEOUTC" description="DTIMEOUTC" start="3" size="1" />
      <BitField name="TXUNDERRC" description="TXUNDERRC" start="4" size="1" />
      <BitField name="RXOVERRC" description="RXOVERRC" start="5" size="1" />
      <BitField name="CMDRENDC" description="CMDRENDC" start="6" size="1" />
      <BitField name="CMDSENTC" description="CMDSENTC" start="7" size="1" />
      <BitField name="DATAENDC" description="DATAENDC" start="8" size="1" />
      <BitField name="STBITERRC" description="STBITERRC" start="9" size="1" />
      <BitField name="DBCKENDC" description="DBCKENDC" start="10" size="1" />
      <BitField name="SDIOITC" description="SDIOITC" start="22" size="1" />
      <BitField name="CEATAENDC" description="CEATAENDC" start="23" size="1" />
    </Register>
    <Register name="MASK" description="SDIO mask register (SDIO_MASK)" start="+0x3C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCRCFAILIE" description="CCRCFAILIE" start="0" size="1" />
      <BitField name="DCRCFAILIE" description="DCRCFAILIE" start="1" size="1" />
      <BitField name="CTIMEOUTIE" description="CTIMEOUTIE" start="2" size="1" />
      <BitField name="DTIMEOUTIE" description="DTIMEOUTIE" start="3" size="1" />
      <BitField name="TXUNDERRIE" description="TXUNDERRIE" start="4" size="1" />
      <BitField name="RXOVERRIE" description="RXOVERRIE" start="5" size="1" />
      <BitField name="CMDRENDIE" description="CMDRENDIE" start="6" size="1" />
      <BitField name="CMDSENTIE" description="CMDSENTIE" start="7" size="1" />
      <BitField name="DATAENDIE" description="DATAENDIE" start="8" size="1" />
      <BitField name="STBITERRIE" description="STBITERRIE" start="9" size="1" />
      <BitField name="DBACKENDIE" description="DBACKENDIE" start="10" size="1" />
      <BitField name="CMDACTIE" description="CMDACTIE" start="11" size="1" />
      <BitField name="TXACTIE" description="TXACTIE" start="12" size="1" />
      <BitField name="RXACTIE" description="RXACTIE" start="13" size="1" />
      <BitField name="TXFIFOHEIE" description="TXFIFOHEIE" start="14" size="1" />
      <BitField name="RXFIFOHFIE" description="RXFIFOHFIE" start="15" size="1" />
      <BitField name="TXFIFOFIE" description="TXFIFOFIE" start="16" size="1" />
      <BitField name="RXFIFOFIE" description="RXFIFOFIE" start="17" size="1" />
      <BitField name="TXFIFOEIE" description="TXFIFOEIE" start="18" size="1" />
      <BitField name="RXFIFOEIE" description="RXFIFOEIE" start="19" size="1" />
      <BitField name="TXDAVLIE" description="TXDAVLIE" start="20" size="1" />
      <BitField name="RXDAVLIE" description="RXDAVLIE" start="21" size="1" />
      <BitField name="SDIOITIE" description="SDIOITIE" start="22" size="1" />
      <BitField name="CEATENDIE" description="CEATENDIE" start="23" size="1" />
    </Register>
    <Register name="FIFOCNT" description="Bits 23:0 = FIFOCOUNT: Remaining number of words to be written to or read from the FIFO" start="+0x48" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FIF0COUNT" description="FIF0COUNT" start="0" size="24" />
    </Register>
    <Register name="FIFO" description="bits 31:0 = FIFOData: Receive and transmit FIFO data" start="+0x80" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FIFOData" description="FIFOData" start="0" size="32" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="RTC" description="Real time clock" start="0x40002800">
    <Register name="CRH" description="RTC Control Register High" start="+0x0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SECIE" description="Second interrupt Enable" start="0" size="1" />
      <BitField name="ALRIE" description="Alarm interrupt Enable" start="1" size="1" />
      <BitField name="OWIE" description="Overflow interrupt Enable" start="2" size="1" />
    </Register>
    <Register name="CRL" description="RTC Control Register Low" start="+0x4" size="4" reset_value="0x00000020" reset_mask="0xFFFFFFFF">
      <BitField name="SECF" description="Second Flag" start="0" size="1" access="Read/Write" />
      <BitField name="ALRF" description="Alarm Flag" start="1" size="1" access="Read/Write" />
      <BitField name="OWF" description="Overflow Flag" start="2" size="1" access="Read/Write" />
      <BitField name="RSF" description="Registers Synchronized Flag" start="3" size="1" access="Read/Write" />
      <BitField name="CNF" description="Configuration Flag" start="4" size="1" access="Read/Write" />
      <BitField name="RTOFF" description="RTC operation OFF" start="5" size="1" access="ReadOnly" />
    </Register>
    <Register name="PRLH" description="RTC Prescaler Load Register High" start="+0x8" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PRLH" description="RTC Prescaler Load Register High" start="0" size="4" />
    </Register>
    <Register name="PRLL" description="RTC Prescaler Load Register Low" start="+0xC" size="4" access="WriteOnly" reset_value="0x8000" reset_mask="0xFFFFFFFF">
      <BitField name="PRLL" description="RTC Prescaler Divider Register Low" start="0" size="16" />
    </Register>
    <Register name="DIVH" description="RTC Prescaler Divider Register High" start="+0x10" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DIVH" description="RTC prescaler divider register high" start="0" size="4" />
    </Register>
    <Register name="DIVL" description="RTC Prescaler Divider Register Low" start="+0x14" size="4" access="ReadOnly" reset_value="0x8000" reset_mask="0xFFFFFFFF">
      <BitField name="DIVL" description="RTC prescaler divider register Low" start="0" size="16" />
    </Register>
    <Register name="CNTH" description="RTC Counter Register High" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNTH" description="RTC counter register high" start="0" size="16" />
    </Register>
    <Register name="CNTL" description="RTC Counter Register Low" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNTL" description="RTC counter register Low" start="0" size="16" />
    </Register>
    <Register name="ALRH" description="RTC Alarm Register High" start="+0x20" size="4" access="WriteOnly" reset_value="0xFFFF" reset_mask="0xFFFFFFFF">
      <BitField name="ALRH" description="RTC alarm register high" start="0" size="16" />
    </Register>
    <Register name="ALRL" description="RTC Alarm Register Low" start="+0x24" size="4" access="WriteOnly" reset_value="0xFFFF" reset_mask="0xFFFFFFFF">
      <BitField name="ALRL" description="RTC alarm register low" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="BKP" description="Backup registers" start="0x40006C04">
    <Register name="DR1" description="Backup data register (BKP_DR)" start="+0x0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D1" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR2" description="Backup data register (BKP_DR)" start="+0x4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D2" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR3" description="Backup data register (BKP_DR)" start="+0x8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D3" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR4" description="Backup data register (BKP_DR)" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D4" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR5" description="Backup data register (BKP_DR)" start="+0x10" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D5" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR6" description="Backup data register (BKP_DR)" start="+0x14" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D6" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR7" description="Backup data register (BKP_DR)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D7" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR8" description="Backup data register (BKP_DR)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D8" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR9" description="Backup data register (BKP_DR)" start="+0x20" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D9" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR10" description="Backup data register (BKP_DR)" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D10" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR11" description="Backup data register (BKP_DR)" start="+0x3C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DR11" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR12" description="Backup data register (BKP_DR)" start="+0x40" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DR12" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR13" description="Backup data register (BKP_DR)" start="+0x44" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DR13" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR14" description="Backup data register (BKP_DR)" start="+0x48" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D14" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR15" description="Backup data register (BKP_DR)" start="+0x4C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D15" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR16" description="Backup data register (BKP_DR)" start="+0x50" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D16" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR17" description="Backup data register (BKP_DR)" start="+0x54" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D17" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR18" description="Backup data register (BKP_DR)" start="+0x58" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D18" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR19" description="Backup data register (BKP_DR)" start="+0x5C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D19" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR20" description="Backup data register (BKP_DR)" start="+0x60" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D20" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR21" description="Backup data register (BKP_DR)" start="+0x64" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D21" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR22" description="Backup data register (BKP_DR)" start="+0x68" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D22" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR23" description="Backup data register (BKP_DR)" start="+0x6C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D23" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR24" description="Backup data register (BKP_DR)" start="+0x70" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D24" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR25" description="Backup data register (BKP_DR)" start="+0x74" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D25" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR26" description="Backup data register (BKP_DR)" start="+0x78" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D26" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR27" description="Backup data register (BKP_DR)" start="+0x7C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D27" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR28" description="Backup data register (BKP_DR)" start="+0x80" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D28" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR29" description="Backup data register (BKP_DR)" start="+0x84" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D29" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR30" description="Backup data register (BKP_DR)" start="+0x88" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D30" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR31" description="Backup data register (BKP_DR)" start="+0x8C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D31" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR32" description="Backup data register (BKP_DR)" start="+0x90" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D32" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR33" description="Backup data register (BKP_DR)" start="+0x94" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D33" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR34" description="Backup data register (BKP_DR)" start="+0x98" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D34" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR35" description="Backup data register (BKP_DR)" start="+0x9C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D35" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR36" description="Backup data register (BKP_DR)" start="+0xA0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D36" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR37" description="Backup data register (BKP_DR)" start="+0xA4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D37" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR38" description="Backup data register (BKP_DR)" start="+0xA8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D38" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR39" description="Backup data register (BKP_DR)" start="+0xAC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D39" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR40" description="Backup data register (BKP_DR)" start="+0xB0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D40" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR41" description="Backup data register (BKP_DR)" start="+0xB4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D41" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="DR42" description="Backup data register (BKP_DR)" start="+0xB8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="D42" description="Backup data" start="0" size="16" />
    </Register>
    <Register name="RTCCR" description="RTC clock calibration register (BKP_RTCCR)" start="+0x28" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CAL" description="Calibration value" start="0" size="7" />
      <BitField name="CCO" description="Calibration Clock Output" start="7" size="1" />
      <BitField name="ASOE" description="Alarm or second output enable" start="8" size="1" />
      <BitField name="ASOS" description="Alarm or second output selection" start="9" size="1" />
    </Register>
    <Register name="CR" description="Backup control register (BKP_CR)" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TPE" description="Tamper pin enable" start="0" size="1" />
      <BitField name="TPAL" description="Tamper pin active level" start="1" size="1" />
    </Register>
    <Register name="CSR" description="BKP_CSR control/status register (BKP_CSR)" start="+0x30" size="4" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CTE" description="Clear Tamper event" start="0" size="1" access="WriteOnly" />
      <BitField name="CTI" description="Clear Tamper Interrupt" start="1" size="1" access="WriteOnly" />
      <BitField name="TPIE" description="Tamper Pin interrupt enable" start="2" size="1" access="Read/Write" />
      <BitField name="TEF" description="Tamper Event Flag" start="8" size="1" access="ReadOnly" />
      <BitField name="TIF" description="Tamper Interrupt Flag" start="9" size="1" access="ReadOnly" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="IWDG" description="Independent watchdog" start="0x40003000">
    <Register name="KR" description="Key register (IWDG_KR)" start="+0x0" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="KEY" description="Key value" start="0" size="16" />
    </Register>
    <Register name="PR" description="Prescaler register (IWDG_PR)" start="+0x4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PR" description="Prescaler divider" start="0" size="3" />
    </Register>
    <Register name="RLR" description="Reload register (IWDG_RLR)" start="+0x8" size="4" access="Read/Write" reset_value="0x00000FFF" reset_mask="0xFFFFFFFF">
      <BitField name="RL" description="Watchdog counter reload value" start="0" size="12" />
    </Register>
    <Register name="SR" description="Status register (IWDG_SR)" start="+0xC" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="PVU" description="Watchdog prescaler value update" start="0" size="1" />
      <BitField name="RVU" description="Watchdog counter reload value update" start="1" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="WWDG" description="Window watchdog" start="0x40002C00">
    <Register name="CR" description="Control register (WWDG_CR)" start="+0x0" size="4" access="Read/Write" reset_value="0x0000007F" reset_mask="0xFFFFFFFF">
      <BitField name="T" description="7-bit counter (MSB to LSB)" start="0" size="7" />
      <BitField name="WDGA" description="Activation bit" start="7" size="1" />
    </Register>
    <Register name="CFR" description="Configuration register (WWDG_CFR)" start="+0x4" size="4" access="Read/Write" reset_value="0x0000007F" reset_mask="0xFFFFFFFF">
      <BitField name="W" description="7-bit window value" start="0" size="7" />
      <BitField name="WDGTB" description="Timer Base" start="7" size="2" />
      <BitField name="EWI" description="Early Wakeup Interrupt" start="9" size="1" />
    </Register>
    <Register name="SR" description="Status register (WWDG_SR)" start="+0x8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EWI" description="Early Wakeup Interrupt" start="0" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM1" description="Advanced timer" start="0x40012C00">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CKD" description="Clock division" start="8" size="2" />
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="CMS" description="Center-aligned mode selection" start="5" size="2" />
      <BitField name="DIR" description="Direction" start="4" size="1" />
      <BitField name="OPM" description="One-pulse mode" start="3" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="OIS4" description="Output Idle state 4" start="14" size="1" />
      <BitField name="OIS3N" description="Output Idle state 3" start="13" size="1" />
      <BitField name="OIS3" description="Output Idle state 3" start="12" size="1" />
      <BitField name="OIS2N" description="Output Idle state 2" start="11" size="1" />
      <BitField name="OIS2" description="Output Idle state 2" start="10" size="1" />
      <BitField name="OIS1N" description="Output Idle state 1" start="9" size="1" />
      <BitField name="OIS1" description="Output Idle state 1" start="8" size="1" />
      <BitField name="TI1S" description="TI1 selection" start="7" size="1" />
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
      <BitField name="CCDS" description="Capture/compare DMA selection" start="3" size="1" />
      <BitField name="CCUS" description="Capture/compare control update selection" start="2" size="1" />
      <BitField name="CCPC" description="Capture/compare preloaded control" start="0" size="1" />
    </Register>
    <Register name="SMCR" description="slave mode control register" start="+0x8" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="ETP" description="External trigger polarity" start="15" size="1" />
      <BitField name="ECE" description="External clock enable" start="14" size="1" />
      <BitField name="ETPS" description="External trigger prescaler" start="12" size="2" />
      <BitField name="ETF" description="External trigger filter" start="8" size="4" />
      <BitField name="MSM" description="Master/Slave mode" start="7" size="1" />
      <BitField name="TS" description="Trigger selection" start="4" size="3" />
      <BitField name="SMS" description="Slave mode selection" start="0" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TDE" description="Trigger DMA request enable" start="14" size="1" />
      <BitField name="COMDE" description="COM DMA request enable" start="13" size="1" />
      <BitField name="CC4DE" description="Capture/Compare 4 DMA request enable" start="12" size="1" />
      <BitField name="CC3DE" description="Capture/Compare 3 DMA request enable" start="11" size="1" />
      <BitField name="CC2DE" description="Capture/Compare 2 DMA request enable" start="10" size="1" />
      <BitField name="CC1DE" description="Capture/Compare 1 DMA request enable" start="9" size="1" />
      <BitField name="UDE" description="Update DMA request enable" start="8" size="1" />
      <BitField name="TIE" description="Trigger interrupt enable" start="6" size="1" />
      <BitField name="CC4IE" description="Capture/Compare 4 interrupt enable" start="4" size="1" />
      <BitField name="CC3IE" description="Capture/Compare 3 interrupt enable" start="3" size="1" />
      <BitField name="CC2IE" description="Capture/Compare 2 interrupt enable" start="2" size="1" />
      <BitField name="CC1IE" description="Capture/Compare 1 interrupt enable" start="1" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
      <BitField name="BIE" description="Break interrupt enable" start="7" size="1" />
      <BitField name="COMIE" description="COM interrupt enable" start="5" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC4OF" description="Capture/Compare 4 overcapture flag" start="12" size="1" />
      <BitField name="CC3OF" description="Capture/Compare 3 overcapture flag" start="11" size="1" />
      <BitField name="CC2OF" description="Capture/compare 2 overcapture flag" start="10" size="1" />
      <BitField name="CC1OF" description="Capture/Compare 1 overcapture flag" start="9" size="1" />
      <BitField name="BIF" description="Break interrupt flag" start="7" size="1" />
      <BitField name="TIF" description="Trigger interrupt flag" start="6" size="1" />
      <BitField name="COMIF" description="COM interrupt flag" start="5" size="1" />
      <BitField name="CC4IF" description="Capture/Compare 4 interrupt flag" start="4" size="1" />
      <BitField name="CC3IF" description="Capture/Compare 3 interrupt flag" start="3" size="1" />
      <BitField name="CC2IF" description="Capture/Compare 2 interrupt flag" start="2" size="1" />
      <BitField name="CC1IF" description="Capture/compare 1 interrupt flag" start="1" size="1" />
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="BG" description="Break generation" start="7" size="1" />
      <BitField name="TG" description="Trigger generation" start="6" size="1" />
      <BitField name="COMG" description="Capture/Compare control update generation" start="5" size="1" />
      <BitField name="CC4G" description="Capture/compare 4 generation" start="4" size="1" />
      <BitField name="CC3G" description="Capture/compare 3 generation" start="3" size="1" />
      <BitField name="CC2G" description="Capture/compare 2 generation" start="2" size="1" />
      <BitField name="CC1G" description="Capture/compare 1 generation" start="1" size="1" />
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CCMR1_Output" description="capture/compare mode register (output mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC2CE" description="Output Compare 2 clear enable" start="15" size="1" />
      <BitField name="OC2M" description="Output Compare 2 mode" start="12" size="3" />
      <BitField name="OC2PE" description="Output Compare 2 preload enable" start="11" size="1" />
      <BitField name="OC2FE" description="Output Compare 2 fast enable" start="10" size="1" />
      <BitField name="CC2S" description="Capture/Compare 2 selection" start="8" size="2" />
      <BitField name="OC1CE" description="Output Compare 1 clear enable" start="7" size="1" />
      <BitField name="OC1M" description="Output Compare 1 mode" start="4" size="3" />
      <BitField name="OC1PE" description="Output Compare 1 preload enable" start="3" size="1" />
      <BitField name="OC1FE" description="Output Compare 1 fast enable" start="2" size="1" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR1_Input" description="capture/compare mode register 1 (input mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC2F" description="Input capture 2 filter" start="12" size="4" />
      <BitField name="IC2PCS" description="Input capture 2 prescaler" start="10" size="2" />
      <BitField name="CC2S" description="Capture/Compare 2 selection" start="8" size="2" />
      <BitField name="IC1F" description="Input capture 1 filter" start="4" size="4" />
      <BitField name="ICPCS" description="Input capture 1 prescaler" start="2" size="2" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR2_Output" description="capture/compare mode register (output mode)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC4CE" description="Output compare 4 clear enable" start="15" size="1" />
      <BitField name="OC4M" description="Output compare 4 mode" start="12" size="3" />
      <BitField name="OC4PE" description="Output compare 4 preload enable" start="11" size="1" />
      <BitField name="OC4FE" description="Output compare 4 fast enable" start="10" size="1" />
      <BitField name="CC4S" description="Capture/Compare 4 selection" start="8" size="2" />
      <BitField name="OC3CE" description="Output compare 3 clear enable" start="7" size="1" />
      <BitField name="OC3M" description="Output compare 3 mode" start="4" size="3" />
      <BitField name="OC3PE" description="Output compare 3 preload enable" start="3" size="1" />
      <BitField name="OC3FE" description="Output compare 3 fast enable" start="2" size="1" />
      <BitField name="CC3S" description="Capture/Compare 3 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR2_Input" description="capture/compare mode register 2 (input mode)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC4F" description="Input capture 4 filter" start="12" size="4" />
      <BitField name="IC4PSC" description="Input capture 4 prescaler" start="10" size="2" />
      <BitField name="CC4S" description="Capture/Compare 4 selection" start="8" size="2" />
      <BitField name="IC3F" description="Input capture 3 filter" start="4" size="4" />
      <BitField name="IC3PSC" description="Input capture 3 prescaler" start="2" size="2" />
      <BitField name="CC3S" description="Capture/compare 3 selection" start="0" size="2" />
    </Register>
    <Register name="CCER" description="capture/compare enable register" start="+0x20" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC4P" description="Capture/Compare 3 output Polarity" start="13" size="1" />
      <BitField name="CC4E" description="Capture/Compare 4 output enable" start="12" size="1" />
      <BitField name="CC3NP" description="Capture/Compare 3 output Polarity" start="11" size="1" />
      <BitField name="CC3NE" description="Capture/Compare 3 complementary output enable" start="10" size="1" />
      <BitField name="CC3P" description="Capture/Compare 3 output Polarity" start="9" size="1" />
      <BitField name="CC3E" description="Capture/Compare 3 output enable" start="8" size="1" />
      <BitField name="CC2NP" description="Capture/Compare 2 output Polarity" start="7" size="1" />
      <BitField name="CC2NE" description="Capture/Compare 2 complementary output enable" start="6" size="1" />
      <BitField name="CC2P" description="Capture/Compare 2 output Polarity" start="5" size="1" />
      <BitField name="CC2E" description="Capture/Compare 2 output enable" start="4" size="1" />
      <BitField name="CC1NP" description="Capture/Compare 1 output Polarity" start="3" size="1" />
      <BitField name="CC1NE" description="Capture/Compare 1 complementary output enable" start="2" size="1" />
      <BitField name="CC1P" description="Capture/Compare 1 output Polarity" start="1" size="1" />
      <BitField name="CC1E" description="Capture/Compare 1 output enable" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Auto-reload value" start="0" size="16" />
    </Register>
    <Register name="CCR1" description="capture/compare register 1" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR1" description="Capture/Compare 1 value" start="0" size="16" />
    </Register>
    <Register name="CCR2" description="capture/compare register 2" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR2" description="Capture/Compare 2 value" start="0" size="16" />
    </Register>
    <Register name="CCR3" description="capture/compare register 3" start="+0x3C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR3" description="Capture/Compare value" start="0" size="16" />
    </Register>
    <Register name="CCR4" description="capture/compare register 4" start="+0x40" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR4" description="Capture/Compare value" start="0" size="16" />
    </Register>
    <Register name="DCR" description="DMA control register" start="+0x48" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DBL" description="DMA burst length" start="8" size="5" />
      <BitField name="DBA" description="DMA base address" start="0" size="5" />
    </Register>
    <Register name="DMAR" description="DMA address for full transfer" start="+0x4C" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DMAB" description="DMA register for burst accesses" start="0" size="16" />
    </Register>
    <Register name="RCR" description="repetition counter register" start="+0x30" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="REP" description="Repetition counter value" start="0" size="8" />
    </Register>
    <Register name="BDTR" description="break and dead-time register" start="+0x44" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="MOE" description="Main output enable" start="15" size="1" />
      <BitField name="AOE" description="Automatic output enable" start="14" size="1" />
      <BitField name="BKP" description="Break polarity" start="13" size="1" />
      <BitField name="BKE" description="Break enable" start="12" size="1" />
      <BitField name="OSSR" description="Off-state selection for Run mode" start="11" size="1" />
      <BitField name="OSSI" description="Off-state selection for Idle mode" start="10" size="1" />
      <BitField name="LOCK" description="Lock configuration" start="8" size="2" />
      <BitField name="DTG" description="Dead-time generator setup" start="0" size="8" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM8" description="Advanced timer" start="0x40013400">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CKD" description="Clock division" start="8" size="2" />
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="CMS" description="Center-aligned mode selection" start="5" size="2" />
      <BitField name="DIR" description="Direction" start="4" size="1" />
      <BitField name="OPM" description="One-pulse mode" start="3" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="OIS4" description="Output Idle state 4" start="14" size="1" />
      <BitField name="OIS3N" description="Output Idle state 3" start="13" size="1" />
      <BitField name="OIS3" description="Output Idle state 3" start="12" size="1" />
      <BitField name="OIS2N" description="Output Idle state 2" start="11" size="1" />
      <BitField name="OIS2" description="Output Idle state 2" start="10" size="1" />
      <BitField name="OIS1N" description="Output Idle state 1" start="9" size="1" />
      <BitField name="OIS1" description="Output Idle state 1" start="8" size="1" />
      <BitField name="TI1S" description="TI1 selection" start="7" size="1" />
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
      <BitField name="CCDS" description="Capture/compare DMA selection" start="3" size="1" />
      <BitField name="CCUS" description="Capture/compare control update selection" start="2" size="1" />
      <BitField name="CCPC" description="Capture/compare preloaded control" start="0" size="1" />
    </Register>
    <Register name="SMCR" description="slave mode control register" start="+0x8" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="ETP" description="External trigger polarity" start="15" size="1" />
      <BitField name="ECE" description="External clock enable" start="14" size="1" />
      <BitField name="ETPS" description="External trigger prescaler" start="12" size="2" />
      <BitField name="ETF" description="External trigger filter" start="8" size="4" />
      <BitField name="MSM" description="Master/Slave mode" start="7" size="1" />
      <BitField name="TS" description="Trigger selection" start="4" size="3" />
      <BitField name="SMS" description="Slave mode selection" start="0" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TDE" description="Trigger DMA request enable" start="14" size="1" />
      <BitField name="COMDE" description="COM DMA request enable" start="13" size="1" />
      <BitField name="CC4DE" description="Capture/Compare 4 DMA request enable" start="12" size="1" />
      <BitField name="CC3DE" description="Capture/Compare 3 DMA request enable" start="11" size="1" />
      <BitField name="CC2DE" description="Capture/Compare 2 DMA request enable" start="10" size="1" />
      <BitField name="CC1DE" description="Capture/Compare 1 DMA request enable" start="9" size="1" />
      <BitField name="UDE" description="Update DMA request enable" start="8" size="1" />
      <BitField name="TIE" description="Trigger interrupt enable" start="6" size="1" />
      <BitField name="CC4IE" description="Capture/Compare 4 interrupt enable" start="4" size="1" />
      <BitField name="CC3IE" description="Capture/Compare 3 interrupt enable" start="3" size="1" />
      <BitField name="CC2IE" description="Capture/Compare 2 interrupt enable" start="2" size="1" />
      <BitField name="CC1IE" description="Capture/Compare 1 interrupt enable" start="1" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
      <BitField name="BIE" description="Break interrupt enable" start="7" size="1" />
      <BitField name="COMIE" description="COM interrupt enable" start="5" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC4OF" description="Capture/Compare 4 overcapture flag" start="12" size="1" />
      <BitField name="CC3OF" description="Capture/Compare 3 overcapture flag" start="11" size="1" />
      <BitField name="CC2OF" description="Capture/compare 2 overcapture flag" start="10" size="1" />
      <BitField name="CC1OF" description="Capture/Compare 1 overcapture flag" start="9" size="1" />
      <BitField name="BIF" description="Break interrupt flag" start="7" size="1" />
      <BitField name="TIF" description="Trigger interrupt flag" start="6" size="1" />
      <BitField name="COMIF" description="COM interrupt flag" start="5" size="1" />
      <BitField name="CC4IF" description="Capture/Compare 4 interrupt flag" start="4" size="1" />
      <BitField name="CC3IF" description="Capture/Compare 3 interrupt flag" start="3" size="1" />
      <BitField name="CC2IF" description="Capture/Compare 2 interrupt flag" start="2" size="1" />
      <BitField name="CC1IF" description="Capture/compare 1 interrupt flag" start="1" size="1" />
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="BG" description="Break generation" start="7" size="1" />
      <BitField name="TG" description="Trigger generation" start="6" size="1" />
      <BitField name="COMG" description="Capture/Compare control update generation" start="5" size="1" />
      <BitField name="CC4G" description="Capture/compare 4 generation" start="4" size="1" />
      <BitField name="CC3G" description="Capture/compare 3 generation" start="3" size="1" />
      <BitField name="CC2G" description="Capture/compare 2 generation" start="2" size="1" />
      <BitField name="CC1G" description="Capture/compare 1 generation" start="1" size="1" />
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CCMR1_Output" description="capture/compare mode register (output mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC2CE" description="Output Compare 2 clear enable" start="15" size="1" />
      <BitField name="OC2M" description="Output Compare 2 mode" start="12" size="3" />
      <BitField name="OC2PE" description="Output Compare 2 preload enable" start="11" size="1" />
      <BitField name="OC2FE" description="Output Compare 2 fast enable" start="10" size="1" />
      <BitField name="CC2S" description="Capture/Compare 2 selection" start="8" size="2" />
      <BitField name="OC1CE" description="Output Compare 1 clear enable" start="7" size="1" />
      <BitField name="OC1M" description="Output Compare 1 mode" start="4" size="3" />
      <BitField name="OC1PE" description="Output Compare 1 preload enable" start="3" size="1" />
      <BitField name="OC1FE" description="Output Compare 1 fast enable" start="2" size="1" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR1_Input" description="capture/compare mode register 1 (input mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC2F" description="Input capture 2 filter" start="12" size="4" />
      <BitField name="IC2PCS" description="Input capture 2 prescaler" start="10" size="2" />
      <BitField name="CC2S" description="Capture/Compare 2 selection" start="8" size="2" />
      <BitField name="IC1F" description="Input capture 1 filter" start="4" size="4" />
      <BitField name="ICPCS" description="Input capture 1 prescaler" start="2" size="2" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR2_Output" description="capture/compare mode register (output mode)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC4CE" description="Output compare 4 clear enable" start="15" size="1" />
      <BitField name="OC4M" description="Output compare 4 mode" start="12" size="3" />
      <BitField name="OC4PE" description="Output compare 4 preload enable" start="11" size="1" />
      <BitField name="OC4FE" description="Output compare 4 fast enable" start="10" size="1" />
      <BitField name="CC4S" description="Capture/Compare 4 selection" start="8" size="2" />
      <BitField name="OC3CE" description="Output compare 3 clear enable" start="7" size="1" />
      <BitField name="OC3M" description="Output compare 3 mode" start="4" size="3" />
      <BitField name="OC3PE" description="Output compare 3 preload enable" start="3" size="1" />
      <BitField name="OC3FE" description="Output compare 3 fast enable" start="2" size="1" />
      <BitField name="CC3S" description="Capture/Compare 3 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR2_Input" description="capture/compare mode register 2 (input mode)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC4F" description="Input capture 4 filter" start="12" size="4" />
      <BitField name="IC4PSC" description="Input capture 4 prescaler" start="10" size="2" />
      <BitField name="CC4S" description="Capture/Compare 4 selection" start="8" size="2" />
      <BitField name="IC3F" description="Input capture 3 filter" start="4" size="4" />
      <BitField name="IC3PSC" description="Input capture 3 prescaler" start="2" size="2" />
      <BitField name="CC3S" description="Capture/compare 3 selection" start="0" size="2" />
    </Register>
    <Register name="CCER" description="capture/compare enable register" start="+0x20" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC4P" description="Capture/Compare 3 output Polarity" start="13" size="1" />
      <BitField name="CC4E" description="Capture/Compare 4 output enable" start="12" size="1" />
      <BitField name="CC3NP" description="Capture/Compare 3 output Polarity" start="11" size="1" />
      <BitField name="CC3NE" description="Capture/Compare 3 complementary output enable" start="10" size="1" />
      <BitField name="CC3P" description="Capture/Compare 3 output Polarity" start="9" size="1" />
      <BitField name="CC3E" description="Capture/Compare 3 output enable" start="8" size="1" />
      <BitField name="CC2NP" description="Capture/Compare 2 output Polarity" start="7" size="1" />
      <BitField name="CC2NE" description="Capture/Compare 2 complementary output enable" start="6" size="1" />
      <BitField name="CC2P" description="Capture/Compare 2 output Polarity" start="5" size="1" />
      <BitField name="CC2E" description="Capture/Compare 2 output enable" start="4" size="1" />
      <BitField name="CC1NP" description="Capture/Compare 1 output Polarity" start="3" size="1" />
      <BitField name="CC1NE" description="Capture/Compare 1 complementary output enable" start="2" size="1" />
      <BitField name="CC1P" description="Capture/Compare 1 output Polarity" start="1" size="1" />
      <BitField name="CC1E" description="Capture/Compare 1 output enable" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Auto-reload value" start="0" size="16" />
    </Register>
    <Register name="CCR1" description="capture/compare register 1" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR1" description="Capture/Compare 1 value" start="0" size="16" />
    </Register>
    <Register name="CCR2" description="capture/compare register 2" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR2" description="Capture/Compare 2 value" start="0" size="16" />
    </Register>
    <Register name="CCR3" description="capture/compare register 3" start="+0x3C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR3" description="Capture/Compare value" start="0" size="16" />
    </Register>
    <Register name="CCR4" description="capture/compare register 4" start="+0x40" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR4" description="Capture/Compare value" start="0" size="16" />
    </Register>
    <Register name="DCR" description="DMA control register" start="+0x48" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DBL" description="DMA burst length" start="8" size="5" />
      <BitField name="DBA" description="DMA base address" start="0" size="5" />
    </Register>
    <Register name="DMAR" description="DMA address for full transfer" start="+0x4C" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DMAB" description="DMA register for burst accesses" start="0" size="16" />
    </Register>
    <Register name="RCR" description="repetition counter register" start="+0x30" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="REP" description="Repetition counter value" start="0" size="8" />
    </Register>
    <Register name="BDTR" description="break and dead-time register" start="+0x44" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="MOE" description="Main output enable" start="15" size="1" />
      <BitField name="AOE" description="Automatic output enable" start="14" size="1" />
      <BitField name="BKP" description="Break polarity" start="13" size="1" />
      <BitField name="BKE" description="Break enable" start="12" size="1" />
      <BitField name="OSSR" description="Off-state selection for Run mode" start="11" size="1" />
      <BitField name="OSSI" description="Off-state selection for Idle mode" start="10" size="1" />
      <BitField name="LOCK" description="Lock configuration" start="8" size="2" />
      <BitField name="DTG" description="Dead-time generator setup" start="0" size="8" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM2" description="General purpose timer" start="0x40000000">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CKD" description="Clock division" start="8" size="2" />
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="CMS" description="Center-aligned mode selection" start="5" size="2" />
      <BitField name="DIR" description="Direction" start="4" size="1" />
      <BitField name="OPM" description="One-pulse mode" start="3" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TI1S" description="TI1 selection" start="7" size="1" />
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
      <BitField name="CCDS" description="Capture/compare DMA selection" start="3" size="1" />
    </Register>
    <Register name="SMCR" description="slave mode control register" start="+0x8" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="ETP" description="External trigger polarity" start="15" size="1" />
      <BitField name="ECE" description="External clock enable" start="14" size="1" />
      <BitField name="ETPS" description="External trigger prescaler" start="12" size="2" />
      <BitField name="ETF" description="External trigger filter" start="8" size="4" />
      <BitField name="MSM" description="Master/Slave mode" start="7" size="1" />
      <BitField name="TS" description="Trigger selection" start="4" size="3" />
      <BitField name="SMS" description="Slave mode selection" start="0" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TDE" description="Trigger DMA request enable" start="14" size="1" />
      <BitField name="CC4DE" description="Capture/Compare 4 DMA request enable" start="12" size="1" />
      <BitField name="CC3DE" description="Capture/Compare 3 DMA request enable" start="11" size="1" />
      <BitField name="CC2DE" description="Capture/Compare 2 DMA request enable" start="10" size="1" />
      <BitField name="CC1DE" description="Capture/Compare 1 DMA request enable" start="9" size="1" />
      <BitField name="UDE" description="Update DMA request enable" start="8" size="1" />
      <BitField name="TIE" description="Trigger interrupt enable" start="6" size="1" />
      <BitField name="CC4IE" description="Capture/Compare 4 interrupt enable" start="4" size="1" />
      <BitField name="CC3IE" description="Capture/Compare 3 interrupt enable" start="3" size="1" />
      <BitField name="CC2IE" description="Capture/Compare 2 interrupt enable" start="2" size="1" />
      <BitField name="CC1IE" description="Capture/Compare 1 interrupt enable" start="1" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC4OF" description="Capture/Compare 4 overcapture flag" start="12" size="1" />
      <BitField name="CC3OF" description="Capture/Compare 3 overcapture flag" start="11" size="1" />
      <BitField name="CC2OF" description="Capture/compare 2 overcapture flag" start="10" size="1" />
      <BitField name="CC1OF" description="Capture/Compare 1 overcapture flag" start="9" size="1" />
      <BitField name="TIF" description="Trigger interrupt flag" start="6" size="1" />
      <BitField name="CC4IF" description="Capture/Compare 4 interrupt flag" start="4" size="1" />
      <BitField name="CC3IF" description="Capture/Compare 3 interrupt flag" start="3" size="1" />
      <BitField name="CC2IF" description="Capture/Compare 2 interrupt flag" start="2" size="1" />
      <BitField name="CC1IF" description="Capture/compare 1 interrupt flag" start="1" size="1" />
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TG" description="Trigger generation" start="6" size="1" />
      <BitField name="CC4G" description="Capture/compare 4 generation" start="4" size="1" />
      <BitField name="CC3G" description="Capture/compare 3 generation" start="3" size="1" />
      <BitField name="CC2G" description="Capture/compare 2 generation" start="2" size="1" />
      <BitField name="CC1G" description="Capture/compare 1 generation" start="1" size="1" />
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CCMR1_Output" description="capture/compare mode register 1 (output mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC2CE" description="Output compare 2 clear enable" start="15" size="1" />
      <BitField name="OC2M" description="Output compare 2 mode" start="12" size="3" />
      <BitField name="OC2PE" description="Output compare 2 preload enable" start="11" size="1" />
      <BitField name="OC2FE" description="Output compare 2 fast enable" start="10" size="1" />
      <BitField name="CC2S" description="Capture/Compare 2 selection" start="8" size="2" />
      <BitField name="OC1CE" description="Output compare 1 clear enable" start="7" size="1" />
      <BitField name="OC1M" description="Output compare 1 mode" start="4" size="3" />
      <BitField name="OC1PE" description="Output compare 1 preload enable" start="3" size="1" />
      <BitField name="OC1FE" description="Output compare 1 fast enable" start="2" size="1" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR1_Input" description="capture/compare mode register 1 (input mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC2F" description="Input capture 2 filter" start="12" size="4" />
      <BitField name="IC2PSC" description="Input capture 2 prescaler" start="10" size="2" />
      <BitField name="CC2S" description="Capture/compare 2 selection" start="8" size="2" />
      <BitField name="IC1F" description="Input capture 1 filter" start="4" size="4" />
      <BitField name="IC1PSC" description="Input capture 1 prescaler" start="2" size="2" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR2_Output" description="capture/compare mode register 2 (output mode)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="O24CE" description="Output compare 4 clear enable" start="15" size="1" />
      <BitField name="OC4M" description="Output compare 4 mode" start="12" size="3" />
      <BitField name="OC4PE" description="Output compare 4 preload enable" start="11" size="1" />
      <BitField name="OC4FE" description="Output compare 4 fast enable" start="10" size="1" />
      <BitField name="CC4S" description="Capture/Compare 4 selection" start="8" size="2" />
      <BitField name="OC3CE" description="Output compare 3 clear enable" start="7" size="1" />
      <BitField name="OC3M" description="Output compare 3 mode" start="4" size="3" />
      <BitField name="OC3PE" description="Output compare 3 preload enable" start="3" size="1" />
      <BitField name="OC3FE" description="Output compare 3 fast enable" start="2" size="1" />
      <BitField name="CC3S" description="Capture/Compare 3 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR2_Input" description="capture/compare mode register 2 (input mode)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC4F" description="Input capture 4 filter" start="12" size="4" />
      <BitField name="IC4PSC" description="Input capture 4 prescaler" start="10" size="2" />
      <BitField name="CC4S" description="Capture/Compare 4 selection" start="8" size="2" />
      <BitField name="IC3F" description="Input capture 3 filter" start="4" size="4" />
      <BitField name="IC3PSC" description="Input capture 3 prescaler" start="2" size="2" />
      <BitField name="CC3S" description="Capture/Compare 3 selection" start="0" size="2" />
    </Register>
    <Register name="CCER" description="capture/compare enable register" start="+0x20" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC4P" description="Capture/Compare 3 output Polarity" start="13" size="1" />
      <BitField name="CC4E" description="Capture/Compare 4 output enable" start="12" size="1" />
      <BitField name="CC3P" description="Capture/Compare 3 output Polarity" start="9" size="1" />
      <BitField name="CC3E" description="Capture/Compare 3 output enable" start="8" size="1" />
      <BitField name="CC2P" description="Capture/Compare 2 output Polarity" start="5" size="1" />
      <BitField name="CC2E" description="Capture/Compare 2 output enable" start="4" size="1" />
      <BitField name="CC1P" description="Capture/Compare 1 output Polarity" start="1" size="1" />
      <BitField name="CC1E" description="Capture/Compare 1 output enable" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Auto-reload value" start="0" size="16" />
    </Register>
    <Register name="CCR1" description="capture/compare register 1" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR1" description="Capture/Compare 1 value" start="0" size="16" />
    </Register>
    <Register name="CCR2" description="capture/compare register 2" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR2" description="Capture/Compare 2 value" start="0" size="16" />
    </Register>
    <Register name="CCR3" description="capture/compare register 3" start="+0x3C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR3" description="Capture/Compare value" start="0" size="16" />
    </Register>
    <Register name="CCR4" description="capture/compare register 4" start="+0x40" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR4" description="Capture/Compare value" start="0" size="16" />
    </Register>
    <Register name="DCR" description="DMA control register" start="+0x48" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DBL" description="DMA burst length" start="8" size="5" />
      <BitField name="DBA" description="DMA base address" start="0" size="5" />
    </Register>
    <Register name="DMAR" description="DMA address for full transfer" start="+0x4C" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DMAB" description="DMA register for burst accesses" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM3" description="General purpose timer" start="0x40000400">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CKD" description="Clock division" start="8" size="2" />
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="CMS" description="Center-aligned mode selection" start="5" size="2" />
      <BitField name="DIR" description="Direction" start="4" size="1" />
      <BitField name="OPM" description="One-pulse mode" start="3" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TI1S" description="TI1 selection" start="7" size="1" />
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
      <BitField name="CCDS" description="Capture/compare DMA selection" start="3" size="1" />
    </Register>
    <Register name="SMCR" description="slave mode control register" start="+0x8" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="ETP" description="External trigger polarity" start="15" size="1" />
      <BitField name="ECE" description="External clock enable" start="14" size="1" />
      <BitField name="ETPS" description="External trigger prescaler" start="12" size="2" />
      <BitField name="ETF" description="External trigger filter" start="8" size="4" />
      <BitField name="MSM" description="Master/Slave mode" start="7" size="1" />
      <BitField name="TS" description="Trigger selection" start="4" size="3" />
      <BitField name="SMS" description="Slave mode selection" start="0" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TDE" description="Trigger DMA request enable" start="14" size="1" />
      <BitField name="CC4DE" description="Capture/Compare 4 DMA request enable" start="12" size="1" />
      <BitField name="CC3DE" description="Capture/Compare 3 DMA request enable" start="11" size="1" />
      <BitField name="CC2DE" description="Capture/Compare 2 DMA request enable" start="10" size="1" />
      <BitField name="CC1DE" description="Capture/Compare 1 DMA request enable" start="9" size="1" />
      <BitField name="UDE" description="Update DMA request enable" start="8" size="1" />
      <BitField name="TIE" description="Trigger interrupt enable" start="6" size="1" />
      <BitField name="CC4IE" description="Capture/Compare 4 interrupt enable" start="4" size="1" />
      <BitField name="CC3IE" description="Capture/Compare 3 interrupt enable" start="3" size="1" />
      <BitField name="CC2IE" description="Capture/Compare 2 interrupt enable" start="2" size="1" />
      <BitField name="CC1IE" description="Capture/Compare 1 interrupt enable" start="1" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC4OF" description="Capture/Compare 4 overcapture flag" start="12" size="1" />
      <BitField name="CC3OF" description="Capture/Compare 3 overcapture flag" start="11" size="1" />
      <BitField name="CC2OF" description="Capture/compare 2 overcapture flag" start="10" size="1" />
      <BitField name="CC1OF" description="Capture/Compare 1 overcapture flag" start="9" size="1" />
      <BitField name="TIF" description="Trigger interrupt flag" start="6" size="1" />
      <BitField name="CC4IF" description="Capture/Compare 4 interrupt flag" start="4" size="1" />
      <BitField name="CC3IF" description="Capture/Compare 3 interrupt flag" start="3" size="1" />
      <BitField name="CC2IF" description="Capture/Compare 2 interrupt flag" start="2" size="1" />
      <BitField name="CC1IF" description="Capture/compare 1 interrupt flag" start="1" size="1" />
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TG" description="Trigger generation" start="6" size="1" />
      <BitField name="CC4G" description="Capture/compare 4 generation" start="4" size="1" />
      <BitField name="CC3G" description="Capture/compare 3 generation" start="3" size="1" />
      <BitField name="CC2G" description="Capture/compare 2 generation" start="2" size="1" />
      <BitField name="CC1G" description="Capture/compare 1 generation" start="1" size="1" />
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CCMR1_Output" description="capture/compare mode register 1 (output mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC2CE" description="Output compare 2 clear enable" start="15" size="1" />
      <BitField name="OC2M" description="Output compare 2 mode" start="12" size="3" />
      <BitField name="OC2PE" description="Output compare 2 preload enable" start="11" size="1" />
      <BitField name="OC2FE" description="Output compare 2 fast enable" start="10" size="1" />
      <BitField name="CC2S" description="Capture/Compare 2 selection" start="8" size="2" />
      <BitField name="OC1CE" description="Output compare 1 clear enable" start="7" size="1" />
      <BitField name="OC1M" description="Output compare 1 mode" start="4" size="3" />
      <BitField name="OC1PE" description="Output compare 1 preload enable" start="3" size="1" />
      <BitField name="OC1FE" description="Output compare 1 fast enable" start="2" size="1" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR1_Input" description="capture/compare mode register 1 (input mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC2F" description="Input capture 2 filter" start="12" size="4" />
      <BitField name="IC2PSC" description="Input capture 2 prescaler" start="10" size="2" />
      <BitField name="CC2S" description="Capture/compare 2 selection" start="8" size="2" />
      <BitField name="IC1F" description="Input capture 1 filter" start="4" size="4" />
      <BitField name="IC1PSC" description="Input capture 1 prescaler" start="2" size="2" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR2_Output" description="capture/compare mode register 2 (output mode)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="O24CE" description="Output compare 4 clear enable" start="15" size="1" />
      <BitField name="OC4M" description="Output compare 4 mode" start="12" size="3" />
      <BitField name="OC4PE" description="Output compare 4 preload enable" start="11" size="1" />
      <BitField name="OC4FE" description="Output compare 4 fast enable" start="10" size="1" />
      <BitField name="CC4S" description="Capture/Compare 4 selection" start="8" size="2" />
      <BitField name="OC3CE" description="Output compare 3 clear enable" start="7" size="1" />
      <BitField name="OC3M" description="Output compare 3 mode" start="4" size="3" />
      <BitField name="OC3PE" description="Output compare 3 preload enable" start="3" size="1" />
      <BitField name="OC3FE" description="Output compare 3 fast enable" start="2" size="1" />
      <BitField name="CC3S" description="Capture/Compare 3 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR2_Input" description="capture/compare mode register 2 (input mode)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC4F" description="Input capture 4 filter" start="12" size="4" />
      <BitField name="IC4PSC" description="Input capture 4 prescaler" start="10" size="2" />
      <BitField name="CC4S" description="Capture/Compare 4 selection" start="8" size="2" />
      <BitField name="IC3F" description="Input capture 3 filter" start="4" size="4" />
      <BitField name="IC3PSC" description="Input capture 3 prescaler" start="2" size="2" />
      <BitField name="CC3S" description="Capture/Compare 3 selection" start="0" size="2" />
    </Register>
    <Register name="CCER" description="capture/compare enable register" start="+0x20" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC4P" description="Capture/Compare 3 output Polarity" start="13" size="1" />
      <BitField name="CC4E" description="Capture/Compare 4 output enable" start="12" size="1" />
      <BitField name="CC3P" description="Capture/Compare 3 output Polarity" start="9" size="1" />
      <BitField name="CC3E" description="Capture/Compare 3 output enable" start="8" size="1" />
      <BitField name="CC2P" description="Capture/Compare 2 output Polarity" start="5" size="1" />
      <BitField name="CC2E" description="Capture/Compare 2 output enable" start="4" size="1" />
      <BitField name="CC1P" description="Capture/Compare 1 output Polarity" start="1" size="1" />
      <BitField name="CC1E" description="Capture/Compare 1 output enable" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Auto-reload value" start="0" size="16" />
    </Register>
    <Register name="CCR1" description="capture/compare register 1" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR1" description="Capture/Compare 1 value" start="0" size="16" />
    </Register>
    <Register name="CCR2" description="capture/compare register 2" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR2" description="Capture/Compare 2 value" start="0" size="16" />
    </Register>
    <Register name="CCR3" description="capture/compare register 3" start="+0x3C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR3" description="Capture/Compare value" start="0" size="16" />
    </Register>
    <Register name="CCR4" description="capture/compare register 4" start="+0x40" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR4" description="Capture/Compare value" start="0" size="16" />
    </Register>
    <Register name="DCR" description="DMA control register" start="+0x48" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DBL" description="DMA burst length" start="8" size="5" />
      <BitField name="DBA" description="DMA base address" start="0" size="5" />
    </Register>
    <Register name="DMAR" description="DMA address for full transfer" start="+0x4C" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DMAB" description="DMA register for burst accesses" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM4" description="General purpose timer" start="0x40000800">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CKD" description="Clock division" start="8" size="2" />
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="CMS" description="Center-aligned mode selection" start="5" size="2" />
      <BitField name="DIR" description="Direction" start="4" size="1" />
      <BitField name="OPM" description="One-pulse mode" start="3" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TI1S" description="TI1 selection" start="7" size="1" />
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
      <BitField name="CCDS" description="Capture/compare DMA selection" start="3" size="1" />
    </Register>
    <Register name="SMCR" description="slave mode control register" start="+0x8" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="ETP" description="External trigger polarity" start="15" size="1" />
      <BitField name="ECE" description="External clock enable" start="14" size="1" />
      <BitField name="ETPS" description="External trigger prescaler" start="12" size="2" />
      <BitField name="ETF" description="External trigger filter" start="8" size="4" />
      <BitField name="MSM" description="Master/Slave mode" start="7" size="1" />
      <BitField name="TS" description="Trigger selection" start="4" size="3" />
      <BitField name="SMS" description="Slave mode selection" start="0" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TDE" description="Trigger DMA request enable" start="14" size="1" />
      <BitField name="CC4DE" description="Capture/Compare 4 DMA request enable" start="12" size="1" />
      <BitField name="CC3DE" description="Capture/Compare 3 DMA request enable" start="11" size="1" />
      <BitField name="CC2DE" description="Capture/Compare 2 DMA request enable" start="10" size="1" />
      <BitField name="CC1DE" description="Capture/Compare 1 DMA request enable" start="9" size="1" />
      <BitField name="UDE" description="Update DMA request enable" start="8" size="1" />
      <BitField name="TIE" description="Trigger interrupt enable" start="6" size="1" />
      <BitField name="CC4IE" description="Capture/Compare 4 interrupt enable" start="4" size="1" />
      <BitField name="CC3IE" description="Capture/Compare 3 interrupt enable" start="3" size="1" />
      <BitField name="CC2IE" description="Capture/Compare 2 interrupt enable" start="2" size="1" />
      <BitField name="CC1IE" description="Capture/Compare 1 interrupt enable" start="1" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC4OF" description="Capture/Compare 4 overcapture flag" start="12" size="1" />
      <BitField name="CC3OF" description="Capture/Compare 3 overcapture flag" start="11" size="1" />
      <BitField name="CC2OF" description="Capture/compare 2 overcapture flag" start="10" size="1" />
      <BitField name="CC1OF" description="Capture/Compare 1 overcapture flag" start="9" size="1" />
      <BitField name="TIF" description="Trigger interrupt flag" start="6" size="1" />
      <BitField name="CC4IF" description="Capture/Compare 4 interrupt flag" start="4" size="1" />
      <BitField name="CC3IF" description="Capture/Compare 3 interrupt flag" start="3" size="1" />
      <BitField name="CC2IF" description="Capture/Compare 2 interrupt flag" start="2" size="1" />
      <BitField name="CC1IF" description="Capture/compare 1 interrupt flag" start="1" size="1" />
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TG" description="Trigger generation" start="6" size="1" />
      <BitField name="CC4G" description="Capture/compare 4 generation" start="4" size="1" />
      <BitField name="CC3G" description="Capture/compare 3 generation" start="3" size="1" />
      <BitField name="CC2G" description="Capture/compare 2 generation" start="2" size="1" />
      <BitField name="CC1G" description="Capture/compare 1 generation" start="1" size="1" />
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CCMR1_Output" description="capture/compare mode register 1 (output mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC2CE" description="Output compare 2 clear enable" start="15" size="1" />
      <BitField name="OC2M" description="Output compare 2 mode" start="12" size="3" />
      <BitField name="OC2PE" description="Output compare 2 preload enable" start="11" size="1" />
      <BitField name="OC2FE" description="Output compare 2 fast enable" start="10" size="1" />
      <BitField name="CC2S" description="Capture/Compare 2 selection" start="8" size="2" />
      <BitField name="OC1CE" description="Output compare 1 clear enable" start="7" size="1" />
      <BitField name="OC1M" description="Output compare 1 mode" start="4" size="3" />
      <BitField name="OC1PE" description="Output compare 1 preload enable" start="3" size="1" />
      <BitField name="OC1FE" description="Output compare 1 fast enable" start="2" size="1" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR1_Input" description="capture/compare mode register 1 (input mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC2F" description="Input capture 2 filter" start="12" size="4" />
      <BitField name="IC2PSC" description="Input capture 2 prescaler" start="10" size="2" />
      <BitField name="CC2S" description="Capture/compare 2 selection" start="8" size="2" />
      <BitField name="IC1F" description="Input capture 1 filter" start="4" size="4" />
      <BitField name="IC1PSC" description="Input capture 1 prescaler" start="2" size="2" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR2_Output" description="capture/compare mode register 2 (output mode)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="O24CE" description="Output compare 4 clear enable" start="15" size="1" />
      <BitField name="OC4M" description="Output compare 4 mode" start="12" size="3" />
      <BitField name="OC4PE" description="Output compare 4 preload enable" start="11" size="1" />
      <BitField name="OC4FE" description="Output compare 4 fast enable" start="10" size="1" />
      <BitField name="CC4S" description="Capture/Compare 4 selection" start="8" size="2" />
      <BitField name="OC3CE" description="Output compare 3 clear enable" start="7" size="1" />
      <BitField name="OC3M" description="Output compare 3 mode" start="4" size="3" />
      <BitField name="OC3PE" description="Output compare 3 preload enable" start="3" size="1" />
      <BitField name="OC3FE" description="Output compare 3 fast enable" start="2" size="1" />
      <BitField name="CC3S" description="Capture/Compare 3 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR2_Input" description="capture/compare mode register 2 (input mode)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC4F" description="Input capture 4 filter" start="12" size="4" />
      <BitField name="IC4PSC" description="Input capture 4 prescaler" start="10" size="2" />
      <BitField name="CC4S" description="Capture/Compare 4 selection" start="8" size="2" />
      <BitField name="IC3F" description="Input capture 3 filter" start="4" size="4" />
      <BitField name="IC3PSC" description="Input capture 3 prescaler" start="2" size="2" />
      <BitField name="CC3S" description="Capture/Compare 3 selection" start="0" size="2" />
    </Register>
    <Register name="CCER" description="capture/compare enable register" start="+0x20" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC4P" description="Capture/Compare 3 output Polarity" start="13" size="1" />
      <BitField name="CC4E" description="Capture/Compare 4 output enable" start="12" size="1" />
      <BitField name="CC3P" description="Capture/Compare 3 output Polarity" start="9" size="1" />
      <BitField name="CC3E" description="Capture/Compare 3 output enable" start="8" size="1" />
      <BitField name="CC2P" description="Capture/Compare 2 output Polarity" start="5" size="1" />
      <BitField name="CC2E" description="Capture/Compare 2 output enable" start="4" size="1" />
      <BitField name="CC1P" description="Capture/Compare 1 output Polarity" start="1" size="1" />
      <BitField name="CC1E" description="Capture/Compare 1 output enable" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Auto-reload value" start="0" size="16" />
    </Register>
    <Register name="CCR1" description="capture/compare register 1" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR1" description="Capture/Compare 1 value" start="0" size="16" />
    </Register>
    <Register name="CCR2" description="capture/compare register 2" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR2" description="Capture/Compare 2 value" start="0" size="16" />
    </Register>
    <Register name="CCR3" description="capture/compare register 3" start="+0x3C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR3" description="Capture/Compare value" start="0" size="16" />
    </Register>
    <Register name="CCR4" description="capture/compare register 4" start="+0x40" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR4" description="Capture/Compare value" start="0" size="16" />
    </Register>
    <Register name="DCR" description="DMA control register" start="+0x48" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DBL" description="DMA burst length" start="8" size="5" />
      <BitField name="DBA" description="DMA base address" start="0" size="5" />
    </Register>
    <Register name="DMAR" description="DMA address for full transfer" start="+0x4C" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DMAB" description="DMA register for burst accesses" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM5" description="General purpose timer" start="0x40000C00">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CKD" description="Clock division" start="8" size="2" />
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="CMS" description="Center-aligned mode selection" start="5" size="2" />
      <BitField name="DIR" description="Direction" start="4" size="1" />
      <BitField name="OPM" description="One-pulse mode" start="3" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TI1S" description="TI1 selection" start="7" size="1" />
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
      <BitField name="CCDS" description="Capture/compare DMA selection" start="3" size="1" />
    </Register>
    <Register name="SMCR" description="slave mode control register" start="+0x8" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="ETP" description="External trigger polarity" start="15" size="1" />
      <BitField name="ECE" description="External clock enable" start="14" size="1" />
      <BitField name="ETPS" description="External trigger prescaler" start="12" size="2" />
      <BitField name="ETF" description="External trigger filter" start="8" size="4" />
      <BitField name="MSM" description="Master/Slave mode" start="7" size="1" />
      <BitField name="TS" description="Trigger selection" start="4" size="3" />
      <BitField name="SMS" description="Slave mode selection" start="0" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TDE" description="Trigger DMA request enable" start="14" size="1" />
      <BitField name="CC4DE" description="Capture/Compare 4 DMA request enable" start="12" size="1" />
      <BitField name="CC3DE" description="Capture/Compare 3 DMA request enable" start="11" size="1" />
      <BitField name="CC2DE" description="Capture/Compare 2 DMA request enable" start="10" size="1" />
      <BitField name="CC1DE" description="Capture/Compare 1 DMA request enable" start="9" size="1" />
      <BitField name="UDE" description="Update DMA request enable" start="8" size="1" />
      <BitField name="TIE" description="Trigger interrupt enable" start="6" size="1" />
      <BitField name="CC4IE" description="Capture/Compare 4 interrupt enable" start="4" size="1" />
      <BitField name="CC3IE" description="Capture/Compare 3 interrupt enable" start="3" size="1" />
      <BitField name="CC2IE" description="Capture/Compare 2 interrupt enable" start="2" size="1" />
      <BitField name="CC1IE" description="Capture/Compare 1 interrupt enable" start="1" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC4OF" description="Capture/Compare 4 overcapture flag" start="12" size="1" />
      <BitField name="CC3OF" description="Capture/Compare 3 overcapture flag" start="11" size="1" />
      <BitField name="CC2OF" description="Capture/compare 2 overcapture flag" start="10" size="1" />
      <BitField name="CC1OF" description="Capture/Compare 1 overcapture flag" start="9" size="1" />
      <BitField name="TIF" description="Trigger interrupt flag" start="6" size="1" />
      <BitField name="CC4IF" description="Capture/Compare 4 interrupt flag" start="4" size="1" />
      <BitField name="CC3IF" description="Capture/Compare 3 interrupt flag" start="3" size="1" />
      <BitField name="CC2IF" description="Capture/Compare 2 interrupt flag" start="2" size="1" />
      <BitField name="CC1IF" description="Capture/compare 1 interrupt flag" start="1" size="1" />
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TG" description="Trigger generation" start="6" size="1" />
      <BitField name="CC4G" description="Capture/compare 4 generation" start="4" size="1" />
      <BitField name="CC3G" description="Capture/compare 3 generation" start="3" size="1" />
      <BitField name="CC2G" description="Capture/compare 2 generation" start="2" size="1" />
      <BitField name="CC1G" description="Capture/compare 1 generation" start="1" size="1" />
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CCMR1_Output" description="capture/compare mode register 1 (output mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC2CE" description="Output compare 2 clear enable" start="15" size="1" />
      <BitField name="OC2M" description="Output compare 2 mode" start="12" size="3" />
      <BitField name="OC2PE" description="Output compare 2 preload enable" start="11" size="1" />
      <BitField name="OC2FE" description="Output compare 2 fast enable" start="10" size="1" />
      <BitField name="CC2S" description="Capture/Compare 2 selection" start="8" size="2" />
      <BitField name="OC1CE" description="Output compare 1 clear enable" start="7" size="1" />
      <BitField name="OC1M" description="Output compare 1 mode" start="4" size="3" />
      <BitField name="OC1PE" description="Output compare 1 preload enable" start="3" size="1" />
      <BitField name="OC1FE" description="Output compare 1 fast enable" start="2" size="1" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR1_Input" description="capture/compare mode register 1 (input mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC2F" description="Input capture 2 filter" start="12" size="4" />
      <BitField name="IC2PSC" description="Input capture 2 prescaler" start="10" size="2" />
      <BitField name="CC2S" description="Capture/compare 2 selection" start="8" size="2" />
      <BitField name="IC1F" description="Input capture 1 filter" start="4" size="4" />
      <BitField name="IC1PSC" description="Input capture 1 prescaler" start="2" size="2" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR2_Output" description="capture/compare mode register 2 (output mode)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="O24CE" description="Output compare 4 clear enable" start="15" size="1" />
      <BitField name="OC4M" description="Output compare 4 mode" start="12" size="3" />
      <BitField name="OC4PE" description="Output compare 4 preload enable" start="11" size="1" />
      <BitField name="OC4FE" description="Output compare 4 fast enable" start="10" size="1" />
      <BitField name="CC4S" description="Capture/Compare 4 selection" start="8" size="2" />
      <BitField name="OC3CE" description="Output compare 3 clear enable" start="7" size="1" />
      <BitField name="OC3M" description="Output compare 3 mode" start="4" size="3" />
      <BitField name="OC3PE" description="Output compare 3 preload enable" start="3" size="1" />
      <BitField name="OC3FE" description="Output compare 3 fast enable" start="2" size="1" />
      <BitField name="CC3S" description="Capture/Compare 3 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR2_Input" description="capture/compare mode register 2 (input mode)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC4F" description="Input capture 4 filter" start="12" size="4" />
      <BitField name="IC4PSC" description="Input capture 4 prescaler" start="10" size="2" />
      <BitField name="CC4S" description="Capture/Compare 4 selection" start="8" size="2" />
      <BitField name="IC3F" description="Input capture 3 filter" start="4" size="4" />
      <BitField name="IC3PSC" description="Input capture 3 prescaler" start="2" size="2" />
      <BitField name="CC3S" description="Capture/Compare 3 selection" start="0" size="2" />
    </Register>
    <Register name="CCER" description="capture/compare enable register" start="+0x20" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC4P" description="Capture/Compare 3 output Polarity" start="13" size="1" />
      <BitField name="CC4E" description="Capture/Compare 4 output enable" start="12" size="1" />
      <BitField name="CC3P" description="Capture/Compare 3 output Polarity" start="9" size="1" />
      <BitField name="CC3E" description="Capture/Compare 3 output enable" start="8" size="1" />
      <BitField name="CC2P" description="Capture/Compare 2 output Polarity" start="5" size="1" />
      <BitField name="CC2E" description="Capture/Compare 2 output enable" start="4" size="1" />
      <BitField name="CC1P" description="Capture/Compare 1 output Polarity" start="1" size="1" />
      <BitField name="CC1E" description="Capture/Compare 1 output enable" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Auto-reload value" start="0" size="16" />
    </Register>
    <Register name="CCR1" description="capture/compare register 1" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR1" description="Capture/Compare 1 value" start="0" size="16" />
    </Register>
    <Register name="CCR2" description="capture/compare register 2" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR2" description="Capture/Compare 2 value" start="0" size="16" />
    </Register>
    <Register name="CCR3" description="capture/compare register 3" start="+0x3C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR3" description="Capture/Compare value" start="0" size="16" />
    </Register>
    <Register name="CCR4" description="capture/compare register 4" start="+0x40" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR4" description="Capture/Compare value" start="0" size="16" />
    </Register>
    <Register name="DCR" description="DMA control register" start="+0x48" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DBL" description="DMA burst length" start="8" size="5" />
      <BitField name="DBA" description="DMA base address" start="0" size="5" />
    </Register>
    <Register name="DMAR" description="DMA address for full transfer" start="+0x4C" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DMAB" description="DMA register for burst accesses" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM9" description="General purpose timer" start="0x40014C00">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CKD" description="Clock division" start="8" size="2" />
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="OPM" description="One-pulse mode" start="3" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
    </Register>
    <Register name="SMCR" description="slave mode control register" start="+0x8" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="MSM" description="Master/Slave mode" start="7" size="1" />
      <BitField name="TS" description="Trigger selection" start="4" size="3" />
      <BitField name="SMS" description="Slave mode selection" start="0" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TIE" description="Trigger interrupt enable" start="6" size="1" />
      <BitField name="CC2IE" description="Capture/Compare 2 interrupt enable" start="2" size="1" />
      <BitField name="CC1IE" description="Capture/Compare 1 interrupt enable" start="1" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC2OF" description="Capture/compare 2 overcapture flag" start="10" size="1" />
      <BitField name="CC1OF" description="Capture/Compare 1 overcapture flag" start="9" size="1" />
      <BitField name="TIF" description="Trigger interrupt flag" start="6" size="1" />
      <BitField name="CC2IF" description="Capture/Compare 2 interrupt flag" start="2" size="1" />
      <BitField name="CC1IF" description="Capture/compare 1 interrupt flag" start="1" size="1" />
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TG" description="Trigger generation" start="6" size="1" />
      <BitField name="CC2G" description="Capture/compare 2 generation" start="2" size="1" />
      <BitField name="CC1G" description="Capture/compare 1 generation" start="1" size="1" />
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CCMR1_Output" description="capture/compare mode register 1 (output mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC2M" description="Output Compare 2 mode" start="12" size="3" />
      <BitField name="OC2PE" description="Output Compare 2 preload enable" start="11" size="1" />
      <BitField name="OC2FE" description="Output Compare 2 fast enable" start="10" size="1" />
      <BitField name="CC2S" description="Capture/Compare 2 selection" start="8" size="2" />
      <BitField name="OC1M" description="Output Compare 1 mode" start="4" size="3" />
      <BitField name="OC1PE" description="Output Compare 1 preload enable" start="3" size="1" />
      <BitField name="OC1FE" description="Output Compare 1 fast enable" start="2" size="1" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR1_Input" description="capture/compare mode register 1 (input mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC2F" description="Input capture 2 filter" start="12" size="4" />
      <BitField name="IC2PSC" description="Input capture 2 prescaler" start="10" size="2" />
      <BitField name="CC2S" description="Capture/Compare 2 selection" start="8" size="2" />
      <BitField name="IC1F" description="Input capture 1 filter" start="4" size="4" />
      <BitField name="IC1PSC" description="Input capture 1 prescaler" start="2" size="2" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCER" description="capture/compare enable register" start="+0x20" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC2NP" description="Capture/Compare 2 output Polarity" start="7" size="1" />
      <BitField name="CC2P" description="Capture/Compare 2 output Polarity" start="5" size="1" />
      <BitField name="CC2E" description="Capture/Compare 2 output enable" start="4" size="1" />
      <BitField name="CC1NP" description="Capture/Compare 1 output Polarity" start="3" size="1" />
      <BitField name="CC1P" description="Capture/Compare 1 output Polarity" start="1" size="1" />
      <BitField name="CC1E" description="Capture/Compare 1 output enable" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Auto-reload value" start="0" size="16" />
    </Register>
    <Register name="CCR1" description="capture/compare register 1" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR1" description="Capture/Compare 1 value" start="0" size="16" />
    </Register>
    <Register name="CCR2" description="capture/compare register 2" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR2" description="Capture/Compare 2 value" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM12" description="General purpose timer" start="0x40001800">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CKD" description="Clock division" start="8" size="2" />
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="OPM" description="One-pulse mode" start="3" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
    </Register>
    <Register name="SMCR" description="slave mode control register" start="+0x8" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="MSM" description="Master/Slave mode" start="7" size="1" />
      <BitField name="TS" description="Trigger selection" start="4" size="3" />
      <BitField name="SMS" description="Slave mode selection" start="0" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TIE" description="Trigger interrupt enable" start="6" size="1" />
      <BitField name="CC2IE" description="Capture/Compare 2 interrupt enable" start="2" size="1" />
      <BitField name="CC1IE" description="Capture/Compare 1 interrupt enable" start="1" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC2OF" description="Capture/compare 2 overcapture flag" start="10" size="1" />
      <BitField name="CC1OF" description="Capture/Compare 1 overcapture flag" start="9" size="1" />
      <BitField name="TIF" description="Trigger interrupt flag" start="6" size="1" />
      <BitField name="CC2IF" description="Capture/Compare 2 interrupt flag" start="2" size="1" />
      <BitField name="CC1IF" description="Capture/compare 1 interrupt flag" start="1" size="1" />
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TG" description="Trigger generation" start="6" size="1" />
      <BitField name="CC2G" description="Capture/compare 2 generation" start="2" size="1" />
      <BitField name="CC1G" description="Capture/compare 1 generation" start="1" size="1" />
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CCMR1_Output" description="capture/compare mode register 1 (output mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC2M" description="Output Compare 2 mode" start="12" size="3" />
      <BitField name="OC2PE" description="Output Compare 2 preload enable" start="11" size="1" />
      <BitField name="OC2FE" description="Output Compare 2 fast enable" start="10" size="1" />
      <BitField name="CC2S" description="Capture/Compare 2 selection" start="8" size="2" />
      <BitField name="OC1M" description="Output Compare 1 mode" start="4" size="3" />
      <BitField name="OC1PE" description="Output Compare 1 preload enable" start="3" size="1" />
      <BitField name="OC1FE" description="Output Compare 1 fast enable" start="2" size="1" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR1_Input" description="capture/compare mode register 1 (input mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC2F" description="Input capture 2 filter" start="12" size="4" />
      <BitField name="IC2PSC" description="Input capture 2 prescaler" start="10" size="2" />
      <BitField name="CC2S" description="Capture/Compare 2 selection" start="8" size="2" />
      <BitField name="IC1F" description="Input capture 1 filter" start="4" size="4" />
      <BitField name="IC1PSC" description="Input capture 1 prescaler" start="2" size="2" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCER" description="capture/compare enable register" start="+0x20" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC2NP" description="Capture/Compare 2 output Polarity" start="7" size="1" />
      <BitField name="CC2P" description="Capture/Compare 2 output Polarity" start="5" size="1" />
      <BitField name="CC2E" description="Capture/Compare 2 output enable" start="4" size="1" />
      <BitField name="CC1NP" description="Capture/Compare 1 output Polarity" start="3" size="1" />
      <BitField name="CC1P" description="Capture/Compare 1 output Polarity" start="1" size="1" />
      <BitField name="CC1E" description="Capture/Compare 1 output enable" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Auto-reload value" start="0" size="16" />
    </Register>
    <Register name="CCR1" description="capture/compare register 1" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR1" description="Capture/Compare 1 value" start="0" size="16" />
    </Register>
    <Register name="CCR2" description="capture/compare register 2" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR2" description="Capture/Compare 2 value" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM10" description="General purpose timer" start="0x40015000">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CKD" description="Clock division" start="8" size="2" />
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1IE" description="Capture/Compare 1 interrupt enable" start="1" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1OF" description="Capture/Compare 1 overcapture flag" start="9" size="1" />
      <BitField name="CC1IF" description="Capture/compare 1 interrupt flag" start="1" size="1" />
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1G" description="Capture/compare 1 generation" start="1" size="1" />
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CCMR1_Output" description="capture/compare mode register (output mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC1M" description="Output Compare 1 mode" start="4" size="3" />
      <BitField name="OC1PE" description="Output Compare 1 preload enable" start="3" size="1" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR1_Input" description="capture/compare mode register (input mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC1F" description="Input capture 1 filter" start="4" size="4" />
      <BitField name="IC1PSC" description="Input capture 1 prescaler" start="2" size="2" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCER" description="capture/compare enable register" start="+0x20" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1NP" description="Capture/Compare 1 output Polarity" start="3" size="1" />
      <BitField name="CC1P" description="Capture/Compare 1 output Polarity" start="1" size="1" />
      <BitField name="CC1E" description="Capture/Compare 1 output enable" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Auto-reload value" start="0" size="16" />
    </Register>
    <Register name="CCR1" description="capture/compare register 1" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR1" description="Capture/Compare 1 value" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM11" description="General purpose timer" start="0x40015400">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CKD" description="Clock division" start="8" size="2" />
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1IE" description="Capture/Compare 1 interrupt enable" start="1" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1OF" description="Capture/Compare 1 overcapture flag" start="9" size="1" />
      <BitField name="CC1IF" description="Capture/compare 1 interrupt flag" start="1" size="1" />
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1G" description="Capture/compare 1 generation" start="1" size="1" />
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CCMR1_Output" description="capture/compare mode register (output mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC1M" description="Output Compare 1 mode" start="4" size="3" />
      <BitField name="OC1PE" description="Output Compare 1 preload enable" start="3" size="1" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR1_Input" description="capture/compare mode register (input mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC1F" description="Input capture 1 filter" start="4" size="4" />
      <BitField name="IC1PSC" description="Input capture 1 prescaler" start="2" size="2" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCER" description="capture/compare enable register" start="+0x20" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1NP" description="Capture/Compare 1 output Polarity" start="3" size="1" />
      <BitField name="CC1P" description="Capture/Compare 1 output Polarity" start="1" size="1" />
      <BitField name="CC1E" description="Capture/Compare 1 output enable" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Auto-reload value" start="0" size="16" />
    </Register>
    <Register name="CCR1" description="capture/compare register 1" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR1" description="Capture/Compare 1 value" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM13" description="General purpose timer" start="0x40001C00">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CKD" description="Clock division" start="8" size="2" />
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1IE" description="Capture/Compare 1 interrupt enable" start="1" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1OF" description="Capture/Compare 1 overcapture flag" start="9" size="1" />
      <BitField name="CC1IF" description="Capture/compare 1 interrupt flag" start="1" size="1" />
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1G" description="Capture/compare 1 generation" start="1" size="1" />
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CCMR1_Output" description="capture/compare mode register (output mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC1M" description="Output Compare 1 mode" start="4" size="3" />
      <BitField name="OC1PE" description="Output Compare 1 preload enable" start="3" size="1" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR1_Input" description="capture/compare mode register (input mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC1F" description="Input capture 1 filter" start="4" size="4" />
      <BitField name="IC1PSC" description="Input capture 1 prescaler" start="2" size="2" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCER" description="capture/compare enable register" start="+0x20" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1NP" description="Capture/Compare 1 output Polarity" start="3" size="1" />
      <BitField name="CC1P" description="Capture/Compare 1 output Polarity" start="1" size="1" />
      <BitField name="CC1E" description="Capture/Compare 1 output enable" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Auto-reload value" start="0" size="16" />
    </Register>
    <Register name="CCR1" description="capture/compare register 1" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR1" description="Capture/Compare 1 value" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM14" description="General purpose timer" start="0x40002000">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CKD" description="Clock division" start="8" size="2" />
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1IE" description="Capture/Compare 1 interrupt enable" start="1" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1OF" description="Capture/Compare 1 overcapture flag" start="9" size="1" />
      <BitField name="CC1IF" description="Capture/compare 1 interrupt flag" start="1" size="1" />
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1G" description="Capture/compare 1 generation" start="1" size="1" />
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CCMR1_Output" description="capture/compare mode register (output mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OC1M" description="Output Compare 1 mode" start="4" size="3" />
      <BitField name="OC1PE" description="Output Compare 1 preload enable" start="3" size="1" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCMR1_Input" description="capture/compare mode register (input mode)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IC1F" description="Input capture 1 filter" start="4" size="4" />
      <BitField name="IC1PSC" description="Input capture 1 prescaler" start="2" size="2" />
      <BitField name="CC1S" description="Capture/Compare 1 selection" start="0" size="2" />
    </Register>
    <Register name="CCER" description="capture/compare enable register" start="+0x20" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CC1NP" description="Capture/Compare 1 output Polarity" start="3" size="1" />
      <BitField name="CC1P" description="Capture/Compare 1 output Polarity" start="1" size="1" />
      <BitField name="CC1E" description="Capture/Compare 1 output enable" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Auto-reload value" start="0" size="16" />
    </Register>
    <Register name="CCR1" description="capture/compare register 1" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CCR1" description="Capture/Compare 1 value" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM6" description="Basic timer" start="0x40001000">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="OPM" description="One-pulse mode" start="3" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="UDE" description="Update DMA request enable" start="8" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="Low counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Low Auto-reload value" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="TIM7" description="Basic timer" start="0x40001400">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="ARPE" description="Auto-reload preload enable" start="7" size="1" />
      <BitField name="OPM" description="One-pulse mode" start="3" size="1" />
      <BitField name="URS" description="Update request source" start="2" size="1" />
      <BitField name="UDIS" description="Update disable" start="1" size="1" />
      <BitField name="CEN" description="Counter enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="MMS" description="Master mode selection" start="4" size="3" />
    </Register>
    <Register name="DIER" description="DMA/Interrupt enable register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="UDE" description="Update DMA request enable" start="8" size="1" />
      <BitField name="UIE" description="Update interrupt enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="UIF" description="Update interrupt flag" start="0" size="1" />
    </Register>
    <Register name="EGR" description="event generation register" start="+0x14" size="4" access="WriteOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="UG" description="Update generation" start="0" size="1" />
    </Register>
    <Register name="CNT" description="counter" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CNT" description="Low counter value" start="0" size="16" />
    </Register>
    <Register name="PSC" description="prescaler" start="+0x28" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PSC" description="Prescaler value" start="0" size="16" />
    </Register>
    <Register name="ARR" description="auto-reload register" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ARR" description="Low Auto-reload value" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="I2C1" description="Inter integrated circuit" start="0x40005400">
    <Register name="CR1" description="Control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="SWRST" description="Software reset" start="15" size="1" />
      <BitField name="ALERT" description="SMBus alert" start="13" size="1" />
      <BitField name="PEC" description="Packet error checking" start="12" size="1" />
      <BitField name="POS" description="Acknowledge/PEC Position (for data reception)" start="11" size="1" />
      <BitField name="ACK" description="Acknowledge enable" start="10" size="1" />
      <BitField name="STOP" description="Stop generation" start="9" size="1" />
      <BitField name="START" description="Start generation" start="8" size="1" />
      <BitField name="NOSTRETCH" description="Clock stretching disable (Slave mode)" start="7" size="1" />
      <BitField name="ENGC" description="General call enable" start="6" size="1" />
      <BitField name="ENPEC" description="PEC enable" start="5" size="1" />
      <BitField name="ENARP" description="ARP enable" start="4" size="1" />
      <BitField name="SMBTYPE" description="SMBus type" start="3" size="1" />
      <BitField name="SMBUS" description="SMBus mode" start="1" size="1" />
      <BitField name="PE" description="Peripheral enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="Control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="LAST" description="DMA last transfer" start="12" size="1" />
      <BitField name="DMAEN" description="DMA requests enable" start="11" size="1" />
      <BitField name="ITBUFEN" description="Buffer interrupt enable" start="10" size="1" />
      <BitField name="ITEVTEN" description="Event interrupt enable" start="9" size="1" />
      <BitField name="ITERREN" description="Error interrupt enable" start="8" size="1" />
      <BitField name="FREQ" description="Peripheral clock frequency" start="0" size="6" />
    </Register>
    <Register name="OAR1" description="Own address register 1" start="+0x8" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="ADDMODE" description="Addressing mode (slave mode)" start="15" size="1" />
      <BitField name="ADD10" description="Interface address" start="8" size="2" />
      <BitField name="ADD7" description="Interface address" start="1" size="7" />
      <BitField name="ADD0" description="Interface address" start="0" size="1" />
    </Register>
    <Register name="OAR2" description="Own address register 2" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="ADD2" description="Interface address" start="1" size="7" />
      <BitField name="ENDUAL" description="Dual addressing mode enable" start="0" size="1" />
    </Register>
    <Register name="DR" description="Data register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DR" description="8-bit data register" start="0" size="8" />
    </Register>
    <Register name="SR1" description="Status register 1" start="+0x14" size="4" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="SMBALERT" description="SMBus alert" start="15" size="1" access="Read/Write" />
      <BitField name="TIMEOUT" description="Timeout or Tlow error" start="14" size="1" access="Read/Write" />
      <BitField name="PECERR" description="PEC Error in reception" start="12" size="1" access="Read/Write" />
      <BitField name="OVR" description="Overrun/Underrun" start="11" size="1" access="Read/Write" />
      <BitField name="AF" description="Acknowledge failure" start="10" size="1" access="Read/Write" />
      <BitField name="ARLO" description="Arbitration lost (master mode)" start="9" size="1" access="Read/Write" />
      <BitField name="BERR" description="Bus error" start="8" size="1" access="Read/Write" />
      <BitField name="TxE" description="Data register empty (transmitters)" start="7" size="1" access="ReadOnly" />
      <BitField name="RxNE" description="Data register not empty (receivers)" start="6" size="1" access="ReadOnly" />
      <BitField name="STOPF" description="Stop detection (slave mode)" start="4" size="1" access="ReadOnly" />
      <BitField name="ADD10" description="10-bit header sent (Master mode)" start="3" size="1" access="ReadOnly" />
      <BitField name="BTF" description="Byte transfer finished" start="2" size="1" access="ReadOnly" />
      <BitField name="ADDR" description="Address sent (master mode)/matched (slave mode)" start="1" size="1" access="ReadOnly" />
      <BitField name="SB" description="Start bit (Master mode)" start="0" size="1" access="ReadOnly" />
    </Register>
    <Register name="SR2" description="Status register 2" start="+0x18" size="4" access="ReadOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PEC" description="acket error checking register" start="8" size="8" />
      <BitField name="DUALF" description="Dual flag (Slave mode)" start="7" size="1" />
      <BitField name="SMBHOST" description="SMBus host header (Slave mode)" start="6" size="1" />
      <BitField name="SMBDEFAULT" description="SMBus device default address (Slave mode)" start="5" size="1" />
      <BitField name="GENCALL" description="General call address (Slave mode)" start="4" size="1" />
      <BitField name="TRA" description="Transmitter/receiver" start="2" size="1" />
      <BitField name="BUSY" description="Bus busy" start="1" size="1" />
      <BitField name="MSL" description="Master/slave" start="0" size="1" />
    </Register>
    <Register name="CCR" description="Clock control register" start="+0x1C" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="F_S" description="I2C master mode selection" start="15" size="1" />
      <BitField name="DUTY" description="Fast mode duty cycle" start="14" size="1" />
      <BitField name="CCR" description="Clock control register in Fast/Standard mode (Master mode)" start="0" size="12" />
    </Register>
    <Register name="TRISE" description="TRISE register" start="+0x20" size="4" access="Read/Write" reset_value="0x0002" reset_mask="0xFFFFFFFF">
      <BitField name="TRISE" description="Maximum rise time in Fast/Standard mode (Master mode)" start="0" size="6" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="I2C2" description="Inter integrated circuit" start="0x40005800">
    <Register name="CR1" description="Control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="SWRST" description="Software reset" start="15" size="1" />
      <BitField name="ALERT" description="SMBus alert" start="13" size="1" />
      <BitField name="PEC" description="Packet error checking" start="12" size="1" />
      <BitField name="POS" description="Acknowledge/PEC Position (for data reception)" start="11" size="1" />
      <BitField name="ACK" description="Acknowledge enable" start="10" size="1" />
      <BitField name="STOP" description="Stop generation" start="9" size="1" />
      <BitField name="START" description="Start generation" start="8" size="1" />
      <BitField name="NOSTRETCH" description="Clock stretching disable (Slave mode)" start="7" size="1" />
      <BitField name="ENGC" description="General call enable" start="6" size="1" />
      <BitField name="ENPEC" description="PEC enable" start="5" size="1" />
      <BitField name="ENARP" description="ARP enable" start="4" size="1" />
      <BitField name="SMBTYPE" description="SMBus type" start="3" size="1" />
      <BitField name="SMBUS" description="SMBus mode" start="1" size="1" />
      <BitField name="PE" description="Peripheral enable" start="0" size="1" />
    </Register>
    <Register name="CR2" description="Control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="LAST" description="DMA last transfer" start="12" size="1" />
      <BitField name="DMAEN" description="DMA requests enable" start="11" size="1" />
      <BitField name="ITBUFEN" description="Buffer interrupt enable" start="10" size="1" />
      <BitField name="ITEVTEN" description="Event interrupt enable" start="9" size="1" />
      <BitField name="ITERREN" description="Error interrupt enable" start="8" size="1" />
      <BitField name="FREQ" description="Peripheral clock frequency" start="0" size="6" />
    </Register>
    <Register name="OAR1" description="Own address register 1" start="+0x8" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="ADDMODE" description="Addressing mode (slave mode)" start="15" size="1" />
      <BitField name="ADD10" description="Interface address" start="8" size="2" />
      <BitField name="ADD7" description="Interface address" start="1" size="7" />
      <BitField name="ADD0" description="Interface address" start="0" size="1" />
    </Register>
    <Register name="OAR2" description="Own address register 2" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="ADD2" description="Interface address" start="1" size="7" />
      <BitField name="ENDUAL" description="Dual addressing mode enable" start="0" size="1" />
    </Register>
    <Register name="DR" description="Data register" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DR" description="8-bit data register" start="0" size="8" />
    </Register>
    <Register name="SR1" description="Status register 1" start="+0x14" size="4" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="SMBALERT" description="SMBus alert" start="15" size="1" access="Read/Write" />
      <BitField name="TIMEOUT" description="Timeout or Tlow error" start="14" size="1" access="Read/Write" />
      <BitField name="PECERR" description="PEC Error in reception" start="12" size="1" access="Read/Write" />
      <BitField name="OVR" description="Overrun/Underrun" start="11" size="1" access="Read/Write" />
      <BitField name="AF" description="Acknowledge failure" start="10" size="1" access="Read/Write" />
      <BitField name="ARLO" description="Arbitration lost (master mode)" start="9" size="1" access="Read/Write" />
      <BitField name="BERR" description="Bus error" start="8" size="1" access="Read/Write" />
      <BitField name="TxE" description="Data register empty (transmitters)" start="7" size="1" access="ReadOnly" />
      <BitField name="RxNE" description="Data register not empty (receivers)" start="6" size="1" access="ReadOnly" />
      <BitField name="STOPF" description="Stop detection (slave mode)" start="4" size="1" access="ReadOnly" />
      <BitField name="ADD10" description="10-bit header sent (Master mode)" start="3" size="1" access="ReadOnly" />
      <BitField name="BTF" description="Byte transfer finished" start="2" size="1" access="ReadOnly" />
      <BitField name="ADDR" description="Address sent (master mode)/matched (slave mode)" start="1" size="1" access="ReadOnly" />
      <BitField name="SB" description="Start bit (Master mode)" start="0" size="1" access="ReadOnly" />
    </Register>
    <Register name="SR2" description="Status register 2" start="+0x18" size="4" access="ReadOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="PEC" description="acket error checking register" start="8" size="8" />
      <BitField name="DUALF" description="Dual flag (Slave mode)" start="7" size="1" />
      <BitField name="SMBHOST" description="SMBus host header (Slave mode)" start="6" size="1" />
      <BitField name="SMBDEFAULT" description="SMBus device default address (Slave mode)" start="5" size="1" />
      <BitField name="GENCALL" description="General call address (Slave mode)" start="4" size="1" />
      <BitField name="TRA" description="Transmitter/receiver" start="2" size="1" />
      <BitField name="BUSY" description="Bus busy" start="1" size="1" />
      <BitField name="MSL" description="Master/slave" start="0" size="1" />
    </Register>
    <Register name="CCR" description="Clock control register" start="+0x1C" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="F_S" description="I2C master mode selection" start="15" size="1" />
      <BitField name="DUTY" description="Fast mode duty cycle" start="14" size="1" />
      <BitField name="CCR" description="Clock control register in Fast/Standard mode (Master mode)" start="0" size="12" />
    </Register>
    <Register name="TRISE" description="TRISE register" start="+0x20" size="4" access="Read/Write" reset_value="0x0002" reset_mask="0xFFFFFFFF">
      <BitField name="TRISE" description="Maximum rise time in Fast/Standard mode (Master mode)" start="0" size="6" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="SPI1" description="Serial peripheral interface" start="0x40013000">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="BIDIMODE" description="Bidirectional data mode enable" start="15" size="1" />
      <BitField name="BIDIOE" description="Output enable in bidirectional mode" start="14" size="1" />
      <BitField name="CRCEN" description="Hardware CRC calculation enable" start="13" size="1" />
      <BitField name="CRCNEXT" description="CRC transfer next" start="12" size="1" />
      <BitField name="DFF" description="Data frame format" start="11" size="1" />
      <BitField name="RXONLY" description="Receive only" start="10" size="1" />
      <BitField name="SSM" description="Software slave management" start="9" size="1" />
      <BitField name="SSI" description="Internal slave select" start="8" size="1" />
      <BitField name="LSBFIRST" description="Frame format" start="7" size="1" />
      <BitField name="SPE" description="SPI enable" start="6" size="1" />
      <BitField name="BR" description="Baud rate control" start="3" size="3" />
      <BitField name="MSTR" description="Master selection" start="2" size="1" />
      <BitField name="CPOL" description="Clock polarity" start="1" size="1" />
      <BitField name="CPHA" description="Clock phase" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TXEIE" description="Tx buffer empty interrupt enable" start="7" size="1" />
      <BitField name="RXNEIE" description="RX buffer not empty interrupt enable" start="6" size="1" />
      <BitField name="ERRIE" description="Error interrupt enable" start="5" size="1" />
      <BitField name="SSOE" description="SS output enable" start="2" size="1" />
      <BitField name="TXDMAEN" description="Tx buffer DMA enable" start="1" size="1" />
      <BitField name="RXDMAEN" description="Rx buffer DMA enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x8" size="4" reset_value="0x0002" reset_mask="0xFFFFFFFF">
      <BitField name="BSY" description="Busy flag" start="7" size="1" access="ReadOnly" />
      <BitField name="OVR" description="Overrun flag" start="6" size="1" access="ReadOnly" />
      <BitField name="MODF" description="Mode fault" start="5" size="1" access="ReadOnly" />
      <BitField name="CRCERR" description="CRC error flag" start="4" size="1" access="Read/Write" />
      <BitField name="UDR" description="Underrun flag" start="3" size="1" access="ReadOnly" />
      <BitField name="CHSIDE" description="Channel side" start="2" size="1" access="ReadOnly" />
      <BitField name="TXE" description="Transmit buffer empty" start="1" size="1" access="ReadOnly" />
      <BitField name="RXNE" description="Receive buffer not empty" start="0" size="1" access="ReadOnly" />
    </Register>
    <Register name="DR" description="data register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DR" description="Data register" start="0" size="16" />
    </Register>
    <Register name="CRCPR" description="CRC polynomial register" start="+0x10" size="4" access="Read/Write" reset_value="0x0007" reset_mask="0xFFFFFFFF">
      <BitField name="CRCPOLY" description="CRC polynomial register" start="0" size="16" />
    </Register>
    <Register name="RXCRCR" description="RX CRC register" start="+0x14" size="4" access="ReadOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="RxCRC" description="Rx CRC register" start="0" size="16" />
    </Register>
    <Register name="TXCRCR" description="TX CRC register" start="+0x18" size="4" access="ReadOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TxCRC" description="Tx CRC register" start="0" size="16" />
    </Register>
    <Register name="I2SCFGR" description="I2S configuration register" start="+0x1C" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="I2SMOD" description="I2S mode selection" start="11" size="1" />
      <BitField name="I2SE" description="I2S Enable" start="10" size="1" />
      <BitField name="I2SCFG" description="I2S configuration mode" start="8" size="2" />
      <BitField name="PCMSYNC" description="PCM frame synchronization" start="7" size="1" />
      <BitField name="I2SSTD" description="I2S standard selection" start="4" size="2" />
      <BitField name="CKPOL" description="Steady state clock polarity" start="3" size="1" />
      <BitField name="DATLEN" description="Data length to be transferred" start="1" size="2" />
      <BitField name="CHLEN" description="Channel length (number of bits per audio channel)" start="0" size="1" />
    </Register>
    <Register name="I2SPR" description="I2S prescaler register" start="+0x20" size="4" access="Read/Write" reset_value="00000010" reset_mask="0xFFFFFFFF">
      <BitField name="MCKOE" description="Master clock output enable" start="9" size="1" />
      <BitField name="ODD" description="Odd factor for the prescaler" start="8" size="1" />
      <BitField name="I2SDIV" description="I2S Linear prescaler" start="0" size="8" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="SPI2" description="Serial peripheral interface" start="0x40003800">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="BIDIMODE" description="Bidirectional data mode enable" start="15" size="1" />
      <BitField name="BIDIOE" description="Output enable in bidirectional mode" start="14" size="1" />
      <BitField name="CRCEN" description="Hardware CRC calculation enable" start="13" size="1" />
      <BitField name="CRCNEXT" description="CRC transfer next" start="12" size="1" />
      <BitField name="DFF" description="Data frame format" start="11" size="1" />
      <BitField name="RXONLY" description="Receive only" start="10" size="1" />
      <BitField name="SSM" description="Software slave management" start="9" size="1" />
      <BitField name="SSI" description="Internal slave select" start="8" size="1" />
      <BitField name="LSBFIRST" description="Frame format" start="7" size="1" />
      <BitField name="SPE" description="SPI enable" start="6" size="1" />
      <BitField name="BR" description="Baud rate control" start="3" size="3" />
      <BitField name="MSTR" description="Master selection" start="2" size="1" />
      <BitField name="CPOL" description="Clock polarity" start="1" size="1" />
      <BitField name="CPHA" description="Clock phase" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TXEIE" description="Tx buffer empty interrupt enable" start="7" size="1" />
      <BitField name="RXNEIE" description="RX buffer not empty interrupt enable" start="6" size="1" />
      <BitField name="ERRIE" description="Error interrupt enable" start="5" size="1" />
      <BitField name="SSOE" description="SS output enable" start="2" size="1" />
      <BitField name="TXDMAEN" description="Tx buffer DMA enable" start="1" size="1" />
      <BitField name="RXDMAEN" description="Rx buffer DMA enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x8" size="4" reset_value="0x0002" reset_mask="0xFFFFFFFF">
      <BitField name="BSY" description="Busy flag" start="7" size="1" access="ReadOnly" />
      <BitField name="OVR" description="Overrun flag" start="6" size="1" access="ReadOnly" />
      <BitField name="MODF" description="Mode fault" start="5" size="1" access="ReadOnly" />
      <BitField name="CRCERR" description="CRC error flag" start="4" size="1" access="Read/Write" />
      <BitField name="UDR" description="Underrun flag" start="3" size="1" access="ReadOnly" />
      <BitField name="CHSIDE" description="Channel side" start="2" size="1" access="ReadOnly" />
      <BitField name="TXE" description="Transmit buffer empty" start="1" size="1" access="ReadOnly" />
      <BitField name="RXNE" description="Receive buffer not empty" start="0" size="1" access="ReadOnly" />
    </Register>
    <Register name="DR" description="data register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DR" description="Data register" start="0" size="16" />
    </Register>
    <Register name="CRCPR" description="CRC polynomial register" start="+0x10" size="4" access="Read/Write" reset_value="0x0007" reset_mask="0xFFFFFFFF">
      <BitField name="CRCPOLY" description="CRC polynomial register" start="0" size="16" />
    </Register>
    <Register name="RXCRCR" description="RX CRC register" start="+0x14" size="4" access="ReadOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="RxCRC" description="Rx CRC register" start="0" size="16" />
    </Register>
    <Register name="TXCRCR" description="TX CRC register" start="+0x18" size="4" access="ReadOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TxCRC" description="Tx CRC register" start="0" size="16" />
    </Register>
    <Register name="I2SCFGR" description="I2S configuration register" start="+0x1C" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="I2SMOD" description="I2S mode selection" start="11" size="1" />
      <BitField name="I2SE" description="I2S Enable" start="10" size="1" />
      <BitField name="I2SCFG" description="I2S configuration mode" start="8" size="2" />
      <BitField name="PCMSYNC" description="PCM frame synchronization" start="7" size="1" />
      <BitField name="I2SSTD" description="I2S standard selection" start="4" size="2" />
      <BitField name="CKPOL" description="Steady state clock polarity" start="3" size="1" />
      <BitField name="DATLEN" description="Data length to be transferred" start="1" size="2" />
      <BitField name="CHLEN" description="Channel length (number of bits per audio channel)" start="0" size="1" />
    </Register>
    <Register name="I2SPR" description="I2S prescaler register" start="+0x20" size="4" access="Read/Write" reset_value="00000010" reset_mask="0xFFFFFFFF">
      <BitField name="MCKOE" description="Master clock output enable" start="9" size="1" />
      <BitField name="ODD" description="Odd factor for the prescaler" start="8" size="1" />
      <BitField name="I2SDIV" description="I2S Linear prescaler" start="0" size="8" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="SPI3" description="Serial peripheral interface" start="0x40003C00">
    <Register name="CR1" description="control register 1" start="+0x0" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="BIDIMODE" description="Bidirectional data mode enable" start="15" size="1" />
      <BitField name="BIDIOE" description="Output enable in bidirectional mode" start="14" size="1" />
      <BitField name="CRCEN" description="Hardware CRC calculation enable" start="13" size="1" />
      <BitField name="CRCNEXT" description="CRC transfer next" start="12" size="1" />
      <BitField name="DFF" description="Data frame format" start="11" size="1" />
      <BitField name="RXONLY" description="Receive only" start="10" size="1" />
      <BitField name="SSM" description="Software slave management" start="9" size="1" />
      <BitField name="SSI" description="Internal slave select" start="8" size="1" />
      <BitField name="LSBFIRST" description="Frame format" start="7" size="1" />
      <BitField name="SPE" description="SPI enable" start="6" size="1" />
      <BitField name="BR" description="Baud rate control" start="3" size="3" />
      <BitField name="MSTR" description="Master selection" start="2" size="1" />
      <BitField name="CPOL" description="Clock polarity" start="1" size="1" />
      <BitField name="CPHA" description="Clock phase" start="0" size="1" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x4" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TXEIE" description="Tx buffer empty interrupt enable" start="7" size="1" />
      <BitField name="RXNEIE" description="RX buffer not empty interrupt enable" start="6" size="1" />
      <BitField name="ERRIE" description="Error interrupt enable" start="5" size="1" />
      <BitField name="SSOE" description="SS output enable" start="2" size="1" />
      <BitField name="TXDMAEN" description="Tx buffer DMA enable" start="1" size="1" />
      <BitField name="RXDMAEN" description="Rx buffer DMA enable" start="0" size="1" />
    </Register>
    <Register name="SR" description="status register" start="+0x8" size="4" reset_value="0x0002" reset_mask="0xFFFFFFFF">
      <BitField name="BSY" description="Busy flag" start="7" size="1" access="ReadOnly" />
      <BitField name="OVR" description="Overrun flag" start="6" size="1" access="ReadOnly" />
      <BitField name="MODF" description="Mode fault" start="5" size="1" access="ReadOnly" />
      <BitField name="CRCERR" description="CRC error flag" start="4" size="1" access="Read/Write" />
      <BitField name="UDR" description="Underrun flag" start="3" size="1" access="ReadOnly" />
      <BitField name="CHSIDE" description="Channel side" start="2" size="1" access="ReadOnly" />
      <BitField name="TXE" description="Transmit buffer empty" start="1" size="1" access="ReadOnly" />
      <BitField name="RXNE" description="Receive buffer not empty" start="0" size="1" access="ReadOnly" />
    </Register>
    <Register name="DR" description="data register" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DR" description="Data register" start="0" size="16" />
    </Register>
    <Register name="CRCPR" description="CRC polynomial register" start="+0x10" size="4" access="Read/Write" reset_value="0x0007" reset_mask="0xFFFFFFFF">
      <BitField name="CRCPOLY" description="CRC polynomial register" start="0" size="16" />
    </Register>
    <Register name="RXCRCR" description="RX CRC register" start="+0x14" size="4" access="ReadOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="RxCRC" description="Rx CRC register" start="0" size="16" />
    </Register>
    <Register name="TXCRCR" description="TX CRC register" start="+0x18" size="4" access="ReadOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="TxCRC" description="Tx CRC register" start="0" size="16" />
    </Register>
    <Register name="I2SCFGR" description="I2S configuration register" start="+0x1C" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="I2SMOD" description="I2S mode selection" start="11" size="1" />
      <BitField name="I2SE" description="I2S Enable" start="10" size="1" />
      <BitField name="I2SCFG" description="I2S configuration mode" start="8" size="2" />
      <BitField name="PCMSYNC" description="PCM frame synchronization" start="7" size="1" />
      <BitField name="I2SSTD" description="I2S standard selection" start="4" size="2" />
      <BitField name="CKPOL" description="Steady state clock polarity" start="3" size="1" />
      <BitField name="DATLEN" description="Data length to be transferred" start="1" size="2" />
      <BitField name="CHLEN" description="Channel length (number of bits per audio channel)" start="0" size="1" />
    </Register>
    <Register name="I2SPR" description="I2S prescaler register" start="+0x20" size="4" access="Read/Write" reset_value="00000010" reset_mask="0xFFFFFFFF">
      <BitField name="MCKOE" description="Master clock output enable" start="9" size="1" />
      <BitField name="ODD" description="Odd factor for the prescaler" start="8" size="1" />
      <BitField name="I2SDIV" description="I2S Linear prescaler" start="0" size="8" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="USART1" description="Universal synchronous asynchronous receiver transmitter" start="0x40013800">
    <Register name="SR" description="Status register" start="+0x0" size="4" reset_value="0x00C0" reset_mask="0xFFFFFFFF">
      <BitField name="CTS" description="CTS flag" start="9" size="1" access="Read/Write" />
      <BitField name="LBD" description="LIN break detection flag" start="8" size="1" access="Read/Write" />
      <BitField name="TXE" description="Transmit data register empty" start="7" size="1" access="ReadOnly" />
      <BitField name="TC" description="Transmission complete" start="6" size="1" access="Read/Write" />
      <BitField name="RXNE" description="Read data register not empty" start="5" size="1" access="Read/Write" />
      <BitField name="IDLE" description="IDLE line detected" start="4" size="1" access="ReadOnly" />
      <BitField name="ORE" description="Overrun error" start="3" size="1" access="ReadOnly" />
      <BitField name="NE" description="Noise error flag" start="2" size="1" access="ReadOnly" />
      <BitField name="FE" description="Framing error" start="1" size="1" access="ReadOnly" />
      <BitField name="PE" description="Parity error" start="0" size="1" access="ReadOnly" />
    </Register>
    <Register name="DR" description="Data register" start="+0x4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DR" description="Data value" start="0" size="9" />
    </Register>
    <Register name="BRR" description="Baud rate register" start="+0x8" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DIV_Mantissa" description="mantissa of USARTDIV" start="4" size="12" />
      <BitField name="DIV_Fraction" description="fraction of USARTDIV" start="0" size="4" />
    </Register>
    <Register name="CR1" description="Control register 1" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="UE" description="USART enable" start="13" size="1" />
      <BitField name="M" description="Word length" start="12" size="1" />
      <BitField name="WAKE" description="Wakeup method" start="11" size="1" />
      <BitField name="PCE" description="Parity control enable" start="10" size="1" />
      <BitField name="PS" description="Parity selection" start="9" size="1" />
      <BitField name="PEIE" description="PE interrupt enable" start="8" size="1" />
      <BitField name="TXEIE" description="TXE interrupt enable" start="7" size="1" />
      <BitField name="TCIE" description="Transmission complete interrupt enable" start="6" size="1" />
      <BitField name="RXNEIE" description="RXNE interrupt enable" start="5" size="1" />
      <BitField name="IDLEIE" description="IDLE interrupt enable" start="4" size="1" />
      <BitField name="TE" description="Transmitter enable" start="3" size="1" />
      <BitField name="RE" description="Receiver enable" start="2" size="1" />
      <BitField name="RWU" description="Receiver wakeup" start="1" size="1" />
      <BitField name="SBK" description="Send break" start="0" size="1" />
    </Register>
    <Register name="CR2" description="Control register 2" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="LINEN" description="LIN mode enable" start="14" size="1" />
      <BitField name="STOP" description="STOP bits" start="12" size="2" />
      <BitField name="CLKEN" description="Clock enable" start="11" size="1" />
      <BitField name="CPOL" description="Clock polarity" start="10" size="1" />
      <BitField name="CPHA" description="Clock phase" start="9" size="1" />
      <BitField name="LBCL" description="Last bit clock pulse" start="8" size="1" />
      <BitField name="LBDIE" description="LIN break detection interrupt enable" start="6" size="1" />
      <BitField name="LBDL" description="lin break detection length" start="5" size="1" />
      <BitField name="ADD" description="Address of the USART node" start="0" size="4" />
    </Register>
    <Register name="CR3" description="Control register 3" start="+0x14" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CTSIE" description="CTS interrupt enable" start="10" size="1" />
      <BitField name="CTSE" description="CTS enable" start="9" size="1" />
      <BitField name="RTSE" description="RTS enable" start="8" size="1" />
      <BitField name="DMAT" description="DMA enable transmitter" start="7" size="1" />
      <BitField name="DMAR" description="DMA enable receiver" start="6" size="1" />
      <BitField name="SCEN" description="Smartcard mode enable" start="5" size="1" />
      <BitField name="NACK" description="Smartcard NACK enable" start="4" size="1" />
      <BitField name="HDSEL" description="Half-duplex selection" start="3" size="1" />
      <BitField name="IRLP" description="IrDA low-power" start="2" size="1" />
      <BitField name="IREN" description="IrDA mode enable" start="1" size="1" />
      <BitField name="EIE" description="Error interrupt enable" start="0" size="1" />
    </Register>
    <Register name="GTPR" description="Guard time and prescaler register" start="+0x18" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="GT" description="Guard time value" start="8" size="8" />
      <BitField name="PSC" description="Prescaler value" start="0" size="8" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="USART2" description="Universal synchronous asynchronous receiver transmitter" start="0x40004400">
    <Register name="SR" description="Status register" start="+0x0" size="4" reset_value="0x00C0" reset_mask="0xFFFFFFFF">
      <BitField name="CTS" description="CTS flag" start="9" size="1" access="Read/Write" />
      <BitField name="LBD" description="LIN break detection flag" start="8" size="1" access="Read/Write" />
      <BitField name="TXE" description="Transmit data register empty" start="7" size="1" access="ReadOnly" />
      <BitField name="TC" description="Transmission complete" start="6" size="1" access="Read/Write" />
      <BitField name="RXNE" description="Read data register not empty" start="5" size="1" access="Read/Write" />
      <BitField name="IDLE" description="IDLE line detected" start="4" size="1" access="ReadOnly" />
      <BitField name="ORE" description="Overrun error" start="3" size="1" access="ReadOnly" />
      <BitField name="NE" description="Noise error flag" start="2" size="1" access="ReadOnly" />
      <BitField name="FE" description="Framing error" start="1" size="1" access="ReadOnly" />
      <BitField name="PE" description="Parity error" start="0" size="1" access="ReadOnly" />
    </Register>
    <Register name="DR" description="Data register" start="+0x4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DR" description="Data value" start="0" size="9" />
    </Register>
    <Register name="BRR" description="Baud rate register" start="+0x8" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DIV_Mantissa" description="mantissa of USARTDIV" start="4" size="12" />
      <BitField name="DIV_Fraction" description="fraction of USARTDIV" start="0" size="4" />
    </Register>
    <Register name="CR1" description="Control register 1" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="UE" description="USART enable" start="13" size="1" />
      <BitField name="M" description="Word length" start="12" size="1" />
      <BitField name="WAKE" description="Wakeup method" start="11" size="1" />
      <BitField name="PCE" description="Parity control enable" start="10" size="1" />
      <BitField name="PS" description="Parity selection" start="9" size="1" />
      <BitField name="PEIE" description="PE interrupt enable" start="8" size="1" />
      <BitField name="TXEIE" description="TXE interrupt enable" start="7" size="1" />
      <BitField name="TCIE" description="Transmission complete interrupt enable" start="6" size="1" />
      <BitField name="RXNEIE" description="RXNE interrupt enable" start="5" size="1" />
      <BitField name="IDLEIE" description="IDLE interrupt enable" start="4" size="1" />
      <BitField name="TE" description="Transmitter enable" start="3" size="1" />
      <BitField name="RE" description="Receiver enable" start="2" size="1" />
      <BitField name="RWU" description="Receiver wakeup" start="1" size="1" />
      <BitField name="SBK" description="Send break" start="0" size="1" />
    </Register>
    <Register name="CR2" description="Control register 2" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="LINEN" description="LIN mode enable" start="14" size="1" />
      <BitField name="STOP" description="STOP bits" start="12" size="2" />
      <BitField name="CLKEN" description="Clock enable" start="11" size="1" />
      <BitField name="CPOL" description="Clock polarity" start="10" size="1" />
      <BitField name="CPHA" description="Clock phase" start="9" size="1" />
      <BitField name="LBCL" description="Last bit clock pulse" start="8" size="1" />
      <BitField name="LBDIE" description="LIN break detection interrupt enable" start="6" size="1" />
      <BitField name="LBDL" description="lin break detection length" start="5" size="1" />
      <BitField name="ADD" description="Address of the USART node" start="0" size="4" />
    </Register>
    <Register name="CR3" description="Control register 3" start="+0x14" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CTSIE" description="CTS interrupt enable" start="10" size="1" />
      <BitField name="CTSE" description="CTS enable" start="9" size="1" />
      <BitField name="RTSE" description="RTS enable" start="8" size="1" />
      <BitField name="DMAT" description="DMA enable transmitter" start="7" size="1" />
      <BitField name="DMAR" description="DMA enable receiver" start="6" size="1" />
      <BitField name="SCEN" description="Smartcard mode enable" start="5" size="1" />
      <BitField name="NACK" description="Smartcard NACK enable" start="4" size="1" />
      <BitField name="HDSEL" description="Half-duplex selection" start="3" size="1" />
      <BitField name="IRLP" description="IrDA low-power" start="2" size="1" />
      <BitField name="IREN" description="IrDA mode enable" start="1" size="1" />
      <BitField name="EIE" description="Error interrupt enable" start="0" size="1" />
    </Register>
    <Register name="GTPR" description="Guard time and prescaler register" start="+0x18" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="GT" description="Guard time value" start="8" size="8" />
      <BitField name="PSC" description="Prescaler value" start="0" size="8" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="USART3" description="Universal synchronous asynchronous receiver transmitter" start="0x40004800">
    <Register name="SR" description="Status register" start="+0x0" size="4" reset_value="0x00C0" reset_mask="0xFFFFFFFF">
      <BitField name="CTS" description="CTS flag" start="9" size="1" access="Read/Write" />
      <BitField name="LBD" description="LIN break detection flag" start="8" size="1" access="Read/Write" />
      <BitField name="TXE" description="Transmit data register empty" start="7" size="1" access="ReadOnly" />
      <BitField name="TC" description="Transmission complete" start="6" size="1" access="Read/Write" />
      <BitField name="RXNE" description="Read data register not empty" start="5" size="1" access="Read/Write" />
      <BitField name="IDLE" description="IDLE line detected" start="4" size="1" access="ReadOnly" />
      <BitField name="ORE" description="Overrun error" start="3" size="1" access="ReadOnly" />
      <BitField name="NE" description="Noise error flag" start="2" size="1" access="ReadOnly" />
      <BitField name="FE" description="Framing error" start="1" size="1" access="ReadOnly" />
      <BitField name="PE" description="Parity error" start="0" size="1" access="ReadOnly" />
    </Register>
    <Register name="DR" description="Data register" start="+0x4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DR" description="Data value" start="0" size="9" />
    </Register>
    <Register name="BRR" description="Baud rate register" start="+0x8" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="DIV_Mantissa" description="mantissa of USARTDIV" start="4" size="12" />
      <BitField name="DIV_Fraction" description="fraction of USARTDIV" start="0" size="4" />
    </Register>
    <Register name="CR1" description="Control register 1" start="+0xC" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="UE" description="USART enable" start="13" size="1" />
      <BitField name="M" description="Word length" start="12" size="1" />
      <BitField name="WAKE" description="Wakeup method" start="11" size="1" />
      <BitField name="PCE" description="Parity control enable" start="10" size="1" />
      <BitField name="PS" description="Parity selection" start="9" size="1" />
      <BitField name="PEIE" description="PE interrupt enable" start="8" size="1" />
      <BitField name="TXEIE" description="TXE interrupt enable" start="7" size="1" />
      <BitField name="TCIE" description="Transmission complete interrupt enable" start="6" size="1" />
      <BitField name="RXNEIE" description="RXNE interrupt enable" start="5" size="1" />
      <BitField name="IDLEIE" description="IDLE interrupt enable" start="4" size="1" />
      <BitField name="TE" description="Transmitter enable" start="3" size="1" />
      <BitField name="RE" description="Receiver enable" start="2" size="1" />
      <BitField name="RWU" description="Receiver wakeup" start="1" size="1" />
      <BitField name="SBK" description="Send break" start="0" size="1" />
    </Register>
    <Register name="CR2" description="Control register 2" start="+0x10" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="LINEN" description="LIN mode enable" start="14" size="1" />
      <BitField name="STOP" description="STOP bits" start="12" size="2" />
      <BitField name="CLKEN" description="Clock enable" start="11" size="1" />
      <BitField name="CPOL" description="Clock polarity" start="10" size="1" />
      <BitField name="CPHA" description="Clock phase" start="9" size="1" />
      <BitField name="LBCL" description="Last bit clock pulse" start="8" size="1" />
      <BitField name="LBDIE" description="LIN break detection interrupt enable" start="6" size="1" />
      <BitField name="LBDL" description="lin break detection length" start="5" size="1" />
      <BitField name="ADD" description="Address of the USART node" start="0" size="4" />
    </Register>
    <Register name="CR3" description="Control register 3" start="+0x14" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="CTSIE" description="CTS interrupt enable" start="10" size="1" />
      <BitField name="CTSE" description="CTS enable" start="9" size="1" />
      <BitField name="RTSE" description="RTS enable" start="8" size="1" />
      <BitField name="DMAT" description="DMA enable transmitter" start="7" size="1" />
      <BitField name="DMAR" description="DMA enable receiver" start="6" size="1" />
      <BitField name="SCEN" description="Smartcard mode enable" start="5" size="1" />
      <BitField name="NACK" description="Smartcard NACK enable" start="4" size="1" />
      <BitField name="HDSEL" description="Half-duplex selection" start="3" size="1" />
      <BitField name="IRLP" description="IrDA low-power" start="2" size="1" />
      <BitField name="IREN" description="IrDA mode enable" start="1" size="1" />
      <BitField name="EIE" description="Error interrupt enable" start="0" size="1" />
    </Register>
    <Register name="GTPR" description="Guard time and prescaler register" start="+0x18" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="GT" description="Guard time value" start="8" size="8" />
      <BitField name="PSC" description="Prescaler value" start="0" size="8" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="ADC1" description="Analog to digital converter" start="0x40012400">
    <Register name="SR" description="status register" start="+0x0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="STRT" description="Regular channel start flag" start="4" size="1" />
      <BitField name="JSTRT" description="Injected channel start flag" start="3" size="1" />
      <BitField name="JEOC" description="Injected channel end of conversion" start="2" size="1" />
      <BitField name="EOC" description="Regular channel end of conversion" start="1" size="1" />
      <BitField name="AWD" description="Analog watchdog flag" start="0" size="1" />
    </Register>
    <Register name="CR1" description="control register 1" start="+0x4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="AWDEN" description="Analog watchdog enable on regular channels" start="23" size="1" />
      <BitField name="JAWDEN" description="Analog watchdog enable on injected channels" start="22" size="1" />
      <BitField name="DUALMOD" description="Dual mode selection" start="16" size="4" />
      <BitField name="DISCNUM" description="Discontinuous mode channel count" start="13" size="3" />
      <BitField name="JDISCEN" description="Discontinuous mode on injected channels" start="12" size="1" />
      <BitField name="DISCEN" description="Discontinuous mode on regular channels" start="11" size="1" />
      <BitField name="JAUTO" description="Automatic injected group conversion" start="10" size="1" />
      <BitField name="AWDSGL" description="Enable the watchdog on a single channel in scan mode" start="9" size="1" />
      <BitField name="SCAN" description="Scan mode" start="8" size="1" />
      <BitField name="JEOCIE" description="Interrupt enable for injected channels" start="7" size="1" />
      <BitField name="AWDIE" description="Analog watchdog interrupt enable" start="6" size="1" />
      <BitField name="EOCIE" description="Interrupt enable for EOC" start="5" size="1" />
      <BitField name="AWDCH" description="Analog watchdog channel select bits" start="0" size="5" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TSVREFE" description="Temperature sensor and VREFINT enable" start="23" size="1" />
      <BitField name="SWSTART" description="Start conversion of regular channels" start="22" size="1" />
      <BitField name="JSWSTART" description="Start conversion of injected channels" start="21" size="1" />
      <BitField name="EXTTRIG" description="External trigger conversion mode for regular channels" start="20" size="1" />
      <BitField name="EXTSEL" description="External event select for regular group" start="17" size="3" />
      <BitField name="JEXTTRIG" description="External trigger conversion mode for injected channels" start="15" size="1" />
      <BitField name="JEXTSEL" description="External event select for injected group" start="12" size="3" />
      <BitField name="ALIGN" description="Data alignment" start="11" size="1" />
      <BitField name="DMA" description="Direct memory access mode" start="8" size="1" />
      <BitField name="RSTCAL" description="Reset calibration" start="3" size="1" />
      <BitField name="CAL" description="A/D calibration" start="2" size="1" />
      <BitField name="CONT" description="Continuous conversion" start="1" size="1" />
      <BitField name="ADON" description="A/D converter ON / OFF" start="0" size="1" />
    </Register>
    <Register name="SMPR1" description="sample time register 1" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SMP10" description="Channel 10 sample time selection" start="0" size="3" />
      <BitField name="SMP11" description="Channel 11 sample time selection" start="3" size="3" />
      <BitField name="SMP12" description="Channel 12 sample time selection" start="6" size="3" />
      <BitField name="SMP13" description="Channel 13 sample time selection" start="9" size="3" />
      <BitField name="SMP14" description="Channel 14 sample time selection" start="12" size="3" />
      <BitField name="SMP15" description="Channel 15 sample time selection" start="15" size="3" />
      <BitField name="SMP16" description="Channel 16 sample time selection" start="18" size="3" />
      <BitField name="SMP17" description="Channel 17 sample time selection" start="21" size="3" />
    </Register>
    <Register name="SMPR2" description="sample time register 2" start="+0x10" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SMP0" description="Channel 0 sample time selection" start="0" size="3" />
      <BitField name="SMP1" description="Channel 1 sample time selection" start="3" size="3" />
      <BitField name="SMP2" description="Channel 2 sample time selection" start="6" size="3" />
      <BitField name="SMP3" description="Channel 3 sample time selection" start="9" size="3" />
      <BitField name="SMP4" description="Channel 4 sample time selection" start="12" size="3" />
      <BitField name="SMP5" description="Channel 5 sample time selection" start="15" size="3" />
      <BitField name="SMP6" description="Channel 6 sample time selection" start="18" size="3" />
      <BitField name="SMP7" description="Channel 7 sample time selection" start="21" size="3" />
      <BitField name="SMP8" description="Channel 8 sample time selection" start="24" size="3" />
      <BitField name="SMP9" description="Channel 9 sample time selection" start="27" size="3" />
    </Register>
    <Register name="JOFR1" description="injected channel data offset register x" start="+0x14" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JOFFSET1" description="Data offset for injected channel x" start="0" size="12" />
    </Register>
    <Register name="JOFR2" description="injected channel data offset register x" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JOFFSET2" description="Data offset for injected channel x" start="0" size="12" />
    </Register>
    <Register name="JOFR3" description="injected channel data offset register x" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JOFFSET3" description="Data offset for injected channel x" start="0" size="12" />
    </Register>
    <Register name="JOFR4" description="injected channel data offset register x" start="+0x20" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JOFFSET4" description="Data offset for injected channel x" start="0" size="12" />
    </Register>
    <Register name="HTR" description="watchdog higher threshold register" start="+0x24" size="4" access="Read/Write" reset_value="0x00000FFF" reset_mask="0xFFFFFFFF">
      <BitField name="HT" description="Analog watchdog higher threshold" start="0" size="12" />
    </Register>
    <Register name="LTR" description="watchdog lower threshold register" start="+0x28" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LT" description="Analog watchdog lower threshold" start="0" size="12" />
    </Register>
    <Register name="SQR1" description="regular sequence register 1" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="L" description="Regular channel sequence length" start="20" size="4" />
      <BitField name="SQ16" description="16th conversion in regular sequence" start="15" size="5" />
      <BitField name="SQ15" description="15th conversion in regular sequence" start="10" size="5" />
      <BitField name="SQ14" description="14th conversion in regular sequence" start="5" size="5" />
      <BitField name="SQ13" description="13th conversion in regular sequence" start="0" size="5" />
    </Register>
    <Register name="SQR2" description="regular sequence register 2" start="+0x30" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SQ12" description="12th conversion in regular sequence" start="25" size="5" />
      <BitField name="SQ11" description="11th conversion in regular sequence" start="20" size="5" />
      <BitField name="SQ10" description="10th conversion in regular sequence" start="15" size="5" />
      <BitField name="SQ9" description="9th conversion in regular sequence" start="10" size="5" />
      <BitField name="SQ8" description="8th conversion in regular sequence" start="5" size="5" />
      <BitField name="SQ7" description="7th conversion in regular sequence" start="0" size="5" />
    </Register>
    <Register name="SQR3" description="regular sequence register 3" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SQ6" description="6th conversion in regular sequence" start="25" size="5" />
      <BitField name="SQ5" description="5th conversion in regular sequence" start="20" size="5" />
      <BitField name="SQ4" description="4th conversion in regular sequence" start="15" size="5" />
      <BitField name="SQ3" description="3rd conversion in regular sequence" start="10" size="5" />
      <BitField name="SQ2" description="2nd conversion in regular sequence" start="5" size="5" />
      <BitField name="SQ1" description="1st conversion in regular sequence" start="0" size="5" />
    </Register>
    <Register name="JSQR" description="injected sequence register" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JL" description="Injected sequence length" start="20" size="2" />
      <BitField name="JSQ4" description="4th conversion in injected sequence" start="15" size="5" />
      <BitField name="JSQ3" description="3rd conversion in injected sequence" start="10" size="5" />
      <BitField name="JSQ2" description="2nd conversion in injected sequence" start="5" size="5" />
      <BitField name="JSQ1" description="1st conversion in injected sequence" start="0" size="5" />
    </Register>
    <Register name="JDR1" description="injected data register x" start="+0x3C" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JDATA" description="Injected data" start="0" size="16" />
    </Register>
    <Register name="JDR2" description="injected data register x" start="+0x40" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JDATA" description="Injected data" start="0" size="16" />
    </Register>
    <Register name="JDR3" description="injected data register x" start="+0x44" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JDATA" description="Injected data" start="0" size="16" />
    </Register>
    <Register name="JDR4" description="injected data register x" start="+0x48" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JDATA" description="Injected data" start="0" size="16" />
    </Register>
    <Register name="DR" description="regular data register" start="+0x4C" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATA" description="Regular data" start="0" size="16" />
      <BitField name="ADC2DATA" description="ADC2 data" start="16" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="ADC2" description="Analog to digital converter" start="0x40012800">
    <Register name="SR" description="status register" start="+0x0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="STRT" description="Regular channel start flag" start="4" size="1" />
      <BitField name="JSTRT" description="Injected channel start flag" start="3" size="1" />
      <BitField name="JEOC" description="Injected channel end of conversion" start="2" size="1" />
      <BitField name="EOC" description="Regular channel end of conversion" start="1" size="1" />
      <BitField name="AWD" description="Analog watchdog flag" start="0" size="1" />
    </Register>
    <Register name="CR1" description="control register 1" start="+0x4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="AWDEN" description="Analog watchdog enable on regular channels" start="23" size="1" />
      <BitField name="JAWDEN" description="Analog watchdog enable on injected channels" start="22" size="1" />
      <BitField name="DISCNUM" description="Discontinuous mode channel count" start="13" size="3" />
      <BitField name="JDISCEN" description="Discontinuous mode on injected channels" start="12" size="1" />
      <BitField name="DISCEN" description="Discontinuous mode on regular channels" start="11" size="1" />
      <BitField name="JAUTO" description="Automatic injected group conversion" start="10" size="1" />
      <BitField name="AWDSGL" description="Enable the watchdog on a single channel in scan mode" start="9" size="1" />
      <BitField name="SCAN" description="Scan mode" start="8" size="1" />
      <BitField name="JEOCIE" description="Interrupt enable for injected channels" start="7" size="1" />
      <BitField name="AWDIE" description="Analog watchdog interrupt enable" start="6" size="1" />
      <BitField name="EOCIE" description="Interrupt enable for EOC" start="5" size="1" />
      <BitField name="AWDCH" description="Analog watchdog channel select bits" start="0" size="5" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TSVREFE" description="Temperature sensor and VREFINT enable" start="23" size="1" />
      <BitField name="SWSTART" description="Start conversion of regular channels" start="22" size="1" />
      <BitField name="JSWSTART" description="Start conversion of injected channels" start="21" size="1" />
      <BitField name="EXTTRIG" description="External trigger conversion mode for regular channels" start="20" size="1" />
      <BitField name="EXTSEL" description="External event select for regular group" start="17" size="3" />
      <BitField name="JEXTTRIG" description="External trigger conversion mode for injected channels" start="15" size="1" />
      <BitField name="JEXTSEL" description="External event select for injected group" start="12" size="3" />
      <BitField name="ALIGN" description="Data alignment" start="11" size="1" />
      <BitField name="DMA" description="Direct memory access mode" start="8" size="1" />
      <BitField name="RSTCAL" description="Reset calibration" start="3" size="1" />
      <BitField name="CAL" description="A/D calibration" start="2" size="1" />
      <BitField name="CONT" description="Continuous conversion" start="1" size="1" />
      <BitField name="ADON" description="A/D converter ON / OFF" start="0" size="1" />
    </Register>
    <Register name="SMPR1" description="sample time register 1" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SMP10" description="Channel 10 sample time selection" start="0" size="3" />
      <BitField name="SMP11" description="Channel 11 sample time selection" start="3" size="3" />
      <BitField name="SMP12" description="Channel 12 sample time selection" start="6" size="3" />
      <BitField name="SMP13" description="Channel 13 sample time selection" start="9" size="3" />
      <BitField name="SMP14" description="Channel 14 sample time selection" start="12" size="3" />
      <BitField name="SMP15" description="Channel 15 sample time selection" start="15" size="3" />
      <BitField name="SMP16" description="Channel 16 sample time selection" start="18" size="3" />
      <BitField name="SMP17" description="Channel 17 sample time selection" start="21" size="3" />
    </Register>
    <Register name="SMPR2" description="sample time register 2" start="+0x10" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SMP0" description="Channel 0 sample time selection" start="0" size="3" />
      <BitField name="SMP1" description="Channel 1 sample time selection" start="3" size="3" />
      <BitField name="SMP2" description="Channel 2 sample time selection" start="6" size="3" />
      <BitField name="SMP3" description="Channel 3 sample time selection" start="9" size="3" />
      <BitField name="SMP4" description="Channel 4 sample time selection" start="12" size="3" />
      <BitField name="SMP5" description="Channel 5 sample time selection" start="15" size="3" />
      <BitField name="SMP6" description="Channel 6 sample time selection" start="18" size="3" />
      <BitField name="SMP7" description="Channel 7 sample time selection" start="21" size="3" />
      <BitField name="SMP8" description="Channel 8 sample time selection" start="24" size="3" />
      <BitField name="SMP9" description="Channel 9 sample time selection" start="27" size="3" />
    </Register>
    <Register name="JOFR1" description="injected channel data offset register x" start="+0x14" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JOFFSET1" description="Data offset for injected channel x" start="0" size="12" />
    </Register>
    <Register name="JOFR2" description="injected channel data offset register x" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JOFFSET2" description="Data offset for injected channel x" start="0" size="12" />
    </Register>
    <Register name="JOFR3" description="injected channel data offset register x" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JOFFSET3" description="Data offset for injected channel x" start="0" size="12" />
    </Register>
    <Register name="JOFR4" description="injected channel data offset register x" start="+0x20" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JOFFSET4" description="Data offset for injected channel x" start="0" size="12" />
    </Register>
    <Register name="HTR" description="watchdog higher threshold register" start="+0x24" size="4" access="Read/Write" reset_value="0x00000FFF" reset_mask="0xFFFFFFFF">
      <BitField name="HT" description="Analog watchdog higher threshold" start="0" size="12" />
    </Register>
    <Register name="LTR" description="watchdog lower threshold register" start="+0x28" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LT" description="Analog watchdog lower threshold" start="0" size="12" />
    </Register>
    <Register name="SQR1" description="regular sequence register 1" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="L" description="Regular channel sequence length" start="20" size="4" />
      <BitField name="SQ16" description="16th conversion in regular sequence" start="15" size="5" />
      <BitField name="SQ15" description="15th conversion in regular sequence" start="10" size="5" />
      <BitField name="SQ14" description="14th conversion in regular sequence" start="5" size="5" />
      <BitField name="SQ13" description="13th conversion in regular sequence" start="0" size="5" />
    </Register>
    <Register name="SQR2" description="regular sequence register 2" start="+0x30" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SQ12" description="12th conversion in regular sequence" start="25" size="5" />
      <BitField name="SQ11" description="11th conversion in regular sequence" start="20" size="5" />
      <BitField name="SQ10" description="10th conversion in regular sequence" start="15" size="5" />
      <BitField name="SQ9" description="9th conversion in regular sequence" start="10" size="5" />
      <BitField name="SQ8" description="8th conversion in regular sequence" start="5" size="5" />
      <BitField name="SQ7" description="7th conversion in regular sequence" start="0" size="5" />
    </Register>
    <Register name="SQR3" description="regular sequence register 3" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SQ6" description="6th conversion in regular sequence" start="25" size="5" />
      <BitField name="SQ5" description="5th conversion in regular sequence" start="20" size="5" />
      <BitField name="SQ4" description="4th conversion in regular sequence" start="15" size="5" />
      <BitField name="SQ3" description="3rd conversion in regular sequence" start="10" size="5" />
      <BitField name="SQ2" description="2nd conversion in regular sequence" start="5" size="5" />
      <BitField name="SQ1" description="1st conversion in regular sequence" start="0" size="5" />
    </Register>
    <Register name="JSQR" description="injected sequence register" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JL" description="Injected sequence length" start="20" size="2" />
      <BitField name="JSQ4" description="4th conversion in injected sequence" start="15" size="5" />
      <BitField name="JSQ3" description="3rd conversion in injected sequence" start="10" size="5" />
      <BitField name="JSQ2" description="2nd conversion in injected sequence" start="5" size="5" />
      <BitField name="JSQ1" description="1st conversion in injected sequence" start="0" size="5" />
    </Register>
    <Register name="JDR1" description="injected data register x" start="+0x3C" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JDATA" description="Injected data" start="0" size="16" />
    </Register>
    <Register name="JDR2" description="injected data register x" start="+0x40" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JDATA" description="Injected data" start="0" size="16" />
    </Register>
    <Register name="JDR3" description="injected data register x" start="+0x44" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JDATA" description="Injected data" start="0" size="16" />
    </Register>
    <Register name="JDR4" description="injected data register x" start="+0x48" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JDATA" description="Injected data" start="0" size="16" />
    </Register>
    <Register name="DR" description="regular data register" start="+0x4C" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATA" description="Regular data" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="ADC3" description="Analog to digital converter" start="0x40013C00">
    <Register name="SR" description="status register" start="+0x0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="STRT" description="Regular channel start flag" start="4" size="1" />
      <BitField name="JSTRT" description="Injected channel start flag" start="3" size="1" />
      <BitField name="JEOC" description="Injected channel end of conversion" start="2" size="1" />
      <BitField name="EOC" description="Regular channel end of conversion" start="1" size="1" />
      <BitField name="AWD" description="Analog watchdog flag" start="0" size="1" />
    </Register>
    <Register name="CR1" description="control register 1" start="+0x4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="AWDEN" description="Analog watchdog enable on regular channels" start="23" size="1" />
      <BitField name="JAWDEN" description="Analog watchdog enable on injected channels" start="22" size="1" />
      <BitField name="DISCNUM" description="Discontinuous mode channel count" start="13" size="3" />
      <BitField name="JDISCEN" description="Discontinuous mode on injected channels" start="12" size="1" />
      <BitField name="DISCEN" description="Discontinuous mode on regular channels" start="11" size="1" />
      <BitField name="JAUTO" description="Automatic injected group conversion" start="10" size="1" />
      <BitField name="AWDSGL" description="Enable the watchdog on a single channel in scan mode" start="9" size="1" />
      <BitField name="SCAN" description="Scan mode" start="8" size="1" />
      <BitField name="JEOCIE" description="Interrupt enable for injected channels" start="7" size="1" />
      <BitField name="AWDIE" description="Analog watchdog interrupt enable" start="6" size="1" />
      <BitField name="EOCIE" description="Interrupt enable for EOC" start="5" size="1" />
      <BitField name="AWDCH" description="Analog watchdog channel select bits" start="0" size="5" />
    </Register>
    <Register name="CR2" description="control register 2" start="+0x8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TSVREFE" description="Temperature sensor and VREFINT enable" start="23" size="1" />
      <BitField name="SWSTART" description="Start conversion of regular channels" start="22" size="1" />
      <BitField name="JSWSTART" description="Start conversion of injected channels" start="21" size="1" />
      <BitField name="EXTTRIG" description="External trigger conversion mode for regular channels" start="20" size="1" />
      <BitField name="EXTSEL" description="External event select for regular group" start="17" size="3" />
      <BitField name="JEXTTRIG" description="External trigger conversion mode for injected channels" start="15" size="1" />
      <BitField name="JEXTSEL" description="External event select for injected group" start="12" size="3" />
      <BitField name="ALIGN" description="Data alignment" start="11" size="1" />
      <BitField name="DMA" description="Direct memory access mode" start="8" size="1" />
      <BitField name="RSTCAL" description="Reset calibration" start="3" size="1" />
      <BitField name="CAL" description="A/D calibration" start="2" size="1" />
      <BitField name="CONT" description="Continuous conversion" start="1" size="1" />
      <BitField name="ADON" description="A/D converter ON / OFF" start="0" size="1" />
    </Register>
    <Register name="SMPR1" description="sample time register 1" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SMP10" description="Channel 10 sample time selection" start="0" size="3" />
      <BitField name="SMP11" description="Channel 11 sample time selection" start="3" size="3" />
      <BitField name="SMP12" description="Channel 12 sample time selection" start="6" size="3" />
      <BitField name="SMP13" description="Channel 13 sample time selection" start="9" size="3" />
      <BitField name="SMP14" description="Channel 14 sample time selection" start="12" size="3" />
      <BitField name="SMP15" description="Channel 15 sample time selection" start="15" size="3" />
      <BitField name="SMP16" description="Channel 16 sample time selection" start="18" size="3" />
      <BitField name="SMP17" description="Channel 17 sample time selection" start="21" size="3" />
    </Register>
    <Register name="SMPR2" description="sample time register 2" start="+0x10" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SMP0" description="Channel 0 sample time selection" start="0" size="3" />
      <BitField name="SMP1" description="Channel 1 sample time selection" start="3" size="3" />
      <BitField name="SMP2" description="Channel 2 sample time selection" start="6" size="3" />
      <BitField name="SMP3" description="Channel 3 sample time selection" start="9" size="3" />
      <BitField name="SMP4" description="Channel 4 sample time selection" start="12" size="3" />
      <BitField name="SMP5" description="Channel 5 sample time selection" start="15" size="3" />
      <BitField name="SMP6" description="Channel 6 sample time selection" start="18" size="3" />
      <BitField name="SMP7" description="Channel 7 sample time selection" start="21" size="3" />
      <BitField name="SMP8" description="Channel 8 sample time selection" start="24" size="3" />
      <BitField name="SMP9" description="Channel 9 sample time selection" start="27" size="3" />
    </Register>
    <Register name="JOFR1" description="injected channel data offset register x" start="+0x14" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JOFFSET1" description="Data offset for injected channel x" start="0" size="12" />
    </Register>
    <Register name="JOFR2" description="injected channel data offset register x" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JOFFSET2" description="Data offset for injected channel x" start="0" size="12" />
    </Register>
    <Register name="JOFR3" description="injected channel data offset register x" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JOFFSET3" description="Data offset for injected channel x" start="0" size="12" />
    </Register>
    <Register name="JOFR4" description="injected channel data offset register x" start="+0x20" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JOFFSET4" description="Data offset for injected channel x" start="0" size="12" />
    </Register>
    <Register name="HTR" description="watchdog higher threshold register" start="+0x24" size="4" access="Read/Write" reset_value="0x00000FFF" reset_mask="0xFFFFFFFF">
      <BitField name="HT" description="Analog watchdog higher threshold" start="0" size="12" />
    </Register>
    <Register name="LTR" description="watchdog lower threshold register" start="+0x28" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LT" description="Analog watchdog lower threshold" start="0" size="12" />
    </Register>
    <Register name="SQR1" description="regular sequence register 1" start="+0x2C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="L" description="Regular channel sequence length" start="20" size="4" />
      <BitField name="SQ16" description="16th conversion in regular sequence" start="15" size="5" />
      <BitField name="SQ15" description="15th conversion in regular sequence" start="10" size="5" />
      <BitField name="SQ14" description="14th conversion in regular sequence" start="5" size="5" />
      <BitField name="SQ13" description="13th conversion in regular sequence" start="0" size="5" />
    </Register>
    <Register name="SQR2" description="regular sequence register 2" start="+0x30" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SQ12" description="12th conversion in regular sequence" start="25" size="5" />
      <BitField name="SQ11" description="11th conversion in regular sequence" start="20" size="5" />
      <BitField name="SQ10" description="10th conversion in regular sequence" start="15" size="5" />
      <BitField name="SQ9" description="9th conversion in regular sequence" start="10" size="5" />
      <BitField name="SQ8" description="8th conversion in regular sequence" start="5" size="5" />
      <BitField name="SQ7" description="7th conversion in regular sequence" start="0" size="5" />
    </Register>
    <Register name="SQR3" description="regular sequence register 3" start="+0x34" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SQ6" description="6th conversion in regular sequence" start="25" size="5" />
      <BitField name="SQ5" description="5th conversion in regular sequence" start="20" size="5" />
      <BitField name="SQ4" description="4th conversion in regular sequence" start="15" size="5" />
      <BitField name="SQ3" description="3rd conversion in regular sequence" start="10" size="5" />
      <BitField name="SQ2" description="2nd conversion in regular sequence" start="5" size="5" />
      <BitField name="SQ1" description="1st conversion in regular sequence" start="0" size="5" />
    </Register>
    <Register name="JSQR" description="injected sequence register" start="+0x38" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JL" description="Injected sequence length" start="20" size="2" />
      <BitField name="JSQ4" description="4th conversion in injected sequence" start="15" size="5" />
      <BitField name="JSQ3" description="3rd conversion in injected sequence" start="10" size="5" />
      <BitField name="JSQ2" description="2nd conversion in injected sequence" start="5" size="5" />
      <BitField name="JSQ1" description="1st conversion in injected sequence" start="0" size="5" />
    </Register>
    <Register name="JDR1" description="injected data register x" start="+0x3C" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JDATA" description="Injected data" start="0" size="16" />
    </Register>
    <Register name="JDR2" description="injected data register x" start="+0x40" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JDATA" description="Injected data" start="0" size="16" />
    </Register>
    <Register name="JDR3" description="injected data register x" start="+0x44" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JDATA" description="Injected data" start="0" size="16" />
    </Register>
    <Register name="JDR4" description="injected data register x" start="+0x48" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="JDATA" description="Injected data" start="0" size="16" />
    </Register>
    <Register name="DR" description="regular data register" start="+0x4C" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATA" description="Regular data" start="0" size="16" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="CAN" description="Controller area network" start="0x40006400">
    <Register name="CAN_MCR" description="CAN_MCR" start="+0x0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DBF" description="DBF" start="16" size="1" />
      <BitField name="RESET" description="RESET" start="15" size="1" />
      <BitField name="TTCM" description="TTCM" start="7" size="1" />
      <BitField name="ABOM" description="ABOM" start="6" size="1" />
      <BitField name="AWUM" description="AWUM" start="5" size="1" />
      <BitField name="NART" description="NART" start="4" size="1" />
      <BitField name="RFLM" description="RFLM" start="3" size="1" />
      <BitField name="TXFP" description="TXFP" start="2" size="1" />
      <BitField name="SLEEP" description="SLEEP" start="1" size="1" />
      <BitField name="INRQ" description="INRQ" start="0" size="1" />
    </Register>
    <Register name="CAN_MSR" description="CAN_MSR" start="+0x4" size="4" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="RX" description="RX" start="11" size="1" access="ReadOnly" />
      <BitField name="SAMP" description="SAMP" start="10" size="1" access="ReadOnly" />
      <BitField name="RXM" description="RXM" start="9" size="1" access="ReadOnly" />
      <BitField name="TXM" description="TXM" start="8" size="1" access="ReadOnly" />
      <BitField name="SLAKI" description="SLAKI" start="4" size="1" access="Read/Write" />
      <BitField name="WKUI" description="WKUI" start="3" size="1" access="Read/Write" />
      <BitField name="ERRI" description="ERRI" start="2" size="1" access="Read/Write" />
      <BitField name="SLAK" description="SLAK" start="1" size="1" access="ReadOnly" />
      <BitField name="INAK" description="INAK" start="0" size="1" access="ReadOnly" />
    </Register>
    <Register name="CAN_TSR" description="CAN_TSR" start="+0x8" size="4" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="LOW2" description="Lowest priority flag for mailbox 2" start="31" size="1" access="ReadOnly" />
      <BitField name="LOW1" description="Lowest priority flag for mailbox 1" start="30" size="1" access="ReadOnly" />
      <BitField name="LOW0" description="Lowest priority flag for mailbox 0" start="29" size="1" access="ReadOnly" />
      <BitField name="TME2" description="Lowest priority flag for mailbox 2" start="28" size="1" access="ReadOnly" />
      <BitField name="TME1" description="Lowest priority flag for mailbox 1" start="27" size="1" access="ReadOnly" />
      <BitField name="TME0" description="Lowest priority flag for mailbox 0" start="26" size="1" access="ReadOnly" />
      <BitField name="CODE" description="CODE" start="24" size="2" access="ReadOnly" />
      <BitField name="ABRQ2" description="ABRQ2" start="23" size="1" access="Read/Write" />
      <BitField name="TERR2" description="TERR2" start="19" size="1" access="Read/Write" />
      <BitField name="ALST2" description="ALST2" start="18" size="1" access="Read/Write" />
      <BitField name="TXOK2" description="TXOK2" start="17" size="1" access="Read/Write" />
      <BitField name="RQCP2" description="RQCP2" start="16" size="1" access="Read/Write" />
      <BitField name="ABRQ1" description="ABRQ1" start="15" size="1" access="Read/Write" />
      <BitField name="TERR1" description="TERR1" start="11" size="1" access="Read/Write" />
      <BitField name="ALST1" description="ALST1" start="10" size="1" access="Read/Write" />
      <BitField name="TXOK1" description="TXOK1" start="9" size="1" access="Read/Write" />
      <BitField name="RQCP1" description="RQCP1" start="8" size="1" access="Read/Write" />
      <BitField name="ABRQ0" description="ABRQ0" start="7" size="1" access="Read/Write" />
      <BitField name="TERR0" description="TERR0" start="3" size="1" access="Read/Write" />
      <BitField name="ALST0" description="ALST0" start="2" size="1" access="Read/Write" />
      <BitField name="TXOK0" description="TXOK0" start="1" size="1" access="Read/Write" />
      <BitField name="RQCP0" description="RQCP0" start="0" size="1" access="Read/Write" />
    </Register>
    <Register name="CAN_RF0R" description="CAN_RF0R" start="+0xC" size="4" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="RFOM0" description="RFOM0" start="5" size="1" access="Read/Write" />
      <BitField name="FOVR0" description="FOVR0" start="4" size="1" access="Read/Write" />
      <BitField name="FULL0" description="FULL0" start="3" size="1" access="Read/Write" />
      <BitField name="FMP0" description="FMP0" start="0" size="2" access="ReadOnly" />
    </Register>
    <Register name="CAN_RF1R" description="CAN_RF1R" start="+0x10" size="4" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="RFOM1" description="RFOM1" start="5" size="1" access="Read/Write" />
      <BitField name="FOVR1" description="FOVR1" start="4" size="1" access="Read/Write" />
      <BitField name="FULL1" description="FULL1" start="3" size="1" access="Read/Write" />
      <BitField name="FMP1" description="FMP1" start="0" size="2" access="ReadOnly" />
    </Register>
    <Register name="CAN_IER" description="CAN_IER" start="+0x14" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SLKIE" description="SLKIE" start="17" size="1" />
      <BitField name="WKUIE" description="WKUIE" start="16" size="1" />
      <BitField name="ERRIE" description="ERRIE" start="15" size="1" />
      <BitField name="LECIE" description="LECIE" start="11" size="1" />
      <BitField name="BOFIE" description="BOFIE" start="10" size="1" />
      <BitField name="EPVIE" description="EPVIE" start="9" size="1" />
      <BitField name="EWGIE" description="EWGIE" start="8" size="1" />
      <BitField name="FOVIE1" description="FOVIE1" start="6" size="1" />
      <BitField name="FFIE1" description="FFIE1" start="5" size="1" />
      <BitField name="FMPIE1" description="FMPIE1" start="4" size="1" />
      <BitField name="FOVIE0" description="FOVIE0" start="3" size="1" />
      <BitField name="FFIE0" description="FFIE0" start="2" size="1" />
      <BitField name="FMPIE0" description="FMPIE0" start="1" size="1" />
      <BitField name="TMEIE" description="TMEIE" start="0" size="1" />
    </Register>
    <Register name="CAN_ESR" description="CAN_ESR" start="+0x18" size="4" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="REC" description="REC" start="24" size="8" access="ReadOnly" />
      <BitField name="TEC" description="TEC" start="16" size="8" access="ReadOnly" />
      <BitField name="LEC" description="LEC" start="4" size="3" access="Read/Write" />
      <BitField name="BOFF" description="BOFF" start="2" size="1" access="ReadOnly" />
      <BitField name="EPVF" description="EPVF" start="1" size="1" access="ReadOnly" />
      <BitField name="EWGF" description="EWGF" start="0" size="1" access="ReadOnly" />
    </Register>
    <Register name="CAN_BTR" description="CAN_BTR" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SILM" description="SILM" start="31" size="1" />
      <BitField name="LBKM" description="LBKM" start="30" size="1" />
      <BitField name="SJW" description="SJW" start="24" size="2" />
      <BitField name="TS2" description="TS2" start="20" size="3" />
      <BitField name="TS1" description="TS1" start="16" size="4" />
      <BitField name="BRP" description="BRP" start="0" size="10" />
    </Register>
    <Register name="CAN_TI0R" description="CAN_TI0R" start="+0x180" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="STID" description="STID" start="21" size="11" />
      <BitField name="EXID" description="EXID" start="3" size="18" />
      <BitField name="IDE" description="IDE" start="2" size="1" />
      <BitField name="RTR" description="RTR" start="1" size="1" />
      <BitField name="TXRQ" description="TXRQ" start="0" size="1" />
    </Register>
    <Register name="CAN_TDT0R" description="CAN_TDT0R" start="+0x184" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TIME" description="TIME" start="16" size="16" />
      <BitField name="TGT" description="TGT" start="8" size="1" />
      <BitField name="DLC" description="DLC" start="0" size="4" />
    </Register>
    <Register name="CAN_TDL0R" description="CAN_TDL0R" start="+0x188" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATA3" description="DATA3" start="24" size="8" />
      <BitField name="DATA2" description="DATA2" start="16" size="8" />
      <BitField name="DATA1" description="DATA1" start="8" size="8" />
      <BitField name="DATA0" description="DATA0" start="0" size="8" />
    </Register>
    <Register name="CAN_TDH0R" description="CAN_TDH0R" start="+0x18C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATA7" description="DATA7" start="24" size="8" />
      <BitField name="DATA6" description="DATA6" start="16" size="8" />
      <BitField name="DATA5" description="DATA5" start="8" size="8" />
      <BitField name="DATA4" description="DATA4" start="0" size="8" />
    </Register>
    <Register name="CAN_TI1R" description="CAN_TI1R" start="+0x190" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="STID" description="STID" start="21" size="11" />
      <BitField name="EXID" description="EXID" start="3" size="18" />
      <BitField name="IDE" description="IDE" start="2" size="1" />
      <BitField name="RTR" description="RTR" start="1" size="1" />
      <BitField name="TXRQ" description="TXRQ" start="0" size="1" />
    </Register>
    <Register name="CAN_TDT1R" description="CAN_TDT1R" start="+0x194" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TIME" description="TIME" start="16" size="16" />
      <BitField name="TGT" description="TGT" start="8" size="1" />
      <BitField name="DLC" description="DLC" start="0" size="4" />
    </Register>
    <Register name="CAN_TDL1R" description="CAN_TDL1R" start="+0x198" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATA3" description="DATA3" start="24" size="8" />
      <BitField name="DATA2" description="DATA2" start="16" size="8" />
      <BitField name="DATA1" description="DATA1" start="8" size="8" />
      <BitField name="DATA0" description="DATA0" start="0" size="8" />
    </Register>
    <Register name="CAN_TDH1R" description="CAN_TDH1R" start="+0x19C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATA7" description="DATA7" start="24" size="8" />
      <BitField name="DATA6" description="DATA6" start="16" size="8" />
      <BitField name="DATA5" description="DATA5" start="8" size="8" />
      <BitField name="DATA4" description="DATA4" start="0" size="8" />
    </Register>
    <Register name="CAN_TI2R" description="CAN_TI2R" start="+0x1A0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="STID" description="STID" start="21" size="11" />
      <BitField name="EXID" description="EXID" start="3" size="18" />
      <BitField name="IDE" description="IDE" start="2" size="1" />
      <BitField name="RTR" description="RTR" start="1" size="1" />
      <BitField name="TXRQ" description="TXRQ" start="0" size="1" />
    </Register>
    <Register name="CAN_TDT2R" description="CAN_TDT2R" start="+0x1A4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TIME" description="TIME" start="16" size="16" />
      <BitField name="TGT" description="TGT" start="8" size="1" />
      <BitField name="DLC" description="DLC" start="0" size="4" />
    </Register>
    <Register name="CAN_TDL2R" description="CAN_TDL2R" start="+0x1A8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATA3" description="DATA3" start="24" size="8" />
      <BitField name="DATA2" description="DATA2" start="16" size="8" />
      <BitField name="DATA1" description="DATA1" start="8" size="8" />
      <BitField name="DATA0" description="DATA0" start="0" size="8" />
    </Register>
    <Register name="CAN_TDH2R" description="CAN_TDH2R" start="+0x1AC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATA7" description="DATA7" start="24" size="8" />
      <BitField name="DATA6" description="DATA6" start="16" size="8" />
      <BitField name="DATA5" description="DATA5" start="8" size="8" />
      <BitField name="DATA4" description="DATA4" start="0" size="8" />
    </Register>
    <Register name="CAN_RI0R" description="CAN_RI0R" start="+0x1B0" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="STID" description="STID" start="21" size="11" />
      <BitField name="EXID" description="EXID" start="3" size="18" />
      <BitField name="IDE" description="IDE" start="2" size="1" />
      <BitField name="RTR" description="RTR" start="1" size="1" />
    </Register>
    <Register name="CAN_RDT0R" description="CAN_RDT0R" start="+0x1B4" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TIME" description="TIME" start="16" size="16" />
      <BitField name="FMI" description="FMI" start="8" size="8" />
      <BitField name="DLC" description="DLC" start="0" size="4" />
    </Register>
    <Register name="CAN_RDL0R" description="CAN_RDL0R" start="+0x1B8" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATA3" description="DATA3" start="24" size="8" />
      <BitField name="DATA2" description="DATA2" start="16" size="8" />
      <BitField name="DATA1" description="DATA1" start="8" size="8" />
      <BitField name="DATA0" description="DATA0" start="0" size="8" />
    </Register>
    <Register name="CAN_RDH0R" description="CAN_RDH0R" start="+0x1BC" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATA7" description="DATA7" start="24" size="8" />
      <BitField name="DATA6" description="DATA6" start="16" size="8" />
      <BitField name="DATA5" description="DATA5" start="8" size="8" />
      <BitField name="DATA4" description="DATA4" start="0" size="8" />
    </Register>
    <Register name="CAN_RI1R" description="CAN_RI1R" start="+0x1C0" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="STID" description="STID" start="21" size="11" />
      <BitField name="EXID" description="EXID" start="3" size="18" />
      <BitField name="IDE" description="IDE" start="2" size="1" />
      <BitField name="RTR" description="RTR" start="1" size="1" />
    </Register>
    <Register name="CAN_RDT1R" description="CAN_RDT1R" start="+0x1C4" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="TIME" description="TIME" start="16" size="16" />
      <BitField name="FMI" description="FMI" start="8" size="8" />
      <BitField name="DLC" description="DLC" start="0" size="4" />
    </Register>
    <Register name="CAN_RDL1R" description="CAN_RDL1R" start="+0x1C8" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATA3" description="DATA3" start="24" size="8" />
      <BitField name="DATA2" description="DATA2" start="16" size="8" />
      <BitField name="DATA1" description="DATA1" start="8" size="8" />
      <BitField name="DATA0" description="DATA0" start="0" size="8" />
    </Register>
    <Register name="CAN_RDH1R" description="CAN_RDH1R" start="+0x1CC" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DATA7" description="DATA7" start="24" size="8" />
      <BitField name="DATA6" description="DATA6" start="16" size="8" />
      <BitField name="DATA5" description="DATA5" start="8" size="8" />
      <BitField name="DATA4" description="DATA4" start="0" size="8" />
    </Register>
    <Register name="CAN_FMR" description="CAN_FMR" start="+0x200" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FINIT" description="FINIT" start="0" size="1" />
    </Register>
    <Register name="CAN_FM1R" description="CAN_FM1R" start="+0x204" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FBM0" description="Filter mode" start="0" size="1" />
      <BitField name="FBM1" description="Filter mode" start="1" size="1" />
      <BitField name="FBM2" description="Filter mode" start="2" size="1" />
      <BitField name="FBM3" description="Filter mode" start="3" size="1" />
      <BitField name="FBM4" description="Filter mode" start="4" size="1" />
      <BitField name="FBM5" description="Filter mode" start="5" size="1" />
      <BitField name="FBM6" description="Filter mode" start="6" size="1" />
      <BitField name="FBM7" description="Filter mode" start="7" size="1" />
      <BitField name="FBM8" description="Filter mode" start="8" size="1" />
      <BitField name="FBM9" description="Filter mode" start="9" size="1" />
      <BitField name="FBM10" description="Filter mode" start="10" size="1" />
      <BitField name="FBM11" description="Filter mode" start="11" size="1" />
      <BitField name="FBM12" description="Filter mode" start="12" size="1" />
      <BitField name="FBM13" description="Filter mode" start="13" size="1" />
    </Register>
    <Register name="CAN_FS1R" description="CAN_FS1R" start="+0x20C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FSC0" description="Filter scale configuration" start="0" size="1" />
      <BitField name="FSC1" description="Filter scale configuration" start="1" size="1" />
      <BitField name="FSC2" description="Filter scale configuration" start="2" size="1" />
      <BitField name="FSC3" description="Filter scale configuration" start="3" size="1" />
      <BitField name="FSC4" description="Filter scale configuration" start="4" size="1" />
      <BitField name="FSC5" description="Filter scale configuration" start="5" size="1" />
      <BitField name="FSC6" description="Filter scale configuration" start="6" size="1" />
      <BitField name="FSC7" description="Filter scale configuration" start="7" size="1" />
      <BitField name="FSC8" description="Filter scale configuration" start="8" size="1" />
      <BitField name="FSC9" description="Filter scale configuration" start="9" size="1" />
      <BitField name="FSC10" description="Filter scale configuration" start="10" size="1" />
      <BitField name="FSC11" description="Filter scale configuration" start="11" size="1" />
      <BitField name="FSC12" description="Filter scale configuration" start="12" size="1" />
      <BitField name="FSC13" description="Filter scale configuration" start="13" size="1" />
    </Register>
    <Register name="CAN_FFA1R" description="CAN_FFA1R" start="+0x214" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FFA0" description="Filter FIFO assignment for filter 0" start="0" size="1" />
      <BitField name="FFA1" description="Filter FIFO assignment for filter 1" start="1" size="1" />
      <BitField name="FFA2" description="Filter FIFO assignment for filter 2" start="2" size="1" />
      <BitField name="FFA3" description="Filter FIFO assignment for filter 3" start="3" size="1" />
      <BitField name="FFA4" description="Filter FIFO assignment for filter 4" start="4" size="1" />
      <BitField name="FFA5" description="Filter FIFO assignment for filter 5" start="5" size="1" />
      <BitField name="FFA6" description="Filter FIFO assignment for filter 6" start="6" size="1" />
      <BitField name="FFA7" description="Filter FIFO assignment for filter 7" start="7" size="1" />
      <BitField name="FFA8" description="Filter FIFO assignment for filter 8" start="8" size="1" />
      <BitField name="FFA9" description="Filter FIFO assignment for filter 9" start="9" size="1" />
      <BitField name="FFA10" description="Filter FIFO assignment for filter 10" start="10" size="1" />
      <BitField name="FFA11" description="Filter FIFO assignment for filter 11" start="11" size="1" />
      <BitField name="FFA12" description="Filter FIFO assignment for filter 12" start="12" size="1" />
      <BitField name="FFA13" description="Filter FIFO assignment for filter 13" start="13" size="1" />
    </Register>
    <Register name="CAN_FA1R" description="CAN_FA1R" start="+0x21C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FACT0" description="Filter active" start="0" size="1" />
      <BitField name="FACT1" description="Filter active" start="1" size="1" />
      <BitField name="FACT2" description="Filter active" start="2" size="1" />
      <BitField name="FACT3" description="Filter active" start="3" size="1" />
      <BitField name="FACT4" description="Filter active" start="4" size="1" />
      <BitField name="FACT5" description="Filter active" start="5" size="1" />
      <BitField name="FACT6" description="Filter active" start="6" size="1" />
      <BitField name="FACT7" description="Filter active" start="7" size="1" />
      <BitField name="FACT8" description="Filter active" start="8" size="1" />
      <BitField name="FACT9" description="Filter active" start="9" size="1" />
      <BitField name="FACT10" description="Filter active" start="10" size="1" />
      <BitField name="FACT11" description="Filter active" start="11" size="1" />
      <BitField name="FACT12" description="Filter active" start="12" size="1" />
      <BitField name="FACT13" description="Filter active" start="13" size="1" />
    </Register>
    <Register name="F0R1" description="Filter bank 0 register 1" start="+0x240" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F0R2" description="Filter bank 0 register 2" start="+0x244" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F1R1" description="Filter bank 1 register 1" start="+0x248" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F1R2" description="Filter bank 1 register 2" start="+0x24C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F2R1" description="Filter bank 2 register 1" start="+0x250" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F2R2" description="Filter bank 2 register 2" start="+0x254" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F3R1" description="Filter bank 3 register 1" start="+0x258" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F3R2" description="Filter bank 3 register 2" start="+0x25C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F4R1" description="Filter bank 4 register 1" start="+0x260" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F4R2" description="Filter bank 4 register 2" start="+0x264" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F5R1" description="Filter bank 5 register 1" start="+0x268" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F5R2" description="Filter bank 5 register 2" start="+0x26C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F6R1" description="Filter bank 6 register 1" start="+0x270" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F6R2" description="Filter bank 6 register 2" start="+0x274" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F7R1" description="Filter bank 7 register 1" start="+0x278" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F7R2" description="Filter bank 7 register 2" start="+0x27C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F8R1" description="Filter bank 8 register 1" start="+0x280" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F8R2" description="Filter bank 8 register 2" start="+0x284" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F9R1" description="Filter bank 9 register 1" start="+0x288" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F9R2" description="Filter bank 9 register 2" start="+0x28C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F10R1" description="Filter bank 10 register 1" start="+0x290" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F10R2" description="Filter bank 10 register 2" start="+0x294" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F11R1" description="Filter bank 11 register 1" start="+0x298" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F11R2" description="Filter bank 11 register 2" start="+0x29C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F12R1" description="Filter bank 4 register 1" start="+0x2A0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F12R2" description="Filter bank 12 register 2" start="+0x2A4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F13R1" description="Filter bank 13 register 1" start="+0x2A8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
    <Register name="F13R2" description="Filter bank 13 register 2" start="+0x2AC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FB0" description="Filter bits" start="0" size="1" />
      <BitField name="FB1" description="Filter bits" start="1" size="1" />
      <BitField name="FB2" description="Filter bits" start="2" size="1" />
      <BitField name="FB3" description="Filter bits" start="3" size="1" />
      <BitField name="FB4" description="Filter bits" start="4" size="1" />
      <BitField name="FB5" description="Filter bits" start="5" size="1" />
      <BitField name="FB6" description="Filter bits" start="6" size="1" />
      <BitField name="FB7" description="Filter bits" start="7" size="1" />
      <BitField name="FB8" description="Filter bits" start="8" size="1" />
      <BitField name="FB9" description="Filter bits" start="9" size="1" />
      <BitField name="FB10" description="Filter bits" start="10" size="1" />
      <BitField name="FB11" description="Filter bits" start="11" size="1" />
      <BitField name="FB12" description="Filter bits" start="12" size="1" />
      <BitField name="FB13" description="Filter bits" start="13" size="1" />
      <BitField name="FB14" description="Filter bits" start="14" size="1" />
      <BitField name="FB15" description="Filter bits" start="15" size="1" />
      <BitField name="FB16" description="Filter bits" start="16" size="1" />
      <BitField name="FB17" description="Filter bits" start="17" size="1" />
      <BitField name="FB18" description="Filter bits" start="18" size="1" />
      <BitField name="FB19" description="Filter bits" start="19" size="1" />
      <BitField name="FB20" description="Filter bits" start="20" size="1" />
      <BitField name="FB21" description="Filter bits" start="21" size="1" />
      <BitField name="FB22" description="Filter bits" start="22" size="1" />
      <BitField name="FB23" description="Filter bits" start="23" size="1" />
      <BitField name="FB24" description="Filter bits" start="24" size="1" />
      <BitField name="FB25" description="Filter bits" start="25" size="1" />
      <BitField name="FB26" description="Filter bits" start="26" size="1" />
      <BitField name="FB27" description="Filter bits" start="27" size="1" />
      <BitField name="FB28" description="Filter bits" start="28" size="1" />
      <BitField name="FB29" description="Filter bits" start="29" size="1" />
      <BitField name="FB30" description="Filter bits" start="30" size="1" />
      <BitField name="FB31" description="Filter bits" start="31" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="DAC" description="Digital to analog converter" start="0x40007400">
    <Register name="CR" description="Control register (DAC_CR)" start="+0x0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EN1" description="DAC channel1 enable" start="0" size="1" />
      <BitField name="BOFF1" description="DAC channel1 output buffer disable" start="1" size="1" />
      <BitField name="TEN1" description="DAC channel1 trigger enable" start="2" size="1" />
      <BitField name="TSEL1" description="DAC channel1 trigger selection" start="3" size="3" />
      <BitField name="WAVE1" description="DAC channel1 noise/triangle wave generation enable" start="6" size="2" />
      <BitField name="MAMP1" description="DAC channel1 mask/amplitude selector" start="8" size="4" />
      <BitField name="DMAEN1" description="DAC channel1 DMA enable" start="12" size="1" />
      <BitField name="EN2" description="DAC channel2 enable" start="16" size="1" />
      <BitField name="BOFF2" description="DAC channel2 output buffer disable" start="17" size="1" />
      <BitField name="TEN2" description="DAC channel2 trigger enable" start="18" size="1" />
      <BitField name="TSEL2" description="DAC channel2 trigger selection" start="19" size="3" />
      <BitField name="WAVE2" description="DAC channel2 noise/triangle wave generation enable" start="22" size="2" />
      <BitField name="MAMP2" description="DAC channel2 mask/amplitude selector" start="24" size="4" />
      <BitField name="DMAEN2" description="DAC channel2 DMA enable" start="28" size="1" />
    </Register>
    <Register name="SWTRIGR" description="DAC software trigger register (DAC_SWTRIGR)" start="+0x4" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SWTRIG1" description="DAC channel1 software trigger" start="0" size="1" />
      <BitField name="SWTRIG2" description="DAC channel2 software trigger" start="1" size="1" />
    </Register>
    <Register name="DHR12R1" description="DAC channel1 12-bit right-aligned data holding register(DAC_DHR12R1)" start="+0x8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DACC1DHR" description="DAC channel1 12-bit right-aligned data" start="0" size="12" />
    </Register>
    <Register name="DHR12L1" description="DAC channel1 12-bit left aligned data holding register (DAC_DHR12L1)" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DACC1DHR" description="DAC channel1 12-bit left-aligned data" start="4" size="12" />
    </Register>
    <Register name="DHR8R1" description="DAC channel1 8-bit right aligned data holding register (DAC_DHR8R1)" start="+0x10" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DACC1DHR" description="DAC channel1 8-bit right-aligned data" start="0" size="8" />
    </Register>
    <Register name="DHR12R2" description="DAC channel2 12-bit right aligned data holding register (DAC_DHR12R2)" start="+0x14" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DACC2DHR" description="DAC channel2 12-bit right-aligned data" start="0" size="12" />
    </Register>
    <Register name="DHR12L2" description="DAC channel2 12-bit left aligned data holding register (DAC_DHR12L2)" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DACC2DHR" description="DAC channel2 12-bit left-aligned data" start="4" size="12" />
    </Register>
    <Register name="DHR8R2" description="DAC channel2 8-bit right-aligned data holding register (DAC_DHR8R2)" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DACC2DHR" description="DAC channel2 8-bit right-aligned data" start="0" size="8" />
    </Register>
    <Register name="DHR12RD" description="Dual DAC 12-bit right-aligned data holding register (DAC_DHR12RD), Bits 31:28 Reserved, Bits 15:12 Reserved" start="+0x20" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DACC1DHR" description="DAC channel1 12-bit right-aligned data" start="0" size="12" />
      <BitField name="DACC2DHR" description="DAC channel2 12-bit right-aligned data" start="16" size="12" />
    </Register>
    <Register name="DHR12LD" description="DUAL DAC 12-bit left aligned data holding register (DAC_DHR12LD), Bits 19:16 Reserved, Bits 3:0 Reserved" start="+0x24" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DACC1DHR" description="DAC channel1 12-bit left-aligned data" start="4" size="12" />
      <BitField name="DACC2DHR" description="DAC channel2 12-bit right-aligned data" start="20" size="12" />
    </Register>
    <Register name="DHR8RD" description="DUAL DAC 8-bit right aligned data holding register (DAC_DHR8RD), Bits 31:16 Reserved" start="+0x28" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DACC1DHR" description="DAC channel1 8-bit right-aligned data" start="0" size="8" />
      <BitField name="DACC2DHR" description="DAC channel2 8-bit right-aligned data" start="8" size="8" />
    </Register>
    <Register name="DOR1" description="DAC channel1 data output register (DAC_DOR1)" start="+0x2C" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DACC1DOR" description="DAC channel1 data output" start="0" size="12" />
    </Register>
    <Register name="DOR2" description="DAC channel2 data output register (DAC_DOR2)" start="+0x30" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="DACC2DOR" description="DAC channel2 data output" start="0" size="12" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="DBG" description="Debug support" start="0xE0042000">
    <Register name="IDCODE" description="DBGMCU_IDCODE" start="+0x0" size="4" access="ReadOnly" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="DEV_ID" description="DEV_ID" start="0" size="12" />
      <BitField name="REV_ID" description="REV_ID" start="16" size="16" />
    </Register>
    <Register name="CR" description="DBGMCU_CR" start="+0x4" size="4" access="Read/Write" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="DBG_SLEEP" description="DBG_SLEEP" start="0" size="1" />
      <BitField name="DBG_STOP" description="DBG_STOP" start="1" size="1" />
      <BitField name="DBG_STANDBY" description="DBG_STANDBY" start="2" size="1" />
      <BitField name="TRACE_IOEN" description="TRACE_IOEN" start="5" size="1" />
      <BitField name="TRACE_MODE" description="TRACE_MODE" start="6" size="2" />
      <BitField name="DBG_IWDG_STOP" description="DBG_IWDG_STOP" start="8" size="1" />
      <BitField name="DBG_WWDG_STOP" description="DBG_WWDG_STOP" start="9" size="1" />
      <BitField name="DBG_TIM1_STOP" description="DBG_TIM1_STOP" start="10" size="1" />
      <BitField name="DBG_TIM2_STOP" description="DBG_TIM2_STOP" start="11" size="1" />
      <BitField name="DBG_TIM3_STOP" description="DBG_TIM3_STOP" start="12" size="1" />
      <BitField name="DBG_TIM4_STOP" description="DBG_TIM4_STOP" start="13" size="1" />
      <BitField name="DBG_CAN1_STOP" description="DBG_CAN1_STOP" start="14" size="1" />
      <BitField name="DBG_I2C1_SMBUS_TIMEOUT" description="DBG_I2C1_SMBUS_TIMEOUT" start="15" size="1" />
      <BitField name="DBG_I2C2_SMBUS_TIMEOUT" description="DBG_I2C2_SMBUS_TIMEOUT" start="16" size="1" />
      <BitField name="DBG_TIM8_STOP" description="DBG_TIM8_STOP" start="17" size="1" />
      <BitField name="DBG_TIM5_STOP" description="DBG_TIM5_STOP" start="18" size="1" />
      <BitField name="DBG_TIM6_STOP" description="DBG_TIM6_STOP" start="19" size="1" />
      <BitField name="DBG_TIM7_STOP" description="DBG_TIM7_STOP" start="20" size="1" />
      <BitField name="DBG_CAN2_STOP" description="DBG_CAN2_STOP" start="21" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="UART4" description="Universal asynchronous receiver transmitter" start="0x40004C00">
    <Register name="SR" description="UART4_SR" start="+0x0" size="4" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="PE" description="Parity error" start="0" size="1" access="ReadOnly" />
      <BitField name="FE" description="Framing error" start="1" size="1" access="ReadOnly" />
      <BitField name="NE" description="Noise error flag" start="2" size="1" access="ReadOnly" />
      <BitField name="ORE" description="Overrun error" start="3" size="1" access="ReadOnly" />
      <BitField name="IDLE" description="IDLE line detected" start="4" size="1" access="ReadOnly" />
      <BitField name="RXNE" description="Read data register not empty" start="5" size="1" access="Read/Write" />
      <BitField name="TC" description="Transmission complete" start="6" size="1" access="Read/Write" />
      <BitField name="TXE" description="Transmit data register empty" start="7" size="1" access="ReadOnly" />
      <BitField name="LBD" description="LIN break detection flag" start="8" size="1" access="Read/Write" />
    </Register>
    <Register name="DR" description="UART4_DR" start="+0x4" size="4" access="Read/Write" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="DR" description="DR" start="0" size="9" />
    </Register>
    <Register name="BRR" description="UART4_BRR" start="+0x8" size="4" access="Read/Write" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="DIV_Fraction" description="DIV_Fraction" start="0" size="4" />
      <BitField name="DIV_Mantissa" description="DIV_Mantissa" start="4" size="12" />
    </Register>
    <Register name="CR1" description="UART4_CR1" start="+0xC" size="4" access="Read/Write" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="SBK" description="Send break" start="0" size="1" />
      <BitField name="RWU" description="Receiver wakeup" start="1" size="1" />
      <BitField name="RE" description="Receiver enable" start="2" size="1" />
      <BitField name="TE" description="Transmitter enable" start="3" size="1" />
      <BitField name="IDLEIE" description="IDLE interrupt enable" start="4" size="1" />
      <BitField name="RXNEIE" description="RXNE interrupt enable" start="5" size="1" />
      <BitField name="TCIE" description="Transmission complete interrupt enable" start="6" size="1" />
      <BitField name="TXEIE" description="TXE interrupt enable" start="7" size="1" />
      <BitField name="PEIE" description="PE interrupt enable" start="8" size="1" />
      <BitField name="PS" description="Parity selection" start="9" size="1" />
      <BitField name="PCE" description="Parity control enable" start="10" size="1" />
      <BitField name="WAKE" description="Wakeup method" start="11" size="1" />
      <BitField name="M" description="Word length" start="12" size="1" />
      <BitField name="UE" description="USART enable" start="13" size="1" />
    </Register>
    <Register name="CR2" description="UART4_CR2" start="+0x10" size="4" access="Read/Write" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="ADD" description="Address of the USART node" start="0" size="4" />
      <BitField name="LBDL" description="lin break detection length" start="5" size="1" />
      <BitField name="LBDIE" description="LIN break detection interrupt enable" start="6" size="1" />
      <BitField name="STOP" description="STOP bits" start="12" size="2" />
      <BitField name="LINEN" description="LIN mode enable" start="14" size="1" />
    </Register>
    <Register name="CR3" description="UART4_CR3" start="+0x14" size="4" access="Read/Write" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="EIE" description="Error interrupt enable" start="0" size="1" />
      <BitField name="IREN" description="IrDA mode enable" start="1" size="1" />
      <BitField name="IRLP" description="IrDA low-power" start="2" size="1" />
      <BitField name="HDSEL" description="Half-duplex selection" start="3" size="1" />
      <BitField name="DMAR" description="DMA enable receiver" start="6" size="1" />
      <BitField name="DMAT" description="DMA enable transmitter" start="7" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="UART5" description="Universal asynchronous receiver transmitter" start="0x40005000">
    <Register name="SR" description="UART4_SR" start="+0x0" size="4" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="PE" description="PE" start="0" size="1" access="ReadOnly" />
      <BitField name="FE" description="FE" start="1" size="1" access="ReadOnly" />
      <BitField name="NE" description="NE" start="2" size="1" access="ReadOnly" />
      <BitField name="ORE" description="ORE" start="3" size="1" access="ReadOnly" />
      <BitField name="IDLE" description="IDLE" start="4" size="1" access="ReadOnly" />
      <BitField name="RXNE" description="RXNE" start="5" size="1" access="Read/Write" />
      <BitField name="TC" description="TC" start="6" size="1" access="Read/Write" />
      <BitField name="TXE" description="TXE" start="7" size="1" access="ReadOnly" />
      <BitField name="LBD" description="LBD" start="8" size="1" access="Read/Write" />
    </Register>
    <Register name="DR" description="UART4_DR" start="+0x4" size="4" access="Read/Write" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="DR" description="DR" start="0" size="9" />
    </Register>
    <Register name="BRR" description="UART4_BRR" start="+0x8" size="4" access="Read/Write" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="DIV_Fraction" description="DIV_Fraction" start="0" size="4" />
      <BitField name="DIV_Mantissa" description="DIV_Mantissa" start="4" size="12" />
    </Register>
    <Register name="CR1" description="UART4_CR1" start="+0xC" size="4" access="Read/Write" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="SBK" description="SBK" start="0" size="1" />
      <BitField name="RWU" description="RWU" start="1" size="1" />
      <BitField name="RE" description="RE" start="2" size="1" />
      <BitField name="TE" description="TE" start="3" size="1" />
      <BitField name="IDLEIE" description="IDLEIE" start="4" size="1" />
      <BitField name="RXNEIE" description="RXNEIE" start="5" size="1" />
      <BitField name="TCIE" description="TCIE" start="6" size="1" />
      <BitField name="TXEIE" description="TXEIE" start="7" size="1" />
      <BitField name="PEIE" description="PEIE" start="8" size="1" />
      <BitField name="PS" description="PS" start="9" size="1" />
      <BitField name="PCE" description="PCE" start="10" size="1" />
      <BitField name="WAKE" description="WAKE" start="11" size="1" />
      <BitField name="M" description="M" start="12" size="1" />
      <BitField name="UE" description="UE" start="13" size="1" />
    </Register>
    <Register name="CR2" description="UART4_CR2" start="+0x10" size="4" access="Read/Write" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="ADD" description="ADD" start="0" size="4" />
      <BitField name="LBDL" description="LBDL" start="5" size="1" />
      <BitField name="LBDIE" description="LBDIE" start="6" size="1" />
      <BitField name="STOP" description="STOP" start="12" size="2" />
      <BitField name="LINEN" description="LINEN" start="14" size="1" />
    </Register>
    <Register name="CR3" description="UART4_CR3" start="+0x14" size="4" access="Read/Write" reset_value="0x0" reset_mask="0xFFFFFFFF">
      <BitField name="EIE" description="Error interrupt enable" start="0" size="1" />
      <BitField name="IREN" description="IrDA mode enable" start="1" size="1" />
      <BitField name="IRLP" description="IrDA low-power" start="2" size="1" />
      <BitField name="HDSEL" description="Half-duplex selection" start="3" size="1" />
      <BitField name="DMAT" description="DMA enable transmitter" start="7" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="CRC" description="CRC calculation unit" start="0x40023000">
    <Register name="DR" description="Data register" start="+0x0" size="4" access="Read/Write" reset_value="0xFFFFFFFF" reset_mask="0xFFFFFFFF">
      <BitField name="DR" description="Data Register" start="0" size="32" />
    </Register>
    <Register name="IDR" description="Independent Data register" start="+0x4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IDR" description="Independent Data register" start="0" size="8" />
    </Register>
    <Register name="CR" description="Control register" start="+0x8" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="RESET" description="Reset bit" start="0" size="1" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="FLASH" description="FLASH" start="0x40022000">
    <Register name="ACR" description="Flash access control register" start="+0x0" size="4" reset_value="0x00000030" reset_mask="0xFFFFFFFF">
      <BitField name="LATENCY" description="Latency" start="0" size="3" access="Read/Write" />
      <BitField name="HLFCYA" description="Flash half cycle access enable" start="3" size="1" access="Read/Write" />
      <BitField name="PRFTBE" description="Prefetch buffer enable" start="4" size="1" access="Read/Write" />
      <BitField name="PRFTBS" description="Prefetch buffer status" start="5" size="1" access="ReadOnly" />
    </Register>
    <Register name="KEYR" description="Flash key register" start="+0x4" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="KEY" description="FPEC key" start="0" size="32" />
    </Register>
    <Register name="OPTKEYR" description="Flash option key register" start="+0x8" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="OPTKEY" description="Option byte key" start="0" size="32" />
    </Register>
    <Register name="SR" description="Status register" start="+0xC" size="4" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EOP" description="End of operation" start="5" size="1" access="Read/Write" />
      <BitField name="WRPRTERR" description="Write protection error" start="4" size="1" access="Read/Write" />
      <BitField name="PGERR" description="Programming error" start="2" size="1" access="Read/Write" />
      <BitField name="BSY" description="Busy" start="0" size="1" access="ReadOnly" />
    </Register>
    <Register name="CR" description="Control register" start="+0x10" size="4" access="Read/Write" reset_value="0x00000080" reset_mask="0xFFFFFFFF">
      <BitField name="PG" description="Programming" start="0" size="1" />
      <BitField name="PER" description="Page Erase" start="1" size="1" />
      <BitField name="MER" description="Mass Erase" start="2" size="1" />
      <BitField name="OPTPG" description="Option byte programming" start="4" size="1" />
      <BitField name="OPTER" description="Option byte erase" start="5" size="1" />
      <BitField name="STRT" description="Start" start="6" size="1" />
      <BitField name="LOCK" description="Lock" start="7" size="1" />
      <BitField name="OPTWRE" description="Option bytes write enable" start="9" size="1" />
      <BitField name="ERRIE" description="Error interrupt enable" start="10" size="1" />
      <BitField name="EOPIE" description="End of operation interrupt enable" start="12" size="1" />
    </Register>
    <Register name="AR" description="Flash address register" start="+0x14" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="FAR" description="Flash Address" start="0" size="32" />
    </Register>
    <Register name="OBR" description="Option byte register" start="+0x1C" size="4" access="ReadOnly" reset_value="0x03FFFFFC" reset_mask="0xFFFFFFFF">
      <BitField name="OPTERR" description="Option byte error" start="0" size="1" />
      <BitField name="RDPRT" description="Read protection" start="1" size="1" />
      <BitField name="WDG_SW" description="WDG_SW" start="2" size="1" />
      <BitField name="nRST_STOP" description="nRST_STOP" start="3" size="1" />
      <BitField name="nRST_STDBY" description="nRST_STDBY" start="4" size="1" />
      <BitField name="Data0" description="Data0" start="10" size="8" />
      <BitField name="Data1" description="Data1" start="18" size="8" />
    </Register>
    <Register name="WRPR" description="Write protection register" start="+0x20" size="4" access="ReadOnly" reset_value="0xFFFFFFFF" reset_mask="0xFFFFFFFF">
      <BitField name="WRP" description="Write protect" start="0" size="32" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="NVIC" description="Nested Vectored Interrupt Controller" start="0xE000E000">
    <Register name="ICTR" description="Interrupt Controller Type Register" start="+0x4" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="INTLINESNUM" description="Total number of interrupt lines in groups" start="0" size="4" />
    </Register>
    <Register name="STIR" description="Software Triggered Interrupt Register" start="+0xF00" size="4" access="WriteOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="INTID" description="interrupt to be triggered" start="0" size="9" />
    </Register>
    <Register name="ISER0" description="Interrupt Set-Enable Register" start="+0x100" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SETENA" description="SETENA" start="0" size="32" />
    </Register>
    <Register name="ISER1" description="Interrupt Set-Enable Register" start="+0x104" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SETENA" description="SETENA" start="0" size="32" />
    </Register>
    <Register name="ICER0" description="Interrupt Clear-Enable Register" start="+0x180" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CLRENA" description="CLRENA" start="0" size="32" />
    </Register>
    <Register name="ICER1" description="Interrupt Clear-Enable Register" start="+0x184" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CLRENA" description="CLRENA" start="0" size="32" />
    </Register>
    <Register name="ISPR0" description="Interrupt Set-Pending Register" start="+0x200" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SETPEND" description="SETPEND" start="0" size="32" />
    </Register>
    <Register name="ISPR1" description="Interrupt Set-Pending Register" start="+0x204" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="SETPEND" description="SETPEND" start="0" size="32" />
    </Register>
    <Register name="ICPR0" description="Interrupt Clear-Pending Register" start="+0x280" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CLRPEND" description="CLRPEND" start="0" size="32" />
    </Register>
    <Register name="ICPR1" description="Interrupt Clear-Pending Register" start="+0x284" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="CLRPEND" description="CLRPEND" start="0" size="32" />
    </Register>
    <Register name="IABR0" description="Interrupt Active Bit Register" start="+0x300" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ACTIVE" description="ACTIVE" start="0" size="32" />
    </Register>
    <Register name="IABR1" description="Interrupt Active Bit Register" start="+0x304" size="4" access="ReadOnly" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="ACTIVE" description="ACTIVE" start="0" size="32" />
    </Register>
    <Register name="IPR0" description="Interrupt Priority Register" start="+0x400" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR1" description="Interrupt Priority Register" start="+0x404" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR2" description="Interrupt Priority Register" start="+0x408" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR3" description="Interrupt Priority Register" start="+0x40C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR4" description="Interrupt Priority Register" start="+0x410" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR5" description="Interrupt Priority Register" start="+0x414" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR6" description="Interrupt Priority Register" start="+0x418" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR7" description="Interrupt Priority Register" start="+0x41C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR8" description="Interrupt Priority Register" start="+0x420" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR9" description="Interrupt Priority Register" start="+0x424" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR10" description="Interrupt Priority Register" start="+0x428" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR11" description="Interrupt Priority Register" start="+0x42C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR12" description="Interrupt Priority Register" start="+0x430" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR13" description="Interrupt Priority Register" start="+0x434" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
    <Register name="IPR14" description="Interrupt Priority Register" start="+0x438" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="IPR_N0" description="IPR_N0" start="0" size="8" />
      <BitField name="IPR_N1" description="IPR_N1" start="8" size="8" />
      <BitField name="IPR_N2" description="IPR_N2" start="16" size="8" />
      <BitField name="IPR_N3" description="IPR_N3" start="24" size="8" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="USB" description="Universal serial bus full-speed device interface" start="0x40005C00">
    <Register name="EP0R" description="endpoint 0 register" start="+0x0" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EA" description="Endpoint address" start="0" size="4" />
      <BitField name="STAT_TX" description="Status bits, for transmission transfers" start="4" size="2" />
      <BitField name="DTOG_TX" description="Data Toggle, for transmission transfers" start="6" size="1" />
      <BitField name="CTR_TX" description="Correct Transfer for transmission" start="7" size="1" />
      <BitField name="EP_KIND" description="Endpoint kind" start="8" size="1" />
      <BitField name="EP_TYPE" description="Endpoint type" start="9" size="2" />
      <BitField name="SETUP" description="Setup transaction completed" start="11" size="1" />
      <BitField name="STAT_RX" description="Status bits, for reception transfers" start="12" size="2" />
      <BitField name="DTOG_RX" description="Data Toggle, for reception transfers" start="14" size="1" />
      <BitField name="CTR_RX" description="Correct transfer for reception" start="15" size="1" />
    </Register>
    <Register name="EP1R" description="endpoint 1 register" start="+0x4" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EA" description="Endpoint address" start="0" size="4" />
      <BitField name="STAT_TX" description="Status bits, for transmission transfers" start="4" size="2" />
      <BitField name="DTOG_TX" description="Data Toggle, for transmission transfers" start="6" size="1" />
      <BitField name="CTR_TX" description="Correct Transfer for transmission" start="7" size="1" />
      <BitField name="EP_KIND" description="Endpoint kind" start="8" size="1" />
      <BitField name="EP_TYPE" description="Endpoint type" start="9" size="2" />
      <BitField name="SETUP" description="Setup transaction completed" start="11" size="1" />
      <BitField name="STAT_RX" description="Status bits, for reception transfers" start="12" size="2" />
      <BitField name="DTOG_RX" description="Data Toggle, for reception transfers" start="14" size="1" />
      <BitField name="CTR_RX" description="Correct transfer for reception" start="15" size="1" />
    </Register>
    <Register name="EP2R" description="endpoint 2 register" start="+0x8" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EA" description="Endpoint address" start="0" size="4" />
      <BitField name="STAT_TX" description="Status bits, for transmission transfers" start="4" size="2" />
      <BitField name="DTOG_TX" description="Data Toggle, for transmission transfers" start="6" size="1" />
      <BitField name="CTR_TX" description="Correct Transfer for transmission" start="7" size="1" />
      <BitField name="EP_KIND" description="Endpoint kind" start="8" size="1" />
      <BitField name="EP_TYPE" description="Endpoint type" start="9" size="2" />
      <BitField name="SETUP" description="Setup transaction completed" start="11" size="1" />
      <BitField name="STAT_RX" description="Status bits, for reception transfers" start="12" size="2" />
      <BitField name="DTOG_RX" description="Data Toggle, for reception transfers" start="14" size="1" />
      <BitField name="CTR_RX" description="Correct transfer for reception" start="15" size="1" />
    </Register>
    <Register name="EP3R" description="endpoint 3 register" start="+0xC" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EA" description="Endpoint address" start="0" size="4" />
      <BitField name="STAT_TX" description="Status bits, for transmission transfers" start="4" size="2" />
      <BitField name="DTOG_TX" description="Data Toggle, for transmission transfers" start="6" size="1" />
      <BitField name="CTR_TX" description="Correct Transfer for transmission" start="7" size="1" />
      <BitField name="EP_KIND" description="Endpoint kind" start="8" size="1" />
      <BitField name="EP_TYPE" description="Endpoint type" start="9" size="2" />
      <BitField name="SETUP" description="Setup transaction completed" start="11" size="1" />
      <BitField name="STAT_RX" description="Status bits, for reception transfers" start="12" size="2" />
      <BitField name="DTOG_RX" description="Data Toggle, for reception transfers" start="14" size="1" />
      <BitField name="CTR_RX" description="Correct transfer for reception" start="15" size="1" />
    </Register>
    <Register name="EP4R" description="endpoint 4 register" start="+0x10" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EA" description="Endpoint address" start="0" size="4" />
      <BitField name="STAT_TX" description="Status bits, for transmission transfers" start="4" size="2" />
      <BitField name="DTOG_TX" description="Data Toggle, for transmission transfers" start="6" size="1" />
      <BitField name="CTR_TX" description="Correct Transfer for transmission" start="7" size="1" />
      <BitField name="EP_KIND" description="Endpoint kind" start="8" size="1" />
      <BitField name="EP_TYPE" description="Endpoint type" start="9" size="2" />
      <BitField name="SETUP" description="Setup transaction completed" start="11" size="1" />
      <BitField name="STAT_RX" description="Status bits, for reception transfers" start="12" size="2" />
      <BitField name="DTOG_RX" description="Data Toggle, for reception transfers" start="14" size="1" />
      <BitField name="CTR_RX" description="Correct transfer for reception" start="15" size="1" />
    </Register>
    <Register name="EP5R" description="endpoint 5 register" start="+0x14" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EA" description="Endpoint address" start="0" size="4" />
      <BitField name="STAT_TX" description="Status bits, for transmission transfers" start="4" size="2" />
      <BitField name="DTOG_TX" description="Data Toggle, for transmission transfers" start="6" size="1" />
      <BitField name="CTR_TX" description="Correct Transfer for transmission" start="7" size="1" />
      <BitField name="EP_KIND" description="Endpoint kind" start="8" size="1" />
      <BitField name="EP_TYPE" description="Endpoint type" start="9" size="2" />
      <BitField name="SETUP" description="Setup transaction completed" start="11" size="1" />
      <BitField name="STAT_RX" description="Status bits, for reception transfers" start="12" size="2" />
      <BitField name="DTOG_RX" description="Data Toggle, for reception transfers" start="14" size="1" />
      <BitField name="CTR_RX" description="Correct transfer for reception" start="15" size="1" />
    </Register>
    <Register name="EP6R" description="endpoint 6 register" start="+0x18" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EA" description="Endpoint address" start="0" size="4" />
      <BitField name="STAT_TX" description="Status bits, for transmission transfers" start="4" size="2" />
      <BitField name="DTOG_TX" description="Data Toggle, for transmission transfers" start="6" size="1" />
      <BitField name="CTR_TX" description="Correct Transfer for transmission" start="7" size="1" />
      <BitField name="EP_KIND" description="Endpoint kind" start="8" size="1" />
      <BitField name="EP_TYPE" description="Endpoint type" start="9" size="2" />
      <BitField name="SETUP" description="Setup transaction completed" start="11" size="1" />
      <BitField name="STAT_RX" description="Status bits, for reception transfers" start="12" size="2" />
      <BitField name="DTOG_RX" description="Data Toggle, for reception transfers" start="14" size="1" />
      <BitField name="CTR_RX" description="Correct transfer for reception" start="15" size="1" />
    </Register>
    <Register name="EP7R" description="endpoint 7 register" start="+0x1C" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EA" description="Endpoint address" start="0" size="4" />
      <BitField name="STAT_TX" description="Status bits, for transmission transfers" start="4" size="2" />
      <BitField name="DTOG_TX" description="Data Toggle, for transmission transfers" start="6" size="1" />
      <BitField name="CTR_TX" description="Correct Transfer for transmission" start="7" size="1" />
      <BitField name="EP_KIND" description="Endpoint kind" start="8" size="1" />
      <BitField name="EP_TYPE" description="Endpoint type" start="9" size="2" />
      <BitField name="SETUP" description="Setup transaction completed" start="11" size="1" />
      <BitField name="STAT_RX" description="Status bits, for reception transfers" start="12" size="2" />
      <BitField name="DTOG_RX" description="Data Toggle, for reception transfers" start="14" size="1" />
      <BitField name="CTR_RX" description="Correct transfer for reception" start="15" size="1" />
    </Register>
    <Register name="CNTR" description="control register" start="+0x40" size="4" access="Read/Write" reset_value="0x00000003" reset_mask="0xFFFFFFFF">
      <BitField name="FRES" description="Force USB Reset" start="0" size="1" />
      <BitField name="PDWN" description="Power down" start="1" size="1" />
      <BitField name="LPMODE" description="Low-power mode" start="2" size="1" />
      <BitField name="FSUSP" description="Force suspend" start="3" size="1" />
      <BitField name="RESUME" description="Resume request" start="4" size="1" />
      <BitField name="ESOFM" description="Expected start of frame interrupt mask" start="8" size="1" />
      <BitField name="SOFM" description="Start of frame interrupt mask" start="9" size="1" />
      <BitField name="RESETM" description="USB reset interrupt mask" start="10" size="1" />
      <BitField name="SUSPM" description="Suspend mode interrupt mask" start="11" size="1" />
      <BitField name="WKUPM" description="Wakeup interrupt mask" start="12" size="1" />
      <BitField name="ERRM" description="Error interrupt mask" start="13" size="1" />
      <BitField name="PMAOVRM" description="Packet memory area over / underrun interrupt mask" start="14" size="1" />
      <BitField name="CTRM" description="Correct transfer interrupt mask" start="15" size="1" />
    </Register>
    <Register name="ISTR" description="interrupt status register" start="+0x44" size="4" access="Read/Write" reset_value="0x00000000" reset_mask="0xFFFFFFFF">
      <BitField name="EP_ID" description="Endpoint Identifier" start="0" size="4" />
      <BitField name="DIR" description="Direction of transaction" start="4" size="1" />
      <BitField name="ESOF" description="Expected start frame" start="8" size="1" />
      <BitField name="SOF" description="start of frame" start="9" size="1" />
      <BitField name="RESET" description="reset request" start="10" size="1" />
      <BitField name="SUSP" description="Suspend mode request" start="11" size="1" />
      <BitField name="WKUP" description="Wakeup" start="12" size="1" />
      <BitField name="ERR" description="Error" start="13" size="1" />
      <BitField name="PMAOVR" description="Packet memory area over / underrun" start="14" size="1" />
      <BitField name="CTR" description="Correct transfer" start="15" size="1" />
    </Register>
    <Register name="FNR" description="frame number register" start="+0x48" size="4" access="ReadOnly" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="FN" description="Frame number" start="0" size="11" />
      <BitField name="LSOF" description="Lost SOF" start="11" size="2" />
      <BitField name="LCK" description="Locked" start="13" size="1" />
      <BitField name="RXDM" description="Receive data - line status" start="14" size="1" />
      <BitField name="RXDP" description="Receive data + line status" start="15" size="1" />
    </Register>
    <Register name="DADDR" description="device address" start="+0x4C" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="ADD" description="Device address" start="0" size="7" />
      <BitField name="EF" description="Enable function" start="7" size="1" />
    </Register>
    <Register name="BTABLE" description="Buffer table address" start="+0x50" size="4" access="Read/Write" reset_value="0x0000" reset_mask="0xFFFFFFFF">
      <BitField name="BTABLE" description="Buffer table" start="3" size="13" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="SysTick" start="0xE000E010" description="24-bit System Timer">
    <Register name="SYST_CSR" start="0xE000E010" description="SysTick Control and Status Register">
      <BitField start="0" size="1" name="ENABLE" description="Enable SysTick Timer" />
      <BitField start="1" size="1" name="TICKINT" description="Tick Interrupt Enable" />
      <BitField start="2" size="1" name="CLKSOURCE" description="Timer Clock Source" />
      <BitField start="16" size="1" name="COUNTFLAG" description="Counter Flag" />
    </Register>
    <Register name="SYST_RVR" start="0xE000E014" description="SysTick Reload Value Register">
      <BitField start="0" size="24" name="RELOAD" description="Value to load into the SYST_CVR when the counter is enabled and when it reaches 0" />
    </Register>
    <Register name="SYST_CVR" start="0xE000E018" description="SysTick Current Value Register Register">
      <BitField start="0" size="24" name="CURRENT" description="The current value of the SysTick counter" />
    </Register>
    <Register name="SYST_CALIB" start="0xE000E01C" description="SysTick Calibration Value Register" access="ReadOnly">
      <BitField start="0" size="24" name="TENMS" description="Reload value for 10ms (100Hz) timing, subject to system clock skew errors" />
      <BitField start="30" size="1" name="SKEW" description="Indicates whether the TENMS value is exact" />
      <BitField start="31" size="1" name="NOREF" description="Indicates whether the device provides a reference clock to the processor" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="SCB" start="0xE000E000" description="System Control Block">
    <Register name="ICTR" start="0xE000E004" description="Interrupt Controller Type Register">
      <BitField start="0" size="4" name="INTLINESNUM" description="The total number of interrupt lines supported by an implementation, defined in groups of 32." />
    </Register>
    <Register name="ACTLR" start="0xE000E008" description="Auxiliary Control Register">
      <BitField start="0" size="1" name="DISMCYCINT" description="When set to 1, disables interruption of load multiple and store multiple instructions" />
      <BitField start="1" size="1" name="DISDEFWBUF" description="When set to 1, disables write buffer use during default memory map accesses" />
      <BitField start="2" size="1" name="DISFOLD" description="When set to 1, disables write buffer use during default memory map accesses" />
    </Register>
    <Register name="CPUID" start="0xE000ED00" description="CPUID Register" access="ReadOnly">
      <BitField start="0" size="4" name="REVISION" description="Revision Number" />
      <BitField start="4" size="12" name="PARTNO" description="Part Number" />
      <BitField start="20" size="4" name="VARIANT" description="Variant Number" />
      <BitField start="24" size="8" name="IMPLEMENTER" description="Implementer Code" />
    </Register>
    <Register name="ICSR" start="0xE000ED04" description="Interrupt Control and State Register">
      <BitField start="0" size="9" name="VECTACTIVE" description="Contains the active exception number" />
      <BitField start="11" size="1" name="RETTOBASE" description="Indicates whether there are preempted active exceptions" />
      <BitField start="12" size="9" name="VECTPENDING" description="Indicates the exception number of the highest priority pending enabled exception" />
      <BitField start="22" size="1" name="ISRPENDING" description="Interrupt pending flag" />
      <BitField start="23" size="1" name="ISRPREEMPT" />
      <BitField start="25" size="1" name="PENDSTCLR" description="SysTick exception clear-pending bit" />
      <BitField start="26" size="1" name="PENDSTSET" description="SysTick exception set-pending bit" />
      <BitField start="27" size="1" name="PENDSVCLR" description="PendSV clear-pending bit" />
      <BitField start="28" size="1" name="PENDSVSET" description="PendSV set-pending bit" />
      <BitField start="31" size="1" name="NMIPENDSET" description="NMI set-pending bit" />
    </Register>
    <Register name="VTOR" start="0xE000ED08" description="Vector Table Offset Register">
      <BitField start="7" size="25" name="TBLOFF" description="Vector table base offset field" />
    </Register>
    <Register name="AIRCR" start="0xE000ED0C" description="Application Interrupt and Reset Control Register">
      <BitField start="0" size="1" name="VECTRESET" />
      <BitField start="1" size="1" name="VECTCLRACTIVE" />
      <BitField start="2" size="1" name="SYSRESETREQ" description="System reset request bit" />
      <BitField start="8" size="3" name="PRIGROUP" description="Interrupt priority grouping field" />
      <BitField start="15" size="1" name="ENDIANESS" description="Data endianness bit" />
      <BitField start="16" size="16" name="VECTKEY" description="Register key" />
    </Register>
    <Register name="SCR" start="0xE000ED10" description="System Control Register">
      <BitField start="1" size="1" name="SLEEPONEXIT" description="Indicates sleep-on-exit when returning from Handler mode to Thread mode" />
      <BitField start="2" size="1" name="SLEEPDEEP" description="Controls whether the processor uses sleep or deep sleep as its low power mode" />
      <BitField start="4" size="1" name="SEVONPEND" description="Send event on pending bit" />
    </Register>
    <Register name="CCR" start="0xE000ED14" description="Configuration and Control Register">
      <BitField start="0" size="1" name="NONBASETHRDENA" description="Indicates how the processor enters Thread mode" />
      <BitField start="1" size="1" name="USERSETMPEND" description="Enables unprivileged software access to the STIR" />
      <BitField start="3" size="1" name="UNALIGN_TRP" description="Enables unaligned access traps" />
      <BitField start="4" size="1" name="DIV_0_TRP" description="Enables faulting or halting when the processor executes an SDIVor UDIV instruction with a divisor of 0" />
      <BitField start="8" size="1" name="BFHFNMIGN" description="Enables handlers with priority -1 or-2 to ignore data BusFaults caused by load and store instructions" />
      <BitField start="9" size="1" name="STKALIGN" description="Indicates stack alignment on exception entry" />
    </Register>
    <Register name="SHPR1" start="0xE000ED18" description="System Handler Priority Register 1">
      <BitField start="4" size="4" name="PRI_4(MemManage)" description="Priority of system handler 4 (MemManage)" />
      <BitField start="12" size="4" name="PRI_5(BusFault)" description="Priority of system handler 5 (BusFault)" />
      <BitField start="20" size="4" name="PRI_6(UsageFault)" description="Priority of system handler 6 (UsageFault)" />
    </Register>
    <Register name="SHPR2" start="0xE000ED1C" description="System Handler Priority Register 2">
      <BitField start="28" size="4" name="PRI_11(SVCall)" description="Priority of system handler 11 (SVCall)" />
    </Register>
    <Register name="SHPR3" start="0xE000ED20" description="System Handler Priority Register 3">
      <BitField start="20" size="4" name="PRI_14(PendSV)" description="Priority of system handler 14 (PendSV)" />
      <BitField start="28" size="4" name="PRI_15(SysTick)" description="Priority of system handler 15 (SysTick)" />
    </Register>
    <Register name="SHCSR" start="0xE000ED24" description="System Handler Control and State Register">
      <BitField start="0" size="1" name="MEMFAULTACT" description="MemManage Exception Active Bit" />
      <BitField start="1" size="1" name="BUSFAULTACT" description="BusFault Exception Active Bit" />
      <BitField start="3" size="1" name="USGFAULTACT" description="UsageFault Exception Active Bit" />
      <BitField start="7" size="1" name="SVCALLACT" description="SVCall Active Bit" />
      <BitField start="8" size="1" name="MONITORACT" description="Debug Monitor Active Bit" />
      <BitField start="10" size="1" name="PENDSVACT" description="PendSV Exception Active Bit" />
      <BitField start="11" size="1" name="SYSTICKACT" description="SysTick Exception Active Bit" />
      <BitField start="12" size="1" name="USGFAULTPENDED" description="UsageFault Exception Pending Bit" />
      <BitField start="13" size="1" name="MEMFAULTPENDED" description="MemManage Exception Pending Bit" />
      <BitField start="14" size="1" name="BUSFAULTPENDED" description="BusFault Exception Pending Bit" />
      <BitField start="15" size="1" name="SVCALLPENDED" description="SVCall Pending Bit" />
      <BitField start="16" size="1" name="MEMFAULTENA" description="MemManage Enable Bit" />
      <BitField start="17" size="1" name="BUSFAULTENA" description="BusFault Enable Bit" />
      <BitField start="18" size="1" name="USGFAULTENA" description="UsageFault enable Bit" />
    </Register>
    <Register name="MMFSR" start="0xE000ED28" description="MemManage Fault Status Register">
      <BitField start="0" size="1" name="IACCVIOL" description="Instruction access violation flag" />
      <BitField start="1" size="1" name="DACCVIOL" description="Data access violation flag" />
      <BitField start="3" size="1" name="MUNSTKERR" description="MemManage fault on unstacking for a return from exception" />
      <BitField start="4" size="1" name="MSTKERR" description="MemManage fault on stacking for exception entry" />
      <BitField start="7" size="1" name="MMARVALID" description="MemManage Fault Address Register(MMFAR) valid flag" />
    </Register>
    <Register name="BFSR" start="0xE000ED29" description="BusFault Status Register">
      <BitField start="0" size="1" name="IBUSERR" description="Instruction bus error" />
      <BitField start="1" size="1" name="PRECISERR" description="Precise data bus error" />
      <BitField start="2" size="1" name="IMPRECISERR" description="Imprecise data bus error" />
      <BitField start="3" size="1" name="UNSTKERR" description="BusFault on unstacking for a return from exception" />
      <BitField start="4" size="1" name="STKERR" description="BusFault on stacking for exception entry" />
      <BitField start="7" size="1" name="BFARVALID" description="BusFault Address Register(BFAR) valid flag" />
    </Register>
    <Register name="UFSR" start="0xE000ED2A" description="UsageFault Status Register">
      <BitField start="0" size="1" name="UNDEFINSTR" description="Undefined instruction UsageFault" />
      <BitField start="1" size="1" name="INVSTATE" description="Invalid state UsageFault" />
      <BitField start="2" size="1" name="INVPC" description="Invalid PC load UsageFault, causedby an invalid PC load by EXC_RETURN" />
      <BitField start="3" size="1" name="NOCP" description="No coprocessor UsageFault" />
      <BitField start="8" size="1" name="UNALIGNED" description="Unaligned access UsageFault" />
      <BitField start="9" size="1" name="DIVBYZERO" description="Divide by zero UsageFault" />
    </Register>
    <Register name="HFSR" start="0xE000ED2C" description="HardFault Status Register">
      <BitField start="1" size="1" name="VECTTBL" description="Indicates a BusFault on a vectortable read during exception processing" />
      <BitField start="30" size="1" name="FORCED" description="Indicates a forced hard fault, generated by escalation of a fault with configurable priority that cannot be handled, either because of priority or because it is disabled" />
      <BitField start="31" size="1" name="DEBUGEVT" />
    </Register>
    <Register name="DFSR" start="0xE000ED30" description="Debug Fault Status Register">
      <BitField start="0" size="1" name="HALTED" />
      <BitField start="1" size="1" name="BKPT" />
      <BitField start="2" size="1" name="DWTTRAP" />
      <BitField start="3" size="1" name="VCATCH" />
      <BitField start="4" size="1" name="EXTERNAL" />
    </Register>
    <Register name="MMFAR" start="0xE000ED34" description="MemManage Fault Address Register">
      <BitField start="0" size="32" name="ADDRESS" description="When the MMARVALID bit of the MMFSR is set to 1, this field holds the address of the location that generated the MemManage fault" />
    </Register>
    <Register name="BFAR" start="0xE000ED38" description="BusFault Address Register">
      <BitField start="0" size="32" name="ADDRESS" description="When the BFARVALID bit of the BFSR is set to1, this field holds the address of the location that generated the BusFault" />
    </Register>
    <Register name="AFSR" start="0xE000ED3C" description="Auxiliary Fault Status Register">
      <BitField start="0" size="32" name="IMPDEF" description="Implementation defined, the bits map to the AUXFAULT input signals" />
    </Register>
    <Register name="ID_PFR0" start="0xE000ED40" description="Processor Feature Register 0" access="ReadOnly" />
    <Register name="ID_PFR1" start="0xE000ED44" description="Processor Feature Register 1" access="ReadOnly" />
    <Register name="ID_DFR0" start="0xE000ED48" description="Debug Feature Register 0" access="ReadOnly" />
    <Register name="ID_AFR0" start="0xE000ED4C" description="Auxilliary Feature Register 0" access="ReadOnly" />
    <Register name="ID_MMFR0" start="0xE000ED50" description="Memory Model Feature Register 0" access="ReadOnly" />
    <Register name="ID_MMFR1" start="0xE000ED54" description="Memory Model Feature Register 1" access="ReadOnly" />
    <Register name="ID_MMFR2" start="0xE000ED58" description="Memory Model Feature Register 2" access="ReadOnly" />
    <Register name="ID_MMFR3" start="0xE000ED5C" description="Memory Model Feature Register 3" access="ReadOnly" />
    <Register name="ID_ISAR0" start="0xE000ED60" description="Instruction Set Attribute Register 0" access="ReadOnly" />
    <Register name="ID_ISAR1" start="0xE000ED64" description="Instruction Set Attribute Register 1" access="ReadOnly" />
    <Register name="ID_ISAR2" start="0xE000ED68" description="Instruction Set Attribute Register 2" access="ReadOnly" />
    <Register name="ID_ISAR3" start="0xE000ED6C" description="Instruction Set Attribute Register 3" access="ReadOnly" />
    <Register name="ID_ISAR4" start="0xE000ED70" description="Instruction Set Attribute Register 4" access="ReadOnly" />
    <Register name="ID_ISAR5" start="0xE000ED74" description="Instruction Set Attribute Register 5" access="ReadOnly" />
  </RegisterGroup>
  <RegisterGroup name="FPU" start="0xE000EF34" description="Floating Point Unit">
    <Register name="FPCCR" start="0xE000EF34" description="Floating-point Context Control Register">
      <BitField start="0" size="1" name="LSPACT" description="Lazy state preservation active" />
      <BitField start="1" size="1" name="USER" description="User privilege" />
      <BitField start="3" size="1" name="THREAD" description="Thread Mode" />
      <BitField start="4" size="1" name="HFRDY" description="HardFault ready" />
      <BitField start="5" size="1" name="MMRDY" description="MemManage ready" />
      <BitField start="6" size="1" name="BFRDY" description="BusFault ready" />
      <BitField start="8" size="1" name="MONRDY" description="DebugMonitor ready" />
      <BitField start="30" size="1" name="LSPEN" description="Lazy state preservation enable" />
      <BitField start="31" size="1" name="ASPEN" description="Automatic state preservation enable" />
    </Register>
    <Register name="FPCAR" start="0xE000EF38" description="Floating-point Context Address Register">
      <BitField start="3" size="29" name="ADDRESS" description="The location of the unpopulated floating-point register space allocated on an exception stack frame" />
    </Register>
    <Register name="FPDSCR" start="0xE000EF3C" description="Floating-point Default Status Control Register">
      <BitField start="22" size="2" name="RMode" description="Rounding Mode control field" />
      <BitField start="24" size="1" name="FZ" description="Flush-to-zero mode control bit" />
      <BitField start="25" size="1" name="DN" description="Default NaN mode control bit" />
      <BitField start="26" size="1" name="AHP" description="Alternative half-precision control bit" />
    </Register>
  </RegisterGroup>
  <RegisterGroup name="MPU" start="0xE000ED90" description="Memory Protection Unit">
    <Register name="MPU_TYPE" start="0xE000ED90" description="MPU Type Register" access="ReadOnly">
      <BitField start="0" size="1" name="SEPARATE" description="Support for unified or separate instruction and date memory maps" />
      <BitField start="8" size="8" name="DREGION" description="Number of supported MPU data regions" />
      <BitField start="16" size="8" name="IREGION" description="Number of supported MPU instruction regions" />
    </Register>
    <Register name="MPU_CTRL" start="0xE000ED94" description="MPU Control Register">
      <BitField start="0" size="1" name="ENABLE" description="Enable MPU" />
      <BitField start="1" size="1" name="HFNMIENA" description="Enable the operation of MPU during hard fault, NMI, and FAULTMASK handlers" />
      <BitField start="2" size="1" name="PRIVDEFENA" description="Enables privileged software access to the default memory map" />
    </Register>
    <Register name="MPU_RNR" start="0xE000ED98" description="MPU Region Number Register">
      <BitField start="0" size="8" name="REGION" description="Indicates the MPU region referenced by the MPU_RBAR and MPU_RASR registers" />
    </Register>
    <Register name="MPU_RBAR" start="0xE000ED9C" description="MPU Region Base Address Register">
      <BitField start="0" size="4" name="REGION" description="MPU region field" />
      <BitField start="4" size="1" name="VALID" description="MPU Region Number valid bit" />
      <BitField start="5" size="27" name="ADDR" description="Region base address field" />
    </Register>
    <Register name="MPU_RASR" start="0xE000EDA0" description="MPU Region Attribute and Size Register">
      <BitField start="0" size="1" name="ENABLE" description="Region enable bit" />
      <BitField start="1" size="5" name="SIZE" description="MPU protection region size" />
      <BitField start="8" size="8" name="SRD" description="Subregion disable bits" />
      <BitField start="16" size="1" name="B" description="Memory access attribute" />
      <BitField start="17" size="1" name="C" description="Memory access attribute" />
      <BitField start="18" size="1" name="S" description="Shareable bit" />
      <BitField start="19" size="3" name="TEX" description="Memory access attribute" />
      <BitField start="24" size="3" name="AP" description="Access permission field" />
      <BitField start="28" size="1" name="XN" description="Instruction access disable bit" />
    </Register>
  </RegisterGroup>
</Processor>
